Интернет жизнь

Все об интернете

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Микропрограмма винчестера.

Работоспособность современного винчестера целиком и полностью зависит от целостности его микропрограммы и служебной информации. Здесь самое время вернуться к тому, что «лежит между физикой и логикой».

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

Технически модули могут храниться в трех местах:

  • в микросхеме флеш-памяти;

  • во флеш-памяти внутри микросхемы контроллера;

  • на служебных дорожках диска.

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

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

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

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

  • ROM (Boot Code) — код инициализации, прошитый во внутреннем ПЗУ микропроцессора или в отдельном чипе флеш-памяти;

  • App Code (Application Code) — основные рабочие подпрограммы. Модуль записан в служебной области диска. Этот модуль обязательно должен соответствовать по версии модулю ROM;

  • ATA Overlay — подпрограмма (оверлей), обеспечивающая работу интерфейса ATA. Также записана в служебной области диска и обязательно должна быть совместима с App Code и ROM;

  • CERT Code — код самодиагностики. Он не задействован при нормальной работе, но необходим для выполнения многих технологических команд и процедуры Selfscan. Должен быть совместим с ROM и APP;

  • CERT Tables — таблицы и скрипты самодиагностики. Необходимы для выполнения CERT Code;

  • STUFF — паспорт накопителя, который сообщает геометрию и другие параметры диска BIOS и операционной системе.

Сразу после подачи питания происходит запуск и самодиагностика винчестера. Модули отрабатываются в той последовательности, в которой мы их перечислили. В конечном счете, винчестер должен выдать паспорт по интерфейсу ATA компьютеру — BIOS, используя полученные сведения, определяет подключенный и инициализировавшийся диск.

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

Восстановление модулей производится посредством лоадеров (загрузчиков). Лоадер представляет собой бинарный файл — образ соответствующего модуля. Через служебный последовательный интерфейс он с помощью сервисной программы загружается в оперативную память винчестера и исполняется. Затем, по отдельной команде, модуль может быть записан на предназначенное ему место на служебных дорожках.

Примерно по такой же схеме происходит штатное обновление микропрограммы. Прошивкой, как видите, называть ее не совсем правильно — значительная часть микропрограммы записана не в полупроводниковой памяти, а на магнитном диске! Основное отличие между запуском лоадеров и обновлением прошивки в том, что первое производится на неисправном винчестере и подменяет загрузку поврежденных модулей собственной микропрограммы, а второе выполняется после успешной загрузки и производится через штатный интерфейс штатными средствами.

Следующее принципиальное понятие — адаптивы. В современном винчестере зазоры и допуски настолько малы, что они сопоставимы с величиной тепловых де формаций. Добавим сюда неоднородность магнитного покрытия пластин, разброс характеристик головок и элементов предусилителя-коммутатора и прочие непредсказуемые факторы.

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

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

Сразу скажем, что процедура Selfscan длится часами и даже сутками, а вся информация в пользовательской области полностью стирается. По этой причине Selfscan иногда используют при «ремонте ради ремонта», но с восстановлением данных процедура принципиально несовместима!

Как правило, адаптивы записываются в служебной области на самом диске, и замена платы на них не влияет. Исключением являлись немногие модели, например Fujitsu, в которых адаптивы заносились во флеш-память на плате. По идее, без своих собственных адаптивов жесткий диск работать не должен! В действительности, при повреждении адаптивов или перезаписи их скопированными с другого винчестера, работа диска иногда все-таки возможна. Однако в этом случае скорость чтения падает на порядки и возникают многочисленные ошибки.

 

===============================

Интернет теперь в твоей судьбе!

В интернете принято дарить -

Музыку, свои воспоминанья...

Тянется невидимая нить

Через страны, дни и расстоянья.

Незнакомым людям дарят сны,

Нежные стихи и пожеланья...

Теплые слова всегда нужны

В мире виртуального свиданья.

Тот, кто дарит - чувствует сильней,

Ничего не требуя в награду.

Подарить другим любовь сумей,

Потому что это многим надо!

И вернутся смайлики к тебе,

И друзья появятся, конечно.

Интернет теперь в твоей судьбе -

На короткий миг, длиною в вечность!

П.Давыдов

===============================

Поиск

Войти


Яндекс.Метрика