|
Шина PCI
Для компьютеров с процессором
Pentium корпорацией Intel в 1992 г.2 была разработана шина расширения
PCI (Peripheral Component Interconnect), которая являлась в то время совершенно
новой шиной, а не просто модернизацией шины ISA. Универсальность и независимость
от аппаратной части позволили использовать ее не только с процессорами л;86,
но и, например, с процессорами PowerPC.
В основе принципа организации
шины PCI лежит идея применения мостов (Bridge) между разными шинами в компьютере,
например, она применяется для согласования протоколов между шиной ISA и шиной
PCI (PCI to ISA Bridge). Шина PCI является независимой от других шин и позволяет
осуществлять связь между любыми узлами.
Наиболее интересной особенностью
шины PCI является принцип Bus Mastering, когда внешнее устройство без помощи
центрального процессора может управлять шиной, становясь главным устройством
при передаче данных. То есть в компьютере может одновременно (без временного
разделения) выполняться, например, две задачи — процессор занимается одной задачей,
а контроллер винчестера загружает данные в память через шину PCI (в какой-то
степени это похоже на режим прямого доступа к памяти DMA).
Чтобы освободить процессор
от работы по пересылке данных от периферийных устройств в оперативную память
и обратно, используют контроллер DMA (Direct Memory Access). При использовании
режима DMA различные устройства и ОЗУ обмениваются данными через каналы прямого
доступа к памяти без использования ресурсов процессора. В компьютерах, начиная
с IBM PC AT, имеется 7 каналов (4 канала от 1-го контроллера DMA и 3 канала
от 2-го). Во время процесса пересылки данных процессор может заниматься другими
задачами. Например, звуковая карта получает данные по каналу DMA1, а в это время
процессор используется для обработки данных в офисных приложениях.
В отличие от калькулятора,
который может реагировать только на нажатие кнопок, центральный процессор, кроме
обсчета данных текущей задачи, вынужден реагировать на самые разнообразные внешние
сигналы — события. Например, нажатия клавиш клавиатуры, движения мыши и т. д.
Чтобы процессор мог на время прервать свою текущую работу и выполнить обработку
поступившего сигнала, используется система прерываний (Interrupts). Начиная
с компьютеров IBM PC AT, для обработки запросов на прерывание текущей задачи
используются два контроллера, которые позволяют использовать 15 линий прерываний.
Первый контроллер обрабатывает прерывания от линий IRQ0 до IRQ7 (IRQ2 используется
для подключения второго контроллера прерываний), а второй контроллер — от IRQ8
до IRQ 15. Стандартное распределение аппаратных прерываний приведено в табл.
(существуют программные прерывания, с которыми работает BIOS).
Стандартное
распределение аппаратных прерываний
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Каскадное прерывание
от второго контроллера
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Возвращаясь *: шине PCI,
рассмсотрим рис. , а, который иллюстрирует архитектуру системной платы,
построенной на принципе мостов. На рисунке хорошо видно, что шина PCI как бы
делит узлы компьютера на две части — скоростные блоки, а это оперативная память
и видеоподсистема, отделены шиной PCI от устройств, которые могут "подождать".
Фактически, шина PCI стала "стержнем" в персональном компьютере с
процессором х86, на который "подвешиваются" все остальные узлы.
Так как еще до внедрения
шины PCI производители системных плат использовали чипсеты, которые, как минимум,
состояли-из двух микросхем, то было придумано названия South Bridge (южный мост)
и North Bridge (северный
мост). На рис. , а южный мост, в котором установлена микросхема VT82C686A,
используется для связи между внешними устройствами и интерфейсами (в том числе,
микросхемой BIOS и шиной ISA), а северный мост, в котором применена микросхема
VT8501MVP4, организует обмен между процессором и узлами, которые требуют наибольшего
быстродействия.
Примечание
При появлении новых
процессоров, модулей памяти и пр. всегда разрабатывается новый чипсет, который
поддерживает аппаратные новинки. Но практически все чипсеты, начиная с Pentium,
в настоящее время придерживаются архитектуры, показанной на рис. 4.6. Конечно,
у того или иного чипсета всегда имеется ряд различий, но все основные принципы
построения остаются неизменными, это хорошо видно на примере шины AGP (см. разд.
"Шина AGP").
На рис., б показана
архитектура современной системной платы на чипсете VIA KT400, предназначенной
для процессора AMD Athlon XP. Обратите внимание, что шина PCI уже не разделяет
компьютер "пополам", теперь северный и южный мосты соединяются высокоскоростной
магистралью, в частности, для чипсетов VIA — это 8х V-Link (хотя, в остальном,
принципы остались теми же). Кроме того, не используется шина ISA.
Так как между южным и северным
мостами существует четкое разделение функций, на системной плате могут устанавливаться
реализующие эти мосты микросхемы от разных производителей. Конечно, не все тут
так просто, как показано на рис. 4.6. Следует отметить, что оба моста не являются
полностью независимыми .друг от друга, как, например, два винчестера, а имеют
общие линии синхронизации и управления, кроме того, южный мост может "общаться"
с процессором, минуя северный мост.
Существует несколько спецификаций
шины PCI, которые определяют конструкцию слотов расширения, разрядность, тактовую
частоту и пр. В соответствии со спецификацией PCI 1.0 используется 32-разрядная
шина, назначение контактов приведено в табл. На рис. показаны два варианта
исполнения слотов, которые различаются ключами, позволяющими указывать, для
какого напряжения питания (5 или 3,3 В) рассчитаны данный слот и плата расширения.
Для универсального случая на плате расширения могут быть две прорези. В спецификации
PCI 2.0 оговорена возможность увеличения разрядности шины до 64, что влечет
за собой добавление контактов в слоте. Заметим, что чаще всего используются
короткие слоты, что позволяет уменьшить стоимость системной платы.
32-разрядная шина PCI может
работать в 64-разрядном режиме, но в этом случае используется временное мультиплексирование.
Тактовая частота шины может составлять 33 и 66 МГц. Учитывая разрядность и тактовую
частоту, подсчитаем пиковую производительность:
- 132 Мбайт/с при 32
разрядах и частоте 33 МГц;
- 264 Мбайт/с при 32 разрядах
и частоте 66 МГц;
- 264 Мбайт/с при 64
разрядах и частоте 33 МГц;
- 528 Мбайт/с при 64 разрядах
и частоте 66 МГц.
Одной из важных особенностей
шины PCI является поддержка режима Plug and Play, т. е. возможности распознавать
конфигурацию компьютера при включении питания. Такой режим упрощает для пользователя
установку новых устройств, возлагая анализ новой конфигурации на шину PCI и
операционную систему. В идеале — установил и включил. Но, увы, различных производителей
много, а количество проданных разнообразных устройств не поддается точному учету,
поэтому пользователю очень часто надо подсказывать операционной системе, что
же такого новенького установлено в компьютер.
Назначение
контактов 32-разрядного слота PCI
|
|