Периферийные устройства вычислительной техники

Контроллеры

Разбить на страницы
Показывать лекцию целиком

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

Интерфейсы винчестеров

Интерфейс (от англ. interface - поверхность раздела, перегородка) - совокупность средств и методов взаимодействия между элементами системы.

ST506/412

Широкое применение винчестеров в качестве устройств долговременного хранения информации началось после выпуска фирмой Shugart Technology (ныне эта компания именуется Seagate Technology, Inc.) диска ST506 размером 5.25 дюйма. Устройство емкостью 5Мбайт использовало для подключения к компьютеру интерфейсную плату ST506, разработанную в конце 70-х годов компанией Western Digital. Для соединения винчестера с интерфейсной платой использовался 34-проводный плоский кабель, к которому можно было подключить два устройства. Для того, чтобы диски можно было адресовать, часть кабеля перекручивалась (подобно кабелю для подключения дисководов). Кроме того, для обмена данными с каждым из дисков использовался отдельный 20-проводный плоский кабель. Крупным недостатком интерфейса ST506 являлось пошаговое перемещение головок (один шаг на каждую команду перемещения), как это до сих пор происходит в дисководах для работы с гибкими дисками. Более новая модель - ST412 - обеспечивала возможность буферизованного поиска ( buffered seek ), позволяющего одной командой перемещать головки на несколько шагов (например, через весь диск).

Основным преимуществом винчестеров с интерфейсом ST506/ST412 является их низкая стоимость. Почти вся электроника, ответственная за работу диска, располагалась на интерфейсной плате. Управляющие приводом головок сигналы передавались по общему для двух подключаемых к контроллеру устройств 34-проводному кабелю, а обмен данными с контроллером осуществлялся по 20-проводным плоским кабелям прямо в виде последовательности импульсов, считанных с диска или записываемых на него. Разъемы, используемые для подключения

RLL/MFM IDC-34
1 GND 2 Head Sel 8 Выбор головки 8
2 GND 4 Head Sel 4 Выбор головки 4
5 GND 6 Write Gate Шлюз записи
7 GND 8 Seek Complete Сканиров. заверш.
9 GND 10 Track 0 Дорожка 0
11 GND 12 Write Fault Отказ при записи
13 GND 14 Head Sel 1 Выбор головки 1
15 GND 16 (reserved) зарезервировано
17 GND 18 Head Sel 2 Выбор головки 2
19 GND 20 Index Индекс
21 GND 22 Ready Готовность
23 GND 24 Step Шаг
25 GND 26 Drive Sel 1 Выбор диска 1
27 GND 28 Drive Sel 2 Выбор диска 2
29 GND 30 Drive Sel 3 Выбор диска 3
31 GND 32 Drive Sel 4 Выбор диска 4
33 GND 34 Direction In Направление
RLL/MFM IDC-20
1 Диск выбран 11 GND
2 GND 12 GND
3 (зарезервирован) 13 Запись данных +
4 GND 14 Запись данных -
5 (зарезервирован) 15 GND
6 GND 16 GND
7 (зарезервирован) 17 Чтение данных +
8 GND 18 NRZ Чтение данных -
9 (зарезервирован) 19 GND
10 (зарезервирован) 20 GND

Небольшой набор команд интерфейса ST506/412 затруднял создание дисков с большой емкостью. Почти все диски с таким интерфейсом имели скорость вращения 3600 оборотов в минуту.

Интерфейс ST506 поддерживает два способа модуляции при записи-воспроизведении данных: MFM (Modified Frequency Modulation - модифицированная частотная модуляция) и RLL (Run Length Limited - кодирование с ограничением длины поля записи).

Модуляция MFM

Метод MFM является разновидностью обычной частотной модуляции, широко используемой в радиовещании и связи. Отличие заключается в том, что модифицированная модуляция позволяет обеспечить двухкратное повышение плотности записи данных за счет того, что на диск записываются не все сигналы синхронизации и при записи каждого бита учитывается значение предшествующего бита. За один переход (смену направления) намагниченности можно записать от одного до трех бит данных). Сигналы с головки передаются по кабелю данных в аналоговой форме; данные отделяются от сигналов синхронизации с помощью специального устройства - сепаратора, устанавливаемого на плате контроллера.

Основным преимуществом MFM -модуляции является простая бинарная форма записываемого на диск сигнала. При записи на дорожку использовались 17 секторов по 512 байт каждый. Теоретический предел скорости обмена с дисками, использующими MFM, составляет около 4Мбит/сек (17секторов*512байт/сектор*8бит*3600об/мин):60сек = 4177920 бит/сек.

Однако реальная скорость обмена в несколько раз меньше, поскольку для таких дисков фактор чередования (Interleave factor) не равен 1. Это было связано с тем, что контроллер не успевал обработать прочитанные данные до того, как головка перемещалась к следующему сектору. При факторе чередования 1:1 порядок следования секторов на дорожке естественный: 1, 2, 3,...16, 17. При факторе чередования 3:1 секторы на диске имеют следующий порядок: 1, 7, 13, 2,..., 11, 17. Первое число в обозначении коэффициента чередования указывает количество оборотов диска, требуемых для полного прочтения или записи одной дорожки. За счет кэширования записи можно было установить для дисков ST506 фактор чередования 1:1.

Модуляция RLL

Другой способ модуляции (2,7 RLL или просто RLL ), предложенный компанией IBM в 1986 году, использует перекодирование исходной информации с введением избыточности. Метод RLL преобразует данные в шестнадцатибитовые слова, позволяющие записывать за один переход состояния намагниченности диска от 2 до 7 бит (эти цифры и включены в название метода). Использование RLL -модуляции предъявляет более высокие требования к качеству поверхности диска и равномерности его вращения. Кроме того, усилители каналов считывания-записи должны иметь несколько иные характеристики, по сравнению с MFM -модуляцией. Винчестеры с интерфейсом S T506/412, использующие метод RLL, как правило, имеют в своем обозначении суффикс R (например, ST157R ). На одну дорожку диска можно записать 26 секторов по 512 байт, что дает теоретическую возможность обмена со скоростью (512*26*8*3600):60=6489760бит/сек.

Метод RLL был развит впоследствии до возможности записи от 3 до 9 бит за один переход намагниченности ( 3,9 RLL, ARLL, ERLL ), что позволило записывать на дорожку 31 сектор и обеспечило теоретический предел скорости обмена с диском 7618560бит/сек.

Диски RLL можно без опаски подключать к контроллерам MFM (правда с потерей емкости), обратная же операция в общем случае некорректна. Многие, наверное, помнят такой метод "увеличения" размера диска, практиковавшийся несколько лет назад, - однако он не позволяет обеспечить достаточную надежность хранения данных.

Сегодня диски с интерфейсом ST506/412 можно встретить только в очень старых компьютерах.

ESDI

По мере роста скорости работы компьютеров интерфейс ST506 перестал удовлетворять всем требованиям и в 1985 году был разработан новый стандарт - ESDI, который, по сути, являлся простым расширением возможностей своего предшественника. Кабели, используемые в спецификации ESDI, внешне не отличаются от кабелей ST506, однако сигналы по ним передаются другие.

ESDI IDC-34
1 GND 2 Head Sel 3 Выбор головки 3
3 GND 4 Head Sel 2 Выбор головки 2
5 GND 6 Write Gate Шлюз записи
7 GND 8 Config/Stat Data Данные конф/сост.
9 GND 10 Transfer Ack Запрос обмена
11 GND 12 Attn Внимание
13 GND 14 Head Sel 0 Выбор головки 0
15 GND 16 Sect/Add MK Found
17 GND 18 Head Sel 1 Выбор головки 1
19 GND 20 Index Индекс
21 GND 22 Ready Готовность
23 GND 24 Trans Req
25 GND 26 Drive Sel 1 Выбор диска 1
27 GND 28 Drive Sel 2 Выбор диска 2
29 GND 30 Drive Sel 3 Выбор диска 3
31 GND 32 Read Gate Шлюз чтения
33 GND 34 Command Data
1 Drive Selected 2 Sect/Add MK Found
3 Seek Complete 4 Addr Mark Enable
5 (reserved) 6 GND
7 Write Clk+ 8 Write Clk-
9 Cartridge Chng 10 Read Ref Clk+
11 Read Ref Clk- 12 GND
13 NRZ Write Data+ 14 NRZ Write Data-
15 GND 16 GND
17 NRZ Read Data+ 18 NRZ Read Data-
19 GND 20 GND

Длина используемых в интерфейсе ESDI кабелей могла достигать 9 футов (3 метра), сигналы передавались главным образом как синфазные (с общей землей), за исключением данных и синхронизации, для передачи которых использовался дифференциальный метод. Данные передавались через последовательную линию порциями по 16 бит, сопровождаемых битом четности. Обеспечивалась также возможность подтверждения передачи данных.

Сепаратор в соответствии с новой спецификацией устанавливался непосредственно на плате винчестера и по кабелю данных передавались уже не аналоговые сигналы, а реальные данные в цифровой форме, что позволяло подобрать параметры сепаратора к конкретному типу устройства, поскольку искажения сигналов в кабеле уже не имели значения. Такой метод повышал надежность передачи данных и увеличивал скорость обмена с контроллером до 10Мбит/сек за счет передачи по кабелю цифровых сигналов. Кроме того, интерфейс ESDI обеспечивал возможность использования винчестеров большой емкости и оптических накопителей.

Интерфейс ESDI обеспечивал три сигнала выбора устройства, что позволяло подключать к нему до 7 накопителей. Сигналы выбора головки позволяли напрямую адресовать до 16 головок, однако специальная команда Select Head Group позволяла использовать до 256 головок (16 групп по 16 головок в каждой).

SCSI

Первоначальный вариант интерфейса SCSI (Small Computer System Interface) был предложен в конце 70-х годов Shugart Associates под названием SASI (Shugart Associates System Interface) взамен разработанной компанией IBM системной шины IPI (интеллектуальный периферийный интерфейс). После неудачи в конкурентной борьбе с фирмой IBM этот интерфейс был предложен комитету ANSI X3T9.2 как интерфейс нижнего уровня под названием SCSI. В 1984 году этот комитет закончил разработку спецификации SCSI-1 и в 1986 году она была опубликована в окончательном виде. Этот интерфейс обеспечивал подключение широкого класса периферийных устройств, таких как винчестеры, принтеры, сканеры, стриммеры, приводы CD-ROM и др. SCSI является интерфейсом системного, а не приборного уровня. В отличие от ST506/412 и других приборных интерфейсов с последовательной передачей информации, SCSI передает биты данных параллельно, что обеспечивает существенное повышение скорости обмена данными между устройством и хост-адаптером.

Интерфейс SCSI используется не только в IBM -совместимых компьютерах, но и семействах Macintosh, SPARC, VAX и др. Одна из причин такого широкого распространения интерфейса SCSI заключается в том, что он не накладывает никаких ограничений на связь между контроллером и периферийным устройством. Шину SCSI можно использовать для связи компьютера с несколькими периферийными устройствами (как внешними, так и внутренними). Более того, допускается совместное использование одного периферийного устройства несколькими компьютерами, подключенными к общей шине SCSI (правда это значительно сложнее сделать, чем написать, но об этом разговор особый). Подключаемые к шине SCSI устройства могут играть роль ведущих ( Initiator ) или ведомых ( Target ), при этом одно и то же устройство может быть ведомым в одних случаях и ведущим - в других. Такое разделение функций устройств позволяет организовать передачу данных с одного периферийного устройства на другое (например, резервное копирование данных с винчестера на стриммерную кассету). Обмен между устройствами по магистрали SCSI происходит в соответствии с протоколом высокого уровня и адресация осуществляется на уровне логических, а не физических (как в ESDI) блоков. Программы для работы со SCSI -устройствами не используют физические характеристики конкретного устройства (число головок, цилиндров и т.п.), а имеют дело с логическими блоками, что дает возможность работы фактически со всеми блочными устройствами.

Для подключения устройств SCSI используется кабель (как правило плоский) с 50-контактными разъемами (Приложение 3). Возможны как синфазная, так и дифференциальная (с помощью "токовой петли") передача данных по кабелю; при синфазной передаче длина кабеля может достигать 6 м, при дифференциальной - 25 м. Для гарантированной передачи сигналов по магистрали SCSI линию требуется согласовывать с помощью терминаторов (набора резисторов), устанавливаемых по обоим концам шины SCSI.

Single Ended IDC-50 Male
1 GND 11 GND 21 GND 31 GND 41 GND
2 DB0 12 DB5 22 GND 32 ATN 42 - MSG
3 GND 13 GND 23 GND 33 GND 43 GND
4 DB1 14 DB6 24 GND 34 GND 44 SEL
5 GND 15 GND 25 Открыт 35 GND 45 GND
6 DB2 16 DB7 26 TERMPWR 36 BSY 46 - C/D
7 GND 17 GND 27 GND 37 GND 47 GND
8 DB3 18 DBP 28 GND 38 BSY 48 - REQ
9 GND 19 GND 29 GND 39 GND 49 GND
10 DB4 20 GND 30 GND 40 RST 50 - I/O
Differential IDC-50 Male
1 Открыт 11 +DB4 21 DIFFSENS 31 GND 41 +SEL
2 GND 12 -DB4 22 GND 32 GND 42 -SEL
3 +DB0 13 +DB5 23 GND 33 +BSY 43 +C/D
4 -DB0 14 -DB5 24 GND 34 -BSY 44 -C/D
5 +DB1 15 +DB6 25 TERMPWR 35 +ACK 45 +REQ
6 -DB1 16 -DB6 26 TERMPWR 36 -ACK 46 -REQ
7 +DB2 17 +DB7 27 GND 37 +RST 47 +I/O
8 -DB2 18 -DB7 28 GND 38 -RST 48 -I/O
9 +DB3 19 +DBP 29 +ATN 39 +MSG 49 GND
10 -DB3 20 -DBP 30 -ATN 40 -MSG 50 GND
Macintosh SCSI (Single Ended)DB-25S Female
1 -REQ 11 -DB5 21 DB1
2 -MSG 12 -DB6 22 DB2
3 -I/O 13 -DB07 23 DB4
4 -RST 14 GND 24 GND
5 -ACK 15 -C/D 25 NC(TERMPW)
6 -BSY 16 GND
7 GND 17 -ATN
8 -DB0 18 GND
9 GND 19 -SEL
10 -DB3 20 DBP

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

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

