Основы микропроцессорной техники

         

Другие интерфейсы компьютера


Интерфейс шины PCI (Peripheral Component Interconnect bus) стал широко применяться с появлением процессоров Pentium. Шина PCI дает компьютеру возможность наиболее быстро общаться с внешним миром, так как она существенно превосходит по быстродействию шину ISA. Предложенная в начале как локальная шина для дополнения к основной магистрали, PCI, тем не менее, обладает всеми достоинствами универсальной системной магистрали.

Шина PCI имеет два варианта: 32-разрядный (в нем используется 124-контактный разъем) и 64-разрядный (188-контактный разъем). При этом гарантируется как прямая, так и обратная совместимость 32- и 64-разрядных устройств. Чаще всего применяется 32-разрядный вариант PCI.

Тактовая частота PCI составляет 33 МГц (однако допускается и частота 66 МГц). Максимальная теоретически возможная скорость обмена при тактовой частоте 33 МГц достигает 132 или 264 Мбайт/с для 32 и 64 разрядов данных, соответственно, что в 20 раз превышает пропускную способность ISA. Предусмотрена возможность включения плат с напряжением питания как 5 В, так и 3,3 В (в раздельные разъемы). На магистрали предусмотрен арбитраж, то есть возможность поочередного захвата шины несколькими задатчиками, с разрешением конфликтов между ними. Предусмотрен высокоскоростной обмен по магистрали без участия процессора. Возможна автоконфигурация, то есть автоматическое распределение ресурсов между включенными платами (по принципу PnP). Каждое из устройств шины может захватить ее и провести необходимый обмен.

Шина PCI представляет собой открытый непатентованный стандарт, который поддерживают все основные производители персональных компьютеров и периферийных контроллеров. Сейчас она рассматривается как основа для таких распространенных компьютерных платформ, как DOS/Windows, Macintosh и UNIX. Ведущие производители микросхем уже выпускают специальные комплекты микросхем для ее поддержки. Независимость от типа процессора обещает шине PCI большое будущее. Сейчас она занимает второе место по популярности после ISA.


Большим недостатком шины PCI по сравнению с ISA является ограниченное количество устройств на шине (не более четырех), для большего количества устройств необходимо применение мостов PCI—PCI. Так как в компьютере одним из PCI-устройств является контроллер шины (то есть центральный процессор), для подключения карт расширения остается всего три разъема (слота). Один из PCI-слотов, как правило, используется для подключения контроллера дисплея, другой чаще всего применяется для включения контроллера локальной сети. Поэтому, несмотря на потенциально большие возможности PCI, в компьютере для дополнительных карт расширения остается всего один слот. К тому же надо учесть, что разработка и отладка PCI-устройств гораздо сложнее, чем ISA-устройств, а большее быстродействие PCI по сравнению с ISA нужно далеко не для всех задач. Поэтому о полном вытеснении шины ISA пока что речь не идет.

Шина PCI относится к мультиплексированным шинам, она имеет полностью мультиплексированную шину адреса/данных. При этом адрес может быть 32 разрядным или 64-разрядным (он передается по 32-разрядной шине за два такта, сначала младшие разряды, затем старшие) Точно так же и данные могут передаваться как 32-разрядные, так и 64-разрядные (за два такта при 32-разрядной шине). В 64-разрядной версии PCI шина адреса/данных имеет 64 разряда.

Основной режим обмена по шине — синхронный, тактируемый положительными фронтами тактового сигнала шины, но возможен и асинхронный обмен (как и в случае ISA). В цикл обмена (или транзакцию) входит фаза адреса (в начале) длительностью один такт и фаза данных длительностью в один или несколько тактов.

Основные сигналы шины PCI следующие:

  • AD0…AD31 — шина адреса/данных. Адрес передается в начале цикла, затем — данные;
  • -C/BE0…-C/BE3 (Command/Byte Enable) — четыре линии, которые в фазе адреса определяют один из 16 возможных типов цикла передачи данных (табл. 8.9), а в фазе данных определяют действительность байтов данных;
  • -FRAME — строб адреса, активен во время передачи данных;
  • -IRDY (Initiator Ready) — готовность задатчика (инициатора обмена) к обмену данными;
  • -TRDY (Target Ready) — готовность исполнителя (целевого устройства) к обмену данными;
  • -DEVSEL (Device Select) — подтверждение опознания адреса от исполнителя;
  • -STOP — запрос на останов текущего цикла от исполнителя к задатчику;
  • -RST — сброс всех устройств;
  • CLK — тактовый сигнал шины;
  • PAR — бит четности для линий AD0…AD31 и C/BE0… C/BE3;
  • -PERR — сигнал ошибки четности;
  • -REQ0…-REQ3 — запрос от PCI-устройств на захват шины;
  • -GNT0…-GNT3 — предоставление шины PCI-устройствам;
  • -REQ64 — запрос на 64-битный обмен;
  • -ASK64 — подтверждение 64-разрядного обмена;
  • -INTRA, -INTRB, -INTRC, -INTRD — линии запросов прерываний;
  • IDSEL — выбор устройства-исполнителя в циклах записи и чтения конфигурации.
