ATA

Інша назва цього поняття - "IDE";.
Роз'єми ATA-контролера на материнській платі (нижні)

ATA ( англ. Advanced Technology Attachment ) - паралельний інтерфейс підключення накопичувачів ( жорстких дисків і оптичних дисководів) до комп'ютера. У 1990-і роки був стандартом на платформі IBM PC; на даний час витісняється своїм послідовником - SATA і з його появою отримав назву PATA (Parallel ATA).


1. Історія

Шлейфи ATA (IDE): 40-дротової зверху, 80-дротової з кабельної вибіркою знизу

Попередня назва інтерфейсу було PC / AT Attachment ("З'єднання з PC / AT "), так як він призначався для під'єднання до 16-бітовій шині ISA, відомої тоді як шина AT. В остаточній версії назву переробили в "AT Attachment" для уникнення проблем з торговельними марками.

Первісна версія стандарту була розроблена в 1986 році фірмою Western Digital і з маркетингових міркувань отримала назву IDE ( англ. Integrated Drive Electronics - "Електроніка, вбудована в привід"). Воно підкреслювало важливе нововведення: контролер приводу розташовується в ньому самому, а не у вигляді окремої плати розширення, як у попередньому стандарті ST-506 і існували тоді інтерфейсах SCSI і ST-412. Це дозволило поліпшити характеристики накопичувачів (за рахунок меншого відстані до контролера), спростити управління ним (так як контролер каналу IDE абстрагувався від деталей роботи приводу) і здешевити виробництво (контролер приводу міг бути розрахований тільки на "свій" привід, а не на всі можливі ; контролер каналу ж взагалі ставав стандартним). Слід зазначити, що контролер каналу IDE правильніше називати хост-адаптером, оскільки він перейшов від прямого керування приводом до обміну даними з ним за протоколом.

У стандарті АТА визначений інтерфейс між контролером і накопичувачем, а також передані по ньому команди.

Інтерфейс має 8 регістрів, що займають 8 адрес в просторі введення-виведення. Ширина шини даних складає 16 біт. Кількість каналів, присутніх в системі, може бути більше 2. Головне, щоб адреси каналів не перетиналися з адресами інших пристроїв введення-виведення. До кожного каналу можна підключити 2 пристрої (master і slave), але в кожний момент часу може працювати лише один пристрій.

Принцип адресації CHS закладений в назві. Спершу блок головок встановлюється позіционером на необхідну доріжку (Cylinder), після цього вибирається необхідна головка (Head), а потім зчитується інформація з необхідного сектора (Sector).

Стандарт EIDE ( англ. Enhanced IDE - "Розширений IDE"), що з'явився слідом за IDE, дозволяв використання приводів місткістю, що перевищує 528 Мб (504 МІБ), аж до 8,4 Гб. Хоча ці абревіатури виникли як торгові, а не офіційні назви стандарту, терміни IDE і EIDE часто вживаються замість терміна ATA. Після введення в 2003 році стандарту Serial ATA ("послідовний ATA"), традиційний ATA стали іменувати Parallel ATA, маючи на увазі спосіб передачі даних по паралельному 40 - або 80-жильний кабель.

Спочатку цей інтерфейс використовувався з жорсткими дисками, але потім стандарт був розширений для роботи і з іншими пристроями, в основному - використовують змінні носії. До числа таких пристроїв відносяться приводи CD-ROM і DVD-ROM, стрічкові накопичувачі, а також дискети великої ємності, такі, як ZIP і магнітооптичні диски (LS-120/240). Крім того, з файлу конфігурації ядра FreeBSD можна зробити висновок, що на шину ATAPI підключали навіть FDD (дискета). Цей розширений стандарт отримав назву Advanced Technology Attachment Packet Interface (ATAPI), у зв'язку з чим повне найменування стандарту виглядає як ATA / ATAPI. ATAPI практично повністю збігається зі SCSI на рівні команд, і по суті є "SCSI по ATA-кабелю".

