Ata скорость передачи данных. Внутренние интерфейсы IDE и их разновидности. Корректное подключение нескольких устройств

IDE (Integrated Device Electronics) - интерфейс устройств со встроенным контроллером. При создании этого интерфейса разработчики ориентировались на подключение дискового накопителя. За счет минимального удаления контролера от диска существенно повышается быстродействие.

Интерфейс EIDE имеет первичный и вторичный каналы, к каждому из которых можно подключить два устройства, то есть всего их может быть четыре. Это может быть жесткий диск, CD-ROM или переключатель дисков.

Физически интерфейс IDE реализован с помощью плоского 40-жильного кабеля, на котором могут быть разъемы для подключения одного или двух устройств. Общая длина кабеля не должна превышать 45 сантиметров, причем между разъемами должно быть расстояние не менее 15 сантиметров.

  • а - кабель параллельного интерфейса ATA/IDE (РАТА);
  • б - 40-контактный разъем РАТА;
  • в - разъемы РАТА на плате;
  • г - последовательный разъем АТА (SATA);
  • д - разъемы SATA на плате.

Таблица разъемов параллельного интерфейса АТА

Контакт Назначение Контакт Назначение Контакт Назначение Контакт Назначение
1 Сброс 2 Земля 3 Данные 7 4 Данные 8
5 Данные 6 6 Данные 9 7 Данные 5 8 Данные 10
9 Данные 4 10 Данные 11 11 Данные 3 12 Данные 12
13 Данные 2 14 Данные 13 15 Данные 1 16 Данные 14
17 Данные 0 18 Данные 15 19 Земля 20 Key
21 DDRQ 22 Земля 23 I/O запись 24 Земля
25 I/O чтение 26 Земля 27 10C HRDY 28 Cable Select
29 DDACK 30 Земля 31 IRQ 32 Не используется
33 Адрес 1 34 GPIO DMA66 Detect 35 Адрес 0 36 Адрес 2
37 Chip Select 1Р 38 Chip Select ЗР 39 Активен 40 Земля

Существует несколько разновидностей интерфейса IDE, совместимых снизу вверх друг с другом.

Спецификация Enhanced IDE

В целях развития возможностей интерфейса IDE компанией Western Digital была предложена его расширенная спецификация Enhanced IDE (синонимы: E-IDE, Fast AТА, АТА-2 и Fast АТА-2), которая обрела затем статус американского стандарта ANSI под названием АТА-2. Она содержит ряд нововведений: поддержку IDE-накопителей емкостью свыше 504 Мбайт, поддержку в системе нескольких контроллеров IDE и подключение к одному контроллеру до четырех устройств, а также поддержку периферийных устройств, отличных от жестких дисков (приводов CD-ROM, CD-R и DVD-ROM, накопителей LS-120 и ZIP, магнитооптики, стримеров и тому подобное). Расширение спецификации IDE для поддержки иных типов накопителей с интерфейсом IDE называют также ATAPI (АТА Packed Interface). В Enhanced IDE также введены элементы распараллеливания операций обмена и контроля за целостностью данных при передаче.

  • а - АТА 2 и АТА 3.
  • б - Ultra АТА.
  • в - Ultra АТА/66.

В спецификацию интерфейса Enhanced IDE добавлена поддержка режимов PIO Mode 3 и 4, а также режимы DMA Single Word Mode 2 и Multi Word DMA Mode 1 и 2. Максимальная скорость передачи данных по шине в режиме РIO Mode 3 составляет 4.1 Мбайт/с, а в режимах РIO Mode 4 и Single Word DMA Mode 2 - 16.7 Мбайт/с. Режим Multi Word DMA Mode 2 позволяет получить пиковую скорость обмена свыше 20 Мбайт/с.

Следующим шагом в развитии интерфейса IDE/ATA явился стандарт Ultra АТА (он же Ultra DMA, АТА-33, DMA-33, АТА-3). Ultra АТА является стандартом де-факто использования быстрого Режима DMA - mode 3, обеспечивающего скорость передачи данных 33.3 Мбайт/с. Для обеспечения надежной передачи данных по все тому же кабелю используются специальные схемы контроля и коррекции ошибок, при этом сохраняется обратная совместимость с предыдущими стандартами - АТА и АТА-2.

Таблица характеристик IDE/ATA интерфейсов

Спецификация АТА-1 АТА-2 АТА-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7
Синонимы АТА, IDE EIDE, Fast АТА, Fast IDE, Ultra ATA EIDE АТА-4, UltraATA/33 АТА-5, UltraATA/66 АТА-6, Ultra ATA/100 АТА-7, Ultra ATA/133
Пропускная способность, Мбай/с 3.3-8.3 11.1-16.6 16 16.7-33.3 44.4-66.7 100 133-150
Количество соединений 2 2 2 2 на один кабель 2 на один кабель 2 на один кабель 1 на один кабель
Характеристики кабеля 40 контактов 40 контактов 40 контактов 40 контактов 40 контактов, 80-жильный 40 контактов, 80-жильный 7 контактов
Новые свойства 28-битовая адресация логических блоков (LBA) S. M. A. R. T. Интерфейс ATAPI, поддержка CD-ROM, стримеров и прочего. 80-жильный кабель 48-битовая LBA SATA 1.0, поддержка длинных логических / физических блоков
Максимальный размер диска 137 Гбайт (128 GiBi) 144 Пбайт (128 PiBi)
Контроль no CRC Нет Нет Нет Есть Есть Есть
Дата выпуска 1981 1994 1996 1997 1999 2000 2003
1 Стандарт ANSI Х3.221-1994 ХЗ. 279-1996 Х3.298-1997 NCITS 317-1998 NCITS 340-2000 NCITS 361-2002 NCITS 397-2005 1

Наконец - интерфейсы Ultra ATA/66, Ultra ATA/100, Ultra AТА/133, позволяющие осуществлять передачу данных со скоростями 66.100 и 133-150 Мбайт/с соответственно.

Последовательный интерфейс Serial АТА (SATA). Основные преимущества Serial АТА по сравнению с Parallel АТА (РАТА):

  • уменьшено количество контактов разъема (до 7 вместо 40);
  • снижено напряжение сигнала (до 500 мВ сравнительно с 5 В для РАТА);
  • меньший, более удобный для проводки кабель длиной до 1 м;
  • улучшены возможности обнаружения и коррекции ошибок.

Первое поколение (известно как SATA/150 или SATA 1) появилось на рынке в середине 2002 года и поддерживало скорость передачи данных до 1.5 Гбит/с. SATA 1 использует схему кодирования 8В/10В на физическом уровне, которая имеет эффективность, равную 80 %, что приводит к реальной скорости в 1.2 Гбит/с или 150 Мбайт/с.

Следующая версия (SATA 3.0 Гбит/с) также использует схему 8В/10В, поэтому максимальная скорость передачи составляет 2.4 Гбит/с или 300 Мбайт/с. Однако сегодняшние устройства НЖМД не поддерживают таких скоростей, поэтому реальное быстродействие системы ограничено возможностями дисковода. Спецификацию 3.0 Гбит/с часто называют «Serial АТА 2» («SATA 2»), а также SATA 3.0 или SATA/300, продолжая линию АТА/100, АТА/133 и SATA/150.

Интерфейс SCSI был разработан в конце 1970-х годов организацией Shugart Associates. Первоначально известный под названием SASI (Shugart Associates System Interface), он после стандартизации в 1986 году уже под именем SCSI (читается «скази») стал одним из промышленных стандартов для подключения периферийных устройств - винчестеров, стримеров, сменных жестких и магнитооптических дисков, сканеров, CD-ROM и CD-R, DVD-ROM и тому подобное К шине SCSI можно подключить до восьми устройств, включая основной контроллер SCSI (или хост-адаптер).

Интерфейс SCSI является параллельным и физически представляет собой плоский кабель с 25-, 50-, 68-контактными Разъемами для подключения периферийных устройств. Шина SCSI содержит восемь линий данных, сопровождаемых линией контроля четности, и девять управляющих линий. Стандарт SCSI определяет два способа передачи сигналов: одно-полярный, или асимметричный (Single ended), и дифференциальный (Differential). В первом случае имеется один провод с нулевым потенциалом («земля»), относительно которого передаются сигналы по линиям данных с уровнями сигналов, соответствующими ТТЛ-логике. При дифференциальной передаче сигнала для каждой линии данных выделено два провода, и сигнал на этой линии получается вычитанием потенциалов на их выходах. При этом достигается лучшая помехозащищенность, что позволяет увеличить длину кабеля.

  • а - общая архитектура;
  • б - адаптер SCSI.

Для интерфейса SCSI необходимо наличие терминаторов (согласующих сопротивлений, которые поглощают сигналы на концах кабеля и препятствуют образованию эха).

