PCI configuration space


[an error occurred while processing this directive]
     Отправлено Vitaliy 18 сентября 2000 г. 13:24:14
Hi, ALL.
Есть несколько вопросов по сабжу:
Как я понял, в начале транзакции чтения(записи) конфигурации по адресной шине передается адрес DWORD регистра в конфигурационном пр-ве; и есть два формата его передачи
Type 0 AD[1:0] =00
AD[7:2] = Номер регистра
AD[10:8]=Номер функции
Type 1 AD[1:0] =01
AD[7:2] = Номер регистра
AD[10:8]=Номер функции
AD[15:11]=Номер устройства
AD[23:16]=Номер шины

Не совсем понятно для чего каждый из этих типов предназначен? Что обозначает пораметр «Номер функции»?

Битами AD[7:2] адресуется двойное слово в конфигурационном пр-ве, непонятно как обращаться к регистрам меньшего объёма (8,16,24 бита); Например регистры Class Code(24 бита) и Rev Id(8 бит) находятся в одном двойном слове.

Многие регистры или их отдельные биты являются read-only как это должно обеспечиваться на аппаратном уровне или на уровне драйвера?

В базовых адресных регистрах для I/O младший бит железно установлен в 0, а бит 1 зарезервирован. Как передаётся в устройство полный 32-разрядный адрес I/O и куда он записывается?

Какой минимальный набор конфигурационных регистров нужен для таргета у которого есть пр-во В/В и который может генерить прерывание?

С Уважением, Виталий.

Составить ответ ||| Конференция «Программируемые логические схемы и их применение»

Ответы


Отправка ответа

Имя:(обязательно)
E-Mail:

Тема:(обязательно)

Сообщение:(обязательно)

Ссылка на URL:
Имя ссылки:
URL изображения:


Перейти к списку ответов ||| Конференция «Программируемые логические схемы и их применение»