Спочатку інтерфейси для підключення приводів CD-ROM не були стандартизовані і були пропрієтарними розробками виробників приводів. В результаті, для підключення CD-ROM було необхідно встановлювати окрему плату розширення, специфічну для конкретного виробника, наприклад для Panasonic (існувало не менше 5 специфічних варіантів інтерфейсів, призначених для підключення CD-ROM). Деякі варіанти звукових карт, наприклад Sound Blaster, оснащувалися саме такими портами (часто привід CD-ROM і звукова плата поставлялися у вигляді мультимедіа-комплекту). Поява ATAPI дозволило стандартизувати всю цю периферію і дати можливість підключати її до будь контролеру, до якого можна підключити жорсткий диск.

Іншим важливим етапом у розвитку ATA став перехід від PIO ( англ. Programmed input / output - Програмний ввід / вивід) до DMA ( англ. Direct memory access - Прямий доступ до пам'яті). При використанні PIO зчитуванням даних з диска керував центральний процесор комп'ютера, що призводило до підвищеного навантаження на процесор і уповільнення роботи в цілому. З причини цього комп'ютери, які використовували інтерфейс ATA, зазвичай виконували операції, пов'язані з диском, повільніше, ніж комп'ютери, які використовували SCSI і інші інтерфейси. Введення DMA істотно знизило витрати процесорного часу на операції з диском.

У даній технології потоком даних управляє сам накопичувач, зчитуючи дані в пам'ять або з пам'яті майже без участі процесора, який видає лише команди на виконання тієї чи іншої дії. При цьому жорсткий диск видає сигнал запиту DMARQ на операцію DMA контролера. Якщо операція DMA можлива, контролер видає сигнал DMACK і жорсткий диск починає видавати дані в 1-й регістр (DATA), з якого контролер зчитує дані в пам'ять без участі процесора.

Операція DMA можлива, якщо режим підтримується одночасно BIOS, контролером і операційною системою, в іншому випадку можливий лише режим PIO.

У подальшому розвитку стандарту (АТА-3) був введений додатковий режим UltraDMA 2 (UDMA 33).

Цей режим має часові характеристики DMA Mode 2, однак дані передаються і по передньому, і по задньому фронту сигналу DIOR / DIOW. Це вдвічі збільшує швидкість передачі даних по інтерфейсу. Також введена перевірка на парність CRC, що підвищує надійність передачі інформації.

В історії розвитку ATA був ряд бар'єрів, пов'язаних з організацією доступу до даних. Більшість з цих бар'єрів, завдяки сучасним системам адресації і техніці програмування, були подолані. До їх числа належать обмеження на максимальний розмір диска в 504 МІБ, близько 8 ГИНУВ, близько 32 ГИНУВ, і 128 ГИНУВ. Існували й інші бар'єри, в основному пов'язані з драйверами пристроїв, і організацією вводу / виводу в операційних системах, які не відповідають стандартам ATA.

Оригінальна специфікація АТА передбачала 28-бітний режим адресації. Це дозволяло адресувати 2 28 (268 435 456) секторів по 512 байт кожен, що давало максимальну ємність в 137 Гб (128 ГИНУВ). У стандартних PC BIOS підтримував до 7,88 ГіБ (8,46 Гб), допускаючи максимум 1024 циліндри, 256 головок і 63 сектора. Це обмеження на число циліндрів / головок / секторів CHS (Cyllinder-Head-Sector) у поєднанні зі стандартом IDE призвело до обмеження адресованого простору в 504 МІБ (528 Мб). Для подолання цього обмеження було введено схема адресації LBA (Logical Block Address), що дозволило адресувати до 7,88 ГіБ. З часом і це обмеження було зняте, що дозволило адресувати спочатку 32 ГИНУВ, а потім і всі 128 ГИНУВ, використовуючи всі 28 розрядів (в АТА-4) для адресації сектора. Запис 28-бітного числа організована шляхом запису його частин у відповідні регістри накопичувача (з 1 по 8 біт у 4-й регістр, 9-16 у 5-й, 17-24 в 6-й і 25-28 в 7-й) .

Адресація регістрів організована за допомогою трьох адресних ліній DA0-DA2. Перший регістр з адресою 0 є 16-розрядним і використовується для передачі даних між диском і контролером. Інші регістри 8-бітові та використовуються для управління.

Новітні специфікації ATA припускають 48-бітову адресацію, розширюючи таким чином можливий межа до 128 ПІБ (144 петабайт).

Ці обмеження на розмір можуть проявлятися в тому, що система думає, що обсяг диска менше його реального значення, або зовсім відмовляється завантажуватися і висне на стадії ініціалізації жорстких дисків. У деяких випадках проблему вдається вирішити оновленням BIOS. Іншим можливим рішенням є використання спеціальних програм, таких, як Ontrack DiskManager, що завантажують в пам'ять свій драйвер до завантаження операційної системи. Недоліком таких рішень є те, що використовується нестандартна розбивка диска, при якій розділи диска виявляються недоступні, в разі завантаження, наприклад, із звичайною DOS-івської завантажувальної дискети. Втім, багато сучасні операційні системи (починаючи від Windows NT4 SP3) можуть працювати з дисками більшого розміру, навіть якщо BIOS комп'ютера цей розмір коректно не визначає.


2. Інтерфейс ATA

Для підключення жорстких дисків з інтерфейсом PATA звичайно використовується 40-проводний кабель (іменований також шлейфом). Кожен шлейф зазвичай має два або три роз'єми, один з яких підключається до роз'єму контроллера на материнській платі (у старіших комп'ютерах цей контролер розміщувався на окремій платі розширення), а один чи два інших підключаються до дисків. В один момент часу шлейф P-ATA передає 16 біт даних. Іноді зустрічаються шлейфи IDE, що дозволяють підключення трьох дисків до одного IDE каналу, але в цьому випадку один з дисків працює в режимі read-only.

Розводка Parallel ATA
Контакт Призначення Контакт Призначення
1 Reset 2 Ground
3 Data 7 4 Data 8
5 Data 6 6 Data 9
7 Data 5 8 Data 10
9 Data 4 10 Data 11
11 Data 3 12 Data 12
13 Data 2 14 Data 13
15 Data 1 16 Data 14
17 Data 0 18 Data 15
19 Ground 20 Key
21 DDRQ 22 Ground
23 I / O Write 24 Ground
25 I / O Read 26 Ground
27 IOC HRDY 28 Cable Select
29 DDACK 30 Ground
31 IRQ 32 No Connect
33 Addr 1 34 GPIO_DMA66_Detect
35 Addr 0 36 Addr 2
37 Chip Select 1P 38 Chip Select 3P
39 Activity 40 Ground

Довгий час шлейф ATA містив 40 провідників, але з введенням режиму Ultra DMA/66 (UDMA4) з'явилася його 80-дротова версія. Всі додаткові провідники - це провідники заземлення, що чергуються з інформаційними провідниками. Таким чином замість семи провідників заземлення їх стало 47. Таке чергування провідників зменшує ємнісний зв'язок між ними, тим самим скорочуючи взаємні наведення. Місткість зв'язок є проблемою при високих швидкостях передачі, тому дане нововведення було необхідно для забезпечення нормальної роботи встановленої специфікацією UDMA4 швидкості передачі 66 МБ / с (мегабайт в секунду). Більш швидкі режими UDMA5 і UDMA6 також вимагають 80-проводового кабелю.

Хоча число провідників подвоїлося, число контактів залишилося колишнім, як і зовнішній вигляд роз'ємів. Внутрішня ж розводка, звичайно, інша. Роз'єми для 80-проводового кабелю повинні приєднувати велике число провідників заземлення до невеликого числа контактів заземлення, в той час як в 40-дротовому кабелі провідники приєднуються кожен до свого контакту. У 80-провідниковий дріт роз'єми зазвичай мають різну забарвлення (синій, сірий і чорний), на відміну від 40-дротових, де зазвичай всі роз'єми одного кольору (частіше чорні).

Стандарт ATA завжди встановлював максимальну довжину кабелю рівній 46 см. Це обмеження ускладнює приєднання пристроїв у великих корпусах, або підключення декількох приводів до одного комп'ютера, і майже повністю виключає можливість використання дисків PATA в якості зовнішніх дисків. Хоча в продажу широко поширені кабелі більшої довжини, слід мати на увазі, що вони не відповідають стандарту. Те ж саме можна сказати і з приводу "круглих" кабелів, які також широко поширені. Стандарт ATA описує тільки плоскі кабелі з конкретними характеристиками повного і ємнісного опорів. Це, звичайно, не означає, що інші кабелі не будуть працювати, але, в будь-якому випадку, до використання нестандартних кабелів слід ставитися з обережністю.

Якщо до одного шлейфу підключені два пристрої, одне з них зазвичай називається провідним ( англ. master ), А інше веденим ( англ. slave ). Зазвичай провідне пристрій йде перед веденим у списку дисків, що перераховуються BIOS'ом комп'ютера або операційної системи. У старих BIOS'ах (486 і раніше) диски часто невірно позначалися буквами: "C" для ведучого диска і "D" для веденого.

Якщо на шлейфі тільки один привід, він у більшості випадків повинен бути налаштований як ведучий. Деякі диски (зокрема, виробництва Western Digital) мають спеціальну настройку, іменовану single (тобто "один диск на кабелі"). Втім, у більшості випадків єдиний привід на кабелі може працювати і як ведений (таке часто зустрічається при підключенні CD-ROM'а на окремий канал).

Налаштування, іменована cable select (тобто "вибір, обумовлений кабелем", кабельна вибірка), була описана як опціональна у специфікації ATA-1 і стала широко поширена починаючи з ATA-5, оскільки виключає необхідність переставляти перемички на дисках при будь-яких перепідключення. Якщо привід встановлений в режим cable select, він автоматично встановлюється як провідний або ведений в залежності від свого місця розташування на шлейфі. Для забезпечення можливості визначення цього місцеположення шлейф повинен бути з кабельної вибіркою. У такого шлейфу контакт 28 (CSEL) не підключений до одного з роз'ємів (сірого кольору, звичайно середній). Контролер заземлює цей контакт. Якщо привід бачить, що контакт заземлений (тобто на ньому логічний 0), він встановлюється як ведучий, в іншому випадку (високоімпедансное стан) - як ведений.

У часи використання 40-провідниковий дріт широко розповсюдилася практика здійснювати установку cable select шляхом простого перерізання провідника 28 між двома роз'ємами, підключається до дисків. При цьому ведений привід опинявся на кінці кабелю, а ведучий в середині. Таке розміщення в пізніх версіях специфікації було навіть стандартизовано. Коли на кабелі розміщається тільки один пристрій, таке розміщення призводить до появи непотрібного шматка кабелю на кінці, що небажано - як з міркувань зручності, так і за фізичними параметрами: цей шматок призводить до відбиття сигналу, особливо на високих частотах.

80-дротові кабелі, введені для UDMA4, позбавлені вказаних недоліків. Тепер провідне пристрій завжди знаходиться в кінці шлейфа, так що, якщо підключено тільки один пристрій, не виходить цього непотрібного шматка кабелю. Кабельна ж вибірка у них "заводська" - зроблена в самому роз'ємі просто шляхом виключення даного контакту. Оскільки для 80-дротяних шлейфів в будь-якому випадку потрібні власні роз'єми, повсюдне впровадження цього не склало великих проблем. Стандарт також вимагає використання роз'ємів різних кольорів, для більш простої ідентифікації їх як виробником, так і збирачем. Синій роз'єм призначений для підключення до контролера, чорний - до ведучого пристрою, сірий - до веденого.

Терміни "ведучий" і "ведений" були запозичені з промислової електроніки (де вказаний принцип широко використовується при взаємодії вузлів і пристроїв), але в даному випадку є некоректними, і тому не використовуються в поточній версії стандарту ATA. Більш правильно називати провідний і ведений диски відповідно device 0 (пристрій 0) і device 1 (пристрій 1). Існує поширений міф, що ведучий диск керує доступом дисків до каналу. Насправді управління доступом дисків та черговістю виконання команд здійснює контролер (яким, у свою чергу, управляє драйвер операційної системи). Тобто фактично обидва пристрої є веденими по відношенню до контролера.


3. Версії стандарту ATA, швидкість передачі і властивості

У наведеній далі таблиці наведені назви версій стандарту ATA і підтримувані ними режими і швидкість передачі. Слід зазначити, що швидкість передачі, що вказується для кожного стандарту (наприклад, 66,7 МБ / с для UDMA4, іменованого зазвичай "Ultra-DMA 66") вказує максимальну теоретично можливу швидкість в кабелі. Це просто два байти, помножені на фактичну частоту, і припускає, що кожен цикл використовується для передачі призначених для користувача даних. На практиці швидкість, природно, менше.

Перевантаження на шині, до якої підключений ATA-контроллер, також може обмежувати максимальний рівень передачі. Наприклад, максимальна пропускна здатність шини PCI, що працює на частоті 33 МГц і має розрядність 32 біта, складає 133 МБ / с, і ця швидкість ділиться між всіма підключеними до шини пристроями.


Стандарт Інші назви Додані режими передачі (МБ / с) Максимально підтримуваний об'єм диска Інші властивості ANSI Reference
ATA-1 ATA, IDE PIO 0,1,2 (3.3, 5.2, 8.3)
Single-word DMA 0,1,2 (2.1, 4.2, 8.3)
Multi-word DMA 0 (4.2)
137 ГБ 28-bit LBA X3.221-1994 [1] (obsolete since 1999)
ATA-2 EIDE, Fast ATA,
Fast IDE, Ultra ATA
PIO 3,4: (11.1, 16.6)
Multi-word DMA 1,2 (13.3, 16,6)
X3.279-1996 [2] (obsolete since 2001)
ATA-3 EIDE
SMART, Security
X3.298-1997 [3] (obsolete since 2002)
ATA/ATAPI-4 ATAPI-4, ATA-4, Ultra ATA/33 Ultra DMA 0,1,2 (16.7, 25.0, 33.3)
aka Ultra-DMA/33
Інтерфейс ATAPI (підтримка змінних носіїв), host protected area, підтримка твердотільних накопичувачів NCITS 317-1998
ATA/ATAPI-5 ATA-5, Ultra ATA/66 Ultra DMA 3,4 (44.4, 66.7)
aka Ultra DMA 66
80-wire cables NCITS 340-2000 [4]
ATA/ATAPI-6 ATA-6, Ultra ATA/100 UDMA 5 (100)
aka Ultra DMA 100
144 PB 48-bit LBA
Automatic Acoustic Management
NCITS 347-2001
ATA/ATAPI-7 ATA-7, Ultra ATA/133 UDMA 6 (133)
aka Ultra DMA 133
SATA/150
SATA 1.0, Streaming feature set, long logical / physical sector feature set for non-packet devices NCITS 361-2002

Примітки

  1. http://www.t13.org/documents/UploadedDocuments/project/d0791r4c-ATA-1.pdf - www.t13.org/documents/UploadedDocuments/project/d0791r4c-ATA-1.pdf
  2. http://www.t13.org/Documents/UploadedDocuments/project/d0948r4c-ATA-2.pdf - www.t13.org/Documents/UploadedDocuments/project/d0948r4c-ATA-2.pdf
  3. http://www.t10.org/t13/project/d2008r7b-ATA-3.pdf - www.t10.org/t13/project/d2008r7b-ATA-3.pdf
  4. http://www.t10.org/t13/project/d1321r3-ATA-ATAPI-5.pdf - www.t10.org/t13/project/d1321r3-ATA-ATAPI-5.pdf

Література

  • Скотт Мюллер. Модернізація та ремонт ПК = Upgrading and Repairing PCs. - 17-е изд. - М .: Вільямс, 2007. - С. 573-623. - ISBN 0-7897-3404-4