Наименование Разрядность шины Частота шины Пропускная способность Максимальная длина кабеля Максимальное количество устройств
SCSI 8 бит 5 МГц 5 МБайт/сек 6 м 8
Fast SCSI 8 бит 10 МГц 10 МБайт/сек 1,5-3 м 8
Wide SCSI 16 бит 10 МГц 20 МБайт/сек 1,5-3 м 16
Ultra SCSI 8 бит 20 МГц 20 МБайт/сек 1,5-3 м 5-8
Ultra Wide SCSI 16 бит 20 МГц 40 МБайт/сек 1,5-3 м 5-8
Ultra2 SCSI 8 бит 40 МГц 40 МБайт/сек 12 м 8
Ultra2 Wide SCSI 16 бит 40 МГц 80 МБайт/сек 12 м 16
Ultra3 SCSI 16 бит 40 МГц DDR 160 МБайт/сек 12 м 16
Ultra-320 SCSI 16 бит 80 МГц DDR 320 МБайт/сек 12 16

Протокол команд SCSI

В терминологии SCSI взаимодействие идет между инициатором и целевым устройством. Инициатор посылает команду целевому устройству, которое затем отправляет ответ инициатору.

Команды SCSI посылаются в виде блоков описания команды (англ. Command Descriptor Block, CDB ). Длина каждого блока может составлять 6, 10, 12 или 16 байт. В последних версиях SCSI блок может иметь переменную длину. Блок состоит из однобайтового кода команды и параметров команды.

После получения команды целевое устройство возвращает значение 00h в случае успешного получения, 02h в случае ошибки или 08h в случае, если устройство занято. В случае, если устройство вернуло ошибку, инициатор обычно посылает команду запроса состояния. Устройство возвращает Key Code Qualifier (KCQ) .

