Рефераты. Сравнительный анализ и оценка возможностей НГМД и НЖМД

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

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



1.3. Хранение информации на магнитных дисках

Дисковые накопители имеют своей основной механизм, схематически представлены в приложении 1.

Носителем информации является диск (один или несколько), на который нанесен слой вещества, способного намагничиваться (чаще всего ферромагнитный). Хранимую информацию представляет состояние намагниченности отдельных участков рабочей поверхности. Диски вращаются с помощью двигателя шпинделя (spindel motor), обеспечивающего требуемую частоту вращения в рабочем режиме. На диске имеется индексный маркер, который, проходя мимо специального датчика, отмечает начало каждого оборота диска. Информация на диске располагается на концентрических треках (дорожках), нумерация которых начинается с внешнего трека (track 00). Каждый трек разбит на секторы (sector) фиксированного размера. Сектор и является минимальным блоком информации, который может быть записан на диск или считан с него. Нумерация секторов начинается с единицы и привязывается к индексному маркеру. Каждый сектор имеет служебную область, содержащую адресную информацию, контрольные коды и некоторую другую информацию, и область данных, размер которой традиционно составляет 512 байт [6]. Если накопитель имеет несколько рабочих поверхностей (на шпинделе может быть размещен/ пакет дисков, а у каждого диска могут использоваться обе поверхности), то совокупность всех треков с одинаковыми номерами составляет цилиндр (cylinder). Для каждой рабочей поверхности в накопителе имеется своя головка (head), обеспечивающая запись и считывание информации. Головки нумеруются, начиная с нуля. Для того чтобы произвести элементарную операцию обмена — запись или чтение сектора, шпиндель должен вращаться с заданной скоростью, блок головок должен быть подведен к требуемому цилиндру, и только когда нужный сектор подойдет к выбранной головке, начнется физическая операция обмена «полезными» данными между головкой и блоком электроники накопителя. Кроме того, головки считывают служебную информацию (адресную и сервисную), позволяющую определить и установить их текущее местоположение. Для записи информации на носитель используются различные методы частотной модуляции, позволяющие кодировать двоичную информацию, намагничивая зоны магнитного слоя, проходящие под головкой. Перемагничивание зоны происходит лишь в том случае, если магнитное поле в ней преодолеет некоторый порог (коэрцитивную силу), свойственный данному носителю. При считывании намагниченные зоны наводят в головке электрический сигнал, из которого декодируется ранее записанная информация. Контроллер накопителя выполняет сборку и разборку блоков информации (секторов или целых треков), включая формирование и проверку контрольных кодов, осуществляет модуляцию и демодуляцию сигналов головок и управляет всеми механизмами накопителя.

Несмотря на кажущуюся простоту конструкции записать и потом достоверно считать информацию с диска не так-то просто. Для записи данных необходимо сформировать последовательный код, который должен быть самосинхронизирующимся: при последующем считывании из него должны извлекаться и данные, и синхросигнал, что позволяет восстановить записанную цепочку битов (этим занимается сепаратор данных — узел дискового контроллера). Кроме того, напомним, что индуктивные считывающие головки воспринимают только факты изменения намагниченности участков трека. Также учтем, что физическое исполнение — магнитные свойства носителя, конструкция головок, скорость движения, «высота полета» головок и т. п. — задает предельно достижимую плотность изменения состояния намагниченности (flux density), которую хотелось бы использовать максимально эффективно. Эта плотность измеряется в количестве зон с различным состоянием намагниченности на дюйм длины трека — FCI (Flux Changes per Inch — изменений потока на дюйм) и в современных накопителях достигает десятков тысяч [20]. Для записи на диск применяют различные схемы кодирования (data encoding scheme), отличающиеся по сложности реализации и эффективности работы. В первых моделях накопителей использовалась частотная модуляция (Frequency Modulation, FM). Здесь для каждого бита данных на треке отводится ячейка с окнами для представления бита и синхросигнала, что весьма неэффективно расходует предел FCI. Более эффективна модифицированная частотная модуляция (Modified Frequency Modulation, MFM), при которой синхросигнал вводится только в процессе кодирования следующих подряд нулевых битов, что позволяет удвоить плотность записи при той же плотности изменения потока. Обе схемы (FM и MFM) являются схемами с побитным кодированием. Более эффективны схемы группового кодирования, при которых цепочка байтов данных (сектор) предварительно разбивается на. группы по несколько битов, кодирующихся по определенным правилам. Схема кодирования RLL (Run Length Limited), как это следует из названия (length limited — ограниченная длина), построена на ограничении длины не перемагничиваемых участков трека. Наиболее популярна схема RLL 2.7 — в ней число не перемагничиваемых ячеек лежит в диапазоне от 2 до 7. Для накопителей с высокой плотностью используется схема RLL 1.7, обеспечивающая большую надежность считывания. Существует и схема ARLL (Advanced RLL) — малораспространенный вариант схемы RLL 3.9. Схемы RLL стали работоспособными только при определенном уровне качества (стабильности характеристик), достигнутом в области технологии создания магнитных накопителей. По этим схемам происходит упаковка данных и исключение избыточных синхросигналов. Кстати сказать, FM и MFM являются разновидностями RLL: FM эквивалентна RLL O.I; MFM — RLL 1.3. Соотношение полезной плотности записи BPI (Bit Per Inch — битов на дюйм) при одинаковой плотности FCI в популярных схемах кодирования следующее: FM: MFM : RLL 1.7 : RLL 2.7=1:2:2,54:3 [10].

