Модуль сопряжения с шиной PCI (minicontr)

Главной идеей "minicontr" является обеспечение минимальности аппаратных средств при подключении к шине PCI вновь создаваемых устройств. Данный проект занимает всего 21 макроячейку ПЛИС фирмы Altera, но несмотря на столь скромные размеры, предоставляет даже возможности PnP. Схема "minicontr" приведена на рисунке ниже.

Проект "minicontr" предоставляет один байт с адресом 40H для чтения или записи в пространство конфигурации шины PCI. При чтении на старший нибл данного байта отображаются состояния линий SB[3..0], а младший нибл содержит следующее значение: первый бит - 1, второй бит - состояние линии SA, третий и четвертый биты - 0. Таким образом по чтению байт с адресом 40H пространства конфигурации шины PCI имеет следующее битовое наполнение: |SB3|SB2|SB1|SB0| 0 | 0 |SA| 1 |. При записи по адресу 40H пространства конфигурации младший нибл записываемого байта выводится на линии HL[3..0].
Все остальное пространство конфигурации до адраса 40H имеет неопределенные значения, исключения составляют младшие байты двойных слов, составляющих данное конфигурационное пространство. В этих младших байтах находится значение | 0 | 0 | 0 | 0 | 0 | 0 |SA| 1 |.
Из всего вышеизложенного следует, что анализировать состояния линий SB[3..0] и выводить данные на линии HL[3..0], довольно просто, достаточно читать и писать значения по адресу 40H пространства конфигурации шины PCI.
Если приглядеться к схеме "minicontr", то можно заметить, что проект не ведет подсчета паритета и не производит выдачи сигналов ошибок паритета. Дело в том, что многочисленные эксперименты с шиной PCI на ПЭВМ годов выпуска от 1997 до 2007 и ОС Windows, Linux, QNX показали бесполезность подсчета паритета и выдачи сигналов ошибок паритета. Ни одна из ПЭВМ ни как не реагирует на данные передаваемые по шине PCI с заведомой ошибкой паритета, т.е контроллеры (мосты) шины, установленные на материнских платах, не выставляют регламентированные спецификацией PCI сигналы PERR или SERR. В случае, когда PERR или SERR выставляет карта расширения, то же ни какой реакции не наблюдается. Таким образом не стоит закладывать в аппаратуру то, что не используется, а именно подсчет паритета и выдачу сигналов ошибок паритета.
Файл minicontr.gdf

Главная

Сайт управляется системой uCoz