Устройства SCSI также соединяются в виде цепочки (daisy chain), причем каждое устройство SCSI имеет свой адрес (SCSI ID) в диапазоне от 0 до 7 (или от 0 до 15). В качестве адреса платы контроллера обычно используется наибольшее значение SCSI ID - 7(15), адрес загрузочного диска SCSI ID равен 0, а второго диска - 1. Обмен между устройствами на магистрали SCSI определяется нормированным списком команд (Common Command Set, CCS). Программное обеспечение для интерфейса SCSI не оперирует физическими характеристиками накопителя (то есть числом цилиндров, головок и так далее), а имеет дело только с логическими блоками данных, поэтому в одной SCSI-цепочке могут быть размещены, например, сканер, жесткий диск и накопитель CD-R.

Опрос устройств производится контроллером SCSI сразу после включения питания. При этом для устройств SCSI реализовано автоконфигурирование устройств (Plug-and-play) по протоколу SCAM (SCSI Configured AutoMagically), в котором значения SCSI ID выделяются автоматически. Для стандартизированного управления SCSI-устройствами наиболее широко применяется программный интерфейс ASPI (Advanced SCSI Programming Interface).

Характеристики SCSI

Существует более десятка различных версий интерфейса SCSI. Наиболее существенные из них - SCSI-1, Fast SCSI, Fast Wide SCSI, Ultra SCSI, Ultra 2 SCSI.

Основными характеристиками шины SCSI являются:

  • ширина - 8 или 16 бит («narrow» или «wide»);
  • частота, с которой тактируется шина;
  • физический тип интерфейса (однополярный, дифференциальный, оптика).

На скорость влияют в основном два первых параметра. Обычно они записываются в виде приставок к слову SCSI.

Максимальную скорость передачи устройство-контроллер можно подсчитать, взяв частоту шины, а в случае наличия «Wide» умножить ее на 2 (например, FastSCSI - 10 Мбайт/с, Ultra2WideSCSI -80 Мбайт/с).

Последовательные интерфейсы SCSI

Четыре недавние версии SCSI, а именно SSA (Serial Storage Architecture), FC-AL и Serial Attached SCSI (SAS), отошли от традиционного параллельного стандарта SCSI и ориентированы на передачу данных по последовательным коммуникациям. Основные преимущества последовательного интерфейса - большие скорости передачи данных; «горячее» включение-выключение; лучшая помехозащищенность.

Таблица версий (поколения) интерфейса SCSI

Тип шины Макс. скорость, Мбайт/с Ширина шины (разрядность) Максимальная длина связи (в зависимости от типа сигналов), в метрах Максимальное количество подключений
SE LVD HVD
SCSI-1 5 8 (узкий) 6 - 25 8
Fast SCSI 10 8 3 - 25 8
Fast Wide SCSI 20 16 (широкий) 3 - 25 16
Ultra SCSI 20 8 1.5 - 25 8
Ultra SCSI 20 8 3 - - 4
Wide Ultra SCSI 40 16 - - 25 16
wide Ultra SCSI 40 16 1.5 - - 8
Wide Ultra SCSI 40 16 3 - - 4
Ultra2 SCSI 40 8 Не определена для скорости выше Ultra 12 25 8
Wide Uitra2 SCSI 80 16 - 12 25 16
Ultra3 SCSI or Ultra 160 SCSI 160 16 12 Не определена для скорости выше Ultra2 16
Ultra320 SCSI 320 16 - 12 - 16
SSA 40 1 25 96(192)
SSA40 80 1 25 96(192)
FC-AL 1Gb 100 1 500-3000 127
FC-AL 2Gb 200 1 500-3000 127
FC-AL4Gb 400 1 500-3000 127
SAS 3 Gbit/s 300 1 6 16 256
Fibre Channel 2000 Не определена 10 000-100 000 Не определено

Терминаторы, разъемы

По типу сигналов различают линейные (Single Ended) и дифференциальные (Differential) версии SCSI, их кабели и разъемы идентичны, но электрической совместимости устройств между ними нет.

Дифференциальная версия для каждого сигнала использует витую пару проводников и специальные приемопередатчики, при этом становится допустимой большая суммарная длина кабеля, сохраняя высокую частоту обмена. Дифференциальный интерфейс применяется в мощных дисковых системах серверов, но в обычных персональных компьютерах не распространен.

В линейной версии сигнал должен идти по своему одному проводнику, скрученному (или, по крайней мере, отдельному от другого в плоском шлейфе) с нулевым (обратным) проводом.

SCSI устройства соединяются кабелями в цепочку, на крайних Устройствах подключаются терминаторы. Часто одним из крайних устройств является хост-адаптер. Он может иметь для каждого канала как внутренний разъем, так и внешний.

По электрическим свойствам различают следующие типы терминаторов:

  • пассивные (SCSI-1) с сопротивлением 132 Ом (обычные резисторы). Эти терминаторы не подходят для высокоскоростных режимов SCSI-2;
  • активные (110 Ом) - специальные терминаторы для обеспечения работы на частоте 10 МГц в SCSI-2;
  • FPT (Forced Perfect Terminator) - улучшенный вариант активных терминаторов с ограничителями выбросов.

Активные терминаторы требуют питания, для этого имеются специальные линии интерфейса TERMPWR.

Кабели

Ассортимент кабелей SCSI довольно широк. Основные стандартизированные кабели:

  • А-кабель: стандартный для 8-битового интерфейса SCSI, 50-проводный внутренний шлейф (разъемы IDC-50) или внешний экранированный (разъемы Centronics-50).
  • В-кабель: 16-битовый расширитель SCSI-2, распространения не получил.
  • Р-кабель: 16-битовый SCSI-2/3.68-проводный с улучшенными миниатюрными экранированными разъемами, универсальными для внутренних и внешних кабелей 8-, 16- и 32-битовых версий SCSI (в 8-битовом варианте контакты 1-5.31-39.65-68 не используются); разъемы для внешнего подключения выглядят как миниатюрный вариант Centronics с плоскими контактами, внутренние имеют штырьковые контакты.
  • Q-кабель: 68-проводное расширение до 32 бит, используется в паре с Р-кабелем.
  • Кабель с разъемами D-25P: 8-битовый, стандартный для Macintosh, используется на некоторых внешних устройствах (Iomega ZIP Drive).

Таблица скоростей передачи данных, длина и типы кабелей SCSI-1, SCSI-2

Возможны различные вариации кабелей-переходников.

Назначение контактов разъемов на примере распространенного А-кабеля приведено в таблице.

Таблица разъемов А-кабеля SCSI

Контакт разъема Сигнал Контакт разъема Сигнал
1 GND 26 DB0#
2 GND 27 DB1#
3 GND 28 DB2#
4 GND 29 DB3#
5 GND 30 DB4#
6 GND 31 DB5#
7 GND 32 DB6#
8 GND 33 DB7#
9 GND 34 DBParity#
10 GND 35
11 GND 36
12 GND/Reserved 37 Reserved
13 Open 38 TERMPWR
14 Reserved 39 Reserved
15 GND 40
16 GND 41 ATN#
17 GND 42 GND
18 GND 43 BSY#
19 GND 44 ACK#
20 GND 45 RST#
21 GND 46 MSG#
22 GND 47 SEL#
23 GND 48 C/D#
24 GND 49 REQ#
25 GND 50 I/O

Шина . Как и в шине PCI, в шине SCSI предполагается возможность обмена информацией между любой парой устройств. Конечно чаще всего обмен производится между хост-адаптером и периферийными устройствами. Копирование данных между устройствами может производиться без выхода на системную шину компьютера. Здесь большие возможности имеют интеллектуальные хост-адаптеры со встроенной кэш-памятью. В каждом обмене по шине принимает участие его инициатор (Initiator) и целевое устройство (Target). В таблице приводится назначение сигналов шины.

Таблица назначений сигналов шины SCSI

Сигнал Источик: I=Initiator, T=Target Назначение
DBx# - Инверсная шина данных с битами паритета
TERMPWR - Питание терминаторов
ATN# I Внимание
BSY# I, T Шина занята
REQ# T Запрос на пересылку данных
ACK# I Ответ на REQ#
RST# I, T Сброс
MSG# T Target передает сообщение
SEL# I/T Выбор (Select) целевого устройства инициатором или Reselect инициатора целевым устройством
C/D# T Управление (0) / данные (1) на шине
l/0# T Направление передачи относительно инициатора или фаза Selection (1) / Reselection (0)

Параметры конфигурирования SCSI-устройств

Все устройства на шине должны быть согласованно сконфигурированы. Для них требуется программно или с помощью перемычек (джамперов) установить следующие основные параметры.