Из-за того что линейная скорость носителя относительно головки на внутренних цилиндрах меньше, чем на внешних, для обеспечения нормальной записи при меньшей скорости приходится применять предварительную компенсацию записи. Для жестких дисков в CMOS Setup имеется параметр WPcom (Write Precompensation) — номер цилиндра, начиная с которого контроллер должен вырабатывать сигнал предварительной компенсации. Для накопителей со встроенным контроллером этот параметр игнорируется, поскольку они сами «знают», как работать со своими дисками.

Как уже говорилось, информация на дисках записывается и считывается по секторам, и каждый сектор имеет определенную структуру (формат). В начале каждого сектора имеется заголовок, за которым следует поле данных и поле контрольного кода. В заголовке имеется поле идентификатора, включающее номер цилиндра, головки и собственно сектора. В этом же идентификаторе может содержаться и пометка о дефектности сектора, служащая указанием на невозможность его использования для хранения данных. Достоверность поля идентификатора проверяется с помощью контрольного кода заголовка. Заголовки секторов записываются только во время операции низкоуровневого форматирования, причем для всего трека сразу. При обращении к сектору по чтению или записи заголовок только считывается. Поле данных сектора отделено от заголовка небольшим зазором (gap), необходимым для того, чтобы при операции записи головка (точнее, обслуживающая ее схема) могла успеть переключиться из режима чтения (заголовка) в режим записи (данных). Сектор завершается контрольным кодом поля данных — CRC (Cyclic Redundancy Check — контроль с помощью циклического, избыточного кода) или ЕСС (Error Checking and Correcting — обнаружение и коррекция ошибок). CRC-код позволяет только обнаруживать ошибки, , а ЕСС- код — еще и исправлять ошибки небольшой кратности [24]. В межсекторных промежутках может размещаться серво- информация, служащая для точного наведения головки на трек.

Современные жесткие диски внутренне могут быть организованы несколько иначе, чем в вышеописанной схеме. Индексные датчики теперь не используются — начало трека определяется из считываемого сигнала. Физическая разбивка на секторы (по 512 байт данных, которым предшествует идентификатор) может отсутствовать — группа секторов трека представляет собой единый битовый поток, защищенный избыточным кодированием, из которого вычисляется блок данных, находящийся в требуемой позиции (так называемый ID-less format). Для коррекции данных применяются избыточные коды, позволяющие большинство ошибок исправлять «на лету», не требуя повторного считывания блока данных (и дополнительного оборота диска).

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

§        Низкоуровневое форматирование (LLF — Low Level Formatting) — формирование заголовков и пустых (расписанных заполнителем) полей дан­ных всех секторов всех треков. При форматировании выполняется и верификация (проверка читаемости) каждого сектора, и в случае обнаружения неисправимых ошибок считывания в заголовке сектора делается пометка о его дефектности.

§        Форматирование верхнего уровня заключается в формировании логической структуры диска, соответствующее файловой подсистеме применяемой ОС. Эта процедура выполнима только после низкоуровневого форматирования [22].

Итак, структура трека — последовательность секторов — задается при его форматировании, а начало трека определяется контроллером по сигналу от индексного датчика или иным способом. Нумерация секторов, которая задается контроллеру при форматировании, может быть достаточно произвольной — важно лишь, чтобы все секторы трека имели уникальные номера в пределах допустимого диапазона. При обращении к сектору он ищется по идентификатору, а если за оборот диска сектор с указанным номером не будет найден, контроллер зафиксирует ошибку Sector Not Found (сектор не найден). Забота о поиске сектора по его заголовку, помещение в его поле данных записываемой информации, снабженной контрольным кодом, а также считывание этой информации и ее проверка с помощью CRC- или ЕСС-кода лежит на контроллере накопителя. И конечно же, контроллер управляет поиском затребованного цилиндра и коммутацией головок, выбирая нужный трек.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.