Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Port_AGP_1kh_-_8kh.doc
Скачиваний:
1
Добавлен:
16.09.2019
Размер:
235.01 Кб
Скачать

1.1 Порт agp (Acselerated Graphics Port)

Перш ніж приступити до подальшого викладу, визначимо деякі терміни.

Фрейм - буфер - пам'ять, розташована на відеокарті і є сховищем відеозображення.

Текстурними даними називаються "матеріали", які відображаються на 3D-об'єктах (колір, фактура ..). Для зберігання текстур використовується спеціальна текстурна пам'ять, розташована на відеокарті.

Інформацію про "видимості" тривимірних поверхонь зберігає z-буфер, так-же розташований на відеокарті.

Отже, наприклад, для того щоб в тривимірній грі вир-туальний воїн не розмахував даремно бластером, очікуючи зміни інтер'єру, необхідно якомога швидше "прокачати" інформацію про ці зміни між графічним Аксесу-лератором та відповідними областями пам'яті. У багатьох графічних підсистемах для цього використовуються дорогі швидкодіючі чипи пам'яті, що збільшують і вартість комп'ютера. Ось тут-то і виявляється вузьке місце цього-дняшній PC. По-перше, для підвищення якості відображення 3D-графіки необхідно все більше і більше текстур, відповідно і текстурної пам'яті, тому розміщення їх у відеопам'яті продовжувало б збільшувати вартість графічної підсистеми. І, що найголовніше, ця пам'ять завідомо втрачена для системи в цілому, оскільки має тільки цільове призначення (зберігання текстур). По-друге, текстурні дані досить статичні за своєю природою, і їх все одно треба кудись помістити на період роботи конкретного 3D-додатки. Альтернативним вирішенням цієї проблеми стало б переміщення текстур з пам'яті відеокарти в основну пам'ять. Таке переміщення дозволило б звільнити ресурси, які могли б використовуватися іншими елементами системи. Однак швидке накладення текстур на об'єкти в масштабі реального часу вимагає значно великої пропускної здатності, що може надати шина PCI з портом AGP.

AGP - спеціалізована надбудова над шиною PCI, що дозволяє створити швидкісний канал обміну даними між графічним акселератором і системною логікою PC.

Отже, AGP - розширення основної PCI-архітектури осно-виваются на трьох китах: багатоканальної шині адреси, конвеєрної обробки даних та робочої частоті шини 133 Мгц. Для того щоб досягти високої швидкості передачі, AGP визначений як безпосереднє або пряме з'єднання (point-to-point), а не через загальну шину. (Рис. 4) Як видно, нова підсистема пов'язана з пам'яттю і процесором через системне логічний пристрій і призначена виключно для графіки, причому ця система підтримує графічний контролер як на материнській платі, так і на зовнішній графічної карти. Безпосереднє з'єднання двох кінцевих пристроїв, безсумнівно спростить завдання синхронізації, поліпшить цілісність даних, спростить AGP-протоколи та усуне арбітражні втрати, властиві шині PCI.

Як видно, системна архітектура передбачаэ порту, додаючи високошвидкісний маршрут між графічної підсистемою і системної пам'яттю, не робить впливу на будь-який інший периферійний порт. При цьому Intel намагається в трансляційному порядку зберегти в значный міры частину PCI-специфікації, особливо уникаючи використання будь-якої з зарезервованих областей і штирьків в PCI-специфікації. Більшість PCI - сигналів використовується в AGP - командах, але, у порівнянні з PCI, додано ще 16 сигналів, відповідальних за розширені функції AGP. Специфічні AGP-протоколи, подібно конвеєру, перекриваються на PCI таким чином, що для стандартного пристрою в шині PCI "надбудова" AGP "прозора". Проте всім AGP-пристроїв буде потрібно відповідати на PCI-запити, тому вони повинні оперувати єдиними сигналами, як визначено специфікацією PCI.

Незважаючи на сумісність AGP і PCI, вони призначені для різних пристроїв. Головна причина в тому, що AGP - це не шина в широкому сенсі і підтримує єдиний графічний пристрій. Якби Intel намагався сфоррмувати AGP як розширений набір PCI, встановлюючи AGP-пристрої в цій шині, то це рішення повинно було, або обмежити AGP частотою 33 Мгц, або зобов'язати всі PCI-пристрої підтримувати 66 Мгц, здорожуючи більшість периферійних пристроїв. Крім того, AGP визначає власний слот, відмінний від PCI, і багатоканальна адресація сигналів не повинна пристосовуватися до існуючого PCI-слоту. Значна сумісність з PCI-шиною дозволила Intel розробити специфікацію на AGP дуже швидко. Схожість з PCI також спростить завдання розробників апаратних засобів. Протягом наступних декількох років багато графічних чіпів, будуть носіями подвійного AGP / PCI-інтерфейсу, даючи системному роз-робником більше гнучкості.

