logo
Иоффе отредактированные шпоры

Интерфейс pci

  1. Для решения каких задач предназначен интерфейс? В чем его недостатки при использовании в системах реального времени?

  2. Основные технические характеристики интерфейса.

  3. Какой способ организации шин адреса используется на магистрали?

  4. Какими средствами обеспечивается разделение адресного пространства?

  5. Состав и особенности шины команд.

  6. Какие дополнительные возможности обеспечивает многообразие команд?

  7. В чем отличие во взаимодействии ведущего и ведомого устройства при программном обмене на магистралях PCI и ISA?

  8. В чем принципиальное отличие шин прерываний PCI и ISA ? Сравнительная характеристика шин прерываний PCI и ISA.

  9. Почему снижается время реакции на запрос прерываний, если число источников больше четырех?

  10. В чем принципиальное отличие шин передачи управления PCI и ISA ? Какой арбитраж используется?

  11. Какие методы используются для повышения пропускной способности магистрали?

  12. Какие методы используются для повышения достоверности передаваемой информации?

  13. Какая структура пространства конфигураций? Каким образом выполняется обращение к этому пространству?

  14. Как реализуется принцип автоконфигурации на магистрали?

  15. Функции и назначение линий JTAG.

  16. С помощью каких средств обеспечивается согласование функциональных блоков с магистралью?

  1. Для решения каких задач предназначен интерфейс? В чем его недостатки при использовании в системах реального времени?

PCI предназначен для высокоскоростного обмена блочной информацией в режимах многопроцессорного типа (многопроцессорном режиме). Если у нас много модулей, то необходимо реализовать процедуру Полинга. Это необходимо учитывать, особенно, в системах реального времени. Недостаток –метод полинга.

PCI относится к классу высокоскоростных мезонинных интерфейсов и используется для быстрой передачи информации на короткие расстояния между подсистемами процессор-память и ПУ.

Наиболее эффективно применение PCI в системах, где главными являются блочные передачи. Однако интерфейс не является идеальной средой для систем реального времени, где очень важны скорости единичных передач и скорости обработки прерываний от большого числа источников ввода/вывода (многоканальные АЦП, ЦАП и тому подобное). В этом случае трафик на PCI снижается в несколько раз. Среднее время доступа к магистрали для единичных передач может составлять величину порядка 2-6 мкс.

  1. Основные технические характеристики интерфейса.

Магистраль синхронная, процессорно независимая.

Частота системного генератора 33, 66, 132 МГц.

Шины адреса и данных совмещенные. Идентификатор адреса отсутствует, адресная информация передаётся по первому синхроимпульсу, в процессе передачи данных. Разрядность шины адреса и данных 32, 64 бит.

Шина данных масштабируема (по байтно).

Шина адреса поддерживает раздельное адресное пространство (паять) ввода/вывода регистра конфигурации.

Шина команд использует смешанный способ кодирования в фазе адреса, по ней передаётся команда, кодируемая позиционно. В фазе данных идентификаторы длины передаваемого сообщения кодируются унитарно.

- частота синхронизации 33,66,133 MHz;

- пропускная способность: до 528 МВ/сек при 64-bit/66MHz.

- В PCI предусмотрено 3 типа модулей, отличающиеся питанием:5В, 3.3В, 5Вv3.3В.

- Возможность совместной работы/надежность

  1. Какие методы используются для повышения пропускной способности магистрали?

- Частота работы шины 33MHz или 66MHz позволяет обеспечить широкий диапазон пропускных способностей (с использованием пакетного режима);

- Метод линейных пакетов. Этот метод предполагает, что пакет информации считывается (или записывается) "одним куском", то есть адрес автоматически увеличивается для следующего байта. Естественным образом при этом увеличивается скорость передачи собственно данных за счет уменьшения числа передаваемых адресов.

  1. Какие методы используются для повышения достоверности передаваемой информации?

- контроль по четности (данные, адреса, команды);

- тестирующий интерфейс JTAG;

- расширенные линии взаимодействия между ведущем и ведомым модулем (сигнал готовности ведущего/ведомого модуля;

- останов/приостанов работы ведущего модуля по сигналу ведомого STOP)

  1. В чем отличие во взаимодействии ведущего и ведомого устройства при программном обмене на магистралях PCI и ISA?

При реализации возможности обмена в ISA необходимо анализировать сигналы REFRESH, TOCHRDY (готовность), Ows (0,25 мкс), MCS 16, IOC 16. Эти сигналы (кроме REFRESH) формируются модулем после дешифрации адреса и оказывают влияние на цикл обмена по магистрали. Наличие сигнала OWS указывает на отсутствие в цикле такта ожидания. Сигналы MCS16 и IDC16 задают цикл обмена шестнадцати разрядным словами (т.е. не надо анализировать сигналы BHE, АО, которые задают место операнда на линии данных). К числу недостатков использования RDY относятся: ограниченное время ожидания (не более 2-15мкс), отсутствие возможности контроля сигнала RDY программно для того, чтобы быть уверенными в работоспособности устройства и согласованности работы с программой. Обычно при работе с модулями, присоединёнными к магистрали, используется ввод/вывод по флангу готовности, а на вход RDY устанавливается «1». Адреса пользователей: 300-31F.