Таблица 8.9. Типы циклов обмена PCI.Сигналы С/ВЕКоманда
0000Подтверждение прерывания
0001Специальный цикл
0010Чтение порта ввода/вывода
0011Запись в порт ввода/вывода
0100…0101Зарезервировано
0110Чтение из памяти
0111Запись в память
1000…1001Зарезервировано
1010Чтение конфигурации
1011Запись конфигурации
1100Множественное чтение памяти
1101Двойной цикл адреса
1110Чтение строки памяти
1111Запись в память и проверка
<


p> Операция конфигурирования (циклы записи и чтения конфигурации) служит для автоматического распределения ресурсов компьютера при включении питания. В этих циклах для выбора (адресации) конфигурируемого устройства-исполнителя применяется специальный сигнал IDSEL, передаваемый в фазе адреса. Каждому PCI-устройству соответствует 256-байтная область конфигурации, где находится информация как о самом устройстве, так и о выделенных ему ресурсах. Область конфигурации не относится ни к адресному пространству памяти, ни к адресному пространству устройств ввода/вывода. Компьютер распределяет ресурсы между устройствами в соответствии с их особенностями, потребностями и ограничениями.

При синхронном обмене (рис. 8.11) в начале цикла (адресная фаза) по шине AD передается код адреса, а по линиям C/BE — код типа цикла (команда). Действительность адреса определяется сигналом -FRAME (по положительному фронту CLK после начала сигнала -FRAME). После опознания адреса исполнитель выставляет сигнал подтверждения выборки -DEVSEL, после чего начинается фаза данных. То есть можно сказать, что адрес передается асинхронно. В фазе данных по шине данных передаются слова данных, тактируемые положительными фронтами сигнала CLK. Сигналы готовности -IRDY и -TRDY выставляются в начале фазы данных и остаются активными до окончания цикла. По линиям -C/BE в фазе данных передаются сигналы разрешения байтов (то есть определяется формат передаваемых данных). Перед последним тактом передачи данных задатчик снимает сигнал -FRAME, после чего снимаются сигналы -IRDY, -TRDY и -DEVSEL.


Рис. 8.11.  Синхронный обмен по шине PCI.

При асинхронном обмене по шине PCI (рис. 8.12) фаза адреса осуществляется как в предыдущем случае, а в фазе данных как задатчик, так и исполнитель могут приостанавливать обмен снятием своих сигналов готовности (соответственно, -IRDY и -TRDY). Цикл обмена (транзакция) при этом удлиняется за счет введения дополнительных тактов ожидания. Сигналы -FRAME и -DEVSEL вырабатываются аналогично случаю синхронного обмена.




Рис. 8.12.  Асинхронный обмен по шине PCI.

И в заключение несколько слов еще о двух внешних интерфейсах компьютера.

Стандарт интерфейса PCMCIA (Personal Computer Memory Card International Association) или PC-card был предложен в 1990 году для портативных компьютеров (notebook) и используется для подключения к ним различных внешних устройств: модулей памяти (в том числе флэш-памяти), модемов и факс-модемов, сетевых контроллеров, дополнительных накопителей и т.д. PC-card-адаптеры отличаются очень малыми габаритами (с обычную кредитную карточку) и довольно высокой, по сравнению с другими аналогичными устройствами, стоимостью. Сейчас уже выпускаются PC-card-адаптеры для обычных (настольных) компьютеров. Если первая версия PС-card была предназначена только для модулей памяти, то вторая (1991 год) позволяла включать устройства ввода/вывода и поддерживала два напряжения питания (5 В и 3,3 В). Последние разработки поддерживают режим PnP.

Для подключения PCMCIA-карт используется 68-контактный разъем. Разрядность передаваемых данных — 16, количество разрядов адреса — 26, что позволяет адресовать до 64 Мбайт памяти. Тактовая частота шины - до 33 МГц. Стандарт определяет три различных длины контактов разъема для обеспечения правильной последовательности подачи напряжения питания при подключении и отключении карты во время работы компьютера. Компьютер имеет обычно 2—3 слота (разъема) для PC-card. Стандарт предусматривает автоматическое распределение ресурсов компьютера для устройств PC-card (режим PnP).

Последовательный интерфейс USB (Universal Serial Bus) специально разрабатывался для простого подключения периферийных устройств. Шина USB представляет собой 4-проводную линию связи с пропускной способностью 1,5 Мбайт/с (12 Мбит/с). К ней можно подключать до 127 устройств по древовидной схеме с использованием одного или нескольких распределительных устройств. Длина соединительного кабеля между отдельными устройствами USB может достигать 5 метров. В шине USB реализована поддержка режима PnP и возможность «горячего» подключения (без выключения питания).В данном стандарте уже выпускаются модемы, клавиатуры, мыши, сканеры, цифровые фотокамеры и т.д. Важно, что в шине предусмотрена подача на подключаемые устройства питающего напряжения (в последовательном интерфейсе RS-232C, например, этого нет).


Содержание раздела