муються не всіма пристроями, дають підтримку DMA на пам'яті більше 4 Гб) і одного або багатьох циклів даних. Транзакція з багатьма циклами даних називається «пакетної» (burst), розуміється як читання/запис поспіль адрес і дає більш високу швидкість - один цикл адреси на кілька, а не на кожен цикл даних, і відсутність простоїв (на «заспокоєння» провідників) між транзакціями.
Спеціальні типи транзакцій використовуються для звернень до конфігураційного простору пристрою.
«Пакетна» транзакція може бути тимчасово припинена обома пристроями через відсутність даних у буфері або його переповнення.
Підтримуються «розщеплені» транзакції, коли цільове пристрій відповідає станом «в процесі» та ініціатор повинен звільнити шину для інших пристроїв, захопити її знову через арбітраж і повторити транзакцію. Це робиться, поки цільове пристрій не відповість «зроблено». Використовується для сполучення шин з різними швидкостями (сама PCI і frontside процесора) і для запобігання тупикових ситуацій в сценарії з багатьма межшіннимі мостами.
Специфікація шини PCI визначає три типи ресурсів: два звичайні (діапазон пам'яті і діапазон введення/виводу, як їх називає компанія Microsoft) і configuration space - «конфігураційний простір».
Конфігураційне простір складається з трьох регіонів:
· заголовка, незалежного від пристрою (device-independent header region);
· регіону, обумовленого типом пристрою (header-type region);
· регіону, обумовленого користувачем (user-defined region).
У заголовку міститься інформація про виробника та тип пристрою - поле Class Code (мережевий адаптер, контролер диска, мультимедіа і т.д.) і інша службова інформація.
Наступний регіон містить регістри діапазонів пам'яті і введення/виводу, які дозволяють динамічно виділяти пристрою область системної пам'яті і адресного простору. Залежно від реалізації системи конфігурація пристроїв провадиться або BIOS (при виконанні POST - power-on self test), або програмно. Базовий регістр expansion ROM аналогічно дозволяє відображати ROM пристрою в системну пам'ять. Поле CIS (Card Information Structure) pointer використовується картами cardbus (PCMCIA R3.0). З Subsystem vendor/Subsystem ID все зрозуміло, а останні 4 байти регіону використовуються для визначення переривання і часу запиту/володіння.
Сигнали шини PCI:
Знак - (мінус) перед назвою сигналу означає, що активний рівень цього сигналу логічний нуль, позначення {XX: 0} означає групу сигналів з номерами від 0 до XX. {31: 0} - мультиплексованих шина адреси/даних. Адреса передається по сигналу - FRAME, в подальших тактах передаються дані.
C/BE {3: 0} - команда/дозвіл звернення до байтах. Команда, яка визначає тип чергового циклу шини (читання-запис пам'яті, введення/виводу або читання/запис конфігурації, підтвердження переривання та інші) задається четирехбітним кодом у фазі адреси по сигналу - FRAME.
FRAME - індикатор фази адреси (інакше - передача даних).
DEVSEL - вибір ініціатором пристрої призначення.
IRDY - готовність ініціатора до обміну даними.
TRDY - готовність пристрою призначення до обміну даними.
STOP - запит пристрої призначення до ініціатора на останов поточної транзакції.
LOCK - використовується для встановлення, обслуговування та звільнення захоплення ресурсу на PCI.
REQ {3: 0} - запит від PCI-пристрої на захоплення шини (для слотів 3: 0).
GNT {3 0} - майстру на використання шіни.- загальний біт парності для ліній AD {31: 0} і C/BE {3: 0}.
ParityER - сигнал про помилку по парності (від пристрою, що її виявив).
RST - скидання всіх устройств.- вибір пристрою призначення в циклах зчитування та запису конфігурації.
SERR - системна помилка, активізується будь-яким пристроєм PCI і викликає емаскіруемое переривання процесора (NMI).
REQ64 - запит на 64-бітний обмін.
ASK64 - підтвердження 64-бітного обміну. ??
INTR A, B, C, D - лінії запитів переривання, направляються на доступні лінії IRQ BIOS комп'ютера. Запит щодо низького рівня допускає колективні використання ліній прериванія.- сигнал синхронізації на тактовій частоті шіни.Clock, - TSTRES, TestDO, TestDI - сигнали для тестування адаптерів по інтерфейсу JTAG (на системній платі зазвичай не задіяні) .- переведення в режим тестування.
Роз'єм шини PCI
Ряд ВНомерРяд Арядом ВНомерРяд А - 12 В...