Архітектура і принцип роботи відеоадаптера

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Реферат на тему:

Принцип роботи відеоадаптера


Введення
Перш, ніж стати зображенням на моніторі, виконавчі цифрові дані обробляються центральним процесором, потім через шину даних направляються в відеоадаптер, де вони обробляються і перетворюються в аналогові дані і вже після цього направляються в монітор і формують зображення. Спочатку дані в цифровому вигляді з шини потрапляють у відеопроцесор, де вони починають оброблятися. Після цього оброблені цифрові дані направляються в відеопам'ять, де створюється образ зображення, яке має бути виведено на дисплеї. Потім, все ще в цифровому форматі, дані, що утворюють образ, передаються в RAMDAC, де вони конвертуються в аналоговий вигляд, після чого передаються в монітор, на якому виводиться потрібне зображення.
Таким чином, майже на всьому шляху прямування цифрових даних над ними виробляються різні операції перетворення, стискання та зберігання. Оптимізуючи ці операції, можна домогтися підвищення продуктивності всієї відеопідсистеми. Лише останній відрізок шляху, від RAMDAC до монітора, коли дані мають аналоговий вигляд, не можна оптимізувати.
Розглянемо докладніше етапи проходження даних від центрального процесора системи до монітора.
1. Швидкість обмін даними між CPU і графічним процесором безпосередньо залежить від частоти, на якій працює шина, через яку передаються дані. Робоча частота шини залежить від чіпсета материнської плати. Для відеоадаптерів оптимальними за швидкості є шина PCI і AGP. При існуючих версіях чіпсетів шина PCI може мати робочі частоти від 25Mhz до 66MHz, іноді до 83Mhz (зазвичай 33MHz), а шина AGP працює на частотах 66MHz і 133MHz.
Чим вище робоча частота шини, тим швидше дані від центрального процесора системи дійдуть до графічного процесора відеоадаптера.
2. Ключовий момент, що впливає на продуктивність відеопідсистеми, незалежно від специфічних функцій різних графічних процесорів, це передача цифрових даних, оброблених графічним процесором, у відеопам'ять, а звідти в RAMDAC. Найвужче місце будь-якої відеокарти - це відеопам'ять, яка безперервно обслуговує два головних пристрої відеоадаптера, графічний процесор і RAMDAC, які вічно перевантажені роботою. У будь-який момент, коли на екрані монітора відбуваються зміни (іноді вони відбуваються в безперервному режимі, наприклад рух покажчика миші, миготіння курсору в редакторі і т.д.), графічний процесор звертається до відеопам'яті. У той же час, RAMDAC має безперервно зчитувати дані з відеопам'яті, щоб зображення не пропадало з екрану монітора. Тому, щоб збільшити продуктивність відеопам'яті, виробники застосовують різні технічні рішення. Наприклад, використовують різні типи пам'яті, з покращеними властивостями і просунутими можливостями, наприклад VRAM, WRAM, MDRAM, SGRAM, або збільшують ширину шини даних, по якій графічний процесор або RAMDAC обмінюються інформацією з відеопам'ять, використовуючи 32 розрядну, 64 розрядну або 128 розрядну відеошіну .
Чим вищий дозвіл екрану використовується і чим більше глибина представлення кольору, тим більше даних потрібно передати з графічного процесора в відеопам'ять і тим швидше дані повинні зчитуватися RAMDAC для передачі аналогового сигналу в монітор. Неважко помітити, що для нормальної роботи відеопам'ять повинна бути постійно доступна для графічного процесора і RAMDAC, які повинні постійно здійснювати читання і запис.
У нормальних умовах доступ RAMDAC до відеопам'яті на максимальній частоті можливий лише після того, як графічний процесор завершить звернення до пам'яті (операцію читання чи запису), тобто RAMDAC змушений чекати, коли настане його черга звернутися із запитом до відеопам'яті для читання і навпаки.

