Часть 1
Сегодня, уважаемые читатели, я бы хотел поговорить с Вами о том, что такое ATA/ATAPI контроллеры, откуда появился интерфейс IDE и что это такое?
Для начала давайте с Вами усвоим необходимый минимум теории. Когда-то очень давно (еще в прошлом тысячелетии :)) фирма «Western Digital» разработала параллельный интерфейс подключения жестких дисков.
Новым и важным в этом было то, что контроллер (управлявший всеми операциями ввода-вывода) был интегрирован в сам привод, а не вынесен в виде отдельной платы расширения, как раньше. Это позволяло:
- убыстрить работу устройства
- удешевить производство
-
и упростить схему обмена данными с накопителем
Давайте сразу разберем основные аббревиатуры, чтобы потом не путаться. Сначала интерфейс получил название «IDE» (Integrated Drive Electronics - "Диск со встроенным контроллером"), но проблема заключалась в том, что это было слишком общее определение, под которое могло подойти много чего, имеющего «диск» и «контроллер». В связи с этим был разработан стандарт, который получил название «ATA» (анг. AT Attachment). После появления устройств SATA, это название было изменено на PATA (Parallel ATA).
Многие компьютерщики иногда говорят IDE вместо ATA или - наоборот. В принципе, это - одно и то же, просто правильнее - ATA :)
Поначалу стандарт работал только с жёсткими дисками, но затем был изменен для работы и с другими устройствами. К таким устройствам относятся приводы CD и DVD-ROM, магнитооптические диски и ленточные накопители. Этот новый (расширенный) стандарт стал называться «Advanced Technology Attachment Packet Interface» (ATAPI), и поэтому полное его название выглядит как - «ATA/ATAPI».
Вот как выглядят разъемы этого образца на материнской плате (два нижних, верхний - флоппи диск):
Данный интерфейс развивался во времени и одним из значимых этапов стал переход от программного ввода-вывода данных (PIO - Programmed input-output) к прямому доступу к памяти (DMA - Direct Memory Access). Что это значит? При использовании программного метода ввода-вывода считыванием данных с диска управлял центральный процессор, что приводило к абсолютно лишней на него нагрузке, так как ЦП приходилось заниматься еще и дисковыми операциями.
В то время пальму первенства держал интерфейс обмена данными, носящий название скази («SCSI» - Small Computer System Interface). Он выгодно отличался высокой скоростью передачи и применялся в высокопроизводительных серверных платформах. Поэтому режим DMA для устройств IDE стал мощным толчком для дальнейшего развития стандарта.
При прямом доступе к памяти потоком данных управляет уже сам накопитель, считывая данные в память и обратно без участия процессора. Роль последнего сводится лишь к отдаче команд на выполнение того или иного действия. При этом жесткий диск выдает сигнал запроса на операцию прямого доступа к памяти. Если операция доступа данный момент возможна, контроллер дает "добро" и диск начинает выдавать данные, а контроллер считывает их в оперативную память (без участия CPU).
Вот, к слову, как выглядит плата типичного контроллера, устанавливаемая производителями на свои изделия:
Главный чип здесь - MCU (Microcontroller Unit), он и осуществляет управление всеми операциями ввода-вывода накопителя и контролирует его работу.
Примечание: Операция прямого доступа к памяти возможна только тогда, когда такой режим работы поддерживается одновременно «BIOS», контроллером и операционной системой. Иначе система будет работать используя предыдущий режим программного ввода-вывода (PIO).
Всю хронологию развития и достижений на пути становления ATA интерфейса можно представить в виде следующей сводной таблицы.
Как видите (из второй колонки) скорости обмена данными через интерфейс постоянно увеличивались, что, в свою очередь, на этапе внедрения ревизии «Ultra ATA Mode 4» (он же - Ultra DMA/66 со скоростью передачи 66 мегабайт в секунду) вызвало необходимость внедрения нового интерфейсного кабеля с удвоенным количеством проводников (четвертая колонка в таблице).
Для сравнения - оба кабеля рядом:
На цвет не обращайте внимания :) Кабель слева имеет 80 жил (проводников), справа - 40. Как мы видим из таблицы, раньше все кабели имели именно 40 жил. Но дело в том, что с ростом скоростей передачи данных резко возросла роль взаимных помех и наводок отдельных проводников в кабеле друг на друга.
Именно поэтому был введен новый кабель. Причем все дополнительные двадцать пар его проводов это - проводники заземления (Ground), чередующиеся с проводниками информационными. Такое чередование уменьшает емкостную связь между отдельными жилами и, таким образом, сокращает взаимные наводки. Да и если подумать логически, что там еще может быть, если самих контактов (штырьков) на устройстве осталось все так же 40 (без учета "ключа") - по одному на каждый провод. Последующим (более быстрым режимам) «UDMA5» и «UDMA6» также требовался 80-жильный кабель.
Обратите Ваше внимание на колодки обоих кабелей. У них есть "ключ" (пластмассовый «П» образный выступ), который исключает неправильное подключение к разъему. Мало того, у 80-ти жильного кабеля на интерфейсе отсутствует одно из центральных гнезд (на материнских платах тогда начали устанавливать специальный IDE-разъем без центрального контакта), который также выполняет функцию дополнительного "ключа".
Но, - продолжим, чтобы закончить тему о кабелях. При возросших скоростях передачи данных появляется еще одно ограничение - на максимально допустимую длину кабеля. Стандарт ATA всегда устанавливал эту границу в 46 см. В продаже, к примеру, широко распространены кабели от 44-х до 48-ми сантиметров. Встречаются также изделия откровенно превышающие рекомендованный предел и, как Вы понимаете, их использование вряд ли можно рекомендовать.
Чтобы более полно осветить тему добавлю, что бывают еще, так называемые, "круглые" ATA шлейфы.
Выглядят они более благородно, чем свои "плоские" собратья, но, Вы же понимаете, что это снова - не стандарт, а - изделие сторонних производителей, которое должно обеспечивать работу на соответствующих скоростях и соответствовать заявленным характеристикам. Нам надо понимать, что ключевое слово здесь - должно ! :)
На пути своего развития стандарт ATA преодолел много препятствий, которые были заложены именно "в железе". Сначала это было ограничение, связанное с геометрией накопителя. Стандартный PC BIOS поддерживал жестко определенное предельно возможное число головок, секторов и цилиндров из которых состоят жесткие диски (максимально адресуемый размер пространства равнялся тогда 528 мегабайтам).
Это аппаратное ограничение было преодолено введением не физической (как раньше), а логической (условной) адресации, не имеющей уже ничего общего с реальной геометрией накопителя. Появились режимы работы для "больших" дисков «Large» и его преемник - «LBA» (Logical Block Address). Это позволяло адресовать (использовать) уже 8,46 гигабайта дискового пространства.
Со временем, когда объем жестких дисков опять увеличился, было преодолено и это ограничение и планка поднялась до 32-х гигабайт, а затем (с введением 28-ми битного режима адресации) - до невиданного ранее объема в 137 гигабайт ! :) Запись 28-ми битного числа, организована методом вписывания его отдельных частей в соответствующие регистры самого диска. Последние спецификации ATA поддерживали уже 48-ми битную адресацию, расширяя возможный предел адресации до 144-х петабайт (1 петабайт - 1024 терабайта).
И тут, казалось бы, когда все ограничения на объем используемых дисков были так героически преодолены выяснилось, что параллельный интерфейс ATA (в том виде, в котором он существует на данный момент) не подходит для дальнейшего развития стандарта. Попытки увеличить его пропускную способность сводятся на нет возникающими вследствие возросших скоростей наводками в кабеле. Укорачивать сам кабель? Тоже не выход из положения.
И вот тут на сцену выходит новый стандарт передачи данных - «SATA» (Serial ATA).
Это - переработанный, и улучшенный вариант предыдущего стандарта. Как Вы помните, АТА - параллельный интерфейс (Parallel), в то время как SATA - последовательный (Serial). В это время и происходит переименование отживающего свое «ATA» в «PATA» (Parallel ATA), однозначно указывая, таким образом, что это - параллельный интерфейс передачи данных.
Несмотря на то, что последовательный способ передачи медленнее, в данном случае это компенсируется возможностью работы на более высоких частотах. Отпадает необходимость в синхронизации каналов. Также сам интерфейсный кабель гораздо более помехоустойчив (все его 7 жил отдельно экранированы). Это, в свою очередь, дало возможность довести максимальную длину кабеля до одного метра.
В стандарте «SATA» Изменился также сам принцип передачи данных. Он получил название LVDS - низковольтная дифференциальная передача сигналов (англ. low-voltage differential signaling). Повышение скорости передачи и использование самосинхронизирующихся кодов позволяют отправлять больше данных по меньшему количеству проводов, чем в случае параллельной шины.
За время своего существования новая спецификация успела сменить несколько ревизий (поколений), которые характеризуются все увеличивающейся пропускной способностью интерфейса.
- SATA-1 150 МБ/с (мегабайт в секунду)
- SATA-2 300 МБ/с (мегабайт в секунду)
-
SATA-3 600 МБ/с (мегабайт в секунду)
Тут надо понять следующее: все эти бешеные скорости это - скорость передачи данных по интерфейсному кабелю (от контроллера, с использованием предварительного кеширования и т.д.). И какая бы большая цифра здесь не была написана, реально нас должна интересовать скорость чтения/записи непосредственно с самих пластин (блинов) жесткого диска. Ведь именно она является узким местом в его быстродействии. Другое дело, что в новых моделях реализованы более совершенные алгоритмы по работе с данными, оптимизирована работа с кеш памятью устройства и т.д.
На данный момент (в стандартных настольных конфигурациях) Вы вряд ли увидите скорость чтения с пластин, превышающую 100-120 мегабайт в секунду. Как видите, эта цифра только сейчас подошла к пределу пропускной способности старого стандарта Ultra ATA 133 (133 мегабайта в секунду). Как мы говорили выше, скорости передачи в SATA достигаются за счет другого, а все эти "300", и "600" мегабайт в секунду (три и шесть гигабит в секунду, соответственно) - работа на перспективу (твердотельные SSD накопители), а при их чрезмерном выпячивании - бессмысленная реклама, сбивающая с толку неподготовленного пользователя.
О чем это мы? Ах, да! О преимуществах сата: надо также помнить, что каждое SATA устройство располагается на отдельном канале (контроллере), поэтому отпадает необходимость в их конфигурировании с помощью перемычек (джамперов).
Хотя, справедливости ради стоит отметить, что на ранних этапах внедрения нового стандарта на SATA жестких дисках можно было обнаружить джамперы, но они использовались редко и то лишь для принудительного перевода накопителя SATA-2 в режим SATA-1 (для совместимости с первым поколением контроллеров).
Вот так друзья, коротко мы разобрали основные понятия, связанные с интерфейсом ATA/ATAPI. Теперь смело нажимайте на ссылку "следующая", переходим к практической части материала.
О том, как правильно подключать кабели передачи данных, смотрите в видео ниже: