Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Функции контроллеров дисковых накопителей



 

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

Хранение данных на магнитном носителе всегда сопровождается появлением ошибок, причин у которых может быть множество:

- дефект поверхности носителя;

- случайное перемагничивание участка носителя;

- попадание посторонней частицы под головку;

- неточность позиционирования головки над дорожкой;

- колебание головки по высоте, вызванное внешней вибрацией (ударом) корпуса накопителя;

- уходом различных параметров (из-за старения, изменения температуры, давления и т. п.).

Независимо от причин, ошибки должны быть выявлены и по возможности исправлены. Для контроля достоверности хранения применяется:

CRC–код для поля данных, который позволяет фиксировать ошибки некоторой кратности,

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

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

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

Более совершенные контроллеры производят сдвиг данных во всех секторах, следующих за дефектным, на один сектор назад (Defective Sector Slipping), после чего обращение к последовательной цепочке секторов снова станет «гладким» (без скачков вперед-назад) и быстрым. Конечно, со временем настанет момент, когда все резервные блоки будут использованы, и тогда появление видимого дефектного блока будет сигналом к замене накопителя. Надежность считывания в большой степени зависит от точности позиционирования головок относительно продольной оси дорожки. Позиционирование, обеспечиваемое сервоприводом (особенно с выделенной сервоповерхностью), может быть не оптимальным для каждой головки и требовать коррекции. Главным образом, эта коррекция необходима из-за изменения рабочей температуры. ”Интеллектуальный” контроллер хранит карту отклонений для цилиндров и головок, которую он создает и периодически корректирует в процессе работы. Процесс автоматической термокалибровки накопителя (Thermal Calibration, или T – Cal) запускается встроенным контроллером автоматически, и для системы, в которую он установлен, момент запуска этого процесса случаен. Процесс автоматической термокалибровки заметен пользователю: винчестер, к которому нет обращений, вдруг ”начинает жить своей жизнью”, выполняя серию позиционирований. Во время рекалибровки доступ к данным накопителя приостанавливается, что не всегда допустимо. Накопители, предназначенные для мультимедийных целей, а также используемые как ”мастер”–диски для записи данных на CD – ROM или DVD – ROM, должны обеспечивать длительный непрерывный поток передачи данных. Их контроллеры не должны позволять термокалибровкой приостанавливать сеансы передачи данных.

Кроме термокалибровки, есть процесс, асинхронно запускаемый контроллером диска, – так называемое свипирование (Sweeping): если к диску долгое время отсутствуют обращения, он перемещает головки в новое, случайным образом определенное положение. Этот процесс напоминает ”хранитель экрана” монитора (Screen Saver) и предназначен для выравнивания степени износа поверхности диска.

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

Контроллеры с высокой степенью ”интеллекта” выполняют более сложные задачи: они считывают в буфер всю дорожку, как только выполнится команда позиционирования, а когда поступит следующая за ней команда чтения, данные уже будут в буфере. Такие возможности (Zero Latency – нулевая задержка) обеспечивает, например, система команд интерфейса SCSI. Для эффективного использования встроенной буферной памяти накопителя существенным является алгоритм выделения памяти и замещения старых записей. Как обычно, замене подлежат наиболее старые записи. Вопрос о размере выделяемых областей для упреждающего чтения может решаться исходя из текущей статистики обращений. Контроллер с адаптивной буферизацией, заметив, что последние запросы чтения являются одиночными, перестанет выделять большие области под ”упреждающее чтение”. Если характер запросов изменится, адаптивный контроллер примет соответствующие решения. Кроме того, влияние на алгоритм буферизации оказывает и многозадачный характер современных операционных систем и их запросов на дисковые ресурсы. То есть, многозадачность, как составная часть протоколов обмена реализуется и во встроенных контроллерах дисков.

Дисковые накопители являются одим из самых ответственных компонентов ЭВМ , отказ которой может оказаться катастрофическим (если потерянные данные не имеют дублей), поэтому надежность их повышается всеми возможными способами, но отказы все-таки случаются.

Отказы разделяются на предсказуемые и непредсказуемые. Предсказуемые отказы (Predictable Failure) появляются в результате постепенного ухода каких-либо параметров от номинальных значений, когда этот уход перейдет некоторый порог.Составляющими таких отказов являются:

-время разгона до заданной скорости;

-время позиционирования;

-процент ошибок позиционирования;

-высота полета головок;

-производительность (зависящая и от числа вынужденных повторов для успешного выполнения операций);

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

Сообщение об их приближении операционной системе и (или) пользователю позволяет предпринять необходимые меры и предотвратить крупный ущерб. Целям предупреждения отказов служит технология S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology – технология самонаблюдения, анализа и сообщения), применяемая в современных накопителях. Эта технология, разработанная фирмой Seagate, имеет корни в технологии IntelliSafe фирмы Compaq и PFA (Predictive Failure Analysis – анализ предсказуемых отказов) фирмы IBM.

При реализации S.M.A.R.T. – технологии задачи слежения за параметрами накопителя возлагаются на контроллер, а программному обеспечению компьютера остается только периодически интересоваться, все ли в порядке в накопителе. Спецификации S.M.A.R.T. существуют в версиях – для интерфейсов жестких дисков, которые различаются как по системам команд, так и по способам сообщений состояния.

Непредсказуемые отказы (Non – Predictable Failure) происходят внезапно. Они чаще всего вызываются разрушениями чипов контроллера под действием импульсных помех, механические элементы подвержены ударам и вибрациям. Снижать вероятность непредсказуемых отказов позволяет совершенствование технологий производства компонентов.

К основным параметрам дисковых накопителей относится:

- Форматированная емкость (Formatted Capacity), которая представляет собой объем хранимой полезной информации (сумму полей данных всех доступных секторов).

- Неформатированная емкость (Unformatted Capacity), которая представляет собой максимальное количество бит, записываемых на всех дорожках диска, включая и служебную информацию (заголовки секторов, контрольные коды полей данных). Соотношение форматированной и неформатированной емкости определяется форматом дорожки (размером сектора). Для пользователя, практический интерес представляет только форматированная емкость диска, которая указывается для стандартного размера сектора (512 байт).

- Интерфейс (Interface) определяет способ подключения накопителя. Для накопителей со встроенным контроллером распространены интерфейсы интерфейсы АТА, SCSI (параллельные). Все более широко используются и последовательные интерфейсы: USB, Fire Wire, SATA, Ethernet, SAS, Fibre Channel (FC). Последние три интерфейса обеспечивают работу внешних накопителей (RAID – массивов и сетевых систем хранения данных).

Быстродействие и производительность характеризуется следующими параметрами:

- Внутренняя скорость передачи данных (Internal Transfer Rate), измеряемая в количестве мегабит в секунду. У современных НЖМЖ скорость считывания составляет 400 –600 Мбит/с, а у самых высокоскоростных, с частотой вращения 10000 об/мин , PRML – кодированием и с контроллером, обеспечивающим возможность параллельного считывания информации с нескольких головок, суммарная эквивалентная скорость считывания может превышать 10 Гбит/с. И это не предел.

- Внешняя скорость передачи данных (External Transfer Rate), измеряемая в количестве мегабайт (гигабайт) полезных данных в секунду, передаваемых по шине внешнего интерфейса. Для интерфейса АТА в режиме обмена

PIO Mode 0 скорость составляет 3,3 Мбайт/с, PIO Mode 4 – 16,6 Мбайт/с, Ultra-DMA – 33, 66, 100, 133 Мбайт/с. Для шин SCSI ограничения скорости в зависимости от типа электрического интерфейса составляют 5, 10, 20, 40, 80 или 160 Мбайт/с, а для оптического канала (интерфейс FC) и 200 Мбайт/с.

- Время перехода на соседнюю дорожку (Track-to-Track Seek), измеряемое в миллисекундах, характеризует быстродействие системы позиционирования. Для современных жестких дисков характерно время перехода в 0,1 – 2 мс.

- Среднее время поиска (Average Seek Time) определяется по смеси обраще-ний к случайным цилиндрам и для современных жестких дисков составляет около 1–10 мс.

- Максимальное время поиска (Maximum Seek Time) примерно в два раза превышает среднее и относится к самым дальним переходам между крайними цилиндрами.

- Скорость вращения шпинделя (Spindle Speed), измеряемая в оборотах в минуту (RPM – Rotates Per Minutes), позволяет косвенно судить о производительности (внутренней скорости). Для жестких дисков значение скорости 5400 об/мин является средним. Значение 10000 – 14000 об/мин относит накопители к высокоскоростным.

- Среднее ожидание сектора при одиночном обращении (Average Latency) обычно составляет половину времени полного оборота (для скорости 3600 об/мин, это время – 8 мс).

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

К параметрам организации и конфигурации относятся следующие:

- Количество физических дисков (Disks) или рабочих поверхностей (Data Surfaces), используемых для хранения данных. Современные накопители с небольшой высотой имеют малое (1-2) количество дисков для облегчения блока головок.

- Количество физических головок чтения-записи (Read/Write Heads), совпадающее с числом рабочих поверхностей.

- Физическое количество цилиндров (Cylinders) с нескольких сотен, характерных для первых винчестеров, возросло до сотен тысяч.

- Размер сектора (Bytes Per sector) обычно составляет 512 байт.

Расположение сервометок или сервоголовок (Servo Head) может быть на выделенной поверхности (Dedicated Servo), на рабочих поверхностях (Embeded Servo) или гибридным (Hybrid Servo).

Метод кодирования-декодирования данных (Recording Method или Data Encoding Sheme) может быть MFM, RLL (ARLL), PRML. Последний является наиболее прогрессивным.

Для дисков со встроенными контроллерами физическая организация маскируется логической конфигурацией (геометрией) – числом логических цилиндров, головок и секторов (Logical Cylynders, Heads, Sectors). Эти параметры могут отличаться от физической организации, важно лишь, чтобы общее число секторов, полученное перемножением этих трех логических параметров, не превышало числа секторов, физически существующих на всех рабочих поверхностях накопителя. Контроллеры дисков с интерфейсом SCSI, а также современные АТА-контроллеры используют линейную логическую адресацию LBA (Logical Block Addressing) секторов вместо традиционной трехмерной геометрии CHS (Cylynder-Head-Sector).

Надежность устройства (Reliability) и достоверность хранения данных (Data Integrity) характеризуются следующими параметрами:

- Ожидаемое время до отказа MTBF (Mean Time Before Failure), измеряемое в сотнях тысяч часов, является среднестатистическим показателем для данного изделия. Реально столько часов (100 000 часов – это более 10 лет) испытания проводить, естественно, невозможно. На самом деле делается выборка из большой группы устройств, из которых за вполне обозримое время испытаний какая-то часть выйдет из строя. По зафиксированному ”потоку” отказов теория вероятностей позволяет вычислить это условное ожидаемое время безотказной работы. Значение MTBF, равное 100 000 часов, считается малым; 200 000 - 400 000 часов – нормальным, а 1 000 000 часов – высоким показателем надежности, а возможный отказ винчестера в течение года (8.760 часов) укладывается в статистический показатель.

- Иногда указывают и ожидаемое время наработки на отказ POH (Power On Hours), которое учитывает только время работы устройства (MTBF не различает, включено устройство или нет).

- Более значимым для пользователя является гарантийный срок (Limited Warranty), в течение которого изготовитель (или поставщик) обеспечивает ремонт или замену отказавшего устройства. Однако, даже при MTBF = 800.000 часов (91 год) изготовитель дает гарантию всего на 3-5 лет.

- Вероятность неисправимых ошибок чтения (Nonrecoverable Read Errors per Bits Read) для современных винчестеров имеет порядок одной ошибки на несколько килобайт считанных бит.

- Вероятность исправимых ошибок (Recoverable Read Errors per Bits Read). Имеет тот же порядок, что и предыдущий параметр. Исправление ошибок обеспечивает ЕСС-контроль.

- Вероятность ошибок поиска (Seek Errors per seek) характеризует качество сервосистемы. Для современных винчестеров характерна вероятность одной ошибки на 10 операций поиска. Эти ошибки (при малом их числе) вполне безобидны, поскольку наличие номера цилиндра в заголовке каждого сектора не позволяет ”промахнуться” при выполнении операций чтения или записи. Повторение операции поиска несколько снижает среднее время доступа.

Физические параметры включают ширину (Width), высоту (Heigth) и глубину (Depth) корпуса накопителя, измеряемые в дюймах (inches) или миллиметрах, и массу (Weight), измеряемую в фунтах или килограммах.

Потребляемая мощность определяется номинальными и пиковыми токами, потребляемыми по цепям +5 В и +12 В.

Условия эксплуатации и хранения определяют возможные диапазоны температур, атмосферного давления, влажности и силы допустимых ударов. Вполне понятно, что условия эксплуатации (Operating Conditions) несколько жестче, чем условия хранения (Non-Operating Conditions).Более подробную информацию о дисковых накопителях можно получить в [12, 13].

 




©2015 studenchik.ru Все права принадлежат авторам размещенных материалов.