PCI
PCI (англ. Peripheral component interconnect, дослівно: взаємозв'язок периферійних компонентів) — шина вводу/виводу для підключення периферійних пристроїв до материнської плати комп'ютера.
Стандарт на шину PCI визначає:
- фізичні параметри (наприклад, роз'єми і розведення сигнальних ліній);
- електричні параметри (наприклад, напруги);
- логічну модель (наприклад, типи циклів шини, адресацію на шині);
Розвитком стандарту PCI займається організація PCI Special Interest Group.
Історія створення
Навесні 1991 р. компанія Intel завершує розробку першої макетної версії шини PCI. Перед інженерами було поставлене завдання розробити недороге й продуктивне рішення, що дозволило б реалізувати можливості процесорів 486, Pentium і Pentium Pro. Окрім того, треба було врахувати помилки допущені VESA при проектуванні шини VLB (електричне навантаження не дозволяло підключати більше 3 плат розширення), а також реалізувати автоконфігурування пристроїв за прикладом протоколу Autoconfig для комп'ютерів Amiga.
1992 року з'являється перша версія шини PCI, Intel повідомляє, що стандарт шини буде відкритим і створює PCI Special Interest Group. Завдяки цьому, будь-який зацікавлений розробник отримує можливість створювати пристрої для шини PCI без необхідності придбання ліцензії. Перша версія шини мала тактову частоту 33 МГц, могла бути 32 або 64 бітною, а пристрої могли працювати з сигналами в 5 V або 3,3 V. Теоретично, пропускна здатність шини 133 Мбайт/сек, однак у реальності пропускна здатність становила близько 80 Мбайт/сек.
В середині 1993 року, компанія Intel виходить із асоціації VESA і починає вживати активних заходів по просуванню шини PCI на ринку. Відповіддю на критику з боку фахівців з конференцій Usenet і компаній конкурентів стала PCI 2.0.
В 1995 р., з'являється версія PCI 2.1 («паралельна шина PCI»), яка забезпечила передачу даних по шині з частотою 66 МГЦ і максимальну швидкість передачі в 533 МБ/сек (для 64 бітного варіанта з частотою 66 МГц). Крім того, ця шина вже була підтримана на рівні ОС Windows 95 (технологія Plug and Play). Згодом завдяки популярності, версія шини PCI 2.1 була перенесена на платформи з процесорами Alpha, MIPS, PowerPC, SPARC та ін.
В 1997 р., у зв'язку з розвитком комп'ютерної графіки й розробкою шини AGP, шина PCI перестала задовольняти підвищені вимоги до відеокарт і стала витіснятися продуктивнішою AGP.
Конфігурування
PCI-пристрої з погляду користувача налаштовуються самостійно (plug and play). Після старту комп'ютера системне програмне забезпечення обстежує конфігураційний простір PCI кожного пристрою, підключеного до шини й розподіляє ресурси. Кожен пристрій може зажадати до семи діапазонів в адресному просторі пам'яті PCI або в адресному просторі вводу-виводу PCI. Крім того, пристрої можуть мати ПЗП, що містить код для процесорів x86 або PA-RISC, Open Firmware (системне ПЗ комп'ютерів на базі SPARC) або драйвер EFI.
Налаштування переривань здійснюється також системним програмним забезпеченням (на відміну від шини ISA, де налаштування переривань здійснювалося перемикачами на карті). Запит на переривання на шині PCI передається за допомогою зміни рівня сигналу на одній з ліній IRQ, тому є можливість роботи декількох пристроїв з однією лінією запиту переривання; звичайно системне ПЗ намагається виділити кожному пристрою окреме переривання для збільшення продуктивності.
Специфікація шини PCI
- частота шини — 33,33 МГц або 66,66 МГц, передача синхронна;
- розрядність шини — 32 або 64 біт, шина мультиплексована (адреси і дані передаються по спільній шині);
- пікова пропускна здатність для 32-розрядного варіанту, що працює на частоті 33,33 МГц — 133 Мб за секунду;
- адресний простір пам'яті — 32 біт (4 байти);
- адресний простір портів вводу-виводу — 32 біт (4 байти);
- конфігураційний адресний простір (для однієї функції) 256 байтів;
- напруга 3,3 або 5 вольт.
Стандартні модификації PCI
- PCI 2.0 — перша версія базового стандарту, що одержала широке поширення, використовувалися як карти, так і слоти із сигнальною напругою тільки 5V. Пікова пропускна здатність — 133 Мб/с;
- PCI 2.1-3.0 — відрізнялися від 2.0 можливістю одночасної роботи декількох пристроїв bus-master (так званий конкурентний режим), а також появою універсальних карт розширення, здатних працювати як на 5V, так і на 3.3V слотах (з частотою 33 і 66 МГц відповідно). Пікова пропускна здатність для 33 МГц — 133 МБ/с, а для 66 МГц — 266 МБ/с;
- Версія 2.1 — робота з 3.3V картами і наявність відповідних ліній живлення була опціональною;
- Версія 2.2 — зроблені відповідно до цих стандартів карти розширення мають універсальний роз'єм і здатні працювати практично в усіх пізніших різновидах слотів шини PCI, а також, в деяких випадках, і в слотах 2.1;
- Версія 2.3 — несумісна з картами PCI 5V, незважаючи на триваюче використання 32-бітних слотів з 5V-ключем. Карти розширення мають універсальний роз'єм, але не здатні працювати в 5V-слотах ранніх версій(до 2.1 включно);
- Версія 3.0 — завершує перехід на карти PCI 3.3V, карти PCI 5V більше не підтримуються.
- PCI 64 — розширення базового стандарту PCI, що з'явилося у версії 2.1, подвоює число ліній даних і, отже, пропускну здатність. Слот PCI64 є подовженою версією звичайного PCI-слота. Формально сумісність 32-бітних карт із 64-бітними слотами (за умови наявності загальної підтримуваної сигнальної напруги) повна, а сумісність 64-бітної карти з 32-бітним слотами є обмеженою (втрата продуктивності є в обох випадках). Працює на тактовій частоті 33 МГц. Пікова пропускна здатність — 266 МБ/с;
- Версія 1 — використовує слот PCI 64-біта 5V;
- Версія 2 — використовує слот PCI 64-біта 3.3V;
- PCI 66 — це PCI 64, що працює на тактовій частоті 66 МГц , використовує 3.3V-слоти, карти мають універсальний, або 3.3V форм-фактор. Пікова пропускна здатність — 533 МБ/с;
- PCI 64/66 — комбінація PCI 64 и PCI 66, дозволяє вчетверо збільшити швидкість передачі даних у порівнянні з базовим стандартом PCI, і використовує 64-бітні 3.3V слоти, сумісні тільки з універсальними та 3.3V 32-бітними картами розширення. Карти стандарту PCI64/66 мають універсальний (який має обмежену сумісність із 32-бітними слотами) або 3.3V форм-фактор (останній варіант принципово не сумісний із 32-бітними 33 МГц слотами популярних стандартів). Пікова пропускна здатність — 533 МБ/с;
- PCI-X — розширення PCI64, для всіх варіантів шини існують наступні обмеження за кількістю пристроїв, що підключають до кожної шини: 66 МГц — 4, 100 МГц — 2, 133 МГц — 1 (або 2 якщо один або обидва пристрої не перебувають на платах розширення, а вже інтегровані на одну плату разом з контролером), 266 МГц, 533 МГц і вище — 1;
- Версія 1.0 — введено дві нові робочі частоти: 100 і 133 МГц, а також механізм роздільних транзакцій для поліпшення продуктивності при одночасній роботі декількох пристроїв. Як правило, зворотно сумісна з усіма 3.3V та універсальними PCI-картами. Карти звичайно виконуються в 64-бітному 3.3V форматі й мають обмежену зворотну сумісність зі слотами PCI64/66, а деякі здатні працювати в універсальному форматі (хоча практичної цінності це майже не має) у звичайному PCI 2.2/2.3. Пікова пропускна здатність — 1024 МБ/с;
- Версія 2.0 — уведено дві нові робочі частоти: 266 й 533 МГц, а також функція коду корекції помилок під час передачі даних (an error-correcting code, error checking and correction, ECC). Розширює конфігураційний простір PCI до 4096 байт і допускає розщеплення на 4 незалежні 16-бітні шини, що застосовується винятково у промислових системах, сигнальна напруга знижена до 1.5 V, але збережена зворотна сумісність роз’ємів з усіма картами, що використовують сигнальну напругу 3.3 V. Пікова пропускна здатність — 4096 МБ/с;
- Mini PCI — новий форм-фактор PCI 2.2 для використання переважно у ноутбуках;
- Cardbus — PCMCIA форм-фактор для 32-бітних, 33 МГц PCI;
- CompactPCI — використовує модулі розміру Eurocard, що входять в PCI backplane;
- PC/104-Plus — індустріальна шина, що використовує сигналізацію PCI з іншим роз'ємом;
- PMC — PCI mezzanine card, мезонінна шина, відповідає стандарту IEEE P1386.1;
- ATCA або AdvancedTCA — шина наступного покоління для телекомунікаційної індустрії.[1]
Інші варіанти PCI
- PCI Express (раніше відомий як 3GIO/Arapaho), новий послідовний інтерфейс, що використовує програмну модель PCI, однак відрізняється продуктивнішим фізичним рівнем (використовуються LVDS і нові роз'єми).[2]
Примітки
Див. також
- Industry Standard Architecture (ISA)
- Extended Industry Standard Architecture (EISA)
- Micro Channel architecture (MCA)
- NuBus
- VESA Local Bus (VLB)
- Accelerated Graphics Port (AGP)
- PCI Express (PCIe)
- PCI Extended (PCI-X)
- PCI configuration space
- PCI Mezzanine Card