Конвеєр даних - основне розширення протоколу, що передбачається AGP. Але тільки операції читання і запису, що ініціюються відеоприскорювачем і спрямовані в основну пам'ять, поставлені на конвеєр. Системна логіка може мати доступ до графічного чіпу тільки за стандартами PCI-протоколу. Всі операції шини, включаючи читання і запис, звернені в графічний контролер, виконані як стандартні PCI-запити. Конвеєрна обробка даних, обумовлена ​​AGP, працює за методом поділу транзакцій (групові операції читання / запису).

Розглянемо це на прикладі читання з системної пам'яті. Графічний чіп видає запит на конвеєрну обробку (запит доступу) в чіп системної логіки. Системна логіка відповідає на запит і забезпечує потім передачу даних з основної пам'яті. Графічний чіп, не чекаючи отримання попередньої порції даних, видає наступний запит. Це перекриття результатів і забезпечує конвеєр різних запитів (читання або запису), причому чергу запитів завжди активна. Що особливо важливо, AGP-специфікація не нав'язує межі довжини черги запитів, ця межа визначається можливостями системної реалізації. Для конвеєрної AGP-обробки характерна незв'язаність фаз адреси і даних. (Див. рис. 5)

Інше важливе розходження між AGP і PCI - техніка подвійний синхронізації, використовувана для досягнення швидкості передачі даних з тактовою частотою 133 Мгц. Непо-безпосередніх з'єднання графічного акселератора і чіпа системної логіки спростить не тільки електричну середу їх взаємодії, а й забезпечить гарний навантажувальний узгодження, таким чином, відкривається можливість здійснювати синхронізацію від імпульсів одного і того ж задає тактового генератора частотою 66МГц як по передньому фронту імпульсу, так і по задньому.

За рахунок цього і з'являється можливість синхронізації по стробі 66 Мгц і 133 Мгц. При цьому передача даних на частоті 66 Мгц відповідає деякої розрахункової специфікації 66 Мгц шини PCI, а режим AGP-133 вимагає додаткового інтерфейсу - Intel додає 8-розрядну адресну шину (SBA Bus), причому адреси і дані демультіплексіровани, а адресація по шині SBA служить виключно для передачі AGP-запитів доступу в системну пам'ять. На частоті 133 МГц AGP досягає максимальної пропускної здатності 533 Мбайт / с. Очевидно, що принцип подвійного синхронізації пред'являє особливі вимоги до якості імпульсів задаючого генератора.

Текстурні дані, які планується завантажувати в основну пам'ять, повинні бути безперервними з точки зору тривимірного програми та графічного акселератора. Типова текстура розмірністю 256х256 пікселів і 16 біт на колір займає 128 Кбайт, і скільки таких текстур! Як розмістити їх безперервно у фізичній пам'яті? Windows такої можливості не надає. Рішення Intel: треба розташувати текстурні дані в системній пам'яті по-сторінковому по 4 Кб, а інформацію про їх місцезнаходження помістити в якусь область пам'яті - карту текстури, і потім розподілити ці ділянки у фізичній пам'яті (тут простежується явна аналогія з формуванням FAT - file allocation table на вінчестері). Таблицю такого перекладу віртуальної адреси у фізичний Intel назвав GART (Graphics Address Remapping Table). Intel в AGP встановить чіп, в якому і буде реалізована GART. Цей чіп названий 440LX і розробляється для взаємодії з процесором Klamath. GART потенційно досить великий. Опис 4 Мбайт текстурних даних вимагає 1024 запису по 4 байта кожна. Логічна специфікація AGP не описує, як GART буде формуватися цим чіпом. Натомість постачальник такого чіпа повинен забезпечити його драйвером, керуючим GART згідно викликам API (Application Programming Interface), що визначені в AGP-специфікації. Такий підхід повинен допомогти іншим постачальникам в розробці AGP - пристроїв, сумісних з Intel на системному рівні.

Отже, AGP - не універсальне рішення, а засіб оп-тимізації відеографіки шляхом більш повної реалізації можливостей графічних акселераторів. Це нововведення ніяк не позначиться на швидкодії шини PCI.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]