Идентификатор устройства - SCSI ID - адрес 0-7 (или 0-15), уникальный для каждого устройства на шине. Обычно хост-адаптеру, который должен иметь высший приоритет, назначается ID 7. Заводское назначение идентификаторов устройств приведено в таблице, хотя оно и не является обязательным. Устройства адресуются позиционным кодом (хотя ID задается 3-4-битовым кодом), что обеспечивает совместимость адресации 8- и 16-битовых устройств на одной шине. Номер SCSI ID обычно устанавливается с помощью перемычек (хотя в SCSI существуют и новые стандарты, аналогичные Plug-and-Play, не требующие перемычек).

Таблица заводских установов идентификаторов устройств

Контроль паритета - SCSI Parity

Если хотя бы одно устройство на шине не поддерживает контроль паритета, он должен быть отключен на всех устройствах данной шины. Контроль паритета, особенно для дисковых устройств, является средством защиты от искажения данных при передаче.

Включение терминаторов - Termination

Активные терминаторы могут включаться одним джампером или даже управляться программным сигналом. Терминаторы должны быть включены только на крайних устройствах в цепочке.

Питание терминаторов - TerminatorPower

Питание терминаторов джампером или программно должно быть включено хотя бы на одном устройстве, когда используются активные терминаторы.

Согласование скорости синхронного обмена - SCSI Synchronous Negotiation

Режим синхронного обмена, обеспечивающий высокую производительность, включается по взаимному согласованию устройств. Однако, если хоть одно устройство на Шине его не поддерживает, согласование на хост-адаптере необходимо запретить. При этом, если обмен будет инициирован синхронным устройством, хост поддержит этот режим.

Старт по команде - Start on Command, или задержанный старт - Delayed Start

При включении этой опции запуск двигателя Устройства выполняется только по команде от хост-адаптера, что Позволяет снизить пик нагрузки блока питания в момент включения. Хост будет запускать устройства последовательно.

Разрешение отключения - Enable Disconnection

Выбор этой опции позволяет устройствам отключаться от шины при неготовности данных, что весьма эффективно используется в многозадачном режиме при нескольких периферийных устройствах на шине.

Хост-адаптер

Хост-адаптер SCSI является важнейшим узлом интерфейса, определяющим производительность подсистемы SCSI-устройств. Существует широкий спектр адаптеров, начиная от простейших, к которым можно подключать только устройства, не критичные к производительности.

Конфигурирование SCSI хост-адаптеров с точки зрения шины SCSI не отличается от конфигурирования других устройств (смотри ранее). Для современных адаптеров вместо джамперов используется программное конфигурирование. Утилита конфигурирования обычно входит в расширение BIOS (на плате адаптера), и приглашение к ее исполнению выводится на экран при инициализации во время POST.