Все команды SCSI делятся на четыре категории: N (non-data) , W (запись данных от инициатора целевым устройством), R (чтение данных) и B (двусторонний обмен данными). Всего существует порядка 60 различных команд SCSI, из которых наиболее часто используются:

  • Test unit ready - проверка готовности устройства, в т.ч. наличия диска в дисководе.
  • Inquiry - запрос основных характеристик устройства.
  • Send diagnostic - указание устройству провести самодиагностику и вернуть результат.
  • Request sense - возвращает код ошибки предыдущей команды.
  • Read capacity - возвращает емкость устройства.
  • Format Unit
  • Read (4 варианта) - чтение.
  • Write (4 варианта) - запись.
  • Write and verify - запись и проверка.
  • Mode select - установка параметров устройства.
  • Mode sense - возвращает текущие параметры устройства.
  • ATA

    Спецификация IDE/ATA была предложена в качестве недорогой альтернативы интерфейсам ESDI и SCSI для персональных компьютеров семейств IBM PC XT/AT. В результате сотрудничества компании Western Digital с Compaq Computer Corporation был разработан интерфейс IDE (Integrated Drive Electronics), называемый также АТА (AT attachment) . Первые промышленные устройства на базе IDE/ATA были выпущены в 1986году. Интерфейс был стандартизован ( ANSI X3T9.2/90-143 ) в 1990г. как ATA (AT Attachment) . Основным отличием нового интерфейса была реализация большинства функций контроллера непосредственно на плате дискового накопителя. Такой подход упростил и удешевил хост-адаптеры, используемые для подключения винчестеров к компьютеру, и позволил обеспечить высокий уровень совместимости устройств разных фирм.

    Используемые устройствами IDE адреса ввода/вывода совпадают с адресами ST506/412, но функции контроллера перенесены на плату управления приводом диска и головок винчестера. Информация о геометрии диска (число головок, цилиндров и секторов) хранится в самом устройстве. Зачастую в BIOS передаются логические параметры диска, не совпадающие с его физическими параметрами, т.е. используется трансляция, что позволяет устанавливать винчестеры в компьютеры со старыми BIOS, не обеспечивающими возможность произвольной установки параметров устройства (в большинстве современных реализаций BIOS такая возможность поддерживается как тип 47 - User Defined ).

    Базовый набор команд интерфейса IDE полностью соответствовал набору команд контроллера WD1002/1003 компании Western Digital, который был использован в компьютере IBM PC AT. При стандартизации интерфейса IDE к 12 базовым командам было добавлено еще столько же. Перенос большинства функций контроллера на плату управления позволяет несколько повысить скорость обмена данными с диском. Как правило диски IDE имеют небольшую встроенную кэш-память (до 256Кб) и позволяют работать с фактором чередования 1:1 (дорожка может быть прочитана целиком за один оборот диска).

    Хост-адаптер для подключения дисков IDE зачастую устанавливается на системной плате (Mother board) или совмещается с контроллером дисководов и портами ввода-вывода (последовательными и параллельным) на специальной, вставляемой в гнездо расширения, плате (мультикарте, как ее зачастую называют). Подключение устройств к хост-адаптеру осуществляется с помощью 40-проводного плоского кабеля, к которому можно присоединить два винчестера. Для корректной адресации устройств один из винчестеров должен быть установлен в режим Master (ведущий), другой - в режим Slave (ведомый). Режим работы диска задается с помощью перемычек, расположенных как правило около сигнального разъема винчестера.

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

    Перемычки для установки режима Master/Slave

    Сравнение дисковых интерфейсов
    Параметр ST506/412 MFM ST506/412 RLL ESDI SCSI IDE/ATA
    Максимальная скорость обмена 5Мбит/сек 7.5Мбит/сек 10/24Мбит/се к 24/40МБайт /сек 10МБайт/се к
    Максимальное количество устройств 4 4 7 56 2
    Максимальное количество устройств в DOS 2 2 2 36 2
    Подключение других устройств - - - + -
    Число секторов на дорожке 17 26 32-36 Не определено Не определено
    Загрузка процессора Все операции ввода -вывода осуществляются с использованием процессора Частичное использование
    Многозадачны й ввод-вывод - + + -[Современны е расширения IDE/ATA поддерживают многозадачный ввод-вывод]
    Автоматическая коррекция ошибок - - + + +
    Низкоуровневое форматирование + + + -

    Современные реализации ATA/IDE

    Предложенный в конце 80-х годов интерфейс ATA (AT Attachment) , известный также под названием IDE (Integrated Drive Electronics) очень быстро завоевал широкую популярность среди производителей и пользователей персональных компьютеров. Основными причинами быстрого и широкого распространения нового интерфейса послужили невысокая цена устройств, простота их установки и эксплуатации, а также высокий уровень совместимости устройств IDE. Спецификация АТА уступает по скорости обмена с дисками и ряду других параметров интерфейсу SCSI, однако для большинства пользователей производительность играет меньшую роль, по сравнению с совместимостью, простотой и стоимостью устройств.

    Ограниченность АТА

    Первоначальная версия стандарта IDE обеспечивала возможность подключения к компьютеру четырех винчестеров и позволяла обмениваться данными с диском на скорости до 10Мбайт/сек, однако реальная скорость ограничивалась прежде всего возможностями самого винчестера. Подключение четырех устройств, предусмотренное спецификацией IDE, в компьютерах семейства IBM PC AT, в спецификации ATA/IDE реализовано не было. Кроме того, совместное использование стандарта ATA и программного интерфейса Int 13 BIOS ограничивало размер дисковых устройств 528Мб. Природу этого ограничения, связанную с форматами чисел, используемых для адресации головок, секторов и цилиндров винчестера ( CHS -адрес) в стандарте IDE и BIOS, можно понять из приведенной ниже таблицы и рисунка 3, иллюстрирующего взаимодействие операционной системы с диском IDE.

    BIOS IDE Результат
    Максимальное число секторов на дорожке 63 255 63
    Максимальное число головок 255 16 16
    Максимальное число цилиндров 1024 65536 1024
    Максимальный размер диска 8.4Гб 136.9Гб 528Мб

    Взаимодействие диска IDE с операционной системой.

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

    Присущие интерфейсу IDE/ATA ограничения тормозили развитие недорогих компьютерных систем, рассчитанных на массового пользователя, в связи с чем целый ряд фирм предпринял попытки расширения возможностей классического IDE. Наибольших успехов на этом пути добилась компания Western Digital, разработавшая спецификацию Enhanced IDE (EIDE) , позволяющую использовать диски, размер которых превышает 528 Мб, и обеспечившую реальную возможность подключения к компьютеру до четырех устройств IDE (не только винчестеров, но и приводов CD-ROM или стриммеров).

    Другим интересным вариантом развития интерфейса IDE является технология Fast ATA, разработанная компанией Seagate Technology при поддержке фирмы Quantum. Эта технология направлена в первую очередь на повышение скорости обмена данными с дисковыми устройствами и не поддерживает возможность подключения CD-ROM или стриммеров, но обеспечивает более высокий уровень совместимости за счет соответствия широко распространенным промышленным стандартам.

    Enhanced IDE

    Технология Enhanced IDE компании Western Digital была разработана в результате анализа потребностей современного рынка ПК. В 1984 году компания Western Digital создала контроллеры дисководов ( WD1002 ) и винчестеров ( ST506 ), которые были использованы фирмой IBM при разработке компьютера IBM PC AT. Успех архитектуры АТ привел к значительному расширению рынка IBM -совместимых ПК и сделал контроллеры Western Digital стандартом de facto.

    В процессе становления рынка персональных компьютеров фирма Western Digital пришла к выводу о необходимости интеграции электроники контроллера АТ и дискового устройства. В результате сотрудничества с Compaq Computer Corporation был разработан интерфейс IDE (Integrated Drive Electronics) , называемый также АТА (AT Bus attachment) . Первые промышленные устройства на базе IDE/ATA были выпущены в 1986 году.

    Продолжая лидировать в сфере IDE -устройств, компания Western Digital предложила расширение интерфейса IDE. Новая спецификация - Enhanced IDE повышает скорость обмена с диском, допускает применение более скоростных дисков и обеспечивает возможность установки в компьютере до четырех устройств IDE. Кроме того, Enhanced IDE позволяет подключать к контроллеру не только винчестеры, но и другие устройства (приводы CD-ROM, стриммеры), поддерживающие спецификацию ATAPI (AT Attachment Packet Interface) . Эта спецификация определяет интерфейс с приводами CD-ROM и другими недисковыми устройствами, позволяющий использовать стандартные контроллеры и кабели. Стандарт ATAPI получил широкую поддержку среди производителей CD-ROM -устройств и разработчиков операционных систем, что еще более расширило сферу распространения интерфейса IDE/ATA.

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

  • IDE поддерживает только два винчестера, а SCSI обеспечивает возможность подключения большого количества блочных устройств различных типов (принтеры, CD-ROM, стриммеры и др.);
  • размер дисков IDE не может превышать 528Мб, поскольку для доступа к диску используется интерфейс Int 13 BIOS, тогда как SCSI не ограничивает размер диска;
  • IDE обеспечивает скорость обмена с диском 2-3 Мб/сек, а SCSI - 10 или 20Мб/сек (Fast/Wide) .
  • Технология Enhanced IDE позволяет избавиться от основных ограничений стандарта IDE/ATA:

  • предельный размер диска 528Мб;
  • малая скорость обмена с диском;
  • поддержка только двух устройств;
  • невозможность подключения приводов CD-ROM и стриммеров.
  • Компоненты технологии EIDE

    Как показано на рисунке, технология Enhanced IDE включает в себя четыре основных компоненты, реализуемые совместно в периферийных устройствах, контроллерах EIDE, BIOS и операционной системе:

  • Использование винчестеров размером более 528Мб. Эта возможность обусловлена внесенными в BIOS изменениями, позволяющими адресовать большие диски. Для работы с дисками более 528Мб требуется поддержка со стороны винчестера, BIOS и операционной системы. Винчестер должен поддерживать спецификацию ATA (этому требованию удовлетворяет большинство современных винчестеров). BIOS также должна поддерживать спецификацию ATA ; большинство производителей системных плат и разработчиков BIOS уже поддерживают этот режим. Может потребоваться поддержка работы с большими дисками и со стороны операционной системы. Windows 3.1 не полностью соответствует ATA, поэтому приходится использовать специальные драйверы (Windows "32-bit disk access"), обычно поставляемые вместе с контроллерами EIDE. Большинство 32-разрядных операционных систем (таких, как OS/2) изначально поддерживают работу с большими дисками.
  • Ускоренный обмен данными основан на использовании скоростных режимов программируемого ввода-вывода ( PIO mode 3 ) и прямого доступа к памяти ( DMA mode 1 ). Эти режимы обеспечивают скорость обмена 11.1 и 13.3 Мб/сек, соответственно. Для реализации скоростного обмена требуется поддержка со стороны винчестера и BIOS. BIOS должна поддерживать один из скоростных режимов обмена с диском ( PIO mode 3 или DMA mode 1 ), как правило это режим PIO. Со стороны дискового устройства также должна обеспечиваться поддержка скоростного обмена. Эту возможность обеспечивает большинство современных винчестеров (в том числе диски Fast ATA ). Скоростные режимы обмена позволяют полнее реализовать возможности дисковых контроллеров, использующих широкополосную локальную шину VESA или PCI.
  • Поддержка двух портов ATA. Для обеспечения этой возможности используются зарезервированные для второго контроллера адреса портов ввода-вывода и прерывание IRQ15. Для реализации этой возможности требуется поддержка со стороны контроллера (хост-адаптера), BIOS и операционной системы. К самим устройствам (винчестерам, приводам CD-ROM или стриммерам) не предъявляется никаких дополнительных требований. Контроллер должен обеспечивать возможность установки адресов второго порта (это реализовано отнюдь не во всех современных моделях). Не все BIOS поддерживают возможность использования четырех устройств IDE, однако современные разработки включают этот режим. Важную роль играет поддержка использования четырех устройств со стороны операционной системы. Эта возможность реализована в большинстве 32-разрядных ОС и в последних версиях DOS.
  • Возможность подключения приводов CD-ROM и стримеров. Этот режим является недорогой альтернативой SCSI. Для обеспечения такой возможности требуется требуется поддержка нескольких новых команд. Спецификация ATAPI (ATA Packet Interface) , находящаяся в стадии разработки, содержит описание новых команд. Для обеспечения возможности подключения к хост-адаптеру недисковых устройств требуется поддержка спецификации ATAPI со стороны BIOS, хост-адаптера, операционной системы и самих периферийных устройств. В настоящее время большинство устройств CD-ROM уже использует интерфейс IDE/ATAPI для подключения ко второму порту современных контроллеров. Очевидно, что при таком обилии вариантов расширения возможностей IDE отнюдь не все устройства, рекламируемые как "Enhanced", поддерживают все четыре режима, добавленные в спецификацию Enhanced IDE. Не следует забывать также о том, что для обеспечения полной поддержки EIDE, этой спецификации должны удовлетворять BIOS, хост-адаптер, операционная система и, наконец, сами периферийные устройства.
  • Использование дисков большой емкости

    Ограничение размера винчестеров с интерфейсом IDE/ATA (528 Мб) является результатом совместного использования стандарта IDE и программного интерфейса Int 13 BIOS. Технология Enhanced IDE дает возможность внести в BIOS изменения, позволяющие избавиться от этого ограничения.

    Природа ограничения размера дисков связана с форматом (числом бит), используемым для задания номеров головок, цилиндров и секторов в интерфейсах Int 13 и IDE ( CHS -адресация). Поскольку оба интерфейса используют различные форматы, их совместное применение не позволяет работать с дисками размером более 528 мегабайт. В таблице приведены форматы чисел, используемых для нумерации в BIOS и IDE:

    Число BIOS IDE Результат
    секторов на дорожке 63 255 63
    головок 255 16 16
    цилиндров 1024 65536 1024
    Максимальный размер 8.4Гб 136.9Гб 528Мб

    Существует два способа преодолеть ограничение размера диска. Первый способ заключается в использовании трансляции адресов CHS (цилиндр-головка-сектор) - пересчета реальных значений в фиктивные, удовлетворяющие ограничениям BIOS. Контроллер и BIOS используют в этом случае разную геометрию для адресации данных на диске. Если диск содержит 1500 секторов и имеет 16 головок, то в результате трансляции BIOS будет воспринимать его как устройство с 750 цилиндрами и 32 головками.

    Технология Enhanced IDE использует другой метод, называемый логической адресацией блоков ( LBA - Logical Block Address ). В этом случае используется сквозная нумерация секторов и адрес CHS преобразуется в одно 28-битовое число, используемое для нумерации секторов - LBA -адрес. Метод LBA обеспечивает более эффективный способ работы с большими дисками за счет простоты преобразования адреса. Кроме того, этот способ представляется более эффективным при разработке новых операционных систем. Схема адресации с использованием LBA была впервые применена фирмой Western Digital в конце 1993 года, позволив создать диск IDE размеров 540Мб (модель AC2540 ).

    Повышение скорости обмена

    Шина ISA обеспечивает возможность обмена данными с диском на скорости 2-3Мб/сек. По сравнению со скоростями SCSI-контроллеров (5, 10 и 20Мб/сек), эта скорость слишком мала. До недавнего времени ограничение скорости обмена не играло существенной роли, поскольку сами устройства IDE не позволяли считывать или записывать данные со скоростью выше 5 Мбит/сек. По мере совершенствования дисковых технологий скорость контроллера 2-3Мб/сек начала все-таки ограничивать возможности винчестеров IDE. Для повышения производительности дисковой подсистемы компьютеров пришлось использовать буферную память, устанавливаемую на плате винчестера или хост-адаптера. Современные винчестеры могут обеспечивать скорость чтения/записи до 48 Мбит/сек и простая буферизация для повышения производительности работы будет слишком дорогим решением.

    Скоростные режимы PIO

    Для повышения скорости обмена данными в современных ПК широко используются локальные шины. Локальная шина VESA была разработана для ускорения вывода изображений на экран, а в 1992 году был выпущен первый контроллер IDE с шиной VLB (VESA Local Bus) , обеспечивший некоторый рост скорости обмена с диском. Несколько позже была разработана спецификация локальной шины PCI. Контроллеры IDE с локальной шиной VLB поддерживают высокую скорость обмена между диском и буфером, но и они не могут сравниться с контроллерами Fast-SCSI (10Мб/сек.) по причине использования "слепого" обмена в режиме программируемого ввода-вывода ( PIO ). "Слепой" метод PIO основан на том, что контроллер (ведущее устройство) запрашивает данные у диска (ведомое устройство) или передает их ему. При таком режиме используется только часть полосы пропускания шины, что не позволяет добиться существенного роста скорости контроллеров IDE.

    Enhanced IDE включает операции, называемые "управление потоком с использованием IORDY ", которые позволяют диску включать пакетный режим передачи для 100% использования полосы пропускания шины. Режим управления потоком передает инициативу устройству (диску) и позволяет избавиться от неэффективных "слепых" режимов PIO за счет установки полосы пропускания контроллера в соответствии с возможностями винчестера. Это означает, что в тех случаях, когда доступна вся полоса, винчестер будет управлять обменом данными с хост-адаптером.

    Режим 3 PIO с периодом тактирования 180нсек. обеспечивает скорость обмена 11Мб/сек., превышающую скорость Fast-SCSI (10Мб/сек.). Управление потоком со стороны диска включается контроллером с помощью команды Set Features, в результате чего такой обмен поддерживается одновременно и диском, и контроллером. Винчестер AC25400 (540Мб) выпущенный в 1993 году фирмой Western Digital, поддерживал управление потоком с помощью IORDY, реализованное с помощью специализированной микросхемы-контроллера. Основные возможности этого контроллера позднее были включены в стандартные наборы микросхем IDE.

    Режимы DMA

    Хотя режимы программируемого ввода-вывода ( PIO ) являются стандартным методом, поддерживаемым в серийных устройствах IDE, и отличаются высокой совместимостью, существуют и другие способы повышения скорости обмена с винчестерами. Метод прямого доступа к памяти ( DMA ) основан на передаче данных между диском и памятью компьютера без использования центрального процессора CPU. Тип B для DMA определен в спецификации EISA и обеспечивает обмен со скоростью 4Мб/сек. Этот метод дает преимущество по сравнению со стандартной скоростью для шины ISA, но значительно уступает Fast-SCSI.

    С развитием технологии локальных шин в спецификации PCI был предложен новый вариант обмена с использованием DMA (тип F), обеспечивающий скорость 8.33 и 6.67Мб/сек. В соответствии с возможностями существующих микросхем была предложена спецификация DMA Mode 1 с циклом 150 нсек., обеспечивающая скорость обмена 13Мб/сек. за счет передачи нескольких слов за один запрос. Комплекты микросхем с поддержкой DMA типа B ( EISA ) и типа F ( PCI ) поставляются с конца 1993 года.

    Сравнение DMA и PIO

    Режимы PIO в дисковых контроллерах IDE получили более широкое распространение по сравнению с режимами DMA. По этой причине прерывание BIOS Int 13 и драйверы устройств операционных систем поддерживают режим PIO, а не DMA. Это означает, что для использования режимов DMA потребуется замена BIOS и драйверов устройств.

    Технология Enhanced IDE компании Western Digital обеспечивает возможность выбора между режимами PIO с управлением потоком через IORDY (mode 3) и DMA (тип B или F), реализованными с помощью драйверов.

    Увеличение числа устройств

    В оригинальном IBM PC AT была зарезервирована поддержка двух контроллеров для работы с винчестерами и каждый из этих контроллеров позволял подключить два диска. Однако BIOS и драйверы операционных систем не поддерживали использование второго контроллера, что ограничивало возможности дисковой подсистемы ПК. Сегодняшние операционные системы предоставляют возможность использовать в компьютере все четыре устройства IDE (два порта). Добавление второго порта IDE на плату хост-адаптера почти не увеличивает стоимости последнего. Большинство микросхем, используемых для изготовления контроллеров уже содержат второй порт и устройство декодирования адреса, поэтому стоимость расширения возможностей контроллера фактически сводится к стоимости установке на плате дополнительного 40-контактного разъема для подключения кабеля. Расширение дисковой системы компьютера до 4 устройств с помощью новых контроллеров IDE экономически более эффективно по сравнению с использованием устройств SCSI.

    Технология Enhanced IDE компании Western Digital позволяет BIOS определить второй контроллер по номеру диска, переданному прерыванию Int 13. DOS версии 3.30 и выше позволяет использовать в компьютере до семи устройств, поэтому для поддержки дополнительных дисков IDE требуется лишь изменить BIOS, чтобы обеспечить возможность использования второго канала IDE. Операционные системы типа OS/2 и Windows NT позволяют использовать четыре устройства IDE и со старыми BIOS; Novell NetWare позволяет устанавливать в компьютер четыре контроллера IDE, к которым можно подключить восемь устройств.

    Подключение устройств ATAPI

    Второй порт IDE не только позволяет увеличить число дисков, но и обеспечивает возможность подключения устройств, не являющихся винчестерами - например, приводов CD-ROM или стриммеров. Подключение медленных устройств типа CD-ROM ко второму порту обеспечивает возможность работы винчестера без задержек даже при отсутствии раздельного тактирования устройств (при отсутствии раздельного тактирования скорость обмена с подключенными к одному порту устройствами определяется более медленным из них).

    Компания Western Digital разработала спецификацию ATAPI (ATA Packet Interface) для подключения к контроллеру IDE новых устройств хранения, подобных приводам CD-ROM и стриммерам. В традиционной компьютерной архитектуре использовался механизм переноса данных, основанный на регистрах. Современные варианты архитектуры используют механизм передачи на основе пакетов. ATAPI является расширением стандарта IDE, обеспечивающим возможность работы с пакетами. Спецификация ATAPI добавляет к IDE единственную новую команду, расширяющую функции контроллера, и две новых команды адресации.

    EIDE в сравнении со стандартным ATA

    Современные технологии устройств и контроллеров IDE обеспечивают им возможность успешной конкуренции со стандартом SCSI. IDE обеспечивает хорошую совместимость и простоту использования наряду с невысокой ценой. Кроме того, современные варианты IDE обеспечивают не менее высокую скорость, чем SCSI (проигрывая только Fast/Wide SCSI ). Существенна также возможность подключения недисковых устройств к современным контроллерам ATA/IDE.

    В таблице приведены сравнительные данные интерфейсов IDE и Enhanced IDE:

    Стандартный ATA Enhanced IDE
    Поддерживает только два диска Поддерживает четыре диска при двухканальном контроллере и допускает дальнейшее расширение
    Может использоваться только для подключения винчестеров Обеспечивает возможность подключения устройств ATAPI (CD-ROM и стриммеры)
    Емкость диска не может превышать 528Мб в результате совместного использования BIOS Int 13 и спецификации IDE. Адресация LBA (Linear Block address) позволяет использовать диски размером до 8.4Гб
    Скорость обмена не может превышать 2-3 Мб/сек. В режиме 3 PIO и режиме 1 DMA скорость обмена может достигать 13.3Мб/сек.
    Версии стандарта ATA, скорость передачи и свойства
    Стандарт Другие названия Добавлены режимы передачи(MБ/с) Максимально поддерживаемый размер диска Другие свойства ANSI Reference
    ATA-1 ATA, IDE PIO 0,1,2 (3.3, 5.2, 8.3) Single-word DMA 0,1,2 (2.1, 4.2, 8.3) Multi-word DMA 0 (4.2) up to 137 GB 28-bit LBA X3.221-1994 (obsolete since 1999)
    ATA-2 EIDE, Fast ATA, Fast IDE, Ultra ATA PIO 3,4: (11.1, 16.6) Multi-word DMA 1,2 (13.3, 16,6) X3.279-1996 (obsolete since 2001)
    ATA-3 EIDE S.M.A.R.T., Security X3.298-1997 (obsolete since 2002)
    ATA/ATAPI-4 ATAPI-4, ATA-4, Ultra ATA/33 Ultra DMA 0,1,2 (16.7, 25.0, 33.3) aka Ultra-DMA/33 Support for CD-ROM, etc., via ATAPI packet commands NCITS 317-1998
    ATA/ATAPI-5 ATA-5, Ultra ATA/66 Ultra DMA 3,4 (44.4, 66.7) aka Ultra DMA 66 80-wire cables NCITS 340-2000
    ATA/ATAPI-6 ATA-6, Ultra ATA/100 UDMA 5 (100) aka Ultra DMA 100 up to 144 PB 48-bit LBA Automatic Acoustic Management NCITS 347-2001
    ATA/ATAPI-7 ATA-7, UltraATA/133 UDMA 6 (133) aka Ultra DMA 133 SATA/150 SATA 1.0, Streaming feature set, long logical/physicalsector feature set for non-packet devices NCITS 361-2002
    ATA/ATAPI-8 ATA-8 in progress

    Спецификация Fast ATA разработана компанией Seagate Technology и поддержана фирмой Quantum и еще рядом компаний. Это расширение стандарта IDE/ATA преследует цель увеличения емкости винчестеров и скорости обмена между диском и программами. К настоящему моменту существует два варианта спецификации Fast ATA и Fast ATA-2. Винчестеры, соответствующие Fast ATA, обеспечивают высокую скорость обмена за счет реализации скоростных режимов PIO mode 3 (11.1 Мб/сек) или Multiword DMA mode 1 (13.3 Мб/сек). Выбор конкретного режима предоставляется производителю устройства. Fast ATA-2 поддерживает PIO mode 4 или Multiword DMA mode 2 (пока не реализован "в железе"), обеспечивающие скорость обмена 16.6 Мб/сек.

    Для обеспечения возможности использования дисков, размер которых превышает 528Мб, используется режим трансляции параметров диска; реальные адреса CHS (цилиндр-головка-сектор) пересчитываются в фиктивные, удовлетворяющие ограничениям BIOS. Контроллер и BIOS используют в этом случае разную геометрию для адресации данных на диске. Если диск содержит 2000 секторов и имеет 16 головок, то в результате трансляции BIOS будет воспринимать его как устройство с 1000 цилиндров и 32 головками.

    Трансляция параметров диска

    Технология Fast ATA основана на признанных промышленных стандартах, что обеспечивает ей высокий уровень совместимости со старыми контроллерами и дисками. Протоколы обмена данными соответствуют официальному документу АТА-2 (Ref: 9048D) .

    Сравнение Fast ATA и EIDE

    Режимы быстрого обмена данными ( PIO 1-4 и DMA 0-2 ) являются краеугольным камнем технологий Fast ATA и EIDE.

    Термин Fast ATA был введен компанией Seagate и поддерживается ею совместно с фирмой Quantum; термин Enhanced IDE использует компания Western Digital.

    EIDE поддерживает режимы ускоренного обмена наряду с:

  • режимом LBA ;
  • возможностью использования четырех устройств ATA (второй порт);
  • трансляцией, позволяющей использовать диски с числом цилиндров, превышающим 1024 ( WD EBIOS );
  • поддержкой приводов CD-ROM и стриммеров через контроллер ATA (ATAPI) .
  • Fast ATA и Fast ATA-2 также поддерживают быстрый обмен вместе с:

  • командами множественного чтения/записи;
  • режимом LBA
  • Различие между этими двумя схемами заключается главным образом в возможностях EIDE. Эта спецификация включает множество аспектов технологии дисков и драйверов, которые еще не полностью реализованы "в железе". Многие устройства могут называть "Enhanced", даже если они не поддерживают всех возможностей EIDE. Это может привести к затруднениям при покупке.

    Термин Fast ATA-2 также определен недостаточно четко. Эта спецификация предполагает использование PIO mode 4 и DMA mode 2 (16MB/s), тогда как Fast ATA использует только PIO mode 3 (11MB/s) и DMA mode 1 (13MB/s). Обе спецификации полностью совместимы со стандартом ATA-2, и Fast ATA-2 следует понимать как [Fast ATA]-2, а не Fast [ATA-2] .

    SATA

    SATA (англ. Serial ATA) - последовательный интерфейс обмена данными с накопителями информации. SATA является развитием параллельного интерфейса ATA (IDE) , который после появления SATA был переименован в PATA (Parallel ATA) .

    SATA/150

    Первоначально стандарт SATA предусматривал работу шины на частоте 1,5 ГГц, обеспечивающей пропускную способность приблизительно в 1,2 Гбит/с (150 МБ/с). (20%-я потеря производительности объясняется использованием системы кодирования 8B/10B, при которой на каждые 8 бит полезной информации приходится 2 служебных бита). Пропускная способность SATA/150 незначительно выше пропускной способности шины Ultra ATA (UDMA/133) . Главным преимуществом SATA перед PATA является использование последовательной шины вместо параллельной. Несмотря на то, что последовательный способ обмена принципиально медленнее параллельного, в данном случае это компенсируется возможностью работы на более высоких частотах за счет большей помехоустойчивости кабеля. Это достигается меньшим числом проводников и объединением информационных проводников в две витые пары, экранированные заземленными проводниками.

    SATA/300

    Стандарт SATA/300 работает на частоте 3 ГГц, обеспечивает пропускную способность до 2,4 Гбит/с (300 МБ/с). Впервые был реализован в контроллере чипсета nForce 4 фирмы "NVIDIA". Часто стандарт SATA/300 называют SATA II или SATA 2.0. Теоретически устройства SATA/150 и SATA/300 должны быть совместимы (как контроллер SATA/300 с устройством SATA/150, так и контроллер SATA/150 с устройством SATA/300 ) за счет поддержки согласования скоростей (в меньшую сторону), однако для некоторых устройств и контроллеров требуется ручное выставление режима работы (например, на НЖМД фирмы Seagate, поддерживающих SATA/300, для принудительного включения режима SATA/150 предусмотрен специальный джампер).

    ATA/600

    Спецификация SATA Revision 3.0 предусматривает возможность передачи данных на скорости до 6 Гбит/с (600 МБ/с). В числе улучшений SATA Revision 3.0 по сравнению с предыдущей версией спецификации, помимо более высокой скорости, можно отметить улучшенное управление питанием. Также будет сохранена совместимость, как на уровне разъемов и кабелей SATA, так и на уровне протоколов обмена. Кстати, консорциум SATA-IO предостерегает от применения для обозначения поколений SATA доморощенных терминов вроде SATA III, SATA 3.0 или SATA Gen 3. Полное правильное название спецификации - SATA Revision 3.0 ; название интерфейса - SATA 6 Gb/s.

    Описание SATA

    SATA использует 7-контактный разъем вместо 40-контактного разъема у PAT A. SATA -кабель имеет меньшую площадь, за счет чего уменьшается сопротивление воздуху, обдувающему комплектующие компьютера, упрощается разводка проводов внутри системного блока.

    SATA -кабель за счет своей формы более устойчив к многократному подключению. Питающий шнур SATA так же разработан с учетом многократных подключений. Разъем питания SATA подает 3 напряжения питания: +12 В, +5 В и +3,3 В; однако современные устройства могут работать без напряжения +3,3 В, что дает возможность использовать пассивный переходник со стандартного разъема питания IDE на SATA. Ряд SATA устройств поставляется с двумя разъемами питания: SATA и Molex.

    Стандарт SATA отказался от традиционного для PATA подключения по два устройства на шлейф; каждому устройству полагается отдельный кабель, что снимает проблему невозможности одновременной работы устройств, находящихся на одном кабеле (и возникавших отсюда задержек), уменьшает возможные проблемы при сборке (проблема конфликта Slave/Master устройств для SATA отсутствует), устраняет возможность ошибок при использовании нетерминированных PATA -шлейфов.

    Стандарт SATA предусматривает горячую замену устройств и функцию очереди команд ( NCQ, начиная с SATA/300 ).

    SATA устройства используют два разъема: 7-контактный (подключение шины данных) и 15-контактный (подключение питания). Стандарт SATA предусматривает возможность использовать вместо 15-контактного разъема питания стандартный 4-контактный разъем Molex. Использование одновременно обоих типов силовых разъемов может привести к повреждению устройства.

    G - заземление (англ. Ground )

    R - зарезервировано

    D1+,D1-,D2+,D2 - - два канала передачи данных (от контроллера к устройству и от устройства к контроллеру соответственно). Для передачи сигнала используется технология LVDS, провода каждой пары ( D1+, D1- и D2+, D2- ) являются экранированными витыми парами.

    eSATA

    eSATA (External SAT A) - интерфейс подключения внешних устройств, поддерживающий режим "горячей замены" (англ. Hot-plug ). Был создан несколько позже SATA (в середине 2004). Основные особенности eSATA:

    Разъемы менее хрупкие и конструктивно рассчитаны на большее число подключений(~9000).

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

    Длина кабеля увеличена до 2 м (по сравению с 1 м у SAT A).

    Средняя практическая скорость передачи данных выше, чем у USB или IEEE 1394.

    Существенно меньше нагружается центральный процессор. Уменьшены требования к сигнальным напряжениям по сравнению с SATA.

    SAS (Serial Attached SCSI)

    НЖМД с интерфейсом SAS: слева НЖМД типоразмера 2,5 дюйма, справа - типоразмера 3,5 дюйма

    Serial Attached SCSI (SAS) - компьютерный интерфейс, разработанный для обмена данными с такими устройствами, как жесткие диски, накопители на оптическом диске и т. д. SAS использует последовательный интерфейс для работы с непосредственно подключаемыми накопителями (англ. Direct Attached Storage (DAS) devices ). SAS разработан для замены параллельного интерфейса SCSI и позволяет достичь более высокой пропускной способности, чем SCSI ; в то же время SAS совместим с интерфейсом SATA. Хотя SAS использует последовательный интерфейс в отличие от параллельного интерфейса, используемого традиционным SCSI, для управления SAS -устройствами по-прежнему используются команды SCSI. Протокол SAS разработан и поддерживается комитетом T10. SAS поддерживает передачу информации со скоростью до 3 Гбит/с; ожидается, что к 2010 году скорость передачи достигнет 10 Гбит/с.

    Типичная система с интерфейсом SAS состоит из следующих компонентов:

  • Инициаторы (англ. Initiators)

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

  • Целевые устройства (англ. Targets)

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

  • Подсистема доставки данных (англ. Service Delivery Subsystem)

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

  • Расширители (англ. Expanders )

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

  • Сравнение SAS и параллельного SCSI

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

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

    В отличие от SCSI, SAS не нуждается в терминации шины пользователем.

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

    SAS поддерживает большое количество устройств (> 16384), в то время как интерфейс SCSI поддерживает 8, 16, или 32 устройства на шине.

    SAS поддерживает высокие скорости передачи данных (1,5, 3,0 или 6,0 Гбит/с). Такая скорость может быть достигнута при передаче информации на каждом соединении инициатор-целевое устройство, в то время как на шине SCSI пропускная способность шины разделена между всеми подключенными к ней устройствами.

    SAS поддерживает подключение устройств с интерфейсом SATA.

    SAS использует команды SCSI для управления и обмена данными с целевыми устройствами.

    Сравнение SAS и SATA

    SATA-устройства идентифицируются номером порта контроллера интерфейса SATA, в то время как устройства SAS идентифицируются их WWN -идентификаторами ( WWN - англ. World Wide Name ).

    Устройства SATA версии 1 не поддерживают очередей команд, в то время как устройства SAS поддерживают теггированные очереди команд (англ. Tagged Command Queuing ). В то же время, устройства SATA версии 2 поддерживают англ. Native Command Queuing (NCQ) .

    SATA использует набор команд ATA и поддерживает жесткие диски и накопители на оптическом диске, в то время как SAS поддерживает более широкий набор устройств, в том числе жесткие диски, сканеры, принтеры и др.

    Аппаратура SAS поддерживает связь с целевыми устройствами по нескольким независимым линиям, что повышает отказоустойчивость системы. Интерфейс SATA версии 1 такой возможности не имеет. В то же время, интерфейс SATA версии 2 использует дубликаторы портов для достижения аналогичной возможности.

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

    Выявление ошибок и обработка ошибочных ситуаций определено в SAS гораздо лучше чем в SATA.

    Разъемы

    Некоторые версии разъемов SAS значительно меньше разъемов традиционного интерфеса SCSI, что позволяет использовать разъемы SAS для подключения компактных накопителей размером 2,5 дюйма.

    Существует несколько вариантов разъемов SAS:

    SFF 8482 - вариант, механически совместимый с разъемом интерфейса SATA. За счет этого возможно подключать устройства SATA к контроллерам SAS. Подключить же SAS -устройство к интерфейсу SATA - не получится, этому препятствует отсутствие посередине разъема специально выреза-ключа (см. изображение разъема в таблице ниже);

    SFF 8484 - внутренний разъем с плотной упаковкой контактов; позволяет подключить до 4 устройств;

    SFF 8470 - разъем с плотной упаковкой контактов для подключения внешних устройств (разъем такого типа применяется в интерфейсе Infiniband, а кроме того, может использоваться для подключения внутренних устройств); позволяет подключить до 4 устройств;

    SFF 8087 - уменьшенный разъем Molex iPASS, содержит разъем для подключения до 4 внутренних устройств; поддерживает скорость 10 Гбит/с;

    SFF 8088 - уменьшенный разъем Molex iPASS, содержит разъем для подключения до 4 внешних устройств; поддерживает скорость 10 Гбит/с.

    Изображение Кодовое название Также известен как Внеш./внутр. К-во линий К-во устр-в Комментарий
    SFF 8482 SATA разъeм Внутренний 1 Форм-фактор, совместимый с SATA -устройствами: позволяет SATA -устройствам соединяться с SAS -контроллером или планкой SAS -разъeмов, что устраняет необходимость в дополнительном SATA контроллере для подключения SATA -устройств типа DVD -рекордеров. Однако жeсткие диски с интерфейсом SAS не могут подключаться к шине SATA, поэтому их физический разъeм имеет "ключ", не позволяющий подключение к шине SATA. Изображeнный на рисунке разъeм является разъeмом "дисковой" стороны интерфейса.
    SFF 8484 Внутренний 32 (19) 4 (2) Разъ?м с высокой плотностью контактов; в стандарте SFF определены разъeмы для подключения 2 или 4 устройств.
    SFF 8485 Определяет SGPIO (расширение стандарта SFF 8484 ) - последовательное соединение, обычно используемое для подключения светодиодных индикаторов.
    SFF 8470 Разъeм типа Infiniband Внешний 32 4 Внешний разъeм с высокой плотностью контактов (также может использоваться в качестве внутреннего разъeма).
    SFF 8087 Внутренний мини- SAS Внутренний 4 Внутренний разъeм типа Molex iPASS уменьшeнной ширины с подключением до 4-х устройств, в будущем планируется поддержка скоростей до 10 Гбит/с.
    SFF 8088 Внешний мини- SAS Внешний 32 4 Внешний разъeм типа Molex iPASS уменьшeнной ширины с подключением до 4-х устройств, в будущем планируется поддержка скоростей до 10 Гбит/c.

    "Переходники" с SATA на IDE и c IDE на SATA

    Пример контроллера SATA -> IDE

    Существуют платы, позволяющие подключать устройства SATA к IDE -контроллерам и наоборот. Это активные устройства (которые, по сути, имитируют устройство и контроллер в одной микросхеме). Такие устройства требуют питания (обычно 5 или 12 вольт), подключаются к разъемам IDE или Floppy.

    Сравнение ATA и SATA
    Serial ATA (SATA) Параллельный ATA (IDE)
    Теоретическая скорость передачи данных (в течение существования спецификации SATA ) Поколение 1 - 150 МБ/с; Поколение 2 - 300 МБ/с; прогнозируется - 600 МБ/с 133Mб/с
    Режимы передачи PIO - UDMA-6
    Transfer Mode Поколение 1 или поколение 2
    Шлейф 7-контактный SATA Кабель IDE (80 проводников, 40-контактные разъемы)
    Максимальная длина кабеля передачи данных 1 м (39 дюймов) 45,72 cm
    Кабель питания Кабель питания SATA Кабель питания IDE
    Энергопотребление 250 mV 5 В

    Контрольные вопросы.

  • Какие функции выполняет интерфейс ST506/412?
  • Какой стандарт считается расширением ST506/412?
  • Какой интерфейс передаeт биты данных параллельно?
  • Какой интерфейс использует перемычки для выбора режимов Master/Slave?
  • Какие отличительные черты у интерфейсов Fast ATA и EIDE?
  • Какая пропускная способность интерфейса Sata 150?
  • Имеется ли отличие кабеля питания интерфейсов ATA и SATA?
  • Страницы:

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

    Интерфейсы винчестеров

    Интерфейс (от англ. interface - поверхность раздела, перегородка) - совокупность средств и методов взаимодействия между элементами системы.

    ST506/412

    Широкое применение винчестеров в качестве устройств долговременного хранения информации началось после выпуска фирмой Shugart Technology (ныне эта компания именуется Seagate Technology, Inc.) диска ST506 размером 5.25 дюйма. Устройство емкостью 5Мбайт использовало для подключения к компьютеру интерфейсную плату ST506, разработанную в конце 70-х годов компанией Western Digital. Для соединения винчестера с интерфейсной платой использовался 34-проводный плоский кабель, к которому можно было подключить два устройства. Для того, чтобы диски можно было адресовать, часть кабеля перекручивалась (подобно кабелю для подключения дисководов). Кроме того, для обмена данными с каждым из дисков использовался отдельный 20-проводный плоский кабель. Крупным недостатком интерфейса ST506 являлось пошаговое перемещение головок (один шаг на каждую команду перемещения), как это до сих пор происходит в дисководах для работы с гибкими дисками. Более новая модель - ST412 - обеспечивала возможность буферизованного поиска ( buffered seek ), позволяющего одной командой перемещать головки на несколько шагов (например, через весь диск).

    Основным преимуществом винчестеров с интерфейсом ST506/ST412 является их низкая стоимость. Почти вся электроника, ответственная за работу диска, располагалась на интерфейсной плате. Управляющие приводом головок сигналы передавались по общему для двух подключаемых к контроллеру устройств 34-проводному кабелю, а обмен данными с контроллером осуществлялся по 20-проводным плоским кабелям прямо в виде последовательности импульсов, считанных с диска или записываемых на него. Разъемы, используемые для подключения

    RLL/MFM IDC-34
    1 GND 2 Head Sel 8 Выбор головки 8
    2 GND 4 Head Sel 4 Выбор головки 4
    5 GND 6 Write Gate Шлюз записи
    7 GND 8 Seek Complete Сканиров. заверш.
    9 GND 10 Track 0 Дорожка 0
    11 GND 12 Write Fault Отказ при записи
    13 GND 14 Head Sel 1 Выбор головки 1
    15 GND 16 (reserved) зарезервировано
    17 GND 18 Head Sel 2 Выбор головки 2
    19 GND 20 Index Индекс
    21 GND 22 Ready Готовность
    23 GND 24 Step Шаг
    25 GND 26 Drive Sel 1 Выбор диска 1
    27 GND 28 Drive Sel 2 Выбор диска 2
    29 GND 30 Drive Sel 3 Выбор диска 3
    31 GND 32 Drive Sel 4 Выбор диска 4
    33 GND 34 Direction In Направление
    RLL/MFM IDC-20
    1 Диск выбран 11 GND
    2 GND 12 GND
    3 (зарезервирован) 13 Запись данных +
    4 GND 14 Запись данных -
    5 (зарезервирован) 15 GND
    6 GND 16 GND
    7 (зарезервирован) 17 Чтение данных +
    8 GND 18 NRZ Чтение данных -
    9 (зарезервирован) 19 GND
    10 (зарезервирован) 20 GND

    Небольшой набор команд интерфейса ST506/412 затруднял создание дисков с большой емкостью. Почти все диски с таким интерфейсом имели скорость вращения 3600 оборотов в минуту.

    Интерфейс ST506 поддерживает два способа модуляции при записи-воспроизведении данных: MFM (Modified Frequency Modulation - модифицированная частотная модуляция) и RLL (Run Length Limited - кодирование с ограничением длины поля записи).

    Модуляция MFM

    Метод MFM является разновидностью обычной частотной модуляции, широко используемой в радиовещании и связи. Отличие заключается в том, что модифицированная модуляция позволяет обеспечить двухкратное повышение плотности записи данных за счет того, что на диск записываются не все сигналы синхронизации и при записи каждого бита учитывается значение предшествующего бита. За один переход (смену направления) намагниченности можно записать от одного до трех бит данных). Сигналы с головки передаются по кабелю данных в аналоговой форме; данные отделяются от сигналов синхронизации с помощью специального устройства - сепаратора, устанавливаемого на плате контроллера.

    Основным преимуществом MFM -модуляции является простая бинарная форма записываемого на диск сигнала. При записи на дорожку использовались 17 секторов по 512 байт каждый. Теоретический предел скорости обмена с дисками, использующими MFM, составляет около 4Мбит/сек (17секторов*512байт/сектор*8бит*3600об/мин):60сек = 4177920 бит/сек.

    Однако реальная скорость обмена в несколько раз меньше, поскольку для таких дисков фактор чередования (Interleave factor) не равен 1. Это было связано с тем, что контроллер не успевал обработать прочитанные данные до того, как головка перемещалась к следующему сектору. При факторе чередования 1:1 порядок следования секторов на дорожке естественный: 1, 2, 3,...16, 17. При факторе чередования 3:1 секторы на диске имеют следующий порядок: 1, 7, 13, 2,..., 11, 17. Первое число в обозначении коэффициента чередования указывает количество оборотов диска, требуемых для полного прочтения или записи одной дорожки. За счет кэширования записи можно было установить для дисков ST506 фактор чередования 1:1.

    Модуляция RLL

    Другой способ модуляции (2,7 RLL или просто RLL ), предложенный компанией IBM в 1986 году, использует перекодирование исходной информации с введением избыточности. Метод RLL преобразует данные в шестнадцатибитовые слова, позволяющие записывать за один переход состояния намагниченности диска от 2 до 7 бит (эти цифры и включены в название метода). Использование RLL -модуляции предъявляет более высокие требования к качеству поверхности диска и равномерности его вращения. Кроме того, усилители каналов считывания-записи должны иметь несколько иные характеристики, по сравнению с MFM -модуляцией. Винчестеры с интерфейсом S T506/412, использующие метод RLL, как правило, имеют в своем обозначении суффикс R (например, ST157R ). На одну дорожку диска можно записать 26 секторов по 512 байт, что дает теоретическую возможность обмена со скоростью (512*26*8*3600):60=6489760бит/сек.

    Метод RLL был развит впоследствии до возможности записи от 3 до 9 бит за один переход намагниченности ( 3,9 RLL, ARLL, ERLL ), что позволило записывать на дорожку 31 сектор и обеспечило теоретический предел скорости обмена с диском 7618560бит/сек.

    Диски RLL можно без опаски подключать к контроллерам MFM (правда с потерей емкости), обратная же операция в общем случае некорректна. Многие, наверное, помнят такой метод "увеличения" размера диска, практиковавшийся несколько лет назад, - однако он не позволяет обеспечить достаточную надежность хранения данных.

    Сегодня диски с интерфейсом ST506/412 можно встретить только в очень старых компьютерах.

    ESDI

    По мере роста скорости работы компьютеров интерфейс ST506 перестал удовлетворять всем требованиям и в 1985 году был разработан новый стандарт - ESDI, который, по сути, являлся простым расширением возможностей своего предшественника. Кабели, используемые в спецификации ESDI, внешне не отличаются от кабелей ST506, однако сигналы по ним передаются другие.

    ESDI IDC-34
    1 GND 2 Head Sel 3 Выбор головки 3
    3 GND 4 Head Sel 2 Выбор головки 2
    5 GND 6 Write Gate Шлюз записи
    7 GND 8 Config/Stat Data Данные конф/сост.
    9 GND 10 Transfer Ack Запрос обмена
    11 GND 12 Attn Внимание
    13 GND 14 Head Sel 0 Выбор головки 0
    15 GND 16 Sect/Add MK Found
    17 GND 18 Head Sel 1 Выбор головки 1
    19 GND 20 Index Индекс
    21 GND 22 Ready Готовность
    23 GND 24 Trans Req
    25 GND 26 Drive Sel 1 Выбор диска 1
    27 GND 28 Drive Sel 2 Выбор диска 2
    29 GND 30 Drive Sel 3 Выбор диска 3
    31 GND 32 Read Gate Шлюз чтения
    33 GND 34 Command Data
    1 Drive Selected 2 Sect/Add MK Found
    3 Seek Complete 4 Addr Mark Enable
    5 (reserved) 6 GND
    7 Write Clk+ 8 Write Clk-
    9 Cartridge Chng 10 Read Ref Clk+
    11 Read Ref Clk- 12 GND
    13 NRZ Write Data+ 14 NRZ Write Data-
    15 GND 16 GND
    17 NRZ Read Data+ 18 NRZ Read Data-
    19 GND 20 GND

    Длина используемых в интерфейсе ESDI кабелей могла достигать 9 футов (3 метра), сигналы передавались главным образом как синфазные (с общей землей), за исключением данных и синхронизации, для передачи которых использовался дифференциальный метод. Данные передавались через последовательную линию порциями по 16 бит, сопровождаемых битом четности. Обеспечивалась также возможность подтверждения передачи данных.

    Сепаратор в соответствии с новой спецификацией устанавливался непосредственно на плате винчестера и по кабелю данных передавались уже не аналоговые сигналы, а реальные данные в цифровой форме, что позволяло подобрать параметры сепаратора к конкретному типу устройства, поскольку искажения сигналов в кабеле уже не имели значения. Такой метод повышал надежность передачи данных и увеличивал скорость обмена с контроллером до 10Мбит/сек за счет передачи по кабелю цифровых сигналов. Кроме того, интерфейс ESDI обеспечивал возможность использования винчестеров большой емкости и оптических накопителей.

    Интерфейс ESDI обеспечивал три сигнала выбора устройства, что позволяло подключать к нему до 7 накопителей. Сигналы выбора головки позволяли напрямую адресовать до 16 головок, однако специальная команда Select Head Group позволяла использовать до 256 головок (16 групп по 16 головок в каждой).

    SCSI

    Первоначальный вариант интерфейса SCSI (Small Computer System Interface) был предложен в конце 70-х годов Shugart Associates под названием SASI (Shugart Associates System Interface) взамен разработанной компанией IBM системной шины IPI (интеллектуальный периферийный интерфейс). После неудачи в конкурентной борьбе с фирмой IBM этот интерфейс был предложен комитету ANSI X3T9.2 как интерфейс нижнего уровня под названием SCSI. В 1984 году этот комитет закончил разработку спецификации SCSI-1 и в 1986 году она была опубликована в окончательном виде. Этот интерфейс обеспечивал подключение широкого класса периферийных устройств, таких как винчестеры, принтеры, сканеры, стриммеры, приводы CD-ROM и др. SCSI является интерфейсом системного, а не приборного уровня. В отличие от ST506/412 и других приборных интерфейсов с последовательной передачей информации, SCSI передает биты данных параллельно, что обеспечивает существенное повышение скорости обмена данными между устройством и хост-адаптером.

    Интерфейс SCSI используется не только в IBM -совместимых компьютерах, но и семействах Macintosh, SPARC, VAX и др. Одна из причин такого широкого распространения интерфейса SCSI заключается в том, что он не накладывает никаких ограничений на связь между контроллером и периферийным устройством. Шину SCSI можно использовать для связи компьютера с несколькими периферийными устройствами (как внешними, так и внутренними). Более того, допускается совместное использование одного периферийного устройства несколькими компьютерами, подключенными к общей шине SCSI (правда это значительно сложнее сделать, чем написать, но об этом разговор особый). Подключаемые к шине SCSI устройства могут играть роль ведущих ( Initiator ) или ведомых ( Target ), при этом одно и то же устройство может быть ведомым в одних случаях и ведущим - в других. Такое разделение функций устройств позволяет организовать передачу данных с одного периферийного устройства на другое (например, резервное копирование данных с винчестера на стриммерную кассету). Обмен между устройствами по магистрали SCSI происходит в соответствии с протоколом высокого уровня и адресация осуществляется на уровне логических, а не физических (как в ESDI) блоков. Программы для работы со SCSI -устройствами не используют физические характеристики конкретного устройства (число головок, цилиндров и т.п.), а имеют дело с логическими блоками, что дает возможность работы фактически со всеми блочными устройствами.

    Для подключения устройств SCSI используется кабель (как правило плоский) с 50-контактными разъемами (Приложение 3). Возможны как синфазная, так и дифференциальная (с помощью "токовой петли") передача данных по кабелю; при синфазной передаче длина кабеля может достигать 6 м, при дифференциальной - 25 м. Для гарантированной передачи сигналов по магистрали SCSI линию требуется согласовывать с помощью терминаторов (набора резисторов), устанавливаемых по обоим концам шины SCSI.

    Single Ended IDC-50 Male
    1 GND 11 GND 21 GND 31 GND 41 GND
    2 DB0 12 DB5 22 GND 32 ATN 42 - MSG
    3 GND 13 GND 23 GND 33 GND 43 GND
    4 DB1 14 DB6 24 GND 34 GND 44 SEL
    5 GND 15 GND 25 Открыт 35 GND 45 GND
    6 DB2 16 DB7 26 TERMPWR 36 BSY 46 - C/D
    7 GND 17 GND 27 GND 37 GND 47 GND
    8 DB3 18 DBP 28 GND 38 BSY 48 - REQ
    9 GND 19 GND 29 GND 39 GND 49 GND
    10 DB4 20 GND 30 GND 40 RST 50 - I/O
    Differential IDC-50 Male
    1 Открыт 11 +DB4 21 DIFFSENS 31 GND 41 +SEL
    2 GND 12 -DB4 22 GND 32 GND 42 -SEL
    3 +DB0 13 +DB5 23 GND 33 +BSY 43 +C/D
    4 -DB0 14 -DB5 24 GND 34 -BSY 44 -C/D
    5 +DB1 15 +DB6 25 TERMPWR 35 +ACK 45 +REQ
    6 -DB1 16 -DB6 26 TERMPWR 36 -ACK 46 -REQ
    7 +DB2 17 +DB7 27 GND 37 +RST 47 +I/O
    8 -DB2 18 -DB7 28 GND 38 -RST 48 -I/O
    9 +DB3 19 +DBP 29 +ATN 39 +MSG 49 GND
    10 -DB3 20 -DBP 30 -ATN 40 -MSG 50 GND
    Macintosh SCSI (Single Ended)DB-25S Female
    1 -REQ 11 -DB5 21 DB1
    2 -MSG 12 -DB6 22 DB2
    3 -I/O 13 -DB07 23 DB4
    4 -RST 14 GND 24 GND
    5 -ACK 15 -C/D 25 NC(TERMPW)
    6 -BSY 16 GND
    7 GND 17 -ATN
    8 -DB0 18 GND
    9 GND 19 -SEL
    10 -DB3 20 DBP

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

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

    Наименование Разрядность шины Частота шины Пропускная способность Максимальная длина кабеля Максимальное количество устройств
    SCSI 8 бит 5 МГц 5 МБайт/сек 6 м 8
    Fast SCSI 8 бит 10 МГц 10 МБайт/сек 1,5-3 м 8
    Wide SCSI 16 бит 10 МГц 20 МБайт/сек 1,5-3 м 16
    Ultra SCSI 8 бит 20 МГц 20 МБайт/сек 1,5-3 м 5-8
    Ultra Wide SCSI 16 бит 20 МГц 40 МБайт/сек 1,5-3 м 5-8
    Ultra2 SCSI 8 бит 40 МГц 40 МБайт/сек 12 м 8
    Ultra2 Wide SCSI 16 бит 40 МГц 80 МБайт/сек 12 м 16
    Ultra3 SCSI 16 бит 40 МГц DDR 160 МБайт/сек 12 м 16
    Ultra-320 SCSI 16 бит 80 МГц DDR 320 МБайт/сек 12 16

    Протокол команд SCSI

    В терминологии SCSI взаимодействие идет между инициатором и целевым устройством. Инициатор посылает команду целевому устройству, которое затем отправляет ответ инициатору.

    Команды SCSI посылаются в виде блоков описания команды (англ. Command Descriptor Block, CDB ). Длина каждого блока может составлять 6, 10, 12 или 16 байт. В последних версиях SCSI блок может иметь переменную длину. Блок состоит из однобайтового кода команды и параметров команды.

    После получения команды целевое устройство возвращает значение 00h в случае успешного получения, 02h в случае ошибки или 08h в случае, если устройство занято. В случае, если устройство вернуло ошибку, инициатор обычно посылает команду запроса состояния. Устройство возвращает Key Code Qualifier (KCQ) .

    Все команды SCSI делятся на четыре категории: N (non-data) , W (запись данных от инициатора целевым устройством), R (чтение данных) и B (двусторонний обмен данными). Всего существует порядка 60 различных команд SCSI, из которых наиболее часто используются:

  • Test unit ready - проверка готовности устройства, в т.ч. наличия диска в дисководе.
  • Inquiry - запрос основных характеристик устройства.
  • Send diagnostic - указание устройству провести самодиагностику и вернуть результат.
  • Request sense - возвращает код ошибки предыдущей команды.
  • Read capacity - возвращает емкость устройства.
  • Format Unit
  • Read (4 варианта) - чтение.
  • Write (4 варианта) - запись.
  • Write and verify - запись и проверка.
  • Mode select - установка параметров устройства.
  • Mode sense - возвращает текущие параметры устройства.
  • ATA

    Спецификация IDE/ATA была предложена в качестве недорогой альтернативы интерфейсам ESDI и SCSI для персональных компьютеров семейств IBM PC XT/AT. В результате сотрудничества компании Western Digital с Compaq Computer Corporation был разработан интерфейс IDE (Integrated Drive Electronics), называемый также АТА (AT attachment) . Первые промышленные устройства на базе IDE/ATA были выпущены в 1986году. Интерфейс был стандартизован ( ANSI X3T9.2/90-143 ) в 1990г. как ATA (AT Attachment) . Основным отличием нового интерфейса была реализация большинства функций контроллера непосредственно на плате дискового накопителя. Такой подход упростил и удешевил хост-адаптеры, используемые для подключения винчестеров к компьютеру, и позволил обеспечить высокий уровень совместимости устройств разных фирм.

    Используемые устройствами IDE адреса ввода/вывода совпадают с адресами ST506/412, но функции контроллера перенесены на плату управления приводом диска и головок винчестера. Информация о геометрии диска (число головок, цилиндров и секторов) хранится в самом устройстве. Зачастую в BIOS передаются логические параметры диска, не совпадающие с его физическими параметрами, т.е. используется трансляция, что позволяет устанавливать винчестеры в компьютеры со старыми BIOS, не обеспечивающими возможность произвольной установки параметров устройства (в большинстве современных реализаций BIOS такая возможность поддерживается как тип 47 - User Defined ).

    Базовый набор команд интерфейса IDE полностью соответствовал набору команд контроллера WD1002/1003 компании Western Digital, который был использован в компьютере IBM PC AT. При стандартизации интерфейса IDE к 12 базовым командам было добавлено еще столько же. Перенос большинства функций контроллера на плату управления позволяет несколько повысить скорость обмена данными с диском. Как правило диски IDE имеют небольшую встроенную кэш-память (до 256Кб) и позволяют работать с фактором чередования 1:1 (дорожка может быть прочитана целиком за один оборот диска).

    Хост-адаптер для подключения дисков IDE зачастую устанавливается на системной плате (Mother board) или совмещается с контроллером дисководов и портами ввода-вывода (последовательными и параллельным) на специальной, вставляемой в гнездо расширения, плате (мультикарте, как ее зачастую называют). Подключение устройств к хост-адаптеру осуществляется с помощью 40-проводного плоского кабеля, к которому можно присоединить два винчестера. Для корректной адресации устройств один из винчестеров должен быть установлен в режим Master (ведущий), другой - в режим Slave (ведомый). Режим работы диска задается с помощью перемычек, расположенных как правило около сигнального разъема винчестера.

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

    Перемычки для установки режима Master/Slave

    Сравнение дисковых интерфейсов
    Параметр ST506/412 MFM ST506/412 RLL ESDI SCSI IDE/ATA
    Максимальная скорость обмена 5Мбит/сек 7.5Мбит/сек 10/24Мбит/се к 24/40МБайт /сек 10МБайт/се к
    Максимальное количество устройств 4 4 7 56 2
    Максимальное количество устройств в DOS 2 2 2 36 2
    Подключение других устройств - - - + -
    Число секторов на дорожке 17 26 32-36 Не определено Не определено
    Загрузка процессора Все операции ввода -вывода осуществляются с использованием процессора Частичное использование
    Многозадачны й ввод-вывод - + + -[Современны е расширения IDE/ATA поддерживают многозадачный ввод-вывод]
    Автоматическая коррекция ошибок - - + + +
    Низкоуровневое форматирование + + + -

    Современные реализации ATA/IDE

    Предложенный в конце 80-х годов интерфейс ATA (AT Attachment) , известный также под названием IDE (Integrated Drive Electronics) очень быстро завоевал широкую популярность среди производителей и пользователей персональных компьютеров. Основными причинами быстрого и широкого распространения нового интерфейса послужили невысокая цена устройств, простота их установки и эксплуатации, а также высокий уровень совместимости устройств IDE. Спецификация АТА уступает по скорости обмена с дисками и ряду других параметров интерфейсу SCSI, однако для большинства пользователей производительность играет меньшую роль, по сравнению с совместимостью, простотой и стоимостью устройств.

    Ограниченность АТА

    Первоначальная версия стандарта IDE обеспечивала возможность подключения к компьютеру четырех винчестеров и позволяла обмениваться данными с диском на скорости до 10Мбайт/сек, однако реальная скорость ограничивалась прежде всего возможностями самого винчестера. Подключение четырех устройств, предусмотренное спецификацией IDE, в компьютерах семейства IBM PC AT, в спецификации ATA/IDE реализовано не было. Кроме того, совместное использование стандарта ATA и программного интерфейса Int 13 BIOS ограничивало размер дисковых устройств 528Мб. Природу этого ограничения, связанную с форматами чисел, используемых для адресации головок, секторов и цилиндров винчестера ( CHS -адрес) в стандарте IDE и BIOS, можно понять из приведенной ниже таблицы и рисунка 3, иллюстрирующего взаимодействие операционной системы с диском IDE.

    BIOS IDE Результат
    Максимальное число секторов на дорожке 63 255 63
    Максимальное число головок 255 16 16
    Максимальное число цилиндров 1024 65536 1024
    Максимальный размер диска 8.4Гб 136.9Гб 528Мб

    Взаимодействие диска IDE с операционной системой.

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

    Присущие интерфейсу IDE/ATA ограничения тормозили развитие недорогих компьютерных систем, рассчитанных на массового пользователя, в связи с чем целый ряд фирм предпринял попытки расширения возможностей классического IDE. Наибольших успехов на этом пути добилась компания Western Digital, разработавшая спецификацию Enhanced IDE (EIDE) , позволяющую использовать диски, размер которых превышает 528 Мб, и обеспечившую реальную возможность подключения к компьютеру до четырех устройств IDE (не только винчестеров, но и приводов CD-ROM или стриммеров).

    Другим интересным вариантом развития интерфейса IDE является технология Fast ATA, разработанная компанией Seagate Technology при поддержке фирмы Quantum. Эта технология направлена в первую очередь на повышение скорости обмена данными с дисковыми устройствами и не поддерживает возможность подключения CD-ROM или стриммеров, но обеспечивает более высокий уровень совместимости за счет соответствия широко распространенным промышленным стандартам.

    Enhanced IDE

    Технология Enhanced IDE компании Western Digital была разработана в результате анализа потребностей современного рынка ПК. В 1984 году компания Western Digital создала контроллеры дисководов ( WD1002 ) и винчестеров ( ST506 ), которые были использованы фирмой IBM при разработке компьютера IBM PC AT. Успех архитектуры АТ привел к значительному расширению рынка IBM -совместимых ПК и сделал контроллеры Western Digital стандартом de facto.

    В процессе становления рынка персональных компьютеров фирма Western Digital пришла к выводу о необходимости интеграции электроники контроллера АТ и дискового устройства. В результате сотрудничества с Compaq Computer Corporation был разработан интерфейс IDE (Integrated Drive Electronics) , называемый также АТА (AT Bus attachment) . Первые промышленные устройства на базе IDE/ATA были выпущены в 1986 году.

    Продолжая лидировать в сфере IDE -устройств, компания Western Digital предложила расширение интерфейса IDE. Новая спецификация - Enhanced IDE повышает скорость обмена с диском, допускает применение более скоростных дисков и обеспечивает возможность установки в компьютере до четырех устройств IDE. Кроме того, Enhanced IDE позволяет подключать к контроллеру не только винчестеры, но и другие устройства (приводы CD-ROM, стриммеры), поддерживающие спецификацию ATAPI (AT Attachment Packet Interface) . Эта спецификация определяет интерфейс с приводами CD-ROM и другими недисковыми устройствами, позволяющий использовать стандартные контроллеры и кабели. Стандарт ATAPI получил широкую поддержку среди производителей CD-ROM -устройств и разработчиков операционных систем, что еще более расширило сферу распространения интерфейса IDE/ATA.

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

  • IDE поддерживает только два винчестера, а SCSI обеспечивает возможность подключения большого количества блочных устройств различных типов (принтеры, CD-ROM, стриммеры и др.);
  • размер дисков IDE не может превышать 528Мб, поскольку для доступа к диску используется интерфейс Int 13 BIOS, тогда как SCSI не ограничивает размер диска;
  • IDE обеспечивает скорость обмена с диском 2-3 Мб/сек, а SCSI - 10 или 20Мб/сек (Fast/Wide) .
  • Технология Enhanced IDE позволяет избавиться от основных ограничений стандарта IDE/ATA:

  • предельный размер диска 528Мб;
  • малая скорость обмена с диском;
  • поддержка только двух устройств;
  • невозможность подключения приводов CD-ROM и стриммеров.
  • Компоненты технологии EIDE

    Как показано на рисунке, технология Enhanced IDE включает в себя четыре основных компоненты, реализуемые совместно в периферийных устройствах, контроллерах EIDE, BIOS и операционной системе:

  • Использование винчестеров размером более 528Мб. Эта возможность обусловлена внесенными в BIOS изменениями, позволяющими адресовать большие диски. Для работы с дисками более 528Мб требуется поддержка со стороны винчестера, BIOS и операционной системы. Винчестер должен поддерживать спецификацию ATA (этому требованию удовлетворяет большинство современных винчестеров). BIOS также должна поддерживать спецификацию ATA ; большинство производителей системных плат и разработчиков BIOS уже поддерживают этот режим. Может потребоваться поддержка работы с большими дисками и со стороны операционной системы. Windows 3.1 не полностью соответствует ATA, поэтому приходится использовать специальные драйверы (Windows "32-bit disk access"), обычно поставляемые вместе с контроллерами EIDE. Большинство 32-разрядных операционных систем (таких, как OS/2) изначально поддерживают работу с большими дисками.
  • Ускоренный обмен данными основан на использовании скоростных режимов программируемого ввода-вывода ( PIO mode 3 ) и прямого доступа к памяти ( DMA mode 1 ). Эти режимы обеспечивают скорость обмена 11.1 и 13.3 Мб/сек, соответственно. Для реализации скоростного обмена требуется поддержка со стороны винчестера и BIOS. BIOS должна поддерживать один из скоростных режимов обмена с диском ( PIO mode 3 или DMA mode 1 ), как правило это режим PIO. Со стороны дискового устройства также должна обеспечиваться поддержка скоростного обмена. Эту возможность обеспечивает большинство современных винчестеров (в том числе диски Fast ATA ). Скоростные режимы обмена позволяют полнее реализовать возможности дисковых контроллеров, использующих широкополосную локальную шину VESA или PCI.
  • Поддержка двух портов ATA. Для обеспечения этой возможности используются зарезервированные для второго контроллера адреса портов ввода-вывода и прерывание IRQ15. Для реализации этой возможности требуется поддержка со стороны контроллера (хост-адаптера), BIOS и операционной системы. К самим устройствам (винчестерам, приводам CD-ROM или стриммерам) не предъявляется никаких дополнительных требований. Контроллер должен обеспечивать возможность установки адресов второго порта (это реализовано отнюдь не во всех современных моделях). Не все BIOS поддерживают возможность использования четырех устройств IDE, однако современные разработки включают этот режим. Важную роль играет поддержка использования четырех устройств со стороны операционной системы. Эта возможность реализована в большинстве 32-разрядных ОС и в последних версиях DOS.
  • Возможность подключения приводов CD-ROM и стримеров. Этот режим является недорогой альтернативой SCSI. Для обеспечения такой возможности требуется требуется поддержка нескольких новых команд. Спецификация ATAPI (ATA Packet Interface) , находящаяся в стадии разработки, содержит описание новых команд. Для обеспечения возможности подключения к хост-адаптеру недисковых устройств требуется поддержка спецификации ATAPI со стороны BIOS, хост-адаптера, операционной системы и самих периферийных устройств. В настоящее время большинство устройств CD-ROM уже использует интерфейс IDE/ATAPI для подключения ко второму порту современных контроллеров. Очевидно, что при таком обилии вариантов расширения возможностей IDE отнюдь не все устройства, рекламируемые как "Enhanced", поддерживают все четыре режима, добавленные в спецификацию Enhanced IDE. Не следует забывать также о том, что для обеспечения полной поддержки EIDE, этой спецификации должны удовлетворять BIOS, хост-адаптер, операционная система и, наконец, сами периферийные устройства.
  • Использование дисков большой емкости

    Ограничение размера винчестеров с интерфейсом IDE/ATA (528 Мб) является результатом совместного использования стандарта IDE и программного интерфейса Int 13 BIOS. Технология Enhanced IDE дает возможность внести в BIOS изменения, позволяющие избавиться от этого ограничения.

    Природа ограничения размера дисков связана с форматом (числом бит), используемым для задания номеров головок, цилиндров и секторов в интерфейсах Int 13 и IDE ( CHS -адресация). Поскольку оба интерфейса используют различные форматы, их совместное применение не позволяет работать с дисками размером более 528 мегабайт. В таблице приведены форматы чисел, используемых для нумерации в BIOS и IDE:

    Число BIOS IDE Результат
    секторов на дорожке 63 255 63
    головок 255 16 16
    цилиндров 1024 65536 1024
    Максимальный размер 8.4Гб 136.9Гб 528Мб

    Существует два способа преодолеть ограничение размера диска. Первый способ заключается в использовании трансляции адресов CHS (цилиндр-головка-сектор) - пересчета реальных значений в фиктивные, удовлетворяющие ограничениям BIOS. Контроллер и BIOS используют в этом случае разную геометрию для адресации данных на диске. Если диск содержит 1500 секторов и имеет 16 головок, то в результате трансляции BIOS будет воспринимать его как устройство с 750 цилиндрами и 32 головками.

    Технология Enhanced IDE использует другой метод, называемый логической адресацией блоков ( LBA - Logical Block Address ). В этом случае используется сквозная нумерация секторов и адрес CHS преобразуется в одно 28-битовое число, используемое для нумерации секторов - LBA -адрес. Метод LBA обеспечивает более эффективный способ работы с большими дисками за счет простоты преобразования адреса. Кроме того, этот способ представляется более эффективным при разработке новых операционных систем. Схема адресации с использованием LBA была впервые применена фирмой Western Digital в конце 1993 года, позволив создать диск IDE размеров 540Мб (модель AC2540 ).

    Повышение скорости обмена

    Шина ISA обеспечивает возможность обмена данными с диском на скорости 2-3Мб/сек. По сравнению со скоростями SCSI-контроллеров (5, 10 и 20Мб/сек), эта скорость слишком мала. До недавнего времени ограничение скорости обмена не играло существенной роли, поскольку сами устройства IDE не позволяли считывать или записывать данные со скоростью выше 5 Мбит/сек. По мере совершенствования дисковых технологий скорость контроллера 2-3Мб/сек начала все-таки ограничивать возможности винчестеров IDE. Для повышения производительности дисковой подсистемы компьютеров пришлось использовать буферную память, устанавливаемую на плате винчестера или хост-адаптера. Современные винчестеры могут обеспечивать скорость чтения/записи до 48 Мбит/сек и простая буферизация для повышения производительности работы будет слишком дорогим решением.

    Скоростные режимы PIO

    Для повышения скорости обмена данными в современных ПК широко используются локальные шины. Локальная шина VESA была разработана для ускорения вывода изображений на экран, а в 1992 году был выпущен первый контроллер IDE с шиной VLB (VESA Local Bus) , обеспечивший некоторый рост скорости обмена с диском. Несколько позже была разработана спецификация локальной шины PCI. Контроллеры IDE с локальной шиной VLB поддерживают высокую скорость обмена между диском и буфером, но и они не могут сравниться с контроллерами Fast-SCSI (10Мб/сек.) по причине использования "слепого" обмена в режиме программируемого ввода-вывода ( PIO ). "Слепой" метод PIO основан на том, что контроллер (ведущее устройство) запрашивает данные у диска (ведомое устройство) или передает их ему. При таком режиме используется только часть полосы пропускания шины, что не позволяет добиться существенного роста скорости контроллеров IDE.

    Enhanced IDE включает операции, называемые "управление потоком с использованием IORDY ", которые позволяют диску включать пакетный режим передачи для 100% использования полосы пропускания шины. Режим управления потоком передает инициативу устройству (диску) и позволяет избавиться от неэффективных "слепых" режимов PIO за счет установки полосы пропускания контроллера в соответствии с возможностями винчестера. Это означает, что в тех случаях, когда доступна вся полоса, винчестер будет управлять обменом данными с хост-адаптером.

    Режим 3 PIO с периодом тактирования 180нсек. обеспечивает скорость обмена 11Мб/сек., превышающую скорость Fast-SCSI (10Мб/сек.). Управление потоком со стороны диска включается контроллером с помощью команды Set Features, в результате чего такой обмен поддерживается одновременно и диском, и контроллером. Винчестер AC25400 (540Мб) выпущенный в 1993 году фирмой Western Digital, поддерживал управление потоком с помощью IORDY, реализованное с помощью специализированной микросхемы-контроллера. Основные возможности этого контроллера позднее были включены в стандартные наборы микросхем IDE.

    Режимы DMA

    Хотя режимы программируемого ввода-вывода ( PIO ) являются стандартным методом, поддерживаемым в серийных устройствах IDE, и отличаются высокой совместимостью, существуют и другие способы повышения скорости обмена с винчестерами. Метод прямого доступа к памяти ( DMA ) основан на передаче данных между диском и памятью компьютера без использования центрального процессора CPU. Тип B для DMA определен в спецификации EISA и обеспечивает обмен со скоростью 4Мб/сек. Этот метод дает преимущество по сравнению со стандартной скоростью для шины ISA, но значительно уступает Fast-SCSI.

    С развитием технологии локальных шин в спецификации PCI был предложен новый вариант обмена с использованием DMA (тип F), обеспечивающий скорость 8.33 и 6.67Мб/сек. В соответствии с возможностями существующих микросхем была предложена спецификация DMA Mode 1 с циклом 150 нсек., обеспечивающая скорость обмена 13Мб/сек. за счет передачи нескольких слов за один запрос. Комплекты микросхем с поддержкой DMA типа B ( EISA ) и типа F ( PCI ) поставляются с конца 1993 года.

    Сравнение DMA и PIO

    Режимы PIO в дисковых контроллерах IDE получили более широкое распространение по сравнению с режимами DMA. По этой причине прерывание BIOS Int 13 и драйверы устройств операционных систем поддерживают режим PIO, а не DMA. Это означает, что для использования режимов DMA потребуется замена BIOS и драйверов устройств.

    Технология Enhanced IDE компании Western Digital обеспечивает возможность выбора между режимами PIO с управлением потоком через IORDY (mode 3) и DMA (тип B или F), реализованными с помощью драйверов.

    Увеличение числа устройств

    В оригинальном IBM PC AT была зарезервирована поддержка двух контроллеров для работы с винчестерами и каждый из этих контроллеров позволял подключить два диска. Однако BIOS и драйверы операционных систем не поддерживали использование второго контроллера, что ограничивало возможности дисковой подсистемы ПК. Сегодняшние операционные системы предоставляют возможность использовать в компьютере все четыре устройства IDE (два порта). Добавление второго порта IDE на плату хост-адаптера почти не увеличивает стоимости последнего. Большинство микросхем, используемых для изготовления контроллеров уже содержат второй порт и устройство декодирования адреса, поэтому стоимость расширения возможностей контроллера фактически сводится к стоимости установке на плате дополнительного 40-контактного разъема для подключения кабеля. Расширение дисковой системы компьютера до 4 устройств с помощью новых контроллеров IDE экономически более эффективно по сравнению с использованием устройств SCSI.

    Технология Enhanced IDE компании Western Digital позволяет BIOS определить второй контроллер по номеру диска, переданному прерыванию Int 13. DOS версии 3.30 и выше позволяет использовать в компьютере до семи устройств, поэтому для поддержки дополнительных дисков IDE требуется лишь изменить BIOS, чтобы обеспечить возможность использования второго канала IDE. Операционные системы типа OS/2 и Windows NT позволяют использовать четыре устройства IDE и со старыми BIOS; Novell NetWare позволяет устанавливать в компьютер четыре контроллера IDE, к которым можно подключить восемь устройств.

    Подключение устройств ATAPI

    Второй порт IDE не только позволяет увеличить число дисков, но и обеспечивает возможность подключения устройств, не являющихся винчестерами - например, приводов CD-ROM или стриммеров. Подключение медленных устройств типа CD-ROM ко второму порту обеспечивает возможность работы винчестера без задержек даже при отсутствии раздельного тактирования устройств (при отсутствии раздельного тактирования скорость обмена с подключенными к одному порту устройствами определяется более медленным из них).

    Компания Western Digital разработала спецификацию ATAPI (ATA Packet Interface) для подключения к контроллеру IDE новых устройств хранения, подобных приводам CD-ROM и стриммерам. В традиционной компьютерной архитектуре использовался механизм переноса данных, основанный на регистрах. Современные варианты архитектуры используют механизм передачи на основе пакетов. ATAPI является расширением стандарта IDE, обеспечивающим возможность работы с пакетами. Спецификация ATAPI добавляет к IDE единственную новую команду, расширяющую функции контроллера, и две новых команды адресации.

    EIDE в сравнении со стандартным ATA

    Современные технологии устройств и контроллеров IDE обеспечивают им возможность успешной конкуренции со стандартом SCSI. IDE обеспечивает хорошую совместимость и простоту использования наряду с невысокой ценой. Кроме того, современные варианты IDE обеспечивают не менее высокую скорость, чем SCSI (проигрывая только Fast/Wide SCSI ). Существенна также возможность подключения недисковых устройств к современным контроллерам ATA/IDE.

    В таблице приведены сравнительные данные интерфейсов IDE и Enhanced IDE:

    Стандартный ATA Enhanced IDE
    Поддерживает только два диска Поддерживает четыре диска при двухканальном контроллере и допускает дальнейшее расширение
    Может использоваться только для подключения винчестеров Обеспечивает возможность подключения устройств ATAPI (CD-ROM и стриммеры)
    Емкость диска не может превышать 528Мб в результате совместного использования BIOS Int 13 и спецификации IDE. Адресация LBA (Linear Block address) позволяет использовать диски размером до 8.4Гб
    Скорость обмена не может превышать 2-3 Мб/сек. В режиме 3 PIO и режиме 1 DMA скорость обмена может достигать 13.3Мб/сек.
    Версии стандарта ATA, скорость передачи и свойства
    Стандарт Другие названия Добавлены режимы передачи(MБ/с) Максимально поддерживаемый размер диска Другие свойства ANSI Reference
    ATA-1 ATA, IDE PIO 0,1,2 (3.3, 5.2, 8.3) Single-word DMA 0,1,2 (2.1, 4.2, 8.3) Multi-word DMA 0 (4.2) up to 137 GB 28-bit LBA X3.221-1994 (obsolete since 1999)
    ATA-2 EIDE, Fast ATA, Fast IDE, Ultra ATA PIO 3,4: (11.1, 16.6) Multi-word DMA 1,2 (13.3, 16,6) X3.279-1996 (obsolete since 2001)
    ATA-3 EIDE S.M.A.R.T., Security X3.298-1997 (obsolete since 2002)
    ATA/ATAPI-4 ATAPI-4, ATA-4, Ultra ATA/33 Ultra DMA 0,1,2 (16.7, 25.0, 33.3) aka Ultra-DMA/33 Support for CD-ROM, etc., via ATAPI packet commands NCITS 317-1998
    ATA/ATAPI-5 ATA-5, Ultra ATA/66 Ultra DMA 3,4 (44.4, 66.7) aka Ultra DMA 66 80-wire cables NCITS 340-2000
    ATA/ATAPI-6 ATA-6, Ultra ATA/100 UDMA 5 (100) aka Ultra DMA 100 up to 144 PB 48-bit LBA Automatic Acoustic Management NCITS 347-2001
    ATA/ATAPI-7 ATA-7, UltraATA/133 UDMA 6 (133) aka Ultra DMA 133 SATA/150 SATA 1.0, Streaming feature set, long logical/physicalsector feature set for non-packet devices NCITS 361-2002
    ATA/ATAPI-8 ATA-8 in progress

    Спецификация Fast ATA разработана компанией Seagate Technology и поддержана фирмой Quantum и еще рядом компаний. Это расширение стандарта IDE/ATA преследует цель увеличения емкости винчестеров и скорости обмена между диском и программами. К настоящему моменту существует два варианта спецификации Fast ATA и Fast ATA-2. Винчестеры, соответствующие Fast ATA, обеспечивают высокую скорость обмена за счет реализации скоростных режимов PIO mode 3 (11.1 Мб/сек) или Multiword DMA mode 1 (13.3 Мб/сек). Выбор конкретного режима предоставляется производителю устройства. Fast ATA-2 поддерживает PIO mode 4 или Multiword DMA mode 2 (пока не реализован "в железе"), обеспечивающие скорость обмена 16.6 Мб/сек.

    Для обеспечения возможности использования дисков, размер которых превышает 528Мб, используется режим трансляции параметров диска; реальные адреса CHS (цилиндр-головка-сектор) пересчитываются в фиктивные, удовлетворяющие ограничениям BIOS. Контроллер и BIOS используют в этом случае разную геометрию для адресации данных на диске. Если диск содержит 2000 секторов и имеет 16 головок, то в результате трансляции BIOS будет воспринимать его как устройство с 1000 цилиндров и 32 головками.

    Трансляция параметров диска

    Технология Fast ATA основана на признанных промышленных стандартах, что обеспечивает ей высокий уровень совместимости со старыми контроллерами и дисками. Протоколы обмена данными соответствуют официальному документу АТА-2 (Ref: 9048D) .

    Сравнение Fast ATA и EIDE

    Режимы быстрого обмена данными ( PIO 1-4 и DMA 0-2 ) являются краеугольным камнем технологий Fast ATA и EIDE.

    Термин Fast ATA был введен компанией Seagate и поддерживается ею совместно с фирмой Quantum; термин Enhanced IDE использует компания Western Digital.

    EIDE поддерживает режимы ускоренного обмена наряду с:

  • режимом LBA ;
  • возможностью использования четырех устройств ATA (второй порт);
  • трансляцией, позволяющей использовать диски с числом цилиндров, превышающим 1024 ( WD EBIOS );
  • поддержкой приводов CD-ROM и стриммеров через контроллер ATA (ATAPI) .
  • Fast ATA и Fast ATA-2 также поддерживают быстрый обмен вместе с:

  • командами множественного чтения/записи;
  • режимом LBA
  • Различие между этими двумя схемами заключается главным образом в возможностях EIDE. Эта спецификация включает множество аспектов технологии дисков и драйверов, которые еще не полностью реализованы "в железе". Многие устройства могут называть "Enhanced", даже если они не поддерживают всех возможностей EIDE. Это может привести к затруднениям при покупке.

    Термин Fast ATA-2 также определен недостаточно четко. Эта спецификация предполагает использование PIO mode 4 и DMA mode 2 (16MB/s), тогда как Fast ATA использует только PIO mode 3 (11MB/s) и DMA mode 1 (13MB/s). Обе спецификации полностью совместимы со стандартом ATA-2, и Fast ATA-2 следует понимать как [Fast ATA]-2, а не Fast [ATA-2] .

    SATA

    SATA (англ. Serial ATA) - последовательный интерфейс обмена данными с накопителями информации. SATA является развитием параллельного интерфейса ATA (IDE) , который после появления SATA был переименован в PATA (Parallel ATA) .

    SATA/150

    Первоначально стандарт SATA предусматривал работу шины на частоте 1,5 ГГц, обеспечивающей пропускную способность приблизительно в 1,2 Гбит/с (150 МБ/с). (20%-я потеря производительности объясняется использованием системы кодирования 8B/10B, при которой на каждые 8 бит полезной информации приходится 2 служебных бита). Пропускная способность SATA/150 незначительно выше пропускной способности шины Ultra ATA (UDMA/133) . Главным преимуществом SATA перед PATA является использование последовательной шины вместо параллельной. Несмотря на то, что последовательный способ обмена принципиально медленнее параллельного, в данном случае это компенсируется возможностью работы на более высоких частотах за счет большей помехоустойчивости кабеля. Это достигается меньшим числом проводников и объединением информационных проводников в две витые пары, экранированные заземленными проводниками.

    SATA/300

    Стандарт SATA/300 работает на частоте 3 ГГц, обеспечивает пропускную способность до 2,4 Гбит/с (300 МБ/с). Впервые был реализован в контроллере чипсета nForce 4 фирмы "NVIDIA". Часто стандарт SATA/300 называют SATA II или SATA 2.0. Теоретически устройства SATA/150 и SATA/300 должны быть совместимы (как контроллер SATA/300 с устройством SATA/150, так и контроллер SATA/150 с устройством SATA/300 ) за счет поддержки согласования скоростей (в меньшую сторону), однако для некоторых устройств и контроллеров требуется ручное выставление режима работы (например, на НЖМД фирмы Seagate, поддерживающих SATA/300, для принудительного включения режима SATA/150 предусмотрен специальный джампер).

    ATA/600

    Спецификация SATA Revision 3.0 предусматривает возможность передачи данных на скорости до 6 Гбит/с (600 МБ/с). В числе улучшений SATA Revision 3.0 по сравнению с предыдущей версией спецификации, помимо более высокой скорости, можно отметить улучшенное управление питанием. Также будет сохранена совместимость, как на уровне разъемов и кабелей SATA, так и на уровне протоколов обмена. Кстати, консорциум SATA-IO предостерегает от применения для обозначения поколений SATA доморощенных терминов вроде SATA III, SATA 3.0 или SATA Gen 3. Полное правильное название спецификации - SATA Revision 3.0 ; название интерфейса - SATA 6 Gb/s.

    Описание SATA

    SATA использует 7-контактный разъем вместо 40-контактного разъема у PAT A. SATA -кабель имеет меньшую площадь, за счет чего уменьшается сопротивление воздуху, обдувающему комплектующие компьютера, упрощается разводка проводов внутри системного блока.

    SATA -кабель за счет своей формы более устойчив к многократному подключению. Питающий шнур SATA так же разработан с учетом многократных подключений. Разъем питания SATA подает 3 напряжения питания: +12 В, +5 В и +3,3 В; однако современные устройства могут работать без напряжения +3,3 В, что дает возможность использовать пассивный переходник со стандартного разъема питания IDE на SATA. Ряд SATA устройств поставляется с двумя разъемами питания: SATA и Molex.

    Стандарт SATA отказался от традиционного для PATA подключения по два устройства на шлейф; каждому устройству полагается отдельный кабель, что снимает проблему невозможности одновременной работы устройств, находящихся на одном кабеле (и возникавших отсюда задержек), уменьшает возможные проблемы при сборке (проблема конфликта Slave/Master устройств для SATA отсутствует), устраняет возможность ошибок при использовании нетерминированных PATA -шлейфов.

    Стандарт SATA предусматривает горячую замену устройств и функцию очереди команд ( NCQ, начиная с SATA/300 ).

    SATA устройства используют два разъема: 7-контактный (подключение шины данных) и 15-контактный (подключение питания). Стандарт SATA предусматривает возможность использовать вместо 15-контактного разъема питания стандартный 4-контактный разъем Molex. Использование одновременно обоих типов силовых разъемов может привести к повреждению устройства.

    G - заземление (англ. Ground )

    R - зарезервировано

    D1+,D1-,D2+,D2 - - два канала передачи данных (от контроллера к устройству и от устройства к контроллеру соответственно). Для передачи сигнала используется технология LVDS, провода каждой пары ( D1+, D1- и D2+, D2- ) являются экранированными витыми парами.

    eSATA

    eSATA (External SAT A) - интерфейс подключения внешних устройств, поддерживающий режим "горячей замены" (англ. Hot-plug ). Был создан несколько позже SATA (в середине 2004). Основные особенности eSATA:

    Разъемы менее хрупкие и конструктивно рассчитаны на большее число подключений(~9000).

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

    Длина кабеля увеличена до 2 м (по сравению с 1 м у SAT A).

    Средняя практическая скорость передачи данных выше, чем у USB или IEEE 1394.

    Существенно меньше нагружается центральный процессор. Уменьшены требования к сигнальным напряжениям по сравнению с SATA.

    SAS (Serial Attached SCSI)

    НЖМД с интерфейсом SAS: слева НЖМД типоразмера 2,5 дюйма, справа - типоразмера 3,5 дюйма

    Serial Attached SCSI (SAS) - компьютерный интерфейс, разработанный для обмена данными с такими устройствами, как жесткие диски, накопители на оптическом диске и т. д. SAS использует последовательный интерфейс для работы с непосредственно подключаемыми накопителями (англ. Direct Attached Storage (DAS) devices ). SAS разработан для замены параллельного интерфейса SCSI и позволяет достичь более высокой пропускной способности, чем SCSI ; в то же время SAS совместим с интерфейсом SATA. Хотя SAS использует последовательный интерфейс в отличие от параллельного интерфейса, используемого традиционным SCSI, для управления SAS -устройствами по-прежнему используются команды SCSI. Протокол SAS разработан и поддерживается комитетом T10. SAS поддерживает передачу информации со скоростью до 3 Гбит/с; ожидается, что к 2010 году скорость передачи достигнет 10 Гбит/с.

    Типичная система с интерфейсом SAS состоит из следующих компонентов:

  • Инициаторы (англ. Initiators)

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

  • Целевые устройства (англ. Targets)

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

  • Подсистема доставки данных (англ. Service Delivery Subsystem)

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

  • Расширители (англ. Expanders )

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

  • Сравнение SAS и параллельного SCSI

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

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

    В отличие от SCSI, SAS не нуждается в терминации шины пользователем.

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

    SAS поддерживает большое количество устройств (> 16384), в то время как интерфейс SCSI поддерживает 8, 16, или 32 устройства на шине.

    SAS поддерживает высокие скорости передачи данных (1,5, 3,0 или 6,0 Гбит/с). Такая скорость может быть достигнута при передаче информации на каждом соединении инициатор-целевое устройство, в то время как на шине SCSI пропускная способность шины разделена между всеми подключенными к ней устройствами.

    SAS поддерживает подключение устройств с интерфейсом SATA.

    SAS использует команды SCSI для управления и обмена данными с целевыми устройствами.

    Сравнение SAS и SATA

    SATA-устройства идентифицируются номером порта контроллера интерфейса SATA, в то время как устройства SAS идентифицируются их WWN -идентификаторами ( WWN - англ. World Wide Name ).

    Устройства SATA версии 1 не поддерживают очередей команд, в то время как устройства SAS поддерживают теггированные очереди команд (англ. Tagged Command Queuing ). В то же время, устройства SATA версии 2 поддерживают англ. Native Command Queuing (NCQ) .

    SATA использует набор команд ATA и поддерживает жесткие диски и накопители на оптическом диске, в то время как SAS поддерживает более широкий набор устройств, в том числе жесткие диски, сканеры, принтеры и др.

    Аппаратура SAS поддерживает связь с целевыми устройствами по нескольким независимым линиям, что повышает отказоустойчивость системы. Интерфейс SATA версии 1 такой возможности не имеет. В то же время, интерфейс SATA версии 2 использует дубликаторы портов для достижения аналогичной возможности.

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

    Выявление ошибок и обработка ошибочных ситуаций определено в SAS гораздо лучше чем в SATA.

    Разъемы

    Некоторые версии разъемов SAS значительно меньше разъемов традиционного интерфеса SCSI, что позволяет использовать разъемы SAS для подключения компактных накопителей размером 2,5 дюйма.

    Существует несколько вариантов разъемов SAS:

    SFF 8482 - вариант, механически совместимый с разъемом интерфейса SATA. За счет этого возможно подключать устройства SATA к контроллерам SAS. Подключить же SAS -устройство к интерфейсу SATA - не получится, этому препятствует отсутствие посередине разъема специально выреза-ключа (см. изображение разъема в таблице ниже);

    SFF 8484 - внутренний разъем с плотной упаковкой контактов; позволяет подключить до 4 устройств;

    SFF 8470 - разъем с плотной упаковкой контактов для подключения внешних устройств (разъем такого типа применяется в интерфейсе Infiniband, а кроме того, может использоваться для подключения внутренних устройств); позволяет подключить до 4 устройств;

    SFF 8087 - уменьшенный разъем Molex iPASS, содержит разъем для подключения до 4 внутренних устройств; поддерживает скорость 10 Гбит/с;

    SFF 8088 - уменьшенный разъем Molex iPASS, содержит разъем для подключения до 4 внешних устройств; поддерживает скорость 10 Гбит/с.

    Изображение Кодовое название Также известен как Внеш./внутр. К-во линий К-во устр-в Комментарий
    SFF 8482 SATA разъeм Внутренний 1 Форм-фактор, совместимый с SATA -устройствами: позволяет SATA -устройствам соединяться с SAS -контроллером или планкой SAS -разъeмов, что устраняет необходимость в дополнительном SATA контроллере для подключения SATA -устройств типа DVD -рекордеров. Однако жeсткие диски с интерфейсом SAS не могут подключаться к шине SATA, поэтому их физический разъeм имеет "ключ", не позволяющий подключение к шине SATA. Изображeнный на рисунке разъeм является разъeмом "дисковой" стороны интерфейса.
    SFF 8484 Внутренний 32 (19) 4 (2) Разъ?м с высокой плотностью контактов; в стандарте SFF определены разъeмы для подключения 2 или 4 устройств.
    SFF 8485 Определяет SGPIO (расширение стандарта SFF 8484 ) - последовательное соединение, обычно используемое для подключения светодиодных индикаторов.
    SFF 8470 Разъeм типа Infiniband Внешний 32 4 Внешний разъeм с высокой плотностью контактов (также может использоваться в качестве внутреннего разъeма).
    SFF 8087 Внутренний мини- SAS Внутренний 4 Внутренний разъeм типа Molex iPASS уменьшeнной ширины с подключением до 4-х устройств, в будущем планируется поддержка скоростей до 10 Гбит/с.
    SFF 8088 Внешний мини- SAS Внешний 32 4 Внешний разъeм типа Molex iPASS уменьшeнной ширины с подключением до 4-х устройств, в будущем планируется поддержка скоростей до 10 Гбит/c.

    "Переходники" с SATA на IDE и c IDE на SATA

    Пример контроллера SATA -> IDE

    Существуют платы, позволяющие подключать устройства SATA к IDE -контроллерам и наоборот. Это активные устройства (которые, по сути, имитируют устройство и контроллер в одной микросхеме). Такие устройства требуют питания (обычно 5 или 12 вольт), подключаются к разъемам IDE или Floppy.

    Сравнение ATA и SATA
    Serial ATA (SATA) Параллельный ATA (IDE)
    Теоретическая скорость передачи данных (в течение существования спецификации SATA ) Поколение 1 - 150 МБ/с; Поколение 2 - 300 МБ/с; прогнозируется - 600 МБ/с 133Mб/с
    Режимы передачи PIO - UDMA-6
    Transfer Mode Поколение 1 или поколение 2
    Шлейф 7-контактный SATA Кабель IDE (80 проводников, 40-контактные разъемы)
    Максимальная длина кабеля передачи данных 1 м (39 дюймов) 45,72 cm
    Кабель питания Кабель питания SATA Кабель питания IDE
    Энергопотребление 250 mV 5 В

    Контрольные вопросы.

  • Какие функции выполняет интерфейс ST506/412?
  • Какой стандарт считается расширением ST506/412?
  • Какой интерфейс передаeт биты данных параллельно?
  • Какой интерфейс использует перемычки для выбора режимов Master/Slave?
  • Какие отличительные черты у интерфейсов Fast ATA и EIDE?
  • Какая пропускная способность интерфейса Sata 150?
  • Имеется ли отличие кабеля питания интерфейсов ATA и SATA?
  • Вернуться к учебному плану