В шине PCI используется совершенно отличный от ISA способ передачи данных. Этот способ, называемый способом рукопожатия (handshake), заключается в том, что в системе определяется два устройства: передающее (Iniciator) и приемное (Target). Когда передающее устройство готово к передаче, оно выставляет данные на линии данных и сопровождает их соответствующим сигналом (Iniciator Ready), при этом приемное устройство записывает их (данные) в свои регистры и подает сигнал Target Ready, подтверждая запись данных и готовность к приему следующих. Установка всех сигналов производится строго в соответствии с тактовыми импульсами шины.

  1. Сравнительная характеристика шин прерываний PCI и ISA.

По спецификации PCI, на прерывания отведено четыре контакта. Это гораздо меньше, чем на ISA, где на 16-разрядной шине есть 11 входов запроса прерываний.

На шине ISA прерывания срабатывают по перепаду из "0" в "1". Просто установленный "1" прерывания не вызовет, поэтому, если одно устройство выставило сигнал, то другому бесполезно выставлять на эту же линию "1" - контроллер прерываний на нее не среагирует. Поэтому на ISA закон прост: одно устройство - одно прерывание.

На шине PCI выход запроса прерывания должен быть с открытым стоком, несколько выходов разных устройств объединяются по схеме "проводного И", то есть их выходы просто соединяются вместе и, если хотя бы на одном из них "0", то и на всей линии "0". Поэтому активный запрос прерывания на шине PCI - "0".

  1. Сравнительная характеристика шин передачи управления PCI и ISA.

В ISA ШПУ обслуживают два каскадно соединённых контроллера ПДП 8237А, один из которых – ведущий, другой – ведомый. Каналы ведущего контроллера (5-7) обеспечивают передачу 16-разрядных данных, а каналы ведомого (0-3)– 8-разрядных. ( рисунок 7)

Различие в разрядности каналов объясняется смещением точки присоединения 16 -разрядной шины адреса контроллера ШАК к шине адреса магистрали. В 8-разрядных каналах младший разряд ШАК присоединен к А0 ША, а в16-разрядных – к А1.

Контролер допускает довольно гибкую настройку на конкретную задачу. Он содержит 10 программно-доступных регистров, которые позволяют работать в следующих основных режимах: одиночная передача, блочная передача, автоинициализация, при которой данные установленного режима автоматически повторяются, передача по требованию, которая продолжается до тех пор, пока не снимется запрос DRQ или не установится разряд ТС в слове состояния, указывающий об окончании счета или не придет сигнал ЕОР*, режим память-память, обеспечивающий перемещение информации из одного участка памяти в другой.

Шины передачи управления PCI поддерживают централизованный параллельный арбитраж с возможностью работы в режимах с фиксированным циклическим или смешанным приоритетами.

Для повышения быстродействия используется следующий приём: «скрытый» арбитраж. Арбитраж выполняется в цикле обмена данными. «Парковка» шины- если нет запросов от ведомых устройств на владение магистралью, то назначается устройство, которое владеет магистралью по умолчанию. Передача типа «back-to-back»- организация взаимных транзакций между устройствами без освобождения магистрали.

8. Какой способ организации шин адреса используется на магистрали?

Отсутствует сигнал идентификации данных или адреса.

ША и ШД совмещенные, специального строба передачи адреса нет, адрес передается всегда в первом цикле обмена и позволяет адресоваться к трем пространствам: памяти, вода/вывода и регистрам конфигурации. В последнем случае АД1=0 и АД0=0. Во время фазы данных АД0..АД7- мл. байт, АД24..АД31-ст. байт.

  1. Какими средствами обеспечивается разделение адресного пространства?

Путем использования раздельных команд для обращения к памяти, УВВ и регистрам конфигурации.

  1. Функции и назначение линий JTAG.

Выводы JTAG / периферийного сканирования

Test Output используется для последовательного вывода тестирующих данных и команд из устройства при работе с TAP.

Порт для тестирования и архитектура периферийного сканирования Test Access Port and Boundary Scan Architecture Включение в состав устройства Порт для тестирования (TAP - Test Access Port) позволяет использовать периферийное сканирование для проверки устройства и платы, на которой данное устройство установлено. TAP состоит из четырех выводов (в общем случае - из пяти), которые используются для организации последовательного интерфейса с контроллером TAP внутри PCI- устройства.

Test Mode Select используется для управления в устройстве состоянием контроллера TAP.

Test Data Input используется для последовательного ввода в устройство тестирующих данных и команд при работе с TAP.

Test Clock используется для синхронизации ввода собранной информации и данных в устройство и их вывода во время работы с TAP.

Test Reset обеспечивает асинхронную инициализацию контроллера TAP. Этот сигнал по стандарту IEEE 1149.1 необязателен.

TMS out

TRST# in

  1. Какие преимущества обеспечивает парковка шин?

