ЖУРНАЛ «СТА» №3/2007

3. Параллельная мультиплексируемая шина (A/D). 4. Иерархическая масштабируемость шины посредством PCIмостов. 5. Поддержка автоконфигурирования (PnP). 6. Возможность организации мультима- стерных систем . Что стоит за открытой спецификаци- ей? Серьёзное коллегиальное обсужде- ние проекта, как правило, гарантирую- щее выверенное и развивающееся тех- ническое решение. Кроме того, это поддержка элементной базы многими производителями и, как объективное следствие, снижение себестоимости этой шины. Можно ли говорить, что у шины PCI удачная судьба? Безусловно! На текущий момент это самая востре- бованная шина в промышленной авто- матизации, и надёжность этого техни- ческого решения подтверждена време- нем . Как один из «индикаторов», под- тверждающих этот факт, можно назвать тотальный перевод компанией Advantech вновь разрабатываемых и по- ставляемых периферийных плат вво- давывода на эту шину. За этим шагом стоит сухая прагматичная статистика. Синхронность (читай — детермини- рованность) в любом случае работает на надёжность, так как позволяет про- считывать возможный временной ба- ланс на шине. Конечно, за всё нужно платить, и по- этому выдвигают жёсткие требования по рассогласованию линий CLK (от- дельный подвод к каждому разъёму, так как рассогласование при частоте шины 33 МГц — не более 2 нс, для 66 МГц — не более 1 нс). Вспомним и пропускную способ- ность шины: умножим разрядность на частоту и получим 132/264 Мбайт и 264/528 Мбайт для возможных сочета- ний частот и разрядности шины. Ко- нечно, это теоретически максимально возможные величины, накладные рас- ходы шины уменьшают реальные зна- чения, и всё же это серьёзные показа- тели (при потоковых передачах) по от- ношению к значениям шины ISA. Но самым важным моментом специфика- ции PCI, отражённым в пункте 2, кото- рый, на мой взгляд, както часто оста- ется в тени, является контроль чётно- сти (используются сигналы шины PAR и PAR64). Эта «встроенная» возмож- ность является одним из основных мо- ментов, обеспечивающих высокую надёжность (достоверность данных) высокоскоростной шины PCI . Технология мультиплексирования па- раллельной шины позволяет даже в случае использования 64битовой ши- ны A/D разрабатывать компактные ре- шения (3U CompactPCI) . В автоматизации возможность мас- штабирования технического решения почти всегда является необходимым качеством грамотно спроектированной системы. Системы c шиной PCI масштабиру- ются путём использования мостов (PCItoPCI Bridge). Понятно, что в силу необходимости выдерживания определённых времен- ных диаграмм наращивание, в принци- пе, не может быть бесконечным про- цессом, но на текущий момент сущест- вуют системы с числом слотов 20. В шину PCI в силу архитектурных и программных требований специфика- ции заложены возможности конфигу- рирования (перераспределения) сис- темных ресурсов, к которым относятся пространство адресов памяти, вво- давывода и самый дорогой системный ресурс – прерывания. Независимый от аппаратной реализации механизм управления шиной PCI обеспечивается вызовом соответствующих функций PCI BIOS. В основном функции PCI BIOS (функции 0B1xxh, прерывание 1Ah) обеспечивают работу с конфигу- рационным пространством шины PCI (порядка 10 функций) и генерацию специальных циклов на этой шине (0B106h). Заголовок конфигурацион- ного пространства устройства (функ- ции) PCI изображён на рис. 1. На рис. 1 голубым цветом выделена область заголовка конфигурационного пространства, обязательная для всех устройств, она присутствует всегда и не зависит от типа устройства. Зелёным цветом выделена область, значение ко- торой определяется функционально- стью конкретного устройства (опреде- ляется значением поля тип заголов- ка/Header Type : 0 – устройство, 01 — стандартный мост PCItoPCI, 02 – мост к одному из интерфейсов карт расширения) и розовым цветом — об- ласть, определяемая пользователем. Чётко формализованный алгоритм автоконфигурирования (речь идёт о технологии PnP), безусловно, является положительным фактором, так как ми- нимизирует требования к операцион- ной системе (ОС), связанные с вопро- сами распределения системных ресур- сов. В то же время поддержка в PCI BIOS всех необходимых режимов управления шиной PCI даёт возмож- ность гибко подходить к этому вопросу и при необходимости позволяет ОС пе- рераспределять области вводавывода и памяти с учётом специфики конкрет- ной ОС. Для более точного понимания специфики положения, описанной в п. 6, необходимо подробнее напомнить основные детали архитектуры шины PCI и связанные с ней особенности инициализации систем на её основе. Шина PCI (Peripheral Component Interconnected Local Bus) — это ло- кальная шина, соединяющая перифе- рийные компоненты. Подчеркнём, что понятие компонента включает в себя как микросхемы, напаянные на сис- темной плате и являющиеся неотъем- лемой её частью, так и дополнитель- ные устройства, устанавливаемые в слот шины. Иногда при отсутствии разъёмов на плате разработчики както упускают из вида наличие этой внутренней шины на процессорной ОБ ЗО Р / АППА РАТ НЫ Е С Р Е Д С Т В А 25 СТА 3/2007 www.cta.ru 31 24 23 16 15 8 7 0 Идентификатор устройства Идентификатор производителя Регистр состояния Регистр команд Код класса устройства Версия Регистр тестируемого устройства Тип заголовка Время задержки Размер строки кэша Регистры базового адреса Указатель на структуру, описывающую комбинированное устройство PCI + дополнительная шина Идентификатор подмножества устройства Идентификатор подмножества производителя Базовый адрес области расширенной поддержки устройства Зарезервировано Зарезервировано Указатель области свойств Задержка доступа к шине Время доступа к шине Вывод прерывания Линия прерывания Регистры, специфичные для конкретного устройства Рис. 1. Заголовок конфигурационного пространства устройства PCI

RkJQdWJsaXNoZXIy MTQ4NjUy