Архітектура найпростіших відеоадаптерів
АРХІТЕКТУРА Відеоадаптер CGA
Відеоадаптер побудований на основі мікросхеми Motorola 6845 або її аналога. Мікросхема містить контролер ЕПТ, керуючий форматом екрану, курсором, світловим пером і колірними характеристиками зображення. Адаптер CGA має 16Кбайт відеопам'яті, пам'ять доступна процесору c адреси B800: 0000h. У деяких режимах пам'ять розділена на кілька сторінок.
У текстовому режимі, що відображається інформація записується у вигляді багатобайтових слів. Молодше слово містить ASCII код символу, старше - атрибути:
· Біт 7 - блимання або інтенсивність фону,
· 6 .. 4 - колір фону,
· 3 - інтенсивність символу,
· 2 .. 0 - колір символу.
Кожному слову відповідає певна позиція на екрані. При формуванні зображення вміст відеопам'яті зчитується і перетворюється знакогенератора в двовимірний графічний еквівалент символу. Таблиці знакогенератора недоступні процесору.
У графічному режимі у відеопам'яті зберігається інформація про кожному пікселі зображення. Інформація та вмісті рядків з парними і непарними номерами зберігається в різних областях пам'яті (парні рядки з адреси B800: 0000h, непарні - B800: 2000h).
У режимах 4 і 5 (320 * 200) на одну точку відводиться два біти. У режимі 6 (640 * 200) - один; лівому верхньому кутку відповідають старші біти молодшого байта області відеопам'яті.
В адаптері "HERCULES" відеопам'ять, в графічному режимі 720 * 348, поділена на чотири частини. Рядки зображення послідовно чергуючись вибираються з областей пам'яті: B800: 0000h, B800: 2000h, B800: 4000h, B800: 6000h.
АРХІТЕКТУРА Відеоадаптер EGA І VGA.
Умовно в структурі відеоадпреров можна виділити шість блоків:
1 Відеопам'ять. Розмір відеопам'яті може досягати 256Кбайт і більше. Фізично пам'ять складається з чотирьох блоків, званих ШАРАМИ. Шари пам'яті з точки зору процесора розташовуються в одному і тому ж адресному просторі.
2 Графічний контролер. Забезпечує зв'язок процесора з шарами відеопам'яті. Може виконувати над надійшли даними операції І, АБО, іскл., ЦІКЛ.СДВІГ. Операція виконується над надійшли байтом і регістрами-засувками, що зберігають результат останнього звернення до буферу.
3 Послідовний перетворювач. Формує потік бітів для відображення на екрані ЕПТ.
4 Контролер ЕПТ. Генерує сигнали управління ЕПТ, формує курсор, обслуговує світлове перо і здійснює вертикальну згортку (скролінг) вмісту екрана.
5 Контролер атрибутів. Управляє кольором. Значенням колірних атрибутів ставиться у відповідність певний колір за допомогою таблиці кольорової палітри (Color Lock-up Table). В адаптері VGA за значенням кольору далі вибирається один з регістрів цифроаналогового перетворювача, який і формує аналоговий RGB сигнал.
6 Синхронізатор. Здійснює синхронізацію роботи пристроїв відеоадаптера і управляє безпосередній записом інформації в колірні шари.

