Служебная информация НЖМД IDE AT.
Служебная информация НЖМД IDE AT необходима для функционирования схем самого НЖМД и, как правило, скрыта от пользователя. Служебную информацию можно разделить по типам:
Сервисная информация;
Рабочие программы;
Формат нижнего уровня;
Таблица конфигурации;
Паспорт диска;
Таблица сбойных секторов.
Сервисная информация необходима для работы сервосистемы привода магнитных головок НЖМД с соленоидным двигателем и НЖМД с шаговым двигателем при широтно-импульсном фазовом управлении. На большинстве современных НЖМД сервисная информация используется и для стабилизации скорости вращения шпиндельного двигателя. Сервисная информация типа Dedicated располагается на отдельной поверхности, СИ типа Embedded непосредственно на рабочей поверхности между секторами. На первых моделях НЖМД IDE AT с шаговым двигателем сервисная информация отсутствует (ST157A, KL-343). В таких моделях позиционирование и нахождение нулевой дорожки происходит по устойчивым шагам и по формату нижнего уровня.
Рабочие программы (микрокод) управляющего микропроцессора представляют собой необходимый набор программ для работы аппаратуры НЖМД. К ним относятся программы управления аппаратурой позиционирования, обмена информацией с однокристальным микроконтроллером и буферным ОЗУ, первоначальной диагностики и т.д. В большинстве моделей НЖМД рабочие программы размещаются во внутреннем ПЗУ управляющего микропроцессора, некоторые модели используют внешнее ПЗУ (накопители фирм KALOK, Conner, Maxtor, Samsung). В некоторых моделях НЖМД часть рабочих программ хранится на магнитном диске, а во внутреннем ПЗУ управляющего микропроцессора хранятся программы начальной инициализации, позиционирования и первичный загрузчик для считывания рабочих программ с магнитного диска в ОЗУ. Так, например, в модели ST351A/X внешняя микропрограмма занимает 19 секторов для работы по интерфейсу AT, и 19 секторов для работы по интерфейсу XT. В зависимости от установленных перемычек, при инициализации в ОЗУ накопителя перегружается либо одна, либо другая
микропрограмма. В семействе накопителей ST3144AT внешняя микропрограмма занимает 32 сектора, и при инициализации она перегружается в ОЗУ. В более современных накопителях ST3660A служебная информация представлена в виде ОСУВ (операционной системы управления винчестером), все программы и таблицы хранятся в служебной зоне в виде модулей под своими именами. При инициализации считывается загрузчик в котором находится директорий расположения модулей и при работе накопитель подгружает отдельные модули в ОЗУ.
Производители жестких дисков размещают часть микропрограмм на поверхностях не только для экономии места в ПЗУ, но и для возможной замены ее, если вдруг в процессе производства или эксплуатации, в микропрограмме будет обнаружена ошибка. Переписать микропрограмму на диске значительно проще, чем перепаивать "прошитые" микропроцессоры, особенно если месячный объем завода изготовителя составляет 20 - 30 тыс. накопителей.
Формат нижнего уровня. Структура формата дорожки микроконтроллера WD42C22A показана на рис.7.
Рис.7. Структура формата дорожки.
Начало дорожки определяется индексным импульсом. Количество секторов на дорожке зависит от используемого метода кодирования и скорости вращения шпиндельного двигателя. Формат каждого сектора содержит поле идентификации, поле данных, синхрозоны и пробелы. В начале дорожки расположена синхрозона, содержащая 14 байтов нулей, которая служит для фазирования и синхронизации строба выделения данных. Поле идентификации содержит адресный маркер, адрес цилиндра, адрес поверхности, адрес сектора и два байта контрольно-циклического кода. Байт А1, входящий в адресный маркер, записывается с нарушением правил кодирования путем пропуска одного импульса синхронизации, это делает его отличным от любого другого байта А1, встречающегося на дорожке. В адресный маркер поля идентификации входит также код номера цилиндра:
FE - цилиндр 0-255;
FF- цилиндр 255-511;
FC - цилиндр 512-767;
FD - цилиндр 768-1023;
F6 - цилиндр 1024-1279;
F7 -цилиндр 1280-1535;
F4 - цилиндр 1536-1791;
F5 - цилиндр 1792-2047.
Между полем идентификации и полем данных находиться пробел 1, включающий 3 байта нулей и синхрозону. Поле данных включает адресный маркер данных, содержащий байты А1 и F8, данные (количество байт программируется) и 4 байта КЦК. Пробел 2 служит для исключения наложения двух соседних секторов в том случае, если форматирование диска проводилось при оборотах выше номинальных , а запись данных производится при оборотах ниже номинальных. Пробел 3 служит демпфером отклонения скорости вращения диска для всей дорожке. Различные БИС контроллеров имеют, как правило, свой формат, но структура формата остается постоянной. В основном различия касаются количества секторов на дорожке, количества байт в поле данных, значения байт контрольно- циклического кода. В последнее время появились накопители с постоянной плотностью записи или как их еще называют с зонно-секционной записью. Как было подробно рассмотрено в [1] у обычных НЖМД плотность записи к центру диска возрастает, у НЖМД с постоянной плотностью записи на внешних дорожках размещается большее количество секторов, чем на внутренних. Это приводит к значительному увеличению емкости по сравнению с обычными НЖМД.
Таблица конфигурации накопителя IDE AT содержит информацию о логической и физической организации дискового пространства. Эта таблица необходима для того, чтобы плата электроники, которая одинакова для всего семейства накопителей, могла настраиваться на данную модель семейства. Дело в том, что при проектировании какой-либо модели, например 850 Мбит на двух дисках, автоматически получается "половинчатая" модель 425 Мбит на одном диске. Таким образом перекрывается еще один сектор рынка. Кроме того в "половинчатой" модели можно использовать детали которые не подходят по каким-либо параметрам в полные модели. Так например в "половинчатых" моделях используют шпиндельные двигатели с повышеньши биениями или магнитные диски, имеющие дефекты в последней зоне полной модели, используются в "половинчатой" модели имеющей меньшее количество зон и т.д.
Например семейство ST3660A Seagate:
ST3660A 540 Мбит - 7 зон, 4 рабочие поверхности;
ST3490A 420 Мбит - 5 зоны, 4 рабочие поверхности;
ST3295A 270 Мбит - 7 зон, 2 рабочие поверхности.
Семейство PLS-31274A Samsung:
PLS-31274A 1270 Мбит - три рабочих диска;
PLS-30850A 850 Мбит - два рабочих диска.
Паспорт диска накопителя IDE AT содержит справочную информацию о конфигурации и характеристиках НЖМД. Паспорт диска занимает один сектор (256 слов) и располагается в служебной зоне, он предназначен для автоматического конфигурирования системы или настройки программного обеспечения для работы с НЖМД. В некоторых накопителях паспорт диска хранится в ПЗУ с управляющей микропрограммой, а в служебной зоне на диске хранится только серийный номер. Для чтения паспорта диска необходимо подать команду идентификации (ЕСН), после чего считать информацию из буфера сектора для анализа. В табл.6 приводятся основные параметры считываемые из паспорта диска.
Таблица 3.
Слово | Значение |
Главное слово конфигурации | |
Количество цилиндров | |
Зарезервировано | |
Количество головок | |
Количество байт на дорожке | |
Количество байт в секторе | |
Количество секторов на дорожке | |
10-19 | Серийный номер (ASCII) |
Тип буфера | |
Емкость буфера деленная на 512 байт | |
23-26 | Версия микропрограммы (ASCII) |
27-46 | Модель накопителя (ASCII) |
В соответствии со спецификацией Fast ATA-2 и Enhansed IDE кроме этих данных, в паспорте современного HDD IDE AT содержится около 20 характеристик дающих полную информацию о накопителе.
Таблица дефектных секторов. В накопителях с интерфейсом ST506/412 таблица дефектных дорожек размещалась на корпусе гермоблока в виде наклейки. Любой накопитель имел запас по емкости, например 20-ти Мб НЖМД ST225 имел на самом деле 21,5 Мб., т.е. 1,5 Мб отводилось под сбойные дорожки. В НЖМД IDE AT тоже имеется избыточность по емкости, но она скрыта от пользователя и доступна только управляющему микропроцессору и контроллеру самого накопителя. Часть этой избыточной емкости отводится для рабочих программ НЖМД (если они размещаются на
поверхностях), паспорта диска и таблицы дефектных секторов. Остальная часть резервируется - для замены сбойных секторов. Заполнение таблицы дефектных секторов производится на заводе -изготовителе после форматирования НЖМД, номера всех выявленных BAD-секторов помещаются в таблицу. Такая процедура называется подгрузкой (скрытием) дефектов (UPDATE DEFECT). Теперь при работе НЖМД если произойдет обращение к скрытому дефектному сектору, то сам накопитель переадресует обращение к резервному. Поэтому все IDE AT накопители пришедшие с завода-изготовителя не имеют ни одного дефектного сектора.
Большинство моделей современных НЖМД имеют две таблицы дефектов: начальная (Primary) и растущая (Grown). Начальная заполняется на заводе-изготовителе в процессе технологического тестирования. Растущая заполняется в процессе эксплуатации накопителя, при появлении у него дефектных секторов, с помощью специализированных технологических утилит.