Чтение онлайн

на главную

Жанры

Аппаратные интерфейсы ПК. Энциклопедия

Гук Михаил Юрьевич

Шрифт:

В спецификации AGP8X предполагаются следующие основные отличия:

♦ введен новый режим передачи по шинам AD и SBA — 8х, обеспечивающий пиковую производительность 2,132 Гбайт/с;

♦ исключены команды длинного чтения и записи;

♦ исключены команды высокого приоритета (и упразднены сами понятия низ кого и высокого приоритета);

♦ исключена возможность подачи команд с помощью сигнала

РIРЕ#
;

♦ предпринимаются меры по обеспечению когерентности при обращениях к памяти, не лежащей в области GART;

♦ несколько изменены протоколы передачи данных, применяется динамическое инвертирование шины данных для минимизации переключений.

Дополнительно предполагается введение поддержки изохронных передач; возможность установки нескольких портов AGP;

возможность поддержки разных размеров страниц, описанных в GART; обеспечение когерентности при обращениях к определенным страницам.

6.4. Интерфейс LPC

Интерфейс LPC (Low Pin Count — малое число выводов) предназначен для локального подключения устройств, ранее использовавших шину X-Bus или ISA: контроллеров НГМД, последовательных и параллельных портов, клавиатуры, аудиокодека, BIOS и т.п. Введение нового интерфейса обусловлено изживанием шины ISA с ее большим числом сигналов и неудобной асинхронностью. Интерфейс обеспечивает те же циклы обращения, что и ISA: чтение-запись памяти и ввода-вывода, DMA и прямое управление шиной (bus mastering). Устройства могут вырабатывать запросы прерываний. В отличие от ISA/X-Bus с их 24-битной шиной адреса, обеспечивающей адресацию лишь в пределах первых 16 Мбайт памяти, интерфейс LPC имеет 32-битную адресацию памяти, что обеспечивает доступ к 4 Гбайт памяти. 16-битная адресация портов обеспечивает доступ ко всему пространству 64 К портов. Интерфейс синхронизирован с шиной PCI, но устройства могут вводить произвольное число тактов ожидания. Интерфейс программно прозрачен — как и для ISA/X-Bus, не требует каких-либо драйверов. Контроллер интерфейса LPC является устройством-мостом PCI. По пропускной способности интерфейс практически эквивалентен этим шинам. В спецификации LPC 1.0 приводится расчет пропускной способности интерфейса и устройств, его использующих. При наличии буферов FIFO интерфейс наиболее выгодно использовать в режиме DMA. В этом случае главным потребителем будет LPT-порт — при скорости передачи данных 2 Мбайт/с он займет 47% полосы интерфейса. Следующим будет инфракрасный порт — 4 Мбит/с (11,4%). Остальным устройствам (контроллер НГМД, СОМ-порт, аудиокодек) требуются еще меньшие доли, в результате они занимают до 75% полосы при одновременной работе. Таким образом, перевод этих устройств с ISA/X-Bus на LPC не должен вызывать проблем производительности более острых, чем были на старых шинах.

Интерфейс имеет всего 7 обязательных сигналов:

♦ 

LAD[3:0]
— двунаправленная мультиплексированная шина данных;

♦ 

LFRAME#
— индикатор начала и конца цикла, управляемый хостом;

♦ 

LRESET#
сигнал сброса, тот же, что и
RST#
на шине PCI;

♦ 

LCLK
— синхронизация (33 Мгц), тот же сигнал, что и
CLK
на шине PCI;

Дополнительные сигналы интерфейса LPC:

♦ 

LDRQ#
— кодированный запрос DMA/Bus Master от периферии;

♦ 

SERIRQ
— линия запросов прерывания (в последовательном коде), используется, если нет стандартных линий запросов IRQ в стиле ISA;

♦ 

CLKRUN#
— сигнал, используемый для указания на остановку шины (в мобильных системах), требуется только для устройств, нуждающихся в DMA/BusMaster в системах, способных останавливать шину PCI;

♦ 

РМЕ#
— событие системы управления потреблением (Power Management Event), может вводиться периферией, как и в PCI;

♦ 

LPCPD#
— Power Down, указание от хоста устройствам на подготовку к выключению питания;

♦ 

LSMI#
— запрос прерывания
SMI#
для повтора инструкции ввода-вывода.

Сигналы

LFRAME#
и
LAD[3:0]
синхронизированы (являются действительными) по фронту
LCLK
. По шине
LAD[3:0]
в каждом такте цикла передаются поля элементов протокола. Обобщенная временная диаграмма цикла обмена по LPC приведена на рис. 6.15. Начало каждого цикла хост отмечает сигналом
LFRAME#
, помещая на шину
LAD[3:0]
поле
START
. По сигналу
LFRAME#
все ПУ должны
прекратить управление шиной
LAD[3:0]
, а по коду поля
START
они должны декодировать последующие события как цикл шины. В следующем такте хост снимет сигнал
LFRAME#
и поместит на шину
LAD[3:0]
код типа цикла
CYCTYPE
. Сигнал
LFRAME#
может длиться и более одного такта, но признаком начала цикла (поля
START
) является последний такт перед снятием сигнала. С помощью сигнала
LFRAME#
хост может принудительно прервать цикл (например, по ошибке тайм-аута), выставив соответствующий код.