Структура відеопам'яті
В текстових режимах для кодування символу використовуються два байти. ASCII код символу розташовується в нульовому колірному шарі, його атрибути - у першому. Таблиця знакогенератора зберігається у другому колірному шарі. При безпосередньому доступі до пам'яті байти нульового та першого колірних шарів чергуються в адресному просторі, що забезпечує сумісність з CGA.
Розмір другого колірного шару дозволяє завантажити відразу кілька таблиць знакогенератора. Активними можуть бути одночасно дві таблиці, що дозволяє відображати 512 різних символу. Поточна таблиця визначається одним з бітів атрибутів символу. Для опису одного символу відводиться 32 байта таблиці знакогенератора.
Формат байта атрибутів символу, в цілому, співпадає з форматом, прийнятим для CGA, але біт 3 може використовуватися для вказівки однієї з двох активних таблиць знакогенератора.
У графічному режимі використання шарів залежить від встановленої роздільної здатності.
РЕГІСТРИ Відеоадаптер EGA І VGA
Програмування відеоадаптерів на рівні регістрів підвищує швидкість роботи програм, але можуть виникнути проблеми з перенесенням створеного ПЗ на інший комп'ютер в зв'язку з неповним відповідністю регістрів адаптерів різних фірм щодо їх набору, структурі й розташуванню в адресному просторі.
Сучасні адаптери емулюють регістри адаптерів більш низького рівня.
Доступ до більшості регістрів здійснюється у два етапи: спочатку через один порт вказується номер обраного регістру; потім через інший порт виконується обмін. Таке рішення дозволяє скоротити число портів. Багато регістри доступні тільки по запису, що призводить до незручностей у мультизадачних системах. При роботі з конкретним відеоадаптером необхідно ознайомитися з відповідною документацією.
ПРИМІТКА: Далі приведено призначення деяких регістрів адаптерів EGA і VGA.
Зовнішні регістри
Керують роботою відеоадаптера в цілому. Адресуються безпосередньо по адресах своїх портів.
MOR (Miscellaneous Output Register) - Регістр визначення режиму роботи.
7 - полярність сигналу вертикальної синхронізації (0 +, 1 -);
6 - полярність сигналу горизонтальної синхронізації (0 +, 1 -);
5 - використовується для перекомпонування шарів у різні адреси пам'яті (для текстового режиму = 1);
4 - = 1 дисплей управляється додатковим пристроєм;
3 .. 2 - керування тактовою частотою:
00 - 640 або 320 стовпців, 10 - зовнішній генератор,
01 - 720 стовпців, 11 - резерв.
1 - = 0 доступ до відеопам'яті заборонено;
0 - вибір діапазону адрес регістрів FCR, ISR1 і контролера ЕПТ: = 0 3Bxh, = 1 3Dxh.
FCR (Feature Control Register) - Регістр управління додатковим пристроєм. Біти D1, D0 регістру передаються на роз'єм додаткового пристрою FC1, FC0. Біт D3 = 0.
ISR0 (Input Status Register 0) - Регістр стану 0.
7 - зворотний хід кадрової розгортки (генерується переривання IRQ2);
6 .. 5 - значення вихідних ліній FEAT1, FEAT0 додаткового пристрою;
4 - значення біта перемикача на платі EGA, номер біта відповідає значенням бітів 3 .. 2 регістру MOR. Для VGA біт визначає який дисплей використовується (монохромний або кольоровий);
3 .. 0 - не використовуються.
ISR1 (Input Status Register 1) - Регістр стану 1.
7 .. 6 - не використовуються;
5 .. 4 - діагностичні (відповідають двом вихідним сигналам);
3 - зворотний вертикальний хід променя;
2 - стан перемикача світлового пера;
1 - значення тригера світлового пера;
0 - = 1 коли адаптер читає дані з відеобуфера.
Регістри контролера ЕПТ
Ці регістри управляють сигналами синхронізації, необхідними для формування растра, визначають формат даних на екрані і форму курсора. Зміна налаштування більшості регістрів призводить до втрати працездатності адаптера. Доступ до регістрів здійснюється через індексний порт і порт даних.
HTR (Horizontal Total Register) - Загальна довжина горизонтальної розгортки. Довжина вказується в знакоместа з урахуванням часу, необхідного на зворотний хід променя.
HDER (Horizontal Display Enable Register) - Число відображаються в рядку знакомест, зменшеної на одиницю.
SHBR (Start Horizontal Blank Register) - Початок імпульсу гасіння лучагорізонтальной розгортки.
EHBR (End Horizontal Blank Register) - Кінець імпульсу гасіння променя горизонтальної розгортки.
7 - = 0 для EGA і = 1 для VGA;
6 .. 5 - зміщення між початком вибірки символів і їх відображенням:
00 - ні, 01 - 1, 10 - 2, 11 - 3 символи, 4 .. 0 - власне кінець імпульсу.
SHRR (Start Horizontal Retrace Regicter) - Магарача імпульсу горизонтального обраною ходу променя.
EHRR (End Horizontal Retrace Register) - Кінець імпульсу горизонтального зворотного ходу променя.
7 - для EGA управління горизонтальної згорткою,
для VGA п'ятий біт регістра гасіння променя;
6 .. 5 - зміщення імпульсу щодо відображуваного ділянки розгортки: 00 - ні, 01 - 1, 10 - 2, 11 - 3 символи, 4 .. 5 - молодші п'ять бітів кінця імпульсу горизонтальної розгортки.
(1) - Загальна тривалість циклу горизонтальної розгортки;
(2) - Видима рядок символів;
(3) - формування "рамки";
(4) - вимкнення променя;
(5) - початок вибору символів з відеобуфера;
(6) - зворотний хід променя.
Регістри синхронізатора
Доступ здійснюється через індексний порт і порт даних. Регістри доступні за записом.
CPWE (Color Plane Write Enable) - Регістр дозволу запису колірного шару.
7 .. 4 - не використовуються; 3 .. 0 - = 1 дозволено записувати до відповідного шар.
CGSR (Character Generator Select Register) - Регістр вибору знакогенератора.
7 .. 6 - не використовується;
5 .. 4 - старші біти номера таблиць;
3 .. 2 - номер таблиці при D3 атрибута = 1;
1 .. 0 - номер таблиці при D3 атрибута = 0;
Доступ здійснюється через індексний порт і порт даних. Використання регістрів досить не небезпечно. У загальному вигляді графічний контролер працює наступним чином:
1. Байт, записується у відеопам'ять надходить у графічний контролер;
2. У відповідності зі значенням регістра зсуву і вибору функції відбувається циклічний зсув отриманого байта;
3. Потім результат зсуву обробляється по функції АБО, І чи іскл. з вмістом регістрів-клямок;
4. На основі значень регістрів дозволу установки / скидання і регістру установки / скидання дані додатково модифікуються;
5. У залежності від значення регістра бітової маски в шари збожеволіє інформація з регістрів-клямок або результати перетворення.
SRR (Set / Reset Register) - Регістр установки / скидання.
7 .. 4 - резерв;
3 .. 0 - записуване значення в шар при встановленому біті регістра дозволу установки / скидання.
SRER (Set / Reset Enable Register) - Регістр дозволу установки / скидання.
7 .. 4 - резерв;
3 .. 0 - = 0 - дані для відповідного шару беруться від процесора, = 1 - дані формуються розмноженням відповідного біта регістра установки / скидання.
DRFS (Data Rotate & Function Select) - Регістр циклічного зсуву і вибору функції.
7 .. 5 - не використовуються;
4 .. 3 - функція:
00 - немає операції,
01 - І,
10 - АБО,
11 - викл. АБО;
2 .. 0 - величина зсуву (праворуч).
BMR (Bit Mask Register) - Регістр бітової маски. Якщо його біт = 0, то відповідний біт буде записуватися з регістра-клямки; інакше біт надходить від процесора.
Регістри контролера атрибутів
Управляє колірними характеристиками зображень. Доступ здійснюється через один порт. Переключення індекс-дані здійснюється при кожній запису в порт. Установку в початковий стан можна здійснити, прочитавши вміст ISR1.
CPR (Color Palette Register's) - Регістри кольорової палітри (0 .. 15). Формат регістрів різний для різних дисплеїв.
SBCR (Screen Border Color Register) - Регістр кольору рамки екрану. Формат еквівалентний формату регістрів колірної палітри.
Регістри цифро-аналогового перетворювача VGA
LTRIR (Look-up Table Read Index Register) - Вказується індекс читаного регістра палітри.
LTWIR (Look-up Table Write Index Register) - Вказується індекс записуваного регістра палітри.
LTDR (Look-up Table Data Register) - Регістр даних таблиці кольорів. Після установки адреси необхідно виконати три операції читання (запису) з інтервалом не менше 240нс.
7 .. 6 - не використовується;
5 .. 0 - код рівня сигналу
Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
30.9кб. | скачати


Схожі роботи:
Принцип роботи маршрутизатора
Принцип роботи сканера
Принцип роботи 3УСКТ
Принцип роботи банкоматів
Принцип роботи гібридного автомобіля
Принцип роботи ядерного реактора
Структура і принцип роботи механізму
Структура та принцип роботи Win9x NT
Принцип роботи вакуумних люмінесцентних індикаторів
© Усі права захищені
написати до нас