Интерфейс ATA (IDE) является одним из самых долгих по времени использования в устройствах (компьютерах), появился он еще в 1986 г (когда первый жесткий диск 30+30 мб был уже в 1973 г) и используется по сей день (постепенно интерфейс IDE вытесняет интерфейс SATA) для подключения жестких дисков или приводов. После появления на рынке SATA, был переименован в PATA - Parallel ATA.

  • Интерфейс ATA (IDE)
  • Скорость передачи IDE
  • Я долгое время использую IDE диски и все никак не могу перейти на SATA, и даже на момент написания этой статьи, я также использую IDE 3.5/40 Gb, а современные обьемы для меня мягко говоря слишком огромные, но думаю все же в скором времени буду использовать диски с SATA интерфейсом.


    История интерфейса ATA/PATA (IDE)

    Первая версия была разработана в 1986-ом году компанией Western Digital и получали название IDE, что с английского Integrated Drive Electronics - «электроника, встроенная в привод». Этому послужило новшество того времени, контроллер размещался непосредственно в самом приводе, а не в виде отдельной платы как это было в других интерфейсах того времени - к примеру в SCSI. В связи с этим, расстояние до контроллера было уменьшено, за счет чего увеличились характеристики привода. Это позволило удешевить производство, так как контроллер был рассчитан только на родной привод, другого варианта быть не может.

    Интерфейс изначально был рассчитан на работу с жесткими дисками, однако со временем стандарт был расширен для использования с такими устройствами как DVD-ROM, CD-ROM, ленточными накопители, дискеты большого обьема (ZIP, флоптические).

    Но не сразу стандартизован был интерфейс подключения к CD-ROM, это скорее было проприетарными разработками фирм, выпускавшие приводы. Поэтому для подключения CD-ROM было необходимо сперва установить отдельную плату расширения, которая направлена на работу с определенным производителем. Некоторые звуковые карты были оснащены именно таким разьемом, поэтому обычным делом было когда вместе с CD-ROM приводом в комплекте продавались звонковые карты, так как это было на то время оптимальным решением.

    После этого, важным изменением в развитии интерфейса ATA/PATA стало использования вместо PIO - DMA. При использовании PIO процессом считывания с диска управлял центральный процессор, это было заметно на сниженном быстродействии. Поэтому системы, которые использовали интерфейс ATA работали намного медленнее с диском, чем те, которые использовали интерфейс SCSI (или другие). DMA существенно облегчил этот процесс и снизил затраты центрального процессора во время считывания.

    Однако были и положительные стороны у режима PIO - не требовались драйвера, поэтому использование этого режима было оптимальных на то время для однозадачных режимов.

    При использовании технологии DMA, роль управления потоком данных берет на себя сам накопитель, работа с памятью происходит почти без участия процесса, который в свою очередь выдает только команды на выполнение той или иной задачи.

    Последние IDE-диски (то есть относительно современные) «умеют» использовать эту возможность, сочетая с возможностью перехвата управления шиной и в результате полностью управлять процессом передачи данных.

    Однако использование DMA возможно только в том случае, когда операционная система, BIOS и контроллер поддерживают этот режим, в остальных случая используется только режим PIO.

    Со временем был введен дополнительный режим - UltraDMA 2 (UDMA 33), в этом режиме данные передаются как при переднем так и при заднем фронте сигнала DIOR/DIOW. Это увеличивает скорость вдвое, помимо этого проверяется четность CRC (последовательность бит, которая была получена по определенному алгоритму и при этом основываясь на другой битовой последовательности - исходной), что только повышает надежность передачи.

    Интерфейс ATA (IDE)

    Вообще «оригинальный» интерфейс АТА не предназначен для подключения каких либо устройств, кроме как жестких дисков и не поддерживает возможности ATAPI, при которых возможно подключение и других устройств а также использование режим передачи block mode и LBA.

    Для подключения устройств с разьемом IDE (PATA), обычно применяется 40-жильный проводной кабель (другими словами - шлейф). Такой шлейф может иметь как два, так и три разьема. Один разьем соответственно подключается к материнской плате, а другой к жесткому диску, свободный раздел можно также подключить как к накопителю, так и к оптическому приводу. В материнских платах старого образца, разьем IDE был в виде отдельной платы расширения. Встречаются также IDE шлейфы для подключения трех дисков к одному каналу, но в таком случае один из дисков будет в режиме «только чтение».

    Шлейф IDE, как уже писалось выше, представляет собой 40-контактный кабель, однако с появлением Ultra DMA/66 (UDMA 4), появилась еще одна его разновидность - 80-ти жильный кабель. Все дополнительные проводники, ничто иное как элементы заземления, которые чередуются с информационными проводниками. В результате количество проводников заземления с 7-ми увеличилось до 47-ми. Проводники заземления необходимы для уменьшения емкостной связи, что в свою очередь сокращает взаимные наводки. Именно при высоких скоростях, емкостная связь была преградой, поэтому для обеспечения скорости 66 Мб/с стандарта Ultra DMA/66, был применен новый кабель. Другие режимы UDMA также требуют использование такого кабеля (шлейфа).

    Длина кабеля всегда составляла не больше 46 см, что затрудняло подключение и правильное расположение жесткого диска в северных корпусах, и исключает использование дисков PATA в роли внешних. На рынке представлены кабели больше стандартной длины, однако это не соответствуют стандарту. Это не означает что они не будут передавать данные должным образом, как и при нестандартном кабеле - не плоском, а «круглом». Стандарт PATA предполагает использование кабелей только определенной длины, с конкретными характеристиками сопротивлений (как полного, так и емкостного). Поэтому нужно необходимо осторожно относится к таким «нестандартным» кабелям.

    Если на одном канале (шлейфе) используется не одно IDE-устройство, то в таком случае одно из них должно быть ведущим (master), а второе - ведомым (slave). Обычно в цепочке первым расположен ведущий диск, после которого уже ведомый. Также и в BIOS первым диском в списке выступает ведущий, после которого - ведомый.

    При использовании одного устройства на одном шлейфе, то он должен быть ведущим (master). Некоторые диски имеют специальный джампер для такого случая (single). Впрочем на одном кабеле, одно устройство может работать как ведущим так и ведомым.

    Также существует настройка cable select, при которой диск сам определяет свой тип. Впервые такая опция была предложена в спецификации ATA-1, но распространенной стала только с выходом ATA-5. Настройка cable select исключает переставление перемычек в любом положении дисков/приводов. Но для работоспособности этой настройки, необходимо чтобы шлейф был с кабельной выборкой.

    При использовании 40-контактного кабеля настройку cable select проводили простым способом, а именно перерезанием 28-го контакта между двумя разьемами, что приводило к тому, что устройство на конце кабеля являлось ведомым, а ведущим - то которое идет перед ним. Такое размещение со временем было даже стандартом. Но когда на кабеле располагалось только одно устройство, то это приводило к образованию ненужного куска кабеля, что к тому же могло служить отражателем сигнала и провоцировать помехи.

    80-ти проводниковые кабели лишены данных недостатков, так как ведущее устройство всегда находится в конце кабеля, поэтому при подключении одного устройства - нет лишнего куска кабеля. Кабельная выборка у них заводская, то есть в самом разьеме данный контакт исключен. Для удобства разьемы на кабелях отличаются цветом, хотя на это мало кто обращает внимание. Синий предназначен для к контроллера, черный к ведущему, а серый - к ведомому устройству.

    Скорость передачи IDE

    При использовании жесткого диска IDE (ATA/PATA), скорость определяется в основном по двум параметрам. Внутренняя скорость передачи непосредственно между магнитной составляющей и внутренним буфером диска и определяется плотностью записи, скоростью вращения и другими параметрами, которые зависят в первую очередь не от интерфейса, а от конструкции диска. Также в большой степени на скорость работы диска IDE влияет используемый режим передачи данных. На первых порах использования дисков скорость дисковой подсистемы определялась внутренней скоростью передачи данных, которая была значительно меньшей. Сегодня, когда плотность записи намного выше и за один участок времени или оборота снять/считать ее пропорционально возможно больше, а также с увеличением частоты вращения, в первую очередь рассматривается именно внешняя скорость передачи.

    Памятка при конфигурации устройств IDE/ATA

    Если вы собрались сконфигурировать IDE-устройства, буд-то жесткий диск или CD-ROM/DVD-ROM, следует учитывать следующие тонкости или рекомендации:

    Каждый канал IDE за единицу времени может обработать только одну команду к одному устройству, то есть, если на канале (шлейфе) есть также еще устройства (к примеру два жестких диска), то доступ к другому жесткому диску будет только при условии обработки команды к первому. Именно поэтому рекомендуется использовать при возможности на одно устройство - один канал, именно это и является основным преимуществом SCSI (к примеру использование два жестких диска);

    Чипсеты материнских плат, которые оснащены IDE-контроллером, поддерживают разные режимы передачи данных для устройства, тем не менее если устройства имеют значительные отличия по скорости, то лучше их разместить на разных каналах IDE;

    Не рекомендуется подключать на одном канале IDE жесткий диск и CD-ROM, так последний использует другую систему команд и это может отразится на работе жесткого диска не в лучшую сторону, во-вторых даже самые быстры ATAPI-устройства не способы даже конкурировать со скоростью IDE, поэтому это также может замедлить скорость работы жесткого диска.

    PATA — Parallel Advanced Technology Attachment - параллельный интерфейс подключения накопителей, фактически другое название для IDE

    ATA — Advanced Technology Attachment - интерфейс подключения накопителей
    ATAPI — Advanced Technology Attachment Packet Interface — вариант интерфейса для подключения сменных устройств (CD/DVD ROM)

    IDE — Integrated Device Electronics — дословно интегрированная электроника устройства — т.е. контроллер встроен в сам привод (см. ниже DMA)
    DMA — Direct memory access - прямой доступ к памяти

    SCSI Small Computer System Interface — вариант PATA для серверов.

    Теперь подробнее.

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

    Поначалу стандарт работал только с жёсткими дисками, но затем был изменен для работы и с другими устройствами. К таким устройствам относятся приводы CD и DVD-ROM, магнитооптические диски и ленточные накопители. Этот новый (расширенный) стандарт стал называться «Advanced Technology Attachment Packet Interface» (ATAPI ), и поэтому полное его название выглядит как — «ATA/ATAPI ».

    Всю хронологию развития и достижений на пути становления ATA интерфейса можно представить в виде следующей сводной таблицы.

    Скорости обмена данными через интерфейс постоянно увеличивались, что, в свою очередь, на этапе внедрения ревизии «Ultra ATA Mode 4» (он же — Ultra DMA/66 со скоростью передачи 66 мегабайт в секунду) вызвало необходимость внедрения нового интерфейсного кабеля с удвоенным количеством проводников (четвертая колонка в таблице). Раньше все кабели имели именно 40 жил. Но дело в том, что с ростом скоростей передачи данных резко возросла роль взаимных помех и наводок отдельных проводников в кабеле друг на друга.

    Именно поэтому был введен новый кабель. Причем все дополнительные двадцать пар его проводов это — проводники заземления (Ground), чередующиеся с проводниками информационными. Такое чередование уменьшает емкостную связь между отдельными жилами и, таким образом, сокращает взаимные наводки. При возросших скоростях передачи данных появляется еще одно ограничение — на максимально допустимую длину кабеля. Стандарт ATA всегда устанавливал эту границу в 46 см. Самих контактов (штырьков) на устройстве осталось все так же 40 (без учета «ключа») — по одному на каждый провод. Последующим (более быстрым режимам) «UDMA5» и «UDMA6» также требовался 80-жильный кабель.

    Установка джамперов (перемычек) для дисков IDE и подключение шлейфов

    Перед подключением шлейфа IDE необходимо правильно установить джамперы на устройствах. Каждый шлейф поддерживает два устройства, одно должно быть Master, второе — Slave.
    Зачем это вообще нужно? ATA стандарт является по своей природе параллельным интерфейсом . Это значит, что каждый канал в любой момент времени может обрабатывать только один запрос к одному (от одного) устройства. Следующий запрос, даже к другому устройству, будет ожидать завершения выполнения текущего обращения. Разные IDE каналы при этом могут работать совершенно автономно. Чтобы контроллер «понимал» от «кого» пришел запрос (DVD или HDD) и нужны перемычки.

    Джампер выглядит вот так — это специальная перемычка на два пина:

    Проще всего для оптических накопителей, выбор из 3-х вариантов.

    Иногда производитель вообще не указывает распиновку — но можно легко запомнить.
    Ближние пины к колодке подключения IDE — MA (Master), джампер установлен
    Средние пины — SL (Slave)
    Крайние пины — CS (Cable Select).

    Для жестких дисков выбор вариантов больше.

    Мы видим знакомый выбор в первых трех вариантах и два дополнительных варианта:
    Master with non-ATA compatible slave — ведущий с несовместимым ведомым (будет работать только Master)
    Limit drive capaciti to 32 Gbytes — ограничить емкость диска 32 Гб (для старых материнских плат).

    Теперь посмотрим на сам шлейф IDE , он выглядит вот так (на 80 жил):


    Синия колодка (у правильных производителей) подключается к материнской плате, противоположный черный разъем к устройству Master и средний серый разъем к устройству Slave. Если цвет у колодок другой (у неправильных производителей) — то ориентируемся на спецификацию. Окончание более длинного отрезка кабеля подключается к материнской плате, а оставшиеся два разъема (на более коротком отрезке) — к устройствам. Причем «Master» находится всегда на конце кабеля , а «Slave» — ближе к середине.

    Почему master всегда на конце кабеля?

    Если устройство одно, то оно должно быть мастером и быть на конце кабеля. При включении одного устройства к серому разъему — такое размещение приводит к появлению ненужного куска кабеля на конце, что нежелательно. Как из соображений удобства, так и по физическим параметрам: этот кусок приводит к отражению сигнала, особенно на высоких частотах (появляются ошибки, контроллер начинает снижать скорость передачи).

    Что такое «Enable cable select», который мы видели при установке перемычек (сокращенно — «Cable select », совсем коротко — «CS »)? Это режим, при котором (в зависимости от расположения на шлейфе) «Master» и «Slave» определяются автоматически. Для его реализации нужен специальный шлейф с кабельной выборкой (разрыв 28 проводника).

    Вот картинка для 40-жильного кабеля.

    Вот фото реального кабеля с кабельной выборкой.

    Таким образом, на одном из устройств контакт 28 оказывается заземленным (режим Master), а на другом - свободным (Slave). Этот режим корректно работает только при наличии двух устройств на кабеле и установленных перемычек в CS. На обычном кабеле этот режим не работает.

    Еще есть экзотический вариант кабеля для режима Cable Select. Он симметричный, т.е. если его сложить пополам, то ровно посредине будет разъем. Именно он подключается к материнской плате, а обе оставшиеся крайние «колодки» — к устройствам IDE. Подобный режим не прижился.

    Дополнительные метки для правильного подключения кабеля IDE.

    На любом (стандартном) ATA кабеле первый пин (провод) всегда помечен (обычно — красным). Производители размещают на материнской плате наглядные подсказки, по которым можно сориентироваться.

    т.е. красный провод должен быть подключен к пину 1. Еще одна подсказка состоит в том, что шлейф данных должен всегда устанавливаться первым (маркированным) пином в сторону разъема питания жесткого диска.


    Зачем все эти сложности и подсказки? Как можно неправильно подключить IDE (ATA) кабель, если он имеет «ключ» на своем разъеме? Дело в том, что в период перехода от интерфейсного кабеля с 40-ка проводниками на 80-ти жильный (с дополнительным заземлением), первый из них не имел этого «ключа» и его можно было подключить в материнскую плату не той стороной. На фото ниже видно оба типа интерфейсного кабеля (слева 80-ти жильный имеет один отсутствующий контакт в середине разъема, справа — старый 40-жильный шлейф).

    Корректное подключение нескольких устройств

    Да, можно подключать несколько устройств как удобнее:) Но с точки зрения быстродействия желательно:
    — два активных устройства лучше подключить к разным шлефам
    — IDE HDD и IDE DVD-ROM лучше подключить к разным шлейфам, т.к. протоколы разные (PATA / ATAPI) и быстродействие оптического привода на порядок ниже HDD

    И немного о SCSI.

    SCSI — Small Computer System Interface — параллельный интерфейс, в основном для серверных решений.

    Существует три стандарта электрической организации параллельного интерфейса SCSI:

    • SE (single-ended ) - асимметричный SCSI, для передачи каждого сигнала используется отдельный проводник.
    • LVD (low-voltage-differential ) - интерфейс дифференциальной шины низкого напряжения, сигналы положительной и отрицательной полярности идут по разным физическим проводам - витой паре. На один сигнал приходится по одной витой паре проводников. Используемое напряжение при передаче сигналов ±1,8 В.
    • HVD (high-voltage-differential ) - интерфейс дифференциальной шины высокого напряжения, отличается от LVD повышенным напряжением и специальными приёмопередатчиками.

    Все версии приведены в таблице.

    Наименование Пропускная способность Максимальное количество устройств
    SCSI 5 Мбайт/сек 8
    Fast SCSI 10 Мбайт/сек 8
    Wide SCSI 20 Мбайт/сек 16
    Ultra SCSI 20 Мбайт/сек 4-8
    Ultra Wide SCSI 40 Мбайт/сек 4-16
    Ultra2 SCSI 40 Мбайт/сек 8
    Ultra2 Wide SCSI 80 Мбайт/сек 16
    Ultra3 SCSI 160 Мбайт/сек 16
    Ultra-320 SCSI 320 Мбайт/сек 16
    Ultra-640 SCSI 640 Мбайт/сек 16

    Сегодня, уважаемые читатели, я бы хотел поговорить с Вами о том, что такое ATA/ATAPI контроллеры, откуда появился интерфейс IDE и что это такое?

    Для начала давайте с Вами усвоим необходимый минимум теории. Когда-то очень давно (еще в прошлом тысячелетии:)) фирма «Western Digital» разработала параллельный интерфейс подключения .

    Новым и важным в этом было то, что контроллер (управлявший всеми операциями ввода-вывода) был интегрирован в сам привод, а не вынесен в виде отдельной платы расширения, как раньше. Это позволяло:

    1. убыстрить работу устройства
    2. удешевить производство
    3. и упростить схему обмена данными с накопителем

    Давайте сразу разберем основные аббревиатуры, чтобы потом не путаться. Сначала интерфейс получил название «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" мегабайт в секунду (три и шесть гигабит в секунду, соответственно) - работа на перспективу (), а при их чрезмерном выпячивании - бессмысленная реклама, сбивающая с толку неподготовленного пользователя.

    О чем это мы? Ах, да! О преимуществах сата: надо также помнить, что каждое SATA устройство располагается на отдельном канале (контроллере), поэтому отпадает необходимость в их конфигурировании с помощью перемычек (джамперов).

    Хотя, справедливости ради стоит отметить, что на ранних этапах внедрения нового стандарта на SATA жестких дисках можно было обнаружить джамперы, но они использовались редко и то лишь для принудительного перевода накопителя SATA-2 в режим SATA-1 (для совместимости с первым поколением контроллеров).

    Вот так друзья, коротко мы разобрали основные понятия, связанные с интерфейсом ATA/ATAPI. Теперь смело нажимайте на ссылку "следующая", переходим к практической части материала.

    Фирмы-разработчики аппаратного обеспечения постоянно совершенствуют внешние устройства и другие узлы персонального компьютера. Постоянно появляются новая периферийная аппаратура и новые модификации уже существующих устройств. Старые устройства наделяются новыми возможностями, новые делают такое, о чем раньше не приходилось и мечтать. И, конечно же, это коснулось устройств накопления информации.
    Выпускаемые накопители информации представляют собой гамму запоминающих устройств с различным принципом действия физическими и технически эксплуатационными характеристиками. Основным свойством и назначением накопителей информации является ее хранение и воспроизведение. Запоминающие устройства принято делить на виды и категории в связи с их принципами функционирования, эксплуатационно-техническими, физическими, программными и другими характеристиками. Так, например, по принципам функционирования различают следующие виды устройств: электронные, магнитные, оптические и смешанные – магнитооптические. Каждый тип устройств организован на основе соответствующей технологии хранения/воспроизведения/ записи цифровой информации. Поэтому, в связи с видом и техническим исполнением носителя информации различают: электронные, дисковые и ленточные устройства.
    Самым дешевым и наибольшим по емкости является жесткий диск. В настоящее время винчестер имеет объем до 2 Тб.

    1. Жесткий диск и принцип его работы

    Накопитель на жёстких магнитных дисках, жёсткий диск или винчестер, (англ.HardDiskDrive, HDD) – энергонезависимое, перезаписываемое компьютерное запоминающее устройство. Накопитель на жестком диске относится к наиболее совершенным и сложным устройствам современного персонального компьютера. Его диски способны вместить многие гигабайты информации, передаваемой с большой скоростью.
    Жёсткий диск состоит из гермозоны и блока электроники.
    Гермозона включает в себя корпус из прочного сплава, собственно диски (пластины) с магнитным покрытием, блок головок с устройством позиционирования, электропривод шпинделя.
    Блок головок – пакет рычагов из пружинистой стали (по паре на каждый диск). Одним концом они закреплены на оси рядом с краем диска. На других концах (над дисками) закреплены головки.
    Диски (пластины), как правило, изготовлены из металлического сплава, хотя были попытки делать их из пластика и даже стекла, но такие пластины оказались хрупкими и недолговечными. Обе плоскости пластин, подобно магнитофонной ленте, покрыты тончайшей пылью ферромагнетика – окислов железа, марганца и других металлов. Точный состав и технология нанесения держатся в секрете. Большинство бюджетных устройств содержит 1 или 2 пластины, но существуют модели с большим числом пластин.
    Диски жёстко закреплены на шпинделе. Во время работы шпиндель вращается со скоростью несколько тысяч оборотов в минуту (4200, 5400, 7200, 10 000, 15 000). При такой скорости вблизи поверхности пластины создаётся мощный воздушный поток, который приподнимает головки и заставляет их парить над поверхностью пластины. Форма головок рассчитывается так, чтобы при работе обеспечить оптимальное расстояние от пластины. Пока диски не разогнались до скорости, необходимой для «взлёта» головок, парковочное устройство удерживает головки в зоне парковки. Это предотвращает повреждение головок и рабочей поверхности пластин.
    Устройство позиционирования головок состоит из неподвижной пары сильных, как правило, неодимовых постоянных магнитов и катушки на подвижном блоке головок.
    Блок электроники, интерфейсный блок – обеспечивает сопряжение электроники жёсткого диска с остальной системой.
    Блок управления представляет собой систему управления, принимающую электрические сигналы позиционирования головок, и вырабатывающую управляющие воздействия приводом типа «звуковая катушка, коммутации информационных потоков с различных головок, управления работой всех остальных узлов (к примеру, управление скоростью вращения шпинделя).
    Блок ПЗУ хранит управляющие программы для блоков управления и цифровой обработки сигнала, а также служебную информацию винчестера.
    Буферная память сглаживает разницу скоростей интерфейсной части и накопителя (используется быстродействующая статическая память). Увеличение размера буферной памяти в некоторых случаях позволяет увеличить скорость работы накопителя.
    Блок цифровой обработки сигнала осуществляет очистку считанного аналогового сигнала и его декодирование (извлечение цифровой информации).
    В накопителях на жестких дисках данные записываются и считываются универсальными головками чтения/записи с поверхности вращающихся магнитных дисков, разбитых на дорожки и секторы (512 байт каждый). В накопителях обычно устанавливается несколько дисков, и данные записываются на обеих сторонах каждого из них. В большинстве накопителей есть, по меньшей мере, два или три диска (что позволяет выполнять запись на четырех или шести сторонах), но существуют также устройства, содержащие до 11 и более дисков. Однотипные (одинаково расположенные) дорожки на всех сторонах дисков объединяются в цилиндр. Для каждой стороны диска предусмотрена своя дорожка чтения/записи, но при этом все головки смонтированы на общем стержне, или стойке. Поэтому головки не могут перемещаться независимо друг от друга и двигаются только синхронно.

    2. Интерфейс IDE/ATA

    ATA (AdvancedTechnologyAttachment) , также называемый IDE (IntegratedDriveElectronics) – стандарт на интерфейс между компьютером (контроллером) и накопителем на жестких магнитных дисках (дисководом, HDD), включая физический уровень (разъёмы, кабели), электрические и логические характеристики сигналов, регистры устройства, команды и протоколы.

    2.1 Эволюция интерфейса

    Интерфейс ATA – разрабатывался для подключения накопителей на жестких магнитных дисках к компьютерам IBM PC AT с шиной ISA. Интерфейс появился в результате создания устройств со встроенным контроллером – IDE. Контроллер жесткого диска был перенесен на плату электроники накопителя с сохранением регистровой модели.
    Из всех сигналов шины ISA выбрали минимальный набор сигналов, часть из которых буферизовали на небольшой плате, устанавливаемой в слот, а часть направили прямо на разъем ленточного кабеля нового интерфейса.
    Стандартный контроллер AT позволял подключать до двух накопителей – эту возможность получил и интерфейс ATА. Для взаимодействия пары устройств на шине ввели несколько дополнительных сигналов. Так появился интерфейс ATА для подключения устройств IDE к шине ISA. Позже их стали подключать и к локальным шинам, но набор сигналов интерфейса и протоколы обмена сохранились.
    Принятая система команд и регистров, являющаяся частью спецификации ATА, ориентирована на блочный обмен данными с устройствами прямого доступа. Для иных устройств существует спецификация ATAPI, основанная на тех же аппаратных средствах, но позволяющая обмениваться пакетами управляющей информации (PI – PackageInterface).
    В спецификации АТА фигурируют следующие компоненты:
      Хост-адаптер – средства сопряжения интерфейса АТА с системной шиной (набор буферных схем между шинами ISA и АТА).
      Кабель-шлейф с двумя или тремя 40-контактными IDC-разъемами. В стандартном кабеле одноименные контакты всех разъемов соединяются вместе.
      Ведущее устройство (Master) – ПУ, в спецификации АТА называемое Device-0.
      Ведомое устройство (Slave) – ПУ, в спецификации называемое Device-1.
    О своей роли устройства узнают с помощью предварительно установленных конфигурационных джамперов. Если применяется кабельная выборка, то роль устройства определяется его положением на специальном кабеле-шлейфе.
    Оба устройства воспринимают команды от хост-адаптера одновременно. Однако выходные сигналы на шину АТА имеет право выводить только выбранное устройство. Такая система подразумевает, что, начав операцию обмена с одним из устройств, хост-адаптер не может переключиться на обслуживание другого до завершения начатой операции. Параллельно могут работать только устройства IDE, подключаемые к разным шинам (каналам) АТА.
    Выполняемая операция и направление обмена данными между устройством и хост- адаптером определяются предварительно записанной командой. Непременным компонентом устройства является буферная память. Ее наличие позволяет выполнять обмен данными в темпе, предлагаемом хост-адаптером (в пределах возможности устройства).

    2.2 Адресация устройств

    Адресация в АТА тоже имеет «дисковые корни»: для накопителей изначально указывали адрес цилиндра, головки и сектора – так называемая трехмерная адресация CHS (Cyllinder-Head-Sector). Позже по ряду причин стали различать физическую (реальную для накопителя) и логическую (по которой с устройством общается программа) адресацию CHS. При этом одно и то же устройство могло иметь различную логическую геометрию (но, естественно, С?Н?S лог? С?Н?S физ). Преобразование логической адресации в физическую выполняется встроенным контроллером устройства. Позже пришли к линейной адресации логических блоков LBA (LogicalBlockAddressing), где адрес блока (сектора) определяется 28-битным числом.
    Оригинальная спецификация АТА предусматривала 28-битный режим адресации. Это позволяло адресовать 228 (268 435 456) секторов по 512 байт каждый, что давало максимальную ёмкость в 137 ГБ (128 ГиБ). В стандартных PC BIOS поддерживал до 7,88 ГиБ (8,46 ГБ), допуская максимум 1024 цилиндра, 256 головок и 63 сектора. Это ограничение на число цилиндров/головок/секторов CHS в сочетании со стандартом IDE привело к ограничению адресуемого пространства в 504 МиБ (528 МБ). Для преодоления этого ограничения была введена схема адресации LBA (LogicalBlockAddress), что позволило адресовать до 7,88 ГиБ. Со временем и это ограничение было снято, что позволило адресовать сначала 32 ГиБ, а затем и все 128 ГиБ, используя все 28 разрядов (в АТА-4) для адресации сектора. Запись 28-битного числа, организована путём записи его частей в соответствующие регистры накопителя (с 1 по 8 бит в 4-й регистр, 9-16 в 5-й, 17-24 в 6-й и 25-28 в 7-й).
    Адресация регистров организована при помощи трёх адресных линий DA0-DA2. 1-й регистр с адресом 0 является 16-разрядный, и используется для передачи данных между диском и контроллером. Остальные регистры 8-битные и используются для управления.
    Новейшие спецификации ATA предполагают 48-битную адресацию, расширяя таким образом возможный предел до 128 ПиБ (144 петабайт). Однако файловые системы большинства современных операционных систем поддерживают диски объёмом лишь до 2 ТиБ (исключением является, например, файловая система Ext4, поддерживающая размер до 256ПиБ).

    2.3 Назначение контактов разъема

    Все информационные сигналы интерфейса передаются через 40-контактный разъем, у которого ключом является отсутствующий на вилке и закрытый на розетке контакт № 20. Длина кабеля не должна превышать 0,46 м, допустимая емкость проводников не более 35 пФ.
    Терминаторы стандартом не предусматриваются (они имеются в каждом устройстве и хост-адаптере), но если кабель с тремя разъемами (розетками) используют для подключения одного устройства, то и его, и хост-адаптер рекомендуется подключать к противоположным концам кабеля. Все сигналы АТА являются логическими со стандартными ТТЛ-уровнями («0» – до 0,4В, «1» – 2,4-5В).
    Устройства и адаптеры, рассчитанные на использование Ultra DMA, должны иметь в сигнальных цепях последовательные согласующие резисторы с сопротивлением для различных цепей 22, 33 или 82 Ом. Спецификация АТА устанавливает 40-контактный сигнальный и 4-контактный разъемы питания (Рисунок 1), но для малогабаритных устройств питание может подаваться по 44-проводному интерфейсному кабелю

    Рисунок 1 – Разъемы интерфейса АТА: сигнальный и питания

    2.4 Сигналы интерфейса ATA IDE

    Типы и виды сигналов интерфейса ATAIDEпредставлены в следующей таблице (Таблица 1):
    Таблица 1 – Сигналы интерфейса ATA IDE
    Сигнал
    Сигнал
    RESET
    I
    1
    2
    ?
    GND
    DD7
    I/OTS
    3
    4
    I/OTS
    DD8
    DD6
    I/OTS
    5
    6
    I/OTS
    DD9
    DD5
    I/OTS
    7
    8
    I/OTS
    DD10
    DD4
    I/OTS
    9
    10
    I/OTS
    DD11
    DD3
    I/OTS
    11
    12
    I/OTS
    DD12
    DD2
    I/OTS
    13
    14
    I/OTS
    DD13
    DD1
    I/OTS
    15
    16
    I/OTS
    DD14
    DD0
    I/OTS
    17
    18
    I/OTS
    DD15
    GND
    ?
    19
    20
    ?
    Ключ
    DMARQ
    OTS 2
    21
    22
    ?
    GND
    DIOW | STOP 3
    I
    23
    24
    ?
    GND
    DIOR | HDMARDY | HSTROBE 3
    I
    25
    26
    ?
    GND
    IORDY | DDMARDY | DSTROBE 3
    OTS 2
    27
    28
    I/O
    SPSYNC | SCEL
    DMACK
    I
    29
    30
    ?
    GND
    INTRQ
    OTS 2
    31
    32
    OOK
    IOCS16
    DA1
    I
    33
    34
    I, O 4
    PDIAG | CBLID 3
    DA0
    I
    35
    36
    I
    DA2
    CS0
    I
    37
    38
    I
    CS1
    DASP
    I\OOK 5
    39
    40
    ?
    GND
    +5 В
    ?
    41 6
    42 6
    ?
    +5 B
    GND
    ?
    43 6
    44 6
    ?
    Зарезервирован
      Тип сигнала для устройства: I – вход, О – выход, I/O – двунаправленный, TS – тристабильный, ОС – открытый коллектор.
      У старых устройств сигнал может иметь тип ОС (при разнотипных сигналах на одной шине возможен конфликт).
      Сигаалы, приведенные после символа /, используются только в режиме Ultra DMA (ATA-4).
      У ведущего устройства – вход, у ведомого – выход.
      У ведомого устройства – только выход.
      Контакты 41-44 используются только для миниатюрных дисков.
    RESET (Devicereset) – сброс устройства (инвертированный сигнал сброса системной шины). Сигнал длительностью не менее 25 мкс вырабатывается после установления питающих напряжений.
    DA (DeviceAddress) – три младших бита системной шины адреса, используемые для выбора регистров устройств.
    DD (DeviceData) – двунаправленная 16-битная шина данных между адаптером и устройствами. При 8-битных обменах используются младшие биты D.
    DIOR (Device I/O Read) – строб чтения портов ввода/вывода. Данные фиксируются по положительному перепаду сигнала.
    DIOW (Device I/O Write) – строб записи портов ввода/вывода. Данные фиксируются по положительному перепаду сигнала.
    IORDY (I/O channelready) – готовность устройства завершить цикл обмена. Низким уровнем сигнала во время цикла обмена устройство может ввести такты ожидания шины. Сигнал требуется при обмене в PIO MODE 3 и выше.
    IOCS16 – разрешение 16-битных операций. Обращение ко всем регистрам, кроме регистра данных, всегда 8-битное. Для РЮ MODE 0, 1, 2 при активном сигнале обращения 16-битные, при неактивном – 8-битные. Для РЮ MODE 3, 4 и DMA все обмены 16-битные, кроме дополнительных байт (выходящих за границу 512-байтного сектора) «длинного» считывания и записи.
    DMARQ (DMA ReQuest) – запрос обмена по каналу DMA (сигнал необязательный). При разрешении обмена сигнал (высокий уровень) вводится устройством по готовности к обмену. Введя сигнал DMARQ, устройство должно дождаться подтверждения от хост-адаптера сигналом DMACK, после чего может снять запрос DMARQ. Для очередной передачи запрос должен быть введен снова. В режиме Multi-Word DMA запрос может удерживаться на время передачи всех данных. Выход должен быть тристабильным, в активном состоянии (0 или 1) он может быть только у выбранного устройства во время работы с DMA. В АТА-1 для этого сигнала мог использоваться как тристабильный, так и стандартный ТТЛ-выход. Работа на одной шине устройств с разнотипными выходами DMARQ может привести к конфликтам.
    DMACK (DMA aCKnowledge) – подтверждение DMA. Сигнал вырабатывается хост-адаптером как подтверждение цикла передачи. Передача слова данных управляется сигналами DIOR или DIOW. Во время обмена по каналу DMA сигналы IOCS16, CS0 и CS1 не используются, обмен всегда производится 16-битными словами.
    INTRQ (Device interrupt) – запроспрерывания.Выход должен быть тристабильным, активный сигнал (логическую 1) вырабатывает только выбранное устройство, когда у него имеется необслуженный запрос прерывания и его вырабатывание не запрещено битом nIEN в регистре DeviceControl. Запрос сбрасывается по сигналу RESET, установке бита SRST в регистре DeviceControl, записи в регистр команд или чтении регистра состояния. При обменах РЮ запрос устанавливается в начале передачи каждого блока (сектора или группы секторов при многосекторных операциях). Исключения: по командам FormatTrack, WriteSector(S), WriteBuffer и WriteLong в начале передачи первого блока данных запрос прерывания не вырабатывается. При обменах DMA запрос прерывания вырабатывается только по завершении операции.
    CSO (ChipSelect 0) – сигнал выбора блока командных регистров (CommandBlockRegisters). Для первого канала он вырабатывается при наличии на системной шине адреса порта ввода/вывода в диапазоне lFOh–lF7h (сигнал также называют CS1FX#).
    CS1 (ChipSelect 1) – выбор блока управляющих регистров (ControlBlockRegisters). Для первого канала он вырабатывается при наличии на системной шине адреса порта ввода/вывода в диапазоне 3F6h-3F7h (часто этот сигнал называется CS3FX;.
    PDIAG (Passeddiagnostics) – сигнал о прохождении диагностики. Ведущее устройство наблюдает за этим сигналом, который ведомое устройство должно выработать в ответ на сброс или команду диагностики. Если ведомое устройство обнаружено (по сигналу DASP), ведущее устройство ожидает сигнал в течение 31с после сброса и 6 с после команды диагностики. Если за это время сигнал не появился, ведущее устройство отмечает этот факт установкой бита 7 регистра ошибок. Если ведомое устройство не обнаружено, ведущее обнуляет регистр состояния ведомого устройства и сообщает свое состояние сразу после завершения собственной самодиагностики. Сигнал служит только для связи двух устройств и хост-адаптером не используется.
    CBUD (Cable assembly type identifier) – идентификациятипакабеля.В 80-проводной сборке контакт 34 на разъеме хост-адаптера соединяется с шиной GND, а контакты 34 разъемов устройств соединяются между собой, но связи с разъемом хост-адаптера не имеют. После прохождения сброса (когда сигнал PDIAG снимается) хост может определить наличие 80-проводного кабеля по низкому" уровню сигнала.
    DASP (DeviceActive, SlavePresent) – сигнал двойного назначения: индикатор активности устройства и присутствия ведомого устройства. Устройства имеют выход типа «открытый коллектор» с нагрузочным резистором 10 кОм к шине +5 В. После сброса по сигналу RESET или при инициализации по включении питания оба устройства в течение 1 мс должны деактивировать этот сигнал, после чего не позже чем через 400 мс его вводит ведомое устройство для сообщения о своем присутствии. Ведущее устройство не активирует этот сигнал в течение 450 мс. Сигнал деактивируется ведомым устройством после получения им команды или через 31с автрматически (смотря что произойдет раньше). После этого сигнал может быть введен любым устройством как индикатор активности. Адаптер использует этот сигнал для включения светодиодного индикатора доступа к диску.
    SPSYNC/CSEL (SpindleSynchronization/ CableSelect) - синхронизация шпинделя/выборка кабелем. Сигнал двойного назначения, которое должно быть единым для обоих устройств. Сигнал SPSYNC позволяет синхронизировать шпиндели устройств (актуально для RAID-массивов); используется по усмотрению производителя накопителя. Сигнал CSEL позволяет устройствам определять свой адрес по положению на специальном кабеле с разрывом провода 28 между разъемами двух устройств (малораспространенная «кабельная выборка»). Эта линия на хост-адаптере заземлена, и ведущее устройство получает заземленную линию, а ведомое – не подключенную. Состояние сигнала (если он управляется хост-адаптером) должно удерживаться по крайней мере 31с после сигнала RESET.
    При использовании режима Ultra DMA четыре линии получают новое назначение сигналов:
      STOP (StopUltra DMA burst) – останов передачи пакета Ultra DMA.
      DDMARDY (DeviceUltra DMA ready) – готовность устройства при приеме пакета Ultra DMA (управление потоком).
      DSTROBE (HostUltra DMA datastrobe) – строб данных устройства при передаче пакета хосту. Данные передаются по обоим перепадам DSTROBE.
      HDMARDY (HostUltra DMA ready) – готовность хоста при приеме им пакета Ultra DMA (управление потоком).
      HSTROBE (HostUltra DMA datastrobe) – строб данных хоста при передаче пакета устройству. Данные передаются по обоим перепадам HSTROBE.

    2.5 Протокол взаимодействия хоста и устройства

    Обычный протокол взаимодействия хоста с устройством выглядит следующим образом:
      Хост читает регистр состояния устройства, дожидаясь нулевого значения бита BSY. Если присутствуют два устройства, хост обращается к ним «наугад» – состояние будет сообщать последнее выбранное устройство.
      Дождавшись освобождения устройства, хост записывает в регистр DH байт, у которого бит DEV указывает на адресуемое устройство. Здесь кроется причина невозможности параллельной работы двух устройств на одной шине ATА: обратиться к устройству можно только после освобождения обоих устройств.
      Хост читает основной или альтернативный регистр состояния адресованного устройства, дожидаясь признака готовности (DRDY=1).
      Хост заносит требуемые параметры в блок командных регистров.
      Хост записывает код команды в регистр команд.
      Устройство устанавливает бит BSY и переходит к исполнению команды. Дальнейшие действия зависят от протокола передачи данных, заданного командой.
    Для команд, не требующих передачи данных (ND):
    Для команд данного типа, кроме шести вышеперечисленных пунктов стандартного взаимодействия хоста и устройства, выполняется ещё одна.
      Завершив исполнение команды, устройство сбрасывает бит BSY и устанавливает запрос прерывания (если он не запрещен). К этому моменту в регистрах состояния и ошибок уже имеется информация о результате исполнения. Выполнение завершается.
    Единичное значение бита BSY может промелькнуть между шагами 6 и 7 так быстро, что хост его не зафиксирует, но для фиксации факта выполнения команды или ее части и предназначен запрос прерывания.

    Для команд, требующих чтения данных в режиме PIO (PI):
    Для команд данного типа, кроме шести вышеперечисленных пунктов стандартного взаимодействия хоста и устройства, выполняются ещё несколько.

      Подготовившись к передаче первого блока данных по шине АТА, устройство устанавливает бит DRQ. Если была ошибка, она фиксируется в регистрах состояния и ошибок. Далее устройство сбрасывает бит BSY и устанавливает запрос прерывания (если он не запрещен).
      Зафиксировав обнуление бита BSY (или по прерыванию), хост считывает регистр состояния, что приводит к сбросу прерывания от устройства.
      Если хост обнаружил единичное значение бита DRQ, он производит чтение первого блока данных в режиме PIO (адресуясь к регистру данных). Если обнаружена ошибка, считанные данные могут быть недостоверными.После передачи блока данных возможно одно из следующих действий:
      Если на шаге 8 ошибка не обнаружена, а требуется передача следующего блока, устройство устанавливает бит BSY, и данная последовательность повторяется с шага 7.
      Если есть ошибка или передан последний блок данных, устройство сбрасывает бит DRQ и выполнение команды завершается
    Для операций записи данных после шага 6 для устройства начинается активная фаза записи на носитель, что отмечается установкой бита BSY.

    Для команд, требующих записи данных в режиме PIO (PO и P):
    Для команд данного типа, кроме шести вышеперечисленных пунктов стандартного взаимодействия хоста и устройства, выполняются ещё несколько.

      Подготовившись к приему первого блока данных по шине ATА, устройство устанавливает бит DRQ (если нет ошибок) и сбрасывает бит BSY. Если была ошибка, она фиксируется.
      Зафиксировав обнуление бита BSY, хост считывает регистр состояния
      Если хост обнаружил единичное значение бита DRQ, он производит запись первого блока данных в режиме PIO по адресу в регистре данных
      После передачи блока данных возможно одно из следующих действий:
      Если обнаружена ошибка, устройство сбрасывает бит DRQ, устанавливает запрос прерывания и выполнение команды завершается. Переданные по шине данные остаются необработанными устройством (не записываются на носитель).
      Если ошибка не обнаружена, устройство устанавливает бит BSY и переходит к следующему шагу
      Устройство обрабатывает принятый блок данных, затем:
      Если нет ошибок и обработанный блок – последний, устройство сбрасывает бит BSY и устанавливает запрос прерывания, на чем выполнение команды успешно завершается;
      Если обнаружена ошибка, выполнение команды завершается таким же образом, но с установкой бит ошибок;
      Если нет ошибок и требуется передача следующего блока, выполняются следующие шаги:
      По готовности приема следующего блока устройство устанавливает бит DRQ, сбрасывает бит BSY и устанавливает запрос прерывания.
      По обнулению бита BSY (или по прерыванию) хост считывает регистр состояния.
      Обнаружив бит DRQ, хост выполняет запись очередного блока в регистр данных, и последовательность повторяется с шага 11. Команды с передачей данных в режиме DMA выполняются похожим образом, но:
      Вместо PIO используется прямой доступ к памяти. Хост должен проинициализировать канал DMA до записи кода в регистр команд, чтобы по появлении сигнала DMARQ начался обмен
      Запрос прерывания даже в многосекторных передачах производится один раз – по выполнении команды

    2.6 Протоколы и режимы передачи данных

    Программа общается с устройствами АТА через регистры, используя инструкции ввода/вывода IN и OUT. Для передачи данных с максимальной скоростью применяют программный доступ к регистру данных или DMA. Тип обмена задается командой. Программный доступ обязателен для всех устройств. Команды режима DMA устройствами могут не поддерживаться.
    Программный доступ PIO (ProgrammedInput/Output) выполняется в виде следующих друг за другом операций чтения или записи в пространстве ввода/вывода по адресу регистра данных. В отличие от программно-управляемого ввода/вывода, применяемого, например, для общения с LPT-портом, передача блока данных в режиме PIO производится без программного опроса какого-либо бита готовности для передачи каждого слова. Готовность устройства проверяется перед началом передачи блока, после чего хост производит серию операций в определенном темпе. Темп определяется выбранным режимом PIO Mode (Таблица 2).
    Для режимов определены допустимые параметры временной диаграммы цикла обмена.
    Таблица 2 – Параметры режимов передачи (PIO mode)

    Обмен PIO программно реализуется с помощью инструкций ввода/вывода строк REP INS или REP OUTS с занесенным в регистр СХ количеством слов (или байт) в передаваемом блоке. Эти инструкции обеспечивают максимально возможную скорость обмена для данного процессора и системной шины. «Обуздать» процессор в соответствии с выбранным режимом входит в задачу адаптера АТА, который использует для удлинения цикла сигнал готовности шины (для ISA – IOCHRDY). Традиционные режимы 0, 1 и 2 имеют временные параметры, фиксируемые только хост-адаптером. Для прогрессивных режимов АТА-2 (PIO Mode 3 и старше) устройство может затормозить обмен, используя сигнал готовности IORDY. Программный обмен на все время передачи блока занимает и процессор, и системную шину.
    Обмен по каналу DMA занимает исключительно шины ввода/ вывода и памяти. Процессору требуется выполнить только процедуру инициализации канала, после чего до прерывания от устройства в конце передачи блока он свободен (этим могут воспользоваться многозадачные системы). Стандартные каналы DMA шины ISA для интерфейса АТА практически не используются из-за низкой пропускной способности.
    Высокопроизводительные адаптеры АТА могут иметь собственные более эффективные контроллеры. Режимы обмена по каналу DMA бывают одиночными и множественными.
    При одиночном режиме (SingleWord DMA) устройство для передачи каждого слова вырабатывает сигнал запроса DMARQ и сбрасывает его по сигналу DMACK#, подтверждающему цикл обмена.
    При множественном режиме (Multiword DMA) на сигнал DMARQ хост отвечает потоком циклов, сопровождаемых сигналами DMACK#. Если устройство не справляется с потоком, оно может приостановить его снятием сигнала DMARQ, a по готовности установить его снова. Множественный режим позволяет развить более высокую скорость передачи.
    Новейшее достижение – режим Ultra DMA, позволяющий достигнуть скорости передачи 33 Мбайт/с и обеспечить достоверность передачи, чего не делалось ни в PIO, ни в стандартных режимах DMA. Стандартом АТА-4 определено 3 режима Ultra DMA (0, 1 и 2), выбор режима осуществляется командой SetFeatures.
    В режимах Ultra DMA сигналы DMARQ и DACK# сохраняют свое назначение, а вот смысл сигналов DIOR#, DIOW# и IORDY на время передачи пакета (Ultra DMA Burst) существенно меняется.
    В пакете данные на шине сопровождаются стробом, генерируемым источником данных, причем для синхронизации используются оба перепада сигналов. Это позволяет повысить пропускную способность шины, не увеличивая частоту переключений сигналов сверх 8,33 с -1 (этот предел для обычного кабеля достигается в режиме РЮ Mode 4 и Multiword DMA Mode 2).
    Каждое переданное слово участвует в подсчете CRC-кода, который передается в конце пакета. Подсчет ведется и источником данных, и приемником. При несовпадении принятого и ожидаемого кода фиксируется ошибка передачи.
    Передача в пакете может приостанавливаться, если приемник снимет сигнал готовности (DDMARDY или HDMARDY). Передача пакета может прекращаться по инициативе устройства (снятием сигнала) или хоста (сигналом STOP). Противоположная сторона должна подтвердить окончание цикла сигналом STOP или DMARQ соответственно.
    Правильный выбор режима обмена обеспечивает надежность и производительность. Все устройства поддерживают режим PIO Mode 0, в котором считывается блок параметров идентификации. В блоке имеются поля, описывающие режим обмена по умолчанию и более эффективные режимы обмена, поддерживаемые устройством. Командой SetFeatures можно изменить параметры режима. Иногда накопитель не обеспечивает надежной передачи данных в заявленном высокоскоростном режиме. Если данные начинают пропадать, первым делом следует понизить режим обмена.
    Параметры стандартных режимов обмена по DMA приведены в таблице (Таблица 3).
    Таблица 3 – Параметры циклов DMA для интерфейса ATA


    и т.д.................
    Режим
    Минимальное время цикла (нс)
    Скорость передачи (Мбайт/с)
    Singleword DMA Mode 0
    960
    2,08
    Singleword DMA Mode 1
    480
    4,16
    Singleword DMA Mode 2
    240
    8,33
    Multiword DMA Mode 0
    480
    4,12
    Multiword DMA Mode 1
    150
    13,3
    Multiword DMA Mode 2

    Я у мамы программист - Информационный портал
    2024 © onlinezarabotokz.ru