Рис. 6.15. Протокол LPC

В поле

START
возможны следующие коды:

♦ 0000 — начало цикла обращения хоста к устройству;

♦ 0010 — предоставление доступа ведущему устройству 0;

♦ 0011 — предоставление доступа ведущему устройству 1;

♦ 1111 — принудительное завершение цикла (abort).

Остальные коды зарезервированы.

Поле

CYCTYPE
задает тип и направление передачи. Бит 0 задает направление (0 — чтение, 1 — запись), биты [2:1] — тип обращения (00 — порт, 01 — память, 10 — DMA, 11 — резерв), бит 3 — резерв (0).

Поле

TAR
(Turn-Around) служит для смены «владельца» шины
LAD[3:0]
, оно занимает 2 такта. В первом такте прежний владелец помещает код 1111, во втором переводит буферы в третье состояние.

Поле

ADDR
служит для передачи адреса. В цикле памяти оно занимает 8 тактов (32 бита), в цикле ввода-вывода — 4 такта. Передача адреса начинается со старших битов (чтобы раньше срабатывал дешифратор адреса).

В поле

DATA
передаются данные. На каждый байт требуется 2 такта, передача начинается с младшей тетрады. Многобайтные передачи начинаются с младшего байта.

Поле

SYNC
служит для введения тактов ожидания устройством, к которому выполняется обращение. Оно может содержать следующие коды (остальные зарезервированы):

♦ 0000 — готовность (без ошибок), для DMA означает снятие запроса для данного канала;

♦ 0101 — короткое ожидание (несколько тактов);

♦ 0110 — длинное ожидание;

♦ 1001 — готовность и присутствие запроса для канала DMA (для других типов обращения недопустимо);

♦ 1010 — ошибка: данные переданы, но возникли условия, при которых на шинах PCI или ISA выработался бы сигнал

SERR#
или
IOCHK#
(для DMA также означает снятие сигнала запроса).

Поле синхронизации обеспечивает контроль передачи, введение тактов ожидания и механизм тайм-аутов. Начав цикл, хост читает поле синхронизации. Если в течение трех тактов адресованное устройство не ответит, хост считает, что его нет на шине, и прекращает транзакцию. Если приходит код короткого ожидания, хост дожидается его смены на готовность или ошибку, но после 8 тактов ожидания он прервет транзакцию по тайм-ауту. Код длинного ожидания может приходить сколь угодно долго, ответственность за отсутствие зависания ложится на адресованное устройство. При прямом управлении поле

SYNC
выставляется хостом, и устройство должно терпеливо ожидать готовности, без каких-либо тайм-аутов. В самом быстром варианте (без тактов ожидания) поле
SYNC
занимает один такт.

На рис. 6.16 приведена последовательность полей при обращениях хоста к памяти или портам (серым цветом помечены поля, вводимые устройством). Во всех этих обращениях передается по одному байту. Для чтения памяти, предполагая 5 тактов поля

SYNC
(время доступа к EPROM 120 нс), требуется 21 такт (0,63 мкс), что обеспечивает скорость чтения памяти 1,59 Мбайт/с. Если память конвейеризирована, то последующие обращения будут быстрее. Для записи в память поле
SYNC
займет 1 такт, а весь цикл — 17 тактов (0,51 мкс), что дает скорость записи 1,96 Мбайт/с. Обращения к портам за счет более короткой адресации и без тактов ожидания (1 такт SYNC) занимают по 13 тактов (0,39 мкс), что дает скорость 2,56 Мбайт/с для чтения и записи.

Поделиться:
Популярные книги

Камень. Книга пятая

Минин Станислав
5. Камень
Фантастика:
боевая фантастика
6.43
рейтинг книги
Камень. Книга пятая

Черный маг императора

Герда Александр
1. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора

Кодекс Крови. Книга VI

Борзых М.
6. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга VI

Отверженный. Дилогия

Опсокополос Алексис
Отверженный
Фантастика:
фэнтези
7.51
рейтинг книги
Отверженный. Дилогия

Неудержимый. Книга XIII

Боярский Андрей
13. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XIII

Черный Маг Императора 6

Герда Александр
6. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
7.00
рейтинг книги
Черный Маг Императора 6

Начальник милиции. Книга 3

Дамиров Рафаэль
3. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 3

На границе империй. Том 9. Часть 2

INDIGO
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 2

Лорд Системы 13

Токсик Саша
13. Лорд Системы
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Лорд Системы 13

На границе империй. Том 9. Часть 4

INDIGO
17. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 4

Вторая невеста Драконьего Лорда. Дилогия

Огненная Любовь
Вторая невеста Драконьего Лорда
Любовные романы:
любовно-фантастические романы
5.60
рейтинг книги
Вторая невеста Драконьего Лорда. Дилогия

Неудержимый. Книга X

Боярский Андрей
10. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга X

Гарем вне закона 18+

Тесленок Кирилл Геннадьевич
1. Гарем вне закона
Фантастика:
фэнтези
юмористическая фантастика
6.73
рейтинг книги
Гарем вне закона 18+

В зоне особого внимания

Иванов Дмитрий
12. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
В зоне особого внимания