Автор работы: Пользователь скрыл имя, 09 Января 2012 в 21:47, реферат
Стандарт EIDE (англ. Enhanced IDE — «расширенный IDE»), появившийся вслед за IDE, позволял использование приводов ёмкостью, превышающей 528 Мб (504 МиБ), вплоть до 8,4 Гб. Хотя эти аббревиатуры возникли как торговые, а не официальные названия стандарта, термины IDE и EIDE часто употребляются вместо термина ATA.
SATA (Serial ATA) — последовательный интерфейс обмена данными с накопителями информации. SATA является развитием параллельного интерфейса ATA (IDE).
Введение
Преимущества интерфейса SATA над PATA
Обратная совместимость SATA и PATA
Общие данные интерфейса SATA
Физический уровень
Канальный уровень
Транспортный и прикладной уровни
Перспективы развития
Используемая литература
При кодировании 5b/6b для 32 возможных 5-битных комбинаций на входе существует 46 6-битных возможных комбинаций на выходе (не 32 и не 64, а именно 46!). Получаются эти 46 возможных комбинаций следующим образом: каждой из 32 возможных 5-битных комбинаций на входе ставится в соответствие две 6-битные выходные последовательности: прямая и инверсная, за исключением тех 6-битных последовательностей, для которых количество «1» совпадает с количеством «0» — отсюда именно 46 возможных комбинаций на выходе.
При кодировании 3b/4b для 8 возможных 3-битных комбинаций на входе существует 14 возможных 4-битных комбинаций на выходе, которые формируются так же, как и прежде.
При кодировании 3b/4b, так же как и при 5b/6b, использование прямой или инверсной выходной последовательности определяется текущим значением контрольного сигнала rd. Если сигнал rd положителен, то используется прямая последовательность, а если отрицателен — то инверсная. При этом текущее значение сигнала rd определяется по предыдущей переданной последовательности из 6 или 4 бит.
Правило для формирования сигнала rd достаточно простое. Сигнал положителен, если количество единиц больше количества нулей в группе закодированных бит. Исключение составляют последовательности с равным количество нулей и единиц. Для последовательностей 000111 (подгруппа 6 бит) и 0011 (подгруппа 4 бит) сигнал считается положительным, а для последовательностей 111000 и 1100 — отрицательным. Во всех остальных случаях сигнал rd нейтрален и не меняет своего состояния.
К примеру, если входная последовательность 5 бит 00001 подвергается кодированию 5b/6b, то при положительном текущем сигнале rd+ последовательность 00001 будет заменена на последовательность 100010. Если текущее значение сигнала rd отрицательно (rd-), то будет сформирована инверсная последовательность 011101. Но в обоих случаях последующее состояние сигнала rd изменится на противоположное, так как при rd+ в последовательности 100010 нулей больше, чем единиц, и, следовательно, сигнал rd примет отрицательное значение, а при rd- в последовательности 011101 единиц больше, чем нулей, и сигнал rd станет положительным.
Аналогичному кодированию в зависимости от текущего значения сигнала rd подвергается и подгруппа из 3 бит (кодированию 3b/4b), причем с учетом того, что сперва происходит кодирование 5b/6b, а потом 3b/4b, текущее значение сигнала rd при кодировании 3b/4b определяется по результату кодирования 5b/6b.
Таким образом, в стандарте SATA предусмотрен довольно нетривиальный метод логического кодирования.
Кроме логического двухэтапного кодирования, при передаче данных используется метод циклического избыточного контроля CRC-32 (Cyclic Redundancy Check) с образующим 32-битным полиномом
и скрэмблирование с
На физическом уровне используется потенциальный код NRZ (Non Return to Zero).
Другой особенностью стандарта SATA является организация взаимодействия между контроллером и диском по принципу «точка-точка» (peer-to-peer). Напомним, что стандарт Parallel ATA предусматривает подключение на один канал до двух устройств (Master и Slave); соответственно полоса пропускания для обоих устройств не превышает 133 Мбайт/с. В стандарте SATA к одному контроллеру можно подключить только один жесткий диск, поэтому каждому устройству стандарта SATA предоставляется вся полоса пропускания целиком.
Физическая среда. Ключевой момент, ради которого то все и было затеяно: используется не параллельная физическая шина, а последовательная, состоящая из 2-х пар проводов (одной передачи и одной на прием) и несколько нулевых. Всего семь. Провод которыми соединяются устройство последовательной ATA становится таким образом тонким и круглым, гибким и удобным в использовании, не препятствует воздухообмену. С другой стороны, изготовление провода функционирующего на столь высоких скоростях, как у Serial ATA, и при этом обладающего высокими механическими характеристиками, пусть и содержащего всего 7 проводов, обходится вряд ли дешевле, чем обычного 80-ти жильного. И если где-то и содержится возможность снижения стоимости пользования, как обещано разработчиками изначально, то вряд ли здесь. Зато безусловно задача согласования (терминирования) решается теперь намного дешевле. А длина кабелей может достигать 1 метра. SATA может быть не только интерфейсом внутренних устройств хранения, но и… внешниих…
К
тому же в стандарте SATA предусмотрена
поддержка технологии «hot swap» (использование
дисков с горячей заменой), которая
уже давно используется в дорогих серверных
SCSI-дисках, а с появлением устройств Serial
ATA станет стандартом для всех устройств
хранения данных.
Канальный
уровень.
Канальный уровень выполняет функции арбитража и результата выполнения операций передачи данных, скремблирование, а также реализует механизмы обнаружения и коррекции ошибок.
Арбитраж и контроль передачи. Сам по себе физический уровень может только передавать данные, поступившие на его вход. Для предотвращения конфликтов, когда одновременно и устройство, и хост контроллер хотят передать данные, на канальном уровне предусмотрен специальный механизм контроля, получивший название арбитража. Кроме того в обязанности канального уровня входит слежение за тем, были ли данные успешно переданы и сообщение об этом вышестоящему - транспортному уровню. Легко сообразить зачем это нужно.
Обнаружение и коррекция ошибок. В отличие от стандарта ATA, который различными механизмами обнаружения и коррекции ошибок обрастал по мере роста быстродействия, т.е. тогда, когда припирало и без них было не обойтись, в Serial ATA несколько механизмов заложены изначально. Во-первых, хорошей распознаваемостью обладает используемый на физическом уровне NRZ. Но это не главное, ряд ошибок может успешно его миновать. Как говорилось выше, применяется избыточное кодирование 8B/10B. Суть его проста: 8 бит исходных данных дополняются 2-мя дополнительными битами. Итого получается 10 бит - т.е. 1024 возможных битовых комбинаций может быть в получившемся коде, в то время как в исходном - только 256. Из результирующего кода отбирают 256 комбинаций, которые будут соответствовать 256-ти комбинациям исходного кода, а остальные считают запрещенными. Это позволяет распознавать искажение данных - если принята запрещенная последовательность, то при передаче произошла ошибка. Кроме того, в Serial ATA используется CRC код. Кстати то, что жесткие диски с SATA имеют максимальную скорость обмена по интерфейсу в 150 Мбайт в секунду, при том, что для SATA заявлена скорость передачи на физическом уровне в 1.5 Гбит/с, объясняется использованием избыточного 8B/10B кодирования, снижающего полезную пропускную способность интерфейса до 1.2 Гбит/с.
Скремблирование.
Код NRZ, используемый на физическом уровне
не обладает свойством самосинхронизации,
так как при последовательности нулей
или единиц сигнал в линии просто превращается
в постоянный сигнал определенного уровня.
Скремблирование помогает бороться с
этим явлением, перемешивая данные, подлежащие
передаче определенным образом так, чтобы
вероятность появления единиц и нулей
на выходе была приблизительно одинаковой.
Работает канальный уровень так: получает
информационный кадр от транспортного,
выполняя логическое кодирование и вычисление
CRC, и спускает вниз - к физическому уровню.
При получении данных от физического порядок
действия обратный.
Транспортный
и прикладной уровни.
Задачей транспортного уровня является обеспечение вышележащим протоколам передачи с той степенью надежности, которая им требуется. Он упаковывает поступившие от прикладного уровня ATA команды в кадры и предает их следующему, или распаковывает поступившие снизу данные и передает на прикладной уровень.
Задачей
прикладного уровня является организация
взаимодействия между драйвером
контроллера и всего
Перспективы развития.
Интерфейс
SATA предоставляет пропускную способность
в 3 Гбит/с, чего пока вполне хватает
для нужд современных жестких
дисков и оптических приводов. Однако
появление таких устройств, как
твердотельные накопители с их высокой
производительностью, вполне могут в скором
времени исчерпать предоставленный лимит.
А значит, о разработке более скоростного
варианта SATA нужно заботиться уже сегодня,
так что организация Serial ATA International Organization
(SATA-IO), ответственная за развитие последовательного
интерфейса, готовит спецификации стандарта
SATA 3.0, который будет способен на передачу
данных на скорости до 6 Гбит/с. На данный
момент близки к готовности спецификации
физического уровня протокола. Пока известно,
что существенных изменений в интерфейс
разработчики вносить не планируют –
максимальная длина кабеля составляет
1 метр, причем разъемы будут совместимы
с ранними версиями SATA. Однако помимо увеличения
скоростных показателей разработчики
планируют также реализовать поддержку
дополнительного набора команд, которые
предназначены для повышения эффективности
при передаче видео потока.
Используемая литература: