Ultra DMA

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Ultra DMA

З літа 1997 року в комп'ютерних фірмах постійно звучить питання "А ця системна плата (або вінчестер) підтримує Ultra DMA?" Масова реклама зробила свою справу - не тільки покупці нових, а й власники існуючих комп'ютерів стурбовані переходом на цей новий тип EIDE-інтерфейсу. Багато хто йде навіть на те, щоб обміняти ще гарантійне обладнання з звичайним EIDE на плату та вінчестер з Ultra DMA. Дійсно, подвоєна швидкість передачі і апаратний контроль цілісності - вельми привабливі властивості нового інтерфейсу. Однак при найближчому розгляді красиво і соковито намальована картина виглядає далеко не так привабливо й гармонійно.

Для початку - невеликий технічний огляд. Ultra DMA - це не сам інтерфейс, а лише один з його режимів роботи, а сам він називається Ultra ATA, або ATA-33. Попередня модель інтерфейсу - ATA-2 - забезпечує швидкість передачі до 16.6 Мб / с; така швидкість може реалізовуватися або в режимі PIO 4 (Programmable Input / Output Mode 4 - програмний введення / висновок типу 4), або в режимі Multiword DMA 2 (Multiword Direct Memory Access Mode 2 - багатослівний прямий доступ до пам'яті типу 2). Режими PIO простіше в управлінні - їх використовують DOS і Windows під час відсутності спеціальних драйверів конкретної моделі контролера, однак вимагають помітних витрат процесорного часу і ускладнюють паралельне виконання завдань. Режими DMA складніше у використанні, зате дозволяють виключити центральний процесор з перенесення даних, залишивши йому тільки роль ініціатора й диспетчера обміну з пристроєм.

Ultra ATA подвоює швидкість передачі - його межа дорівнює 33.3 Мб / с в режимі Ultra DMA; таким чином, ця швидкість недоступна в режимах PIO. Власне, це не так важливо, бо всі популярні операційні системи зараз підтримують роботу в DMA - драйвери є навіть для DOS, хоча не зовсім зрозуміло, який там від цього користь.

Однак зазначені швидкості - ні що інше, як максимально можливі швидкості передачі. Для того, щоб передавати по інтерфейсу дані з такою швидкістю, вінчестер повинен встигати їх зчитувати з дисків, а беручи - записувати на диски. Швидкість же обертання більшості сучасних вінчестерів становить 5400 об / хв, при якій швидкість зчитування даних з дисків виходить максимум близько 10 Мб / с, та й то лише на зовнішніх ділянках дисків, які рухаються з найбільшою лінійною швидкістю. Швидкість запису зазвичай виявляється нижче, причому нерідко - досить суттєво. Таким чином, навіть старий інтерфейс ATA-2 має полуторний запас по швидкості обміну з поверхнями дисків, а максимальна швидкість обох інтерфейсів реалізується лише при обміні з буфером вінчестера, який має невеликий розмір - 100 .. 256 кб, і до того ж є саме буфером , а не кешем. Відмінність буфера від кешу полягає в тому, що буфером називається проміжна пам'ять, призначена для згладжування відмінностей швидкості читання / запису і передачі по інтерфейсу, а кешем - пам'ять, що зберігає найбільш часто читаються блоки. Зрозуміло, буфер вінчестера може працювати і в якості кеша, але ефективність його в цьому сенсі вкрай низька - розмір і швидкість обміну дуже малі в порівнянні з програмним кешем операційної системи.

Щоб приблизно оцінити перевагу Ultra ATA перед ATA-2, можна зробити нескладні викладки. Алгоритм обміну процесора з вінчестером такий: процесор ініціює операцію читання; вінчестер зчитує перший сектор в буфер і видає переривання, продовжуючи читати такі сектори; процесор або забирає дані з буфера за протоколом PIO, або це робить сам контролер вінчестера по протоколу DMA; процес повторюється до передачі останнього сектора. Візьмемо вінчестер з кращих, що забезпечує читання з поверхні з швидкістю 10 Мб / с, і розглянемо його роботу з кожним із двох типів інтерфейсів. Оскільки швидкість читання з поверхні незмінна і змінюється тільки швидкість передачі буфера по інтерфейсу, загальний час зчитування з диска потрібного обсягу інформації в обох випадках буде однаковим - зміниться лише час передачі буфера в пам'ять і інтервал між цими операціями. Для передачі одного сектора (0.5 кб) зі швидкістю 16.6 Мб / с потрібно близько 30 мкс; для швидкості 33.3 Мб / с цей час становитиме близько 15 мкс. При зчитуванні 10 Мб на весь процес піде одна секунда, з якої близько 6 / 10 або 3 / 10 піде на власне перекачування даних по інтерфейсу. Однак, на відміну від режимів PIO, це часом не буде втрачено на очікування - протягом нього процесор буде успішно виконувати інші завдання.

Ці розрахунки наведені тільки для ідеального випадку - більшість сучасних EIDE-вінчестерів мають середню швидкість читання в районі 6-8 Мб / с і ще більш низьку швидкість запису, процес читання / запису дуже рідко має справу з великою кількістю послідовних секторів - найчастіше вінчестер набагато більше займається переміщенням головок, ніж власне читанням або записом даних. Крім цього, в більшості побутових і офісних систем процесору нічим зайнятися до завершення передачі даних, і він просто простоює. Достатнє завантаження процесора в стані забезпечити або паралельні програми, зайняті інтенсивною обробкою даних, або потужні системи - видавничі, звуко-і відеомонтажна.

Однак багато власників вінчестерів з Ultra DMA абсолютно справедливо можуть заперечити, що після заміни їм "звичайного" вінчестера вони відчули помітний приріст швидкості. Так воно і є - після прийняття стандарту Ultra ATA кілька фірм анонсували нові моделі вінчестерів з цим інтерфейсом. Першим і найбільш популярним був Quantum Fireball ST, істотно випередив інші популярні моделі з інтерфейсом ATA-2. Однак цей відрив був обумовлений не новим інтерфейсом, а підвищеною щільністю запису на дисках і збільшенням ефективності внутрішнього контролера. У цьому сенсі ситуація з UDMA повторює ситуацію з SCSI: багато користувачів вибирають вінчестери SCSI за їх високу швидкість роботи, помилково приписуючи її переваг SCSI перед EIDE. Насправді ж багато моделей вінчестерів, що випускаються у варіантах і EIDE, і SCSI, мають один і той же гермоблока, ті ж технічні характеристики, проте швидкісні, а значить, і дорогі, моделі вінчестерів не є масовими, і їх набагато вигідніше випускати тільки в SCSI-варіанті. Тому по-справжньому чистим буде експеримент із заміною системної плати з звичайним EIDE-контролером на плату з підтримкою Ultra DMA при одному і тому ж швидкісному вінчестері з Ultra DMA. А такі експерименти показують, що на звичайній користувальницькій системі з Windows 95 приросту ефективності або немає взагалі, або він становить одиниці відсотків. Більш помітний приріст можуть дати тільки системи зі збалансованою ОС і високою завантаженням.

Інша корисна особливість Ultra ATA - наявність контролю переданих даних за допомогою CRC (Cyclic Redundancy Check - надлишковий циклічний контроль) - коду, обчислюваного для кожного переданого блоку на передавальному кінці і перевіряється на приймальному. Ця функція інтерфейсу дозволяє вчасно виявити "плаваючі" помилки, породжені надмірно довгими кабелями, поганими контактами в роз'ємах, невідповідністю швидкостей передачі, які в ATA-2 і більш ранніх інтерфейсах приводили до зчитування або запису невірних даних, що через деякий час неминуче викликає псування структури диска і повний вихід з ладу файлової системи. CRC-контроль у Ultra ATA служить для виявлення помилок передачі вже у момент передачі помилкового блоку, що запобігає приховане поширення помилок. Однак виявилося, що насправді не всі нові вінчестери з Ultra ATA підтримують CRC-контроль - наприклад, вінчестери Fujitsu ATU цього не роблять, і помилки передачі і раніше можуть залишатися непоміченими довгий час.

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

Що таке Ultra-DMA, і навіщо мені це треба?

Ось короткий огляд технологій IDE дисків:

IDE, EIDE і ATAPI

Це старі технології. Більшість жорстких дисків і не-SCSI інтерфейсів, які ви можете купити сьогодні або вже використовуєте - EIDE, хоча безліч вінчестерів великої ємності - UDMA.

Bus Master DMA

Bus Master DMA - це технологія, що підвищує швидкість обміну з жорстким диском, що вимагає підтримки материнської плати, BIOS і, принаймні, якоїсь підтримки від самого жорсткого диска.

Ultra-DMA він же Ultra-ATA він же Ultra33 він же ...

Ultra-DMA може називатися по-різному, але ми його будемо називати просто UDMA.

UDMA - це більш просунута технологія, що забезпечує передачу даних жорсткого диска зі швидкістю до 33.3 Мб / сек в UDMA режимі 2 і 66.7 Мб / сек в режимі 4, що від двох до чотирьох разів швидше, ніж EIDE, і дешевше, ніж SCSI. Багато нових комп'ютерів вже поставляється з UDMA-дисками великого розміру і UDMA-інтерфейсами, однак можлива установка додаткової картки UDMA-інтерфейсу (такий як Promise Ultra33 або Ultra66), щоб збільшити швидкість навіть на старих не-UDMA дисках.

Зауважу, що довжина кабелю UDMA, у порівнянні з простим DMA, бажано повинна бути менше 30см, і не більше 18 дюймів. Для швидкості 66Мб/сек потрібен спеціальний 80-жильний кабель не більшої довжини. Якщо у вас з'являється велика кількість CRC-помилок, то спробуйте використовувати кабель коротший.

Принаймні "Ultra"?

Перш, ніж підемо далі, давайте прояснимо оману. Ці 33 і 66 MB / сек - максимальна швидкість передачі (burst transfer rate), а це зустрічається не дуже часто. Ось шматок з UDMA.txt:

Бистрий (burst) (негайний) режим передачі передбачає від 16.6МБ/сек

(PIO режим 4) до 16.6МБ/сек (DMA режим 2) і до 33МБ/сек (UDMA).

Kim-Hoe Pang у своєму патчі ядра 2.1.55 логічно перевірив швидкість передачі

в максимальному режимі UDMA: 60 нс / слово, що означає 33МБ/сек.


Зауважу, що швидкісний (burst) режим передачі впливає тільки на дані,

передаються з кешу EIDE вінчестера (476Кб на IBM 6.4Гб),

а це IMHO не особливо актуально для більшості користувачів Linux.


Ядро Linux використовує для кешування доступу до вінчестера стільки

оперативної пам'яті, наскільки це можливо, і якщо дані не перебувають у

кеші ядра, то мало шансів, що вони будуть в меншому за розміром кеші

вінчестера.

Набагато більше значення має стійка швидкість передачі (sustained transfer rate) - швидкість, на якій дані передаються з вінчестера в пам'ять. Найпростіше використовувати hdparm, щоб виміряти стійку швидкість передачі, наприклад "hdparm-t / dev / hda", для вимірювання швидкості першого IDE диска.

Ось деякі дані, зібрані після великої кількості випробувань, з

використанням утиліти hdparm (Mark Lord):


PIO у режимі 4 під Linux дає швидкість передачі: + / - 5.2MB / s


DMA в режимі 2 під Linux дає швидкість передачі: + / - 7.2MB / s


UDMA в режимі 2 під Linux дає швидкість передачі: + / - 9.8MB / s

Як ви можете бачити, UDMA все ще в два рази швидше звичайного EIDE, і все ще значно швидше Bus Master DMA. Більшість сучасних UDMA-дисків дають від 10 до 15 МБ / сек з використанням UDMA в режимі 2 (33 MB / s) або 4 (66 МБ / сек).

Крім того, використання DMA, на відміну від PIO, значно скорочує використання процесора під час обміну з диском.

UDMA або SCSI?

Я не можу дати вам точні цифри, але, на загальну думку, SCSI може дати кращу продуктивність, ніж UDMA. Тим не менш, якщо ви подивіться на ціни вінчестерів, то помітите, що UDMA значно дешевше. У більшості випадків, коефіцієнт ціна / продуктивність говорить на користь UDMA.

Ultra DMA/66

Поява чергового стандарту на IDE інтерфейс викликано гострою необхідністю - IDE жорсткі диски зі швидкістю обертання шпінделя 7200 об / хв почали випускатися в помітних обсягах, і нічого не заважає збільшити швидкість до 10000 об / хв.

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

Перед розробниками стандарту стояло завдання - збільшити вдвічі швидкість передачі даних, не втративши в надійності і, найголовніше, не викликавши підвищення вартості реалізації інтерфейсу як на самому IDE пристрої, так і в контролері IDE. Крім цього, необхідно зберегти сумісність зверху вниз, так як низькошвидкісні IDE пристрої, такі як магнітооптичні накопичувачі, CD-ROM приводи і жорсткі диски, випущені раніше, повинні працювати з контролерами UDMA/66 без будь-яких проблем.

Основна перевага роботи IDE пристроїв з підтримкою нового стандарту випливає з назви Ultra DMA/66 - швидкість обміну по новому інтерфейсу дорівнює 66 MB / c.

 

Швидкість обміну
(Max.)

Тип раз'ма

Кількість провідників в кабелі

CRC контроль

DMA Mode 1

11.1 MBytes / s

40-висновків IDE

40

Ні

Multi-word DMA Mode 1

13.3 MBytes / s

40-висновків IDE

40

Ні

Multi-word DMA Mode 2

16.6 MBytes / s

40-висновків IDE

40

Ні

Ultra ATA Mode 2

33.3 MBytes / s

40-висновків IDE

40

Так

Ultra ATA Mode 4

66.6 MBytes / s

40-висновків IDE

80

Так

Головна відмінність нового стандарту - збільшена в два рази швидкість обміну. Оскільки тривалість кожного сигналу на IDE відповідно також зменшується у два рази, то різко зростає загроза впливу перешкод на сигнали інтерфейсу. Вже при розробці стандарту UltraDMA/33 був застосований метод CRC (Cyclical Redundancy Check - циклічний контроль з надлишковим кодом) і дані тим самим контролювалися на всьому ланцюгу їх проходження.

CRC зберігся як методу контролю цілісності даних, але, крім цього, довелося вперше (з моменту появи IDE інтерфейсу) змінити кабель, показаний на малюнку нижче.

Тепер кабель має 80 провідників при тих же 40 контактах. У всьому іншому стандарт повністю сумісний зі своїми попередниками. Будь-який жорсткий диск з інтерфейсом UltraDMA/66 буде працювати з будь-яким контролером IDE і наооборот. Єдине жорстку умову - жорсткий диск стандарту UltraDMA/66 буде працювати з відповідним контролером тільки через спеціальний кабель. Як видно на фотографії нижче, зовні кабель для UltraDMA/66 відрізняється тільки більше тонкими провідниками і різниця ця не очевидна (якщо тільки поруч не лежить звичайний IDE кабель). Простіше всього відрізнити один кабель від іншого за кольором роз'ємів. На кабелях для UltraATA/66 блакитний роз'єм ЗАВЖДИ підключається до контролера, а чорні роз'єми - до периферійних пристроїв.

На фотографії верхній кабель - звичайний IDE кабель, нижче - кабель для UltraDMA/66.

Перші жорсткі диски з підтримкою нового стандарту були випущені фірмою Western Digital в грудні 1998 року.

У висновку хотілося б застерегти від великих надій на якісний стрибок в продуктивності дискової підсистеми комп'ютера після появи і впровадження UltraDMA/66. Реально швидкість роботи в 66 MBytes / sec буде досягатися тільки при роботі з буфером на жорсткому диску. Тому при роботі з жорстким диском, що має розмір буфера до 512 kBytes, можна ручатися за те, що ніякого реального приросту продуктивності дискової підсистеми при заміні диска і контролера з UltraDMA/33 на UltraDMA/66 не відбудеться. Яке-то підвищення продуктивності буде помітно на жорстких дисках з буфером 2 MBytes і більше. Швидше за все, розмір буфера і далі буде рости, тому що тільки в цьому випадку зростання швидкості інтерфейсу буде помітний.

Багато хто проводить паралелі між SCSI і IDE, так як швидкість SCSI інтерфейсу також постійно зростає. Але ці зіставлення неправомірні - на одній SCSI шині може бути до 15 пристроїв і при розмірі буфера на кожному, наприклад, 2 MBytes, контролер повинен мати можливість безперервно оперувати з 30 MBytes даних і для цього просто необхідно мати високі швидкості на SCSI інтерфейсі. На IDE шині в принципі можливе підключення тільки двох пристроїв і тому швидкість інтерфейсу такого суттєвого значення не має

Швидкість жорсткого диска з контролером Ultra DMA/66 в порівнянні з контролером Ultra DMA/33

Порівняння проводилося на наступному обладнанні:

материнська плата ASUSTeK P3B-F

процесор Pentium II 475 MHz (шина 105 MHz)

128 MBytes RAM

перший жорсткий диск з встановленими програмами - Western Digital AC29100 Expert, другий диск, швидкість якого вимірювалася - Western Digital WD273BA

контролер ABIT Hot Rod Ultra DMA/66

OS - Windows 98 Second Edition Russian

Як ми тестували:

використовувався тест ZD Winbench 99 1.1

режим DMA дозволений

режим Ultra DMA/66 дозволявся відповідною програмою для диска WD273BA тільки при роботі з контролером Ultra DMA/66

Диск WD273BA був обраний для вимірювання різниці в швидкості як один з найбільш високопродуктивних дисків на ринку, до того ж він має досить велику кеш-пам'ять на диску, 2 MBytes. Реально, на нашу думку, вплив більш продуктивного інтерфейсу буде збільшуватися практично прямо пропорційно обсягу кеш-пам'яті на диску, так як на практиці диск не може в силу своїх характеристик віддавати дані навіть зі швидкістю в 4 рази менше швидкості самого інтерфейсу Ultra DMA/66.

Назва опції:

Ultra DMA Mode

Можливі значення:

или Auto, Disabled або или Auto, Enabled, Disabled або или Auto, Mode 0, Mode 1, Mode 2, Mode 3, Mode 4, Mode 5, Mode 6, Disabled або Auto, SWDMA 0, SWDMA 1, SWDMA 2, MWDMA 0, MWDMA 1, MWDMA 2, UDMA 0, UDMA 1, UDMA 2, UDMA 3, UDMA 4, UDMA 5, UDMA 6

Опис:

Опція дозволяє вказати режим прямого доступу до пам'яті (DMA - Direct Memory Access, UDMA - Ultra DMA), що використовується при роботі накопичувача, підключеного до даного каналу стандартного IDE / SATA-контролера чіпсета. Як правило, можна використовувати режим автоматичного визначення можливостей накопичувача (Auto). У разі проблем з цим конкретним диском можна спробувати відключити режим DMA (Disabled). Тільки варто мати на увазі, що це призведе до істотного падіння продуктивності дискової підсистеми, використовуватиме цей захід можна тільки в крайньому випадку.

Найчастіше серед значень даної опції присутні не тільки варіанти, що дають можливість включити або відключити режим прямого доступу до пам'яті, але і значення, що дозволяють вказати конкретний режим. Тоді, якщо накопичувач працює нестабільно, можна спробувати замість повного відключення DMA перейти на один з молодших режимів. Можливо, це повністю вирішить проблему, при цьому не настільки згубно позначилася на продуктивності дискової підсистеми.

Для довідки наведемо назви режимів і максимальну швидкість обміну даними з накопичувачем інтерфейсу IDE або SATA для кожного з режимів (слід враховувати, що режими DMA доповнюють режими PIO Mode, забезпечуючи істотно більшу швидкість роботи):

Single-Word DMA 0

2.1 Мбайт / сек

Single-Word DMA січня

4.2 Мбайт / сек

Single-Word DMA 2

8.3 Мбайт / сек

Multi-Word DMA 0

4.2 Мбайт / сек

Multi-Word DMA 1

13.3 Мбайт / сек

Multi-Word DMA 2

16.7 Мбайт / сек

Ultra DMA 0

16.7 Мбайт / сек

Ultra DMA 1

25.0 Мбайт / сек

или Ultra DMA 33 Ultra DMA 2 або Ultra DMA 33

33.3 Мбайт / сек

Ultra DMA 3

44.4 Мбайт / сек

или Ultra DMA 66 Ultra DMA чотири або Ultra DMA 66

66.7 Мбайт / сек

или Ultra DMA 100 Ultra DMA 5 або Ultra DMA 100

100.0 Мбайт / сек

или Ultra DMA 133 Ultra DMA 6 або Ultra DMA 133

133.0 Мбайт / сек

Всі сучасні жорсткі диски з інтерфейсом IDE здатні працювати як мінімум в режимі Ultra DMA 100. Приводи оптичних дисків і їм подібні пристрої зазвичай використовують режим Ultra DMA 33, є моделі, що використовують Ultra DMA 66. Таким чином, для більш-менш сучасних жорстких дисків повинна бути встановлена ​​комбінація PIO Mode 4 і Ultra DMA 100 (як варіант, Ultra DMA 133), але краще встановити значення Auto. Для приводів оптичних дисків і їм подібних пристроїв - PIO Mode 4 і Ultra DMA 33 (як варіант, Ultra DMA 66), але, знову ж таки, краще використовувати Auto

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
55.9кб. | скачати

© Усі права захищені
написати до нас