В книжке «Ultrahigh density magnetic recording storage materials» на странице 70 увидел, что размер зерна/домена магнитной записи порядка 10 нанометров. Из этого возникла идея оценить максимальную частоту сигнала с головки для современных дисков. Для 2.5 дюймовых дисков диаметр внешнего трека равен 65мм. Длина окружности получается примерно 204,19мм В одном миллиметре миллион нанометров. Из картинки выше следует, что на одно колебание… Read more »
Работая над блоггер-проектом «делаем жесткий диск», возник вопрос, а как выглядит спектр сигнала получаемого с головки чтения? Из описания канала чтения 32P4904 следует, что максимальная частота следования импульсов где-то 25 мегагерц. Да, чтобы сделать все правильно, нужно обзавестись высокочастотным дифференциальным пробником. А что если его нет, что вообще никак сигнал посмотреть нельзя? Если относительно общего провода посмотреть одно из плеч… Read more »
Итак, новости проекта. Вначале по закупкам и розыскам материалов. 1) Пришел генератор на 100 МГЦ и диоды из «чип и дип» — можно запустить АЦП AD6645. Параллельно нашел, что генератор на 106 МГц можно выпаять из старых Fibre Channel дисков. 2) Раздобыл еще 3 диска из того же семейства, что и изначальный WD21000. Вот какие диски и версии ПЗУ сейчас… Read more »
А вот и потерявшаяся часть 8, которая идет после 9-ой! В нашем распоряжении имеется документация от микросхемы AD7775, но в исследуемом нами диске установлена ADSC900JR с виду очень напоминающая первую. Есть ли между ними схожие функции и отличающиеся? Давайте разбираться.
В этой серии при помощи дизассемблера IDA Pro и плагина процессора i80C196NU находим заводскую технологическую команду перезагрузки диска и тестируем ее работу при помощи PC-3000 в режиме ATA commander. Предыдущий пост серии.
В предыдущих частях мы начали дизассемблирование на основе только документации к процессору. Однако, хорошо бы посмотреть как программа управления связана с остальной аппаратурой. Для этого вооружимся тестером с пищалкой, платой WD21000, документацией на микросхемы и начнем рисовать схему электрических соединений. Так как в данном исследовании мне хотелось бы по максимуму использовать операционную систему Linux, то рисовать схему будем в KiCad…. Read more »
Обмен данными с жестким диском производится через интерфейс IDE, SATA (или какой-либо другой) при помощи стандартизированных команд. Чтобы прочитать данные с диска достаточно использовать всего две команды: идентификации и, собственно, чтения. Первая нужна для получения размера диска и определения типа команды чтения, которая будет работать со всей поверхностью диска. Если помните, то за историю своего существования жесткие диски преодолевали целый… Read more »
Итак, приступим к самому магическому действу, а именно, исследованию прошивки нашего подопытного накопителя. Для этого будем использовать IDA disassembler. Запускаем сей продукт, выбираем «открыть файл» и указываем файл считанный из ПЗУ(см. часть 3 данного опуса). Далее появляется вот такое окно: Изменяем тип процессора на «Intel 80196NP». Хотя на нашей плате стоит версия NU, однако, с точки зрения разбора кода программы… Read more »
Перед тем как переходить к детальному разбору конструкции и программы управления жесткого диска WD AC21000 добавим к проекту всю имеющуюся документацию на микросхемы. Файлы загружены на GitHub: https://github.com/rlabru/WD21000/tree/master/doc Файлы имеющие префикс «t_» — это попытки перевести документацию на русский язык.