Сделай Сам Свою Работу на 5

Иные конструктивы с шиной PCI





Шина PCI имеет и другие конструктивные исполнения; их спецификации доступ­ны на сайте www.pcisig.org (правда, только для членов данной организации либо за деньги).


196_____________________________________ Глава 6. Шины и карты расширения

Low-Profile PCI — низкопрофильный вариант карты PCI с обычным разъемом, но измененной крепежной скобкой. Эти карты можно устанавливать вертикально (без переходника riser card) даже в низкопрофильные корпуса (например, 19" формата высотой 2U). Для этих карт предусматривается напряжение питания интерфейсных схем только 3,3 В (но шина питания 5 В сохраняется).

Small PCI (SPCI) — спецификация PCI в миниатюрном исполнении, прежде на­зывавшаяся SFFPCI (Small Form-Factor). Эта спецификация, предназначенная, в основном, для портативных компьютеров, логически совпадает с обычной ши­ной PCI. Шина 32-битная, 64-битное расширение не предусматривается, и при час­тоте 33 МГц обеспечивается пропускная способность 132 Мбайт/с. Как и на всех шинах PCI/здесь поддерживается прямое управление (bus mastering). В дополне­ние к обычному набору сигналов появился новый CLKRUN, с помощью которого хост и устройства могут управлять частотой синхронизации в интересах энерго­сбережения. По размерам карта SPCI совпадает с PC Card и Card Bus, но специ­альные ключи предотвращают ошибки подключения. Для подключения карт SPCI на системной плате устанавливается двухрядный 108-контактный штырьковый разъем с шагом контактов 2 мм. Карта расширения может подключаться к нему непосредственно, но также может использоваться переходник с двусторонними ленточными контактами с шагом 0,8 мм. Шина SPCI является внутренней (карты расширения находятся под крышкой корпуса и устанавливаются изготовителем при выключенном питании) и поэтому не нацелена на замену Card BUS (шина для внешних подключений с возможностью горячей замены). Карты SPCI могут быть трех видов: с питанием 5 В, 3,3 В и универсальные 5/3,3 В. Благодаря умень­шению размеров (длины проводников) понижены требования к мощности сигна­лов. Карты SPCI позволяют использовать преимущества модульных решений (можно разгрузить системную плату), обеспечивая высокую производительность обмена (чего не обеспечивает Card Bus).



Mini PCI Specification — малогабаритный вариант карт PCI (2,75"xl,81"xO,22"). Логически и электрически соответствует PCI (32 бит), дополнительно используя сигнал CLKRUN для снижения энергопотребления и без сигналов JTAG. Имеет до­полнительные сигналы для аудио- и видео-применений.



PCI-X — спецификация шины с высокой пропускной способностью, достигающей 1 Гбайт/с: тактовая частота 133 МГц и разрядность 64 бит. Разработана с учетом совместимости шины со старыми устройствами и новыми устройствами с обыч­ной шиной PCI, для чего при наличии в системе хоть одного из «тихоходных» компонентов частота понижается до обычных 66 или 33 МГц. Кроме повышения тактовой частоты, имеются нововведения в протоколе шины (например, расщеп­ленные транзакции), повышающие эффективность ее использования. Для устройств промышленного назначения в начале 1995 года был принят стан­дарт Compact PCI. Шина Compact PCI (cPCI) разрабатывалась на основе специ­фикации PCI 2.1. Этот стандарт принят организацией производителей промыш­ленных компьютеров PCIMG (PCI Industrial Computer Manufacturers Group). Шина отличается большим количеством поддерживаемых слотов: 8 против 4. Появились новые 4 пары сигналов запросов и предоставления управления шиной.


6.2. Шина PCI_______________________________________________________ 197

Шина поддерживает 32-битный и 64-битный обмен (с индивидуальным разреше­нием байт). При частоте шины 33 МГц максимальная пропускная способность составляет 133 Мбайт/с для 32 бит и 266 Мбайт/с для 64 бит (в середине пакет­ного цикла). Возможна работа на частоте 66 МГц. Шина поддерживает специфи­кацию PnP. Кроме того, в шине возможно применение географической адресации, при этом адрес модуля (на который он отзывается при программном обращении) определяется его положением в каркасе. Для этого на коннекторе J1 имеются кон­такты GAO...GA4, коммутацией которых на «землю» для каждого слота задается его двоичный адрес. Географическая адресация позволяет переставлять однотип­ные модули, не заботясь о конфигурировании их адресов (хорошая альтернатива системе PnP — модуль «встанет» всегда в одни и те же адреса, которые без физи­ческого вмешательства больше не изменятся). Конструктивно платы Compact PCI представляют собой еврокарты высотой 3U (100 х 160 мм) с одним коннектором (J1) или 6U (233 х 160 мм) с двумя коннекторами (Ji n J2). Коннекторы — 7-ряд-ные штырьковые разъемы с шагом 2 мм между контактами, на кросс-плате — вилка, на модулях — розетки. Контакты коннекторов имеют разную длину: более длин­ные контакты цепей питания при установке модуля соединяются раньше, а при вынимании разъединяются позже, чем сигнальные. Такое решение позволяет про­изводить «горячую» замену модулей. Собственно шина использует только один коннектор (J1), причем в 32-битном варианте не полностью — часть контактов может задействовать пользователь. 64-битная шина использует коннектор полно­стью. Одно посадочное место на кросс-плате резервируется под контроллер шины, на который возлагаются функции арбитража и синхронизации. На его коннекто­ре шиной используется большее число контактов, чем на остальных. У больших плат коннектор J2 предоставляется пользователю, а между коннекторами J1 и J2 может устанавливаться 95-контактный коннектор J3. Конструкция коннекторов позволяет для J2 применять специфические модификации (например, с разделя­ющим экраном и механическими ключами). В шине предусматривается наличие независимых источников питания +5 В, +3,3 В и ±12 В.



На базе шины Compact PCI фирмой National Instruments разработана специфика­ция PXI (PCI extensions for Instrumentation — расширение PCI для инструмен­тальных систем) в тех же конструктивах. В шине PXI часть контактов, определен­ных в Compact PCI как свободные, предназначаются для дополнительных шин. Шина Trigger Bus (8 линий) звездообразно соединяет слот своего контроллера (первый после системного контроллера PCI) с остальными слотами. Шина позво­ляет осуществлять синхронизацию разных модулей, что зачастую требуется в из­мерительных системах. Для прецизионной синхронизации имеется сигнал опор­ной частоты 10 МГц PXI_CLK, который звездообразно (с одинаковыми задержками распространения сигнала) разводится по слотам. В PXI определены локальные шины, предназначенные для связи соседних пар слотов. Каждая локальная шина имеет 13 линий, которые могут использоваться как для цифровых, так и аналого­вых (до 48 В) сигналов. Локальные шины объединяют смежные слоты попарно (исключая слот системного контроллера), образуя цепочку. Кроме механических и электрических характеристик PXI определяет ПО модулей: основной ОС счита­ется Windows NT/95, и модули должны поставляться с соответствующими драй-


198_____________________________________ Глава 6. Шины и карты расширения

верами. Это экономит время, необходимое для системной интеграции. Модули PXI совместимы с шиной Compact PCI, и модули Compact PCI — с шиной PXI. Однако все преимущества спецификации реализуются только при установке мо­дулей PXI в шину PXI.

Мосты PCI

Для соединения шины PCI с другими шинами и между собой применяются спе­циальные аппаратные средства—мосты PCI (PCIBridge). Главный мост (Host Bridge) используется для подключения PCI к системной шине (системной памяти и про­цессору), одноранговый мост (Peer-to-PeerBridge) — для соединения двух шин PCI.

Соединения нескольких шин PCI характерно для серверов — таким образом уве­личивают число подключаемых устройств. Мосты образуют иерархию шин, на вершине которой находится главная шина с нулевым номером. Главный мост чип­сета системной платы может соединять центр (процессор и память) с нескольки­ми равноранговыми шинами PCI, из которых условно главной будет шина с нуле­вым номером. Для подключения шин PCMCIA, CardBus, MCA, ISA/EISA, X-Bus и LPC используются специальные мосты, входящие в чипсеты системных плат или же являющиеся отдельными устройствами PCI (микросхемами). Мосты выполня­ют преобразование интерфейсов соединяемых ими шин, синхронизацию и буфе­ризацию обменов данных. Мосты (включая и мосты PCI-PCI) допускают различие частот синхронизации на соединяемых ими шинах.

Каждый мост программируется — ему указываются диапазоны адресов в простран­ствах памяти и ввода-вывода, отведенные устройствам его шин. Если адрес ЦУ текущей транзакции на одной шине (стороне) моста относится к шине противо­положной стороны, мост перенаправляет транзакцию на соответствующую шину и обеспечивает согласование протоколов шин. Таким образом, совокупность мостов PCI выполняет маршрутизацию (routing) обращений по связанным шинам. Счи­тается, что устройство с конкретным адресом может присутствовать только на одной из шин, а на какой именно, «знают» запрограммированные мосты. Решать задачу маршрутизации призван также сигнал DEVSEL*. Обращения, не востребован­ные абонентами PCI, могут быть перенаправлены, например, на шину ISA/EISA.

С мостами связаны понятия позитивного и субтрактивного декодирования адре­сов. Рядовые агенты PCI (устройства и мосты) отзываются только на обращения по адресам, принадлежащим областям, описанным в их конфигурационном про­странстве (через базовые адреса и диапазоны памяти или ввода-вывода). Такой способ декодирования называется позитивным. Мост с позитивным декодирова­нием (positive decoding) пропускает через себя только обращения, принадлежащие определенному списку, заданному в его конфигурационных регистрах. Мост с суб-трактивным декодированием (subtractive decoding) пропускает через себя обраще­ния, не относящиеся к другим устройствам. Его области прозрачности формируют­ся вычитанием (откуда и название) из общего пространства областей, описанных списком. Возможность субтрактивного декодирования имеется только у мостов определенного типа, и она является дополнением к позитивному декодированию.


6.2. Шина PCI_______________________________________________________ 199

Позитивное и субтрактивное декодирование относится только к обращениям, направленным в пространства памяти и ввода-вывода. Конфигурационные обраще­ния маршрутизируются с помощью номера шины, передаваемого в циклах типа 1 (см. п. 6.2.11): каждый мост «знает» номера всех шин, его окружающих. На каждой шине PCI должно присутствовать центральное устройство, выполня­ющее следующие функции:

♦ централизованный арбитраж — прием сигналов запроса REQx# от ведущих
устройств шины и предоставление им права на управление шиной сигналами
GNTx#;

♦ «подтягивание» управляющих сигналов к высокому уровню;

♦ субтрактивное декодирование адресов;

♦ генерация конфигурационных и специальных циклов по командам процессора
(с формированием индивидуальных сигналов IDSEL к адресуемому устройству PCI);

♦ формирование сигнала REQ64* в момент окончания сброса в качестве призна­
ка 64-битной шины (если она таковая).

Эти функции, как правило, возлагаются на мост, соединяющий данную шину с бо­лее высокими уровнями иерархии шин PCI. Кроме выполнения этих функций, обслуживающих конкретную шину, мосты решают задачи оптимизации переда­чи данных между подсистемами компьютера, и от качества решения этих задач существенно зависит общая производительность системы.

Одной из особенностей применения шины PCI с ее мостовыми соединениями является возможность действительно одновременного выполнения более одного обмена данными по непересекающимся путям — Concurrent PCI Transferring или PCI Concurrency. Например, во время взаимодействия процессора с памятью ве­дущее устройство шины PCI может обмениваться данными с другим устройством PCI. Этот пример одновременности обмена скорее теоретический, поскольку ве­дущее устройство шины PCI, как правило, обменивается данными с системной памятью. Более интересный случай — обмен графического адаптера, подключен­ного к порту AGP (родственнику PCI, см. п. 6.3), с памятью одновременно с обме­ном процессора с устройством PCI или, наоборот, загрузка данных процессором в графический адаптер одновременно с обменом между ведущим устройством шины PCI и системной памятью. Одновременность требует довольно сложной логики централизованного арбитража запросов всех агентов системы и различных ухищрений в буферизации данных. Одновременность реализуется не всеми чип­сетами (в описаниях она всегда специально подчеркивается) и может быть запре­щена настройками CMOS Setup.

Для экономии полосы пропускания шины (уменьшения числа бесполезно заня­тых тактов) при обращениях к устройствам медленных шин (например, ISA) мост может выполнять отложенные транзакции (delayed transaction). Работает этот ме­ханизм следующим образом. Инициатор, расположенный на «быстрой» шине (это может быть и главный мост), обращается к ЦУ на медленной шине, выставляя адрес и команду, а в командах записи еще и данные. Мост сохраняет эту информа-


200_____________________________________ Глава 6. Шины и карты расширения

цию в своих внутренних регистрах и «от имени ЦУ» вводит сигнал STOP* (пре­кращение типа «повтор»), что вынуждает инициатор быстро освободить шину. Тем временем мост выполняет транзакцию с настоящим ЦУ и сохраняет у себя результат ее выполнения (для команд чтения это будут данные). Инициатор, полу­чивший ответ «повтор», вынужден снова начать точно ту же транзакцию, и теперь на нее мост быстро ответит истинным результатом, полученным от ЦУ. В то время как мост выполняет длительную операцию обмена с медленным устройством, быстрая шина остается свободной для обслуживания других инициаторов. Если по каким-либо причинам ведущее устройство «забудет» выполнить повтор тран­закции, мост должен аннулировать полученные результаты. Аннулирование выпол­няется по таймеру (discard timer), отсчитывающему время от начала отложенной транзакции до ее повтора. Отложенные транзакции применимы к командам обра­щения к портам, конфигурационному пространству, подтверждению прерывания и к обычным обращениям к памяти.

Выделение специальных циклов чтения строк, множественного чтения и записи с инвалидацией позволяет контроллеру памяти предпринять определенные меры для оптимизации данных передач. Однако эти инструкции применяют только для обращений к памяти в «чистом виде» (имеющей свойство Pref etchable). Когда инициатор обращается к источнику данных, отделенному мостом, командами чте­ния строки или множественного чтения, мост может считать из источника данных больше, чем инициатор заберет от него в данной транзакции. Однако в конце транз­акции лишние данные в буфере моста проще всего аннулировать, поскольку до возможного последующего востребования в их реальном источнике они могут быть уже модифицированы. Более сложный мост может отслеживать и эти изме­нения, аннулируя лишь модифицированные данные. Обращения командами обыч­ного чтения памяти разрешают мосту считать только точно затребованное коли­чество данных. При этом возможности ускорения передач меньше, но не возникнет побочных эффектов от лишних чтений (чтение управляющих регистров, отобра­женных на память, может изменять их состояние).

Мосты, инициированные на одной стороне и обращающиеся к целевому устрой­ству на другой стороне, могут выполнять задержку передачи записи в память (posted write). При этом данные принимаются в буферы моста, и для инициатора транзакция завершится раньше, чем данные дойдут до реального получателя. Мост начнет транзакцию их доставки в удобное для другой стороны время. Порядок и количество байт, переданных получателем, обязательно должны совпадать с соот­ветствующими данными инициатора обмена. Кроме того, сохраняется очередность операций записи и чтения. Обращение по чтению через мост вызывает принуди­тельное освобождение буферов отложенной записи. Таким образом, инициатор имеет возможность принудительно вызвать доставку задержанных данных записи, выполняя операцию чтения «из-за моста». Записи в порты ввода-вывода отклады­вать имеет право только главный мост, но только для транзакций, инициирован­ных центральным процессором. Операции чтения, естественно, выполняются сра­зу, поскольку без получения данных они бессмысленны.


6.2. Шина PCI_______________________________________________________ 201

Мосты могут преобразовывать транслируемые ими транзакции записи в память с целью оптимизации пропускной способности шины. Так, несколько последова­тельных транзакций записи могут объединяться в одну пакетную, в которой лиш­ние записи могут блокироваться с помощью сигналов разрешения байтов. Напри­мер, последовательность одиночных записей двойных слов по адресам 0, 4, Ch может быть скомбинирована (write combining) в один пакет с начальным адресом О, а во время третьей фазы данных (когда предполагается не требуемый адрес 8) все сигналы С/ВЕ[3:0]# пассивны. Записи отдельных байтов в определенных случаях могут быть объединены (byte merging) в одну транзакцию. Так, например, последо­вательность записей байтов по адресам 3, 1, 0 и 2 может быть объединена в одну запись двойного слова, поскольку эти байты принадлежат одному адресуемому двойному слову. Комбинирование и объединение могут работать независимо (объединенные транзакции могут комбинироваться), однако эти преобразования не изменяют порядок следования физических записей в устройства. Наличие этих возможностей не обязательно — оно зависит от «ловкости» мостов. Цель преоб­разований — сократить число отдельных транзакций (каждая имеет по крайней мере одну «лишнюю» фазу адреса) и, по возможности, фаз данных. Устройства PCI должны нормально отрабатывать комбинирование записей — если устройство не допускает комбинирования, оно неправильно спроектировано. Если устройство не допускает объединения байтов, то оно в описании своей памяти должно иметь обнуленным бит Prefetchable.

С мостами PCI связано понятие VGA Palette Snooping — слежение за записью в палитры VGA, являющееся исключением из правила однозначной маршрутиза­ции обращений к памяти и вводу-выводу. Графическая карта в компьютере с ши­ной PCI обычно устанавливается в эту шину или в порт AGP, что логически экви­валентно установке в шину PCI. На VGA-карте имеются регистры палитр (Palette Registers), традиционно приписанные к пространству ввода-вывода. Если графи­ческая система содержит еще и карту смешения сигналов графического адаптера с сигналом «живого видео», перехватывая двоичную информацию о цвете теку­щего пиксела по шине VESA Feature Connector (снимаемую до регистра палитр), цветовая гамма будет определяться регистром палитр, размещенным на этой до­полнительной карте. Возникает ситуация, когда операция записи в регистр палитр должна отрабатываться одновременно и в графическом адаптере (на шине PCI или AGP), и в карте видеорасширения, которая может размещаться даже на другой шине (в том числе и ISA). В CMOS Setup может присутствовать параметр PCI VGA Palette Snoop. При его включении запись в порты ввода-вывода по адресу регистра палитр будет вызывать транзакцию не только на той шине, на которой установлен графический адаптер, но и на других шинах. Чтение же по этим адресам будет выполняться только с самим графическим адаптером. Реализация может возла­гаться на графическую карту PCI. Для этого она во время записи в регистр палитр фиксирует данные, но сигналы квитирования DEVSEL* и TRDY* не вырабатывает, в результате мост распространяет этот неопознанный запрос на шину ISA. В других реализациях мосту явно указывают на данное исключение, и он сам распростра­няет запись в регистры палитр на другие шины.


202_____________________________________ Глава 6. Шины и карты расширения

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.