Используется механизм “парковки шин”, при котором в момент отсутствия запросов магистраль без арбитража передаётся определённому ресурсу. Парковка подразумевает разрешение установить запрос прямого доступа, по умолчанию, наибольший приоритет модулю, минуя стадию арбитража, что позволяет экономить время доступа к модулю, не тратя его на арбитраж.

  1. Состав и особенности шины команд.

ШК -, STOP, RST. По линиям в фазе адреса передается команда, а в фазе данных - ХХХХ в унитарном коде, указывающий используемый байт ШД. RST- сигнал сброса; STOP- приостанавливает работу ведущего устройства, если ведомое не успевает обработать процесс.

  1. Как реализуется принцип автоконфигурации на магистрали?

Любая подсистема, поддерживающая этот принцип после включения должна выполнять функции:

В PCI пространство конфигурации занимает объем 256 байт (64×4). Это пространство разделено на 3 зоны:

Головная область содержит идентификатор устройств-производителей, сведения о командах, которые поддерживают данное устройство и регистр состояния, в котором фиксируется реакция системы и модуля на выполнение какой-либо команды. Кодируются основные функции в виде устройств иерархической структуры.

Класс 01 – контроллер

Уточнение остальных параметров и системных требований выполняется в регистрах с адресами (3с – 10)h. Эта область описывает необходимые системные ресурсы для работы модуля (объем ОП, количество адресов УВВ, вектора прерывания, допустимого времени ожидания и запроса, время занятия магистралей).

При реализации конфигурации обращение к регистрам конфигурации обращение к регистрам конфигурации и модулям выполняется в соответствии с форматом.

Используется унитарное кодирование для выборки модулей (сигнал DEVSEL) и позиционное кодирование для выбора конкретного регистра.

  1. Как обеспечивается согласование функциональных блоков с магистралью?

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

  1. В чем отличие интерфейсов PCI и CompactPCI?

У CompactPCI :

  1. Принципы обмена информацией в PCI EXPRESS.

PCI Express является последовательным.

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

Если какой-то пакет не дойдет до получателя либо получатель обнаружит в принятом пакете ошибку, то протокол транспортного уровня будет повторять его передачу до тех пор, пока пакет не будет получен — тем самым гарантируется, что передаваемый через PCI Express поток данных достигнет получателя в целостности и сохранности.Каждый пакет снабжен уникальным идентификатором, по которому контроллеры шины принимают решение о направлении пакета в конкретную физическую линию передачи данных. Здесь же располагается код обнаружения и исправления ошибок (CRC), номер пакета, позволяющий отличить один пакет от другого, и разная вспомогательная информация (например, удостоверяющая, что пакет не был искажен в ходе его передачи). Пакет передается только в том случае, когда поступил сигнал готовности от буфера приема.

Формат пакетов шины PCI-Express

Frame — начальный и конечный фрейм пакета - его добавляет физический уровень для определения начала и окончания передачи пакета данных; Packet # — номер пакета, добавляется на сетевом уровне чтобы пакеты можно было отличить друг от друга; Header — заголовок пакета, описывает тип пакета, получателя, приоритет и другие свойства, это информация транспортного уровня; Data — собственно данные пакеты; CRC — контрольная сумма пакета.

Физическая реализация шины передачи данных — это две независимые дифференциальные пары проводников (первая пара работает на прием данных, вторая - на передачу). Данные по ним передаются с использованием избыточного кодирования по схеме «8/10» с исправлением ошибок. Каждый байт (8 бит) данных, по определенной схеме кодируется 10 битами передаваемых данных, таким образом, генерируется дополнительная информация, около 20% от общего "потока". Кроме того, это нужно для того, чтобы уменьшить долю «постоянных» составляющих в сигнале (не более 4 нулей или единиц подряд).

17. Какие методы используются для повышения быстродействия магистрали PCI EXPRESS.

Передаваемые данные нарезаются небольшими кусочками - фреймами. При тактовой частоте шины 2,5 ГГц без учета кодирования мы получим скорость передачи в 2,5 Гбит/с в каждом направлении. С учетом выбранной схемы «8/10» получается 250 Мбайт/с, однако многоуровневая сетевая иерархия не может не сказаться на скорости работы и реальная производительность шины оказывается значительно ниже — всего лишь чуть более 200 Мбайт/с в каждую сторон. Это на 50% больше, чем теоретическая пропускная способность шины PCI. Но это не предел: пожалуй, единственная интересная особенность PCI Express — возможность объединения в одну шину нескольких независимых линий передачи данных. Стандартом предусмотрено использование 1, 2, 4, 8, 16 и 32 линий — передаваемые данные поровну распределяются по ним по схеме «первый байт на первую линию, второй — на вторую, …, n-й байт на n-ю линию, n+1-й снова на первую, n+2 снова на вторую» и так далее. Это не параллельная передача данных и даже не увеличение разрядности шины (поскольку все передающиеся по линиям данные передаются абсолютно независимо и асинхронно) — это именно объединение нескольких независимых линий. Причем, передача по нескольким линиям никак не влияет на работу остальных слоев. Именно этим достигается великолепная масштабируемость шины PCI Express. Она позволяет организовывать шины с максимальной пропускной способностью 32x200=6,4 Гбайт/с.