Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Документация »   Програмный ремонт жёстких дисков HDD
RSS

Програмный ремонт жёстких дисков HDD

Програмный (и не только) ремонт классических жёстких дисков HDD /Seagate /Samsung /IBM /Hitachi /HGST /Western Digital

<<Назад  Вперед>> Страницы: 1 2 3 4 5 * 6 7 8 9 .. 75 76 77 78 79 80
Печать
 
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Запуск Selfscan - сложный случай

Допустим, нам не повезло, и в результате аварийного завершения 02 теста служебку мы потеряли, причём даже не сохранив, или она вовсе изначально не читалась и винт, постучав головками, останавливается на уровне F>. Тогда нам надо запускать селфскан из памяти, заливая все нужные объекты по кабелю и не считывая ничего с блинов. Порядок действий таков.

1. Берём комплект ресурсов для своего винта

Если есть свои слитые - заливаем их. Если нету - скачиваем с сайтов, где выложены ресурсы. Подбор ведётся по кодовому имени семейства и версии ПЗУ. Версию прошивки можно взять любую, очевидно - лучше всего самую последнюю. Ресурсы можно брать от винта другой ёмкости (т.е. с другим количеством головок), исключение - 7200.10.

2. Заливаем App

См. предыдущую главу.

3. Заливаем Cert

Чтобы попробовать считать Cert с блинов, служит команда ^R. Ответ на неё, если Cert отсутствует:
DiskAccess ReadSector EC=47 at ffffffff.00.0000
DiskAccess ReadSector EC=47 at ffffffff.00.0000
INVALID Cert Disk Code - ROM Resident Revision Required: 3.AAD
(пример для TONKA2)
Как видно, TMOS вернёт нам требуемую версию Cert, что может пригодиться при подборе комплектов. Очевидно, что версия Cert должна соответствовать версии App. В данном примере это очевидно, но у линейки 7200.7 наблюдается большое разнообразие версий и подбор комплектов ведётся сложнее.
Допустим, бэкап треков у нас есть (мы ведь его заблаговременно сделали, не так ли?) Для начала файл для заливки надо подготовить. У семейств Alpine/APLUS и более старых оверлей размещался на одном треке, и никаких дополнительных операций с ним не требовалось, но у более новых оверлей размещён на двух треках (см. таблицу), и перед заливкой вычитанные нами треки необходимо слить. Проще всего сделать это самим ST_MEM. Пример скрипта для TONKA2:
[q]
CREATE_FILE/track\cert1.bin/track\cert.bin/1/0/280/1
CREATE_FILE/track\cert2.bin/track\cert.bin/0/0/188/1
[/q]
Скрипт сливает два файла в один (cert.bin), беря 280h секторов из cert1.bin и 188h из cert2.bin.

Для его посылки и запуска используется скрипт следующего вида (пример для TONKA2 - длина серта 408h секторов):
[q]
SPEED/115200
STR/d,3,1/0
SLEEP/4000
SEND_FILE/4096/track\Cert.bin/>0/>408
STR/r/0
BAUDRATE/9600
[/q]
Команда T>d использует третьим ключом цифру 1 - не раскручивать шпиндель (незачем тратить на это время, все равно останавливать придётся). Команда T>r запускает код. После запуска винт сам переключится на скорость по умолчанию, нам останется только сменить скорость терминала (поэтому команда BAUDRATE, а не SPEED).
В случае успеха TMOS вернёт ревизию Cert (посмотреть её ещё раз можно, ещё раз подав команду T>r):Disk Code Revision # .08F CRC ==> D844
4. Отправка Cert tables

Чтобы считать таблички с диска, нужно подать команду 1>t. Ответ, если таблички отсутствуют:
DiskAccess ReadSector EC=47 at ffffffff.00.0188
DiskAccess ReadSector EC=47 at ffffffff.00.01a9
Unable to load cert table info
Перед загрузкой файл с таблицами опять-таки надо подготовить. Во-первых, на треке они находятся не с нулевого сектора, и если дорожка Cert слита целиком - выдернуть их оттуда. Во-вторых, первый сектор необходимо переместить в конец файла, как видно из анализа загрузки - винт считывает его отдельно от остальных: cmd  58,  params  0035 0000 0131 0001 3F88 0001 0000 0000 0001 2E01 0035
cmd  58,  params  0035 0000 0132 0016 0900 0016 0000 0000 0001 0000 0035
Почему так сделано – одним лишь инженерам Сигейта известно.
Необходимое смещение таблиц в треке и их длина узнаётся из таблицы (если там нет или что-то не сходится, то анализом полного трека в HEX-редакторе). Пример скрипта подготовки таблиц для TONKA2 (смещение относительно начала трека 188h секторов, длина 18h секторов):
[q]
CREATE_FILE/track\tabl.trc/track\table.bin/1/189/17/1
CREATE_FILE/track\tabl.trc/track\table.bin/0/188/1/1
[/q]
Посылаем полученный файл по команде T>h:
[q]
SPEED/115200
STR/h18/0
SLEEP/4000
SEND_FILE/512/track\table.bin/>0/>18
SLEEP/4000
SPEED/9600
[/q]
Никаких сообщений по окончанию загрузки не выводится. Проверить правильность загрузки таблиц можно посмотрев порядок выполнения тестов C>D

5. Вводим серийный номер

Командой T>#,1,22. В ответ на приглашение вводим по очереди S/N и P/N, написанные на наклейке винта. Второй параметр "1" - packwriter версия команды, чтобы не пытаться писать на диск, получая ошибку Code - 33 (впрочем, на неё всё равно можно не обращать внимания, на результат она не повлияет, это чисто для удобства)

Зачем это нужно? Серийник содержит информацию об общем кол-ве головок (т.е. по сути определяет старшинство модели в семействе), они закодированы во 2 и 3 букве номера. Если проводится селфскан с отключением головок, серийник требует правки (об отключении головок ниже).

6. Стартуем селфскан

Запуск, дальнейшее прохождение и завершение проводится так же, как в предыдущей главе.

Ну а теперь, напоследок, когда вы уже можете понять, что в скриптах к чему и что за что отвечает, и прикидываете, как будете копипастить и править примеры под свой винт, вот вам подарок:
Готовая подборка скриптов ST_MEM для почти всех семейств Seagate Barracuda и Momentus (где скачал и кто автор - не помню)
Копия моей рабочей папки со скриптами. В ней рабочий беспорядок, зато - в их работоспособности я уверен. Во всяком случае, той части, что отсортирована.
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Ну а что делать, если селфскан завершился с ошибкой?
Log 4E - Health 0000 - Time = 00:00:01 Log Type = 01
Total Cert Time = 16:03:00
ASCII logging off

Power Cycling
AbEnd Test 4E

T>

Для начала посмотрим Health командой "точка" и проанализируем сводный лог командой T>E4E. Если лог остсутствует, создайте его, выполнив соответствующий тест: T>T4E
Смотрим, на каком тесте накопились биты ошибок, например
Log 31 - Health 4000 - Time = 00:00:33 Log Type = 04
Log 42 - Health 7361 - Time = 05:07:44 Log Type = 69

Выводим на экран логи именно этих тестов командой T>E (либо T>D без параметров) и внимательно вкуриваем... Для лучшего понимания происходящего обращаемся к краткому описанию тестов. По результатам анализа принимается одно из следующих решений:

  • Если винт не может выйти на требуемую ёмкость (ошибка FAIL_CAPACITY) или при слишком большом числе ошибок в тестах дефектоскопии - понижаем плотность командой E>v или downsize-прошивкой и пускаем скан заново.
  • Если винт сыплет ошибками по какой-то одной голове - отключаем её и перезапускаем селфскан. О рубке голов - см. ниже.
  • Тесты дефектоскопии с малокритичными, на ваш взгляд, ошибками, в принципе можно пропустить. Смотрим, какой тест был завалем, сбрасываем Health командой T>H,,22 и командой T>N запускаем тестирование со следующего (по порядку в C>D) теста, и так далее. На выходе получаем винт с кривым и зубчатым графиком чтения, однако - относительно рабочий. Я такой опыт проводил лишь однажды, возможно, ему бы помогла ручная подстройка пикера, но этот полутруп того не стоил.
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Отключение головок (кроме нулевой)
Для отключения головок на Seagate есть два варианта.
1. На старых моделях до Alpine с прошивкой x.5x единственным способом отключения неисправных головок была команда T>Y - по сути, переделка на младшую модель. Отключать таким способом можно было только верхние головки начиная с последней, таким образом, чтобы на четырёхголовом винте отключить головку номер 2 (отсчёт от нулевой), приходилось отключать ещё и третью, либо головки и вовсе отключались парами. Параметром команды Y выступает новый тип накопителя. Значения возможных типов смотрите в таблицах из документации по ремонту.

2. Начиная с прошивок версии с цифрой "5" посередине для Альпин появилась команда T>k - отключение голов в середине пакета. Напомню формат команды: kx,y,z, где x - номер старшей отключаемой головы, y - новый тип накопителя, z - если введено, номер младшей отключаемой головы. Комнада k без параметров показывает текущую карту голов, kFF - включает обратно все отключенные головки.

Примечание: Экспериментируя с этой командой, у 7200.7 и 7200.8 (на более поздних не встречал) вы можете обнаружить отключенные на заводе головки. Ничто не мешает попробовать включить их, проверить их, перебрав все по очереди командой 2>Hx, и пройти селфскан с ними. Зачастую они оказываются вполне рабочими или просто чуток не дотягивающими по параметрам, и после селфскана мы получим винт БОЛЬШЕЙ ёмкости, чем он был раньше. Я, например, таким образом из 300-ки совершенно рабочий винт на 380 Гб получил - чуть-чуть до полагающихся четырёхсот не дотянул.

Примечание 2: У TONKA2 таким путём вы можете обнаружить 6 головок, которые все нормально определяются. Это обман, у этого винта конструктивно всего один диск в гермоблоке и 1-2 физические головки, все остальные в списке - это их фантомные дубликаты. Если их включить, селфскан нормально запустится, но далее тест сервосистемы notch calibration уйдёт в бесконечный цикл.

После отключения головок командой "k" необходимо ввести серийный номер командой T>#,,22, изменив в нём 2 и 3 символы. В них закодировано общее число головок. Если его не менять, селфскан может включить ранее отключенные головки. Таблицу соответствия 2 и 3 символа серийника числу головок смотрите в файле Offsets.xls или в мануале к PC-3000, а узнать их самостоятельно можно, изучив App code.

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

Отключение нулевой головки

Все эти методы не позволяют отключить нулевую голову - потому как она системная. Отключить её можно, обменяв её логический номер с какой-нибудь другой (рекомендуется выбрать самую целую) и потом уже отключить как ненулевую. Для этого есть команда:
[q]
C0D,x,y Head switches from 1st to 2nd head
x = optional 1st head (default = head 0)
y = optional 2nd head (default = max head)
[/q]
, но источник цитаты неизвестен, уровень исполнения тоже, и вообще, с ней никто не разбирался. Поэтому для отключения 0-й головы нужно править ПЗУ и апп. Первым делом для этого ПЗУ нужно считать.

Чтение ПЗУ
Изучив команды, вы можете заметить, что команд, явно отображающих содержимое ПЗУ, там нету. Поэтому товарищ Fagear для последовательного ПЗУ написал специальный скрипт и программку log2sf. Скрипт 65536 раз читает память, по одному байту за раз, а программа конвертирует полученный лог в бинарный файл.
[q]
Программа преобразования протокола чтения последовательной флешки при помощи скрипта для ST_MEM в образ ROM.

Запускается с единственным параметром - именем исходного файла протокола.
Запуск drag'n'drop-ом файла протокола на исполняемый файл программы.
Образ кладётся в папку с программой под именем "sf_dump.bin".

Содержимое файла протокола:

....
F>e2,x,x
=FF
F>e2,y,y
=00
....
[/q]
Медленно, но надёжно.
Внимание! Скрипт запускать на уровне F> ! (напоминаю, переход на него - зажать ^Z в самом начале старта накопителя)

Параллельное ПЗУ на старых моделях читается иначе, в этом вам поможет скрипт snowmass_rd_flash от Stalker317 или log2pf от Fagear

Правка ПЗУ для отключения нулевой головки

Открываем полученный дамп в редакторе и ищем в нём последовательность байт 00 01 02 03 (у двухдисковых семейств) или 00 01 02 03 04 05 (у трёхдисковых семейств).
Примечание: У Snowmass и Avalanche это последовательность 03 02 01 00
Последовательность увеличивающихся по порядку байт встречается в ПЗУ дважды - нам нужна только та, которая из четырёх (шести) байт и за которой НЕ идут далее 06, 07 и т.д. Она находится после текстовой строки "Cmd Cmplt, err =", недалеко от неё. Меняем местами номер нулевой головы с любой другой, например, 01 00 02 03 или 03 02 01 00, и сохраняем файл.

Затем по тому же принципу ищем и переставляем байты в App.
[q]
Порядок голов во флеше нужен для Boot Code, который ищет где стартовать служебку, т.е. определяет, по какой голове хард будет искать Апп. А вот после загрузки Аппа уже включается в работу последовательность из него самого - и церт (скан) и оверлей уже будут работать с порядком голов в Аппе.
[/q]
Там они находятся перед строками Mtr Coasting, Preamp Sent Greater или тому подобное. Также только одна из найденных последовательностей, та, что ровно по максимальному числу головок.
Примечание: у TONKA не нашёл

Запись ПЗУ

Для записи последовательного ПЗУ на уровне T> есть команда f, но примеров пользования ей я найти не смог. Поэтому я нашёл у кого-то, подправил и опробовал вот такой скрипт для уровня F>
[q]
//Level F required!
SPEED/57600/b576
//download code to buffer 400
//STR/d400,0,0/0
//Для 7200.10 надо d800
STR/d800,0,0/0
SLEEP/4000
SEND_FILE/512/TRACK\rom.bin/>0/>80/1
//Init flash pins
SLEEP/2000
STR/e5
//Erase flash
SLEEP/2000
STR/e9
//Program flash, 200 pages
SLEEP/2000
STR/e3,200,1,0
SPEED/9600/b96
[/q]
Для 7200.10 образ ПЗУ заливается в буфер 800, для всех остальных - в буфер 400.
Если с записью через буфер возникли какие-то проблемы, можете воспользоваться скриптом побайтной записи sf2script от Fagear.
[q]
У меня, например, NHPLUS в своё время никак не хотел шиться, ни через f, ни через e3,200. Зато попробовал случайные байты ручками прописывать по e1 - принимало. Раздумья были недолгими, так родилась софтина sf2script (Serial Flash to Script).
Конвертировал образ в скрипт побайтовой заливки флеши и пошёл делами заниматься. Да, льёт долго. Зато наверняка, нет нужды искать буфера и ковыряться с контрольными суммами.
[/q]
Эту же операцию нужно делать, если вы нечаянно затёрли флеш командой T>f и теперь винт стартует с сообщением:
Interface task reset
1024k x 16 buffer detected  
MASKROM - 1_Disk    M-20  12-07-03 15:39

F>


Ну а если у вас на плате нет последовательного ПЗУ - только масочное в проце, то придётся флешку на пустое место допаивать и прошивать, и ещё пару резисторов рядом с ней, чтоб к ней обращение шло.

Параллельное ПЗУ шьётся иначе, точного скрипта у меня нет. И я не знаю, есть ли у старых Сигейтов масочное ПЗУ для его аварийного восстановления. В своё время народ шил эти флешки, запаивая их на плату от Fujitsu MPG и используя её как на программатор (примечание: у этих винтов по-разному перепутаны линии адреса и данных, поэтому дамп нужно перемешать вот этой утилиткой от Андрея Киреева.

Ещё можно вот так:
[q]
Я разбираля с U-серией.
Получилось считать ПЗУ ST43313 в терминале pcstuxxx
T>u00, символ псевдографики, F7, принять файл.
файл идентичен образу, считанному по ата-интерфейсу.

Запись f0000,eeee, ждать пока винт перестанет реагировать на "."
F7, отправить файл. Не пробовал, но по d09 записал испорченный мной userdef.dmp
Винт вышел из бизи.
[/q]
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Теперь про особенности запуска селфскана на U-серии, конкретно на U6.

1. Служебка имеет модульную структуру. Модули программного кода (для U6 – с 00 по 0C) хранят внутри себя свой номер (ключ) и контрольную сумму, у модулей данных их нет. Команды:
T>uxx – чтение модуля с ключом xx, в т.ч. ПЗУ
T>dxx,0 – запись модуля xx (кроме ПЗУ), если не указан – определяется по его внутреннему ключу.
Чтение-запись – по протоколу SDLD. Читать и писать также могут фирменные проги U6DLE и ZSDLE. Совет: в хелпе программы указаны не все ее функции (например, она умеет работать как терминал!) и ключи – используйте просмотр тела программы в текстовом редакторе.

Таблицу модулей можно посмотреть в документе PC_UXX.pdf.

2. Для прохождения селфскана на U6 (насчёт других семейств не знаю, но вроде тоже) нужно отдельное скановое ПЗУ (CERT ROM) Его есть две версии:
  • 3.33 – для прошивок 3.39 3.99 5.33 5.46 4.65 3.19 3.64
  • 3.39 – для прошивок 3.34 3.60 3.31 3.33

Прошивка производится командой T>f0000,eeee , после ее подачи нужно дождаться, пока винт перестанет реагировать на онлайн-команды (например, «точку») и отправлять файл по SDLD. Винт сам ее запишет.

3. Нужен отсутствующий на диске оверлейный модуль селфскана key01h. Без него вываливается сообщение:
KEY 01h invalid Resv
Для каждой ПЗУшки он, аналогично, свой.

4. Служебная зона в цикл селфскана не входит и тестируется отдельной командой T>I,,22 (на барракудах, где она тоже есть, ей соответствует тест 02)
5. Набор команд и форматы вывода имеют заметные отличия.

Программы U6DLE/ZSDLE, CERT ROM (и на всякий случай AT ROM) и CERT OVL брать тут: http://www.hddoracle.com/viewforum.php?f=134

Исходя из этого, последовательность проведения селфскана будет такова:
1. Забэкапить всю служебку накопителя утилитой U6DLE (пример для порта COM1, скорость 57600)
[q]
u6dle /c1 /s576 /u=0 ROM.BIN
u6dle /c1 /s576 /u=1 1

u6dle /c1 /s576 /u=22 22
[/q]
Вместо цифр 1-22 можно вписать имена файлов, для использования ATA терминала и ключей настройки COM – см. хелп программы (U6DLE /h или вовсе запуск без ключей)

2. Записать скановое ПЗУ:
[q]
u6dle /c1 /s576 CERTROM.FLS
[/q]
Прога сама разберется, что это за файл и куда его класть. После записи передернуть питание. По Ctrl+L теперь должно писаться, что внутри именно CERT ROM
3. Залить оверлей 01:
[q]
u6dle /c1 /s576 OVERLAY.BIN
[/q]
4. Провести тест служебной зоны: T>I,AA,22
Его можно не проводить, тогда п. 5 и 10 исключаются и добавляется п. 11
5. После этого модулей в зоне больше не будет. Залить требуемые модули:
[q]
u6dle /c1 /s576 OVERLAY.BIN
u6dle /c1 /s576 modules\7.bin
u6dle /c1 /s576 modules\8.bin
u6dle /c1 /s576 modules\b.bin
u6dle /c1 /s576 modules\c.bin
[/q]
6. Запустить селфскан:
T>N4,AA,22
Ctrl+T
Если жалуется на отсутствие какого-нибудь модуля (KEY XXh invalid Resv) – повторить п.5
7. Дождаться завершения теста 3F. Накопитель встает в ожидании. Залить корректный AT ROM:
[q]
u6dle /c1 /s576 ATROM.FLS
[/q]
Передёрнуть питание накопителя.
8. Залить AT оверлей (key02)
[q]
u6dle /c1 /s576 2.BIN
[/q]
9. Запустить вторую часть селфскана:
T>N40,AA,22
Ctrl+T
10. По успешному окончанию (Age=50) создать паспорт накопителя, путём правки ключей, или отправив сохраненный модуль 0F.
[q]
u6dle /c1 /s576 /p=f f.bin
[/q]
Ключ /p= программы принудительно указывает номер модуля для заливки.
11. Накопитель готов к работе. Если не проводилась очистка служебной зоны – сделайте сброс SMART вручную (1>N1).
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Часто встречающиеся вопросы, проблемы и методы их решения

В: Хочу попробовать дизассемблировать. Какая процессорная архитектура у Seagate?
О: У коннергейтов - Mototola 68HC11, у барракуд - 16-разрядный ST10 (система команд Infineon C166). Где-то между ними, говорят, применялись 8-разрядные ST7 и ST9. У современной архитектуры "F3" - ядро ARM.

В: Винт стучит головами и пишет в цикле
Buzz - Head Mask 000F - Head Mask 000F - Head Mask 000F - Head Mask 000F –
(Head Mask может быть другим)
О: Не может обнаружить коммутатор. Причин может быть несколько:
1.\tВыход из строя микросхемы коммутатора-предусилителя
2.\tНет напряжения -5В для его питания, неисправен формирователь напряжения.
3.\tКто-то подменил плату, поставив аппаратно несовместимую.

В: Почему вообще у разных винтов (исправных и с некусаными головами) разный Head Mask при старте? У кого 0000, у кого FFFF, у кого 000F
О: А фиг его знает. Какие-то аппаратные различия.

В: Какие есть критерии по замене плат?
О: Версии ПЗУ старой и новой плат должны совпадать, в противном случае необходима перепрошивка ПЗУ, допайка последовательного ПЗУ при необходимости, либо перезапись всей микропрограммы на совместимую с новым ПЗУ версию. В серии 7200.7 могут быть четыре типа несовместимых плат: с микроконтроллером от ST Labs и от Agere, и с крутилками Smooth и SH6950. Микроконтроллеры принципиально различаются каналом чтения-записи и платы с разными контроллерами невзаимозаменяемы (накопитель уходит в стук). Интересный вопрос – замена плат между подсемействами внутри семейства. Говорят, у кого-то получалось. В общем, если после замены платы накопитель не срывается в стук – дерзайте…

В: Можно ли переделать винт PATA в SATA и наоборот?
О: Можно, проверено. Ставим плату от того же семейства/подсемейства (определить по кодовому имени в приветствии - если что, плата пишет его, даже будучи не прикрученной к банке), заливаем в память нужную прошивку и пускаем селфскан из памяти. Как сменить прошивку без селфскана, я не разбирался.

В: Накопитель 7200.7 SATA. Подключаю питание, подключаю дата-кабель – винт не раскручивается, и в терминале молчание…
О: Особенность такая. Накопитель не стартует до подачи Hard Reset по интерфейсу. Я встречал такое на APLUS (с чипом-мостом PATA-SATA), говорят, на Puma (нативный SATA) тоже бывает. Необходимо подключить винт по интерфейсу и любой сервисной программой (MHDD, Victoria, etc.) подать Hard Reset. Или в терминале Ctrl+C

В:Command Inactive - No VALID Cert Code Detected
О: ^R

В: Corsair (а также винты семейства 7200.10) после успешного скана и передергивания питания вываливается в F, записать по w4 не помогает
О: Эта линейка в процессе скана апп на диск на записывает. Заливайте апп в память, потом обязательно подгружайте адаптивы (T>R1, T>R2), записывайте по T>w4, заливайте оверлей, запиcывайте на диск командой T>c и все взлетит. Или вроде бы помогает подать команду c сразу по окончанию скана.

В: Wrong Yuma Chip! Drive will hang
О: SATA-шная плата с PATA блинварью.

В: Сделав kFF, обнаружил, что у меня на TONKA2 вроде как 6 головок! Я что, 300-ку из него сделаю?
О: Нет. TONKA2 – это исключительно одноблинная модель. Многодисковые – это TONKA15. Остальные четыре головки – это фантомные копии первых двух. Если их включить, селфскан с ними не пройдёт, завалит notch calibration.

В: NIGHTHAWKPLUS на 31 тесте беспрестанно сыплет строками видаAdding 0042 00018.0000.0077.1555  00A2  0400:000D
О: Смените фирмварь на 3.AAF, иначе тест не пойдёт.

В: На NIGHAWKPLUS не могу прошить флешку! Скрипт отрабатывает нормально, но во флешке чисто!
О: Заливай не в буфер 400 (команда d), а в 800

В: Можно ли проходить селфскан, выставив скорость обмена 115200?
О: Можно, скорость не собьётся. Скан пройдёт несколько быстрее.

В: Как найти объекты в слитых треках?
О: Открываем треки в HEX-редакторе. Апп начинается с текстовой строки - имени семейства. Серт занимает обычно целый трек плюс трек по первой голове (для одноголовых – через трек по нулевой голове). Таблички находятся в середине трека, с того сектора, на котором закончился серт (хотя он на другом треке), их первый сектор содержит только текстовую строку – версию серта. Оверлей начинается с текстовой строки – указания версии (.021g например). Вендор содержит по адресу 800h паспорт (опознается по названию модели с перевернутым порядком байтов). ПЗУ имеет размер 64к. Для полной уверенности можно поискать тестовые строки и изучить их. Для отмерения длин объектов надо учитывать, что блоки, содержащие FF считаются за часть объекта – неиспользуемые сектора записаны нулями.

В: (P)Bad AppCodeKey
О: Отсутствует оверлей (не App!).

В: На 02 тесте стопорится с ошибкой GC Seek Error 1 !!! либо зависает в начале 02 теста с буквой «p» в конце:Read Bias - Head      0   1   2   3
                       9   9   9   9
  
HiTemp Bias Head      0   1   2   3
                       9   9   9   9
p

О: Попереключайте 4>c3 и 4>c24>c3
Track Write Type set to HDW.
4>c2
Track Write Type set to MDW.

И перезапустите селфскан.
Либо же кто-то (как было у меня) прикрутил к банке несовместимую плату.

В: SetStuff->ASCIFE
Setting stuff to defaults
Unsupported drive type

О: Не работает, значит, у этого семейства сброс в дефолт, пишите копию трека вендора на диск посекторно.

В: В Виктории на NIGHTHAWKPLUS график верификации весь кривой и зубчатый даже после селфскана!
О:
[q]
У ястребов фича есть.
Они хорошо работают на чтении, но сыпят массу задержек на верификации. То есть, задержки на верификации для них норма и бороться с ними не следует.
На чтении нормальный график за счет кеширования.
Из-за этого народ часто за-зря гоняет на них SS.
[/q]
В: FAIL_CAPABILITY     100.0000  
О: Уменьшайте плотность по E>v

В: После успешного прохождения селфскана на 7200.10/5400.4 получаю
ERR Read App Code
О: Особенность семейства. Делаешь F>R3, грузишь App, дальше T>w4,60 , серт уже на блинах – осталось загрузить и записать оверлей и вендор.

В: Слышал, что в прошивке у Seagate есть AAM, просто он отключен! Как включить?
О: Просто установите нужные биты в паспорте. За AAM отвечает ключ STUFF 53 (для редактирования стаффа в терминале дать команду F на уровне T>, главное не перепутайте регистр!).
По умолчанию (нет ААМ): ASCI537D01
Без поддержки 48 бит LBA (есть ААМ): ASCI537B01
С поддержкой LBA48 и ААМ: ASCI537F01
Или в ст_мем STUFF/537F01
У Alpine точно AAM есть и работает. Максимальный уровень шума - среднее время позиционирования 8.6 мс, минимальный - 10.9 мс, на слух довольно заметно. Да, к слову, прошивка 8.x громче, чем 3.x
У более поздних семейств AAM может быть изъят из программного кода, сейчас проверить не на чем.

Кратко - отличительные особенности Seagate
1) Все технологические операции выполняются через терминал, сервисные ATA команды рудиментарны (предназначены только для обновления прошивки)
2) Развитый командный язык терминала, подробные логи
3) НЕ модульная структура служебки



На этом по Сигейтам пока всё. Нерассмотренными мной остались следующие вопросы:
- Не отработана заливка оверлея до скана, чтобы он лёг на блины в процессе
- Не изучен PCF
- Не отработана перезапись прошивки без прохождения селфскана
- Есть некоторые неточности в описании отключения голов
По архитектуре F3 как-нибудь потом пару слов скажу отдельно, они к "старым" не относятся, но тема их ремонта очень уж востребована.
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Жёсткие диски фирмы Conner рассмотрю "прицепом" к руководству по ремонту Seagate. Подключение к терминалу, работа в TMOS и общие принципы восстановления те же самые, сосредоточусь только на отличиях.

Компания Conner Peripherals основана в 1985 году сооснователем фирмы Seagate Финисом Коннером. В 1986 году произошло слияние со стартапом CoData, созданным основателями компании MiniScribe Терри Джонсоном и Джоном Сквайресом. CoData разработали жёсткий диск в новом форм-факторе 3.5", и эти диски и стали первым продуктом Conner Peripherals. В 1996 году компания была куплена Seagate.
Особенностью модельного ряда Conner является большое количество очень близких по характеристикам моделей. Это является следствием политики предприятия, которое вместо того, чтобы сначала делать разработку модельного ряда, а затем продавать его покупателям, сперва получала у OEM сборщиков (в основном Compaq) заказ на партию дисков с определёнными характеристиками, а затем подгоняла под него типовой дизайн. С 1986 по 1992 год эта тактика приносила успехи, и компания быстро росла. Позднее правила рынка изменились и такая политика стала невыгодной. (по материалам Red Hill)

Внутреннее устройство накопителей Conner во многом наследует концепции более ранних Miniscribe, где на микроконтроллер (архитектура MC68HC11) возложена большая часть функций обслуживания сервосистемы, стабилизации скорости вращения шпинделя и работы с интерфейсом, что позволяло удешевить плату по сравнению с другими винтами конца 80-х, где использовались отдельные аналоговые схемы для позиционирования головки и стабизизации шпинделя, а контроллер обслуживал лишь интерфейс и выдавал управляющие импульсы. Другим нововведением была процедура самотестирования накопителя на стадии изготовления, что избавляло от потребности в тестирующей хост-системе со множеством портов. Недостатками винчестеров Conner была невысокая по сравнению с конкурентами скорость работы.
Маркировка
Старая маркировка:
CP 3 010 4 H
CP - Conner Peripherials. Может отбиваться дефисом
3 - форм-фактор:
  • 1 - PCMCIA
  • 2 - 2.5"
  • 3 - 3.5"
  • 4 - 3.5" тонкий (0.8")
  • 5 - 5.25"
010 - ёмкость в десятках Мб (может отличаться от реальной, закономерность не устновлена).
  • 4 - интерфейс:
    • 0, 5, 7 - SCSI
    • 1 - Compaq OEM. Ничем, кроме названия, от винтов с "4" на конце не отличается.
    • 4, 8 - IDE/AT
    • 9 - MCA

    H - неизвестно

    Новая маркировка:
    CF S 540 A
    CF - Conner (что означает F - неясно)
    S - неизвестно, возможно принадлежность к сегменту рынка
    540 - ёмкость в Мб (может немного отличаться от реальной)
    A - интерфейс:
    • A - AT
    • C - SSA
    • S - single-ended SCSI
    • E - SCA
    • W - wide SCSI
    • WD - wide differential SCSI

    Модельный ряд
    (информация очень неполная, источники - http://www.9to5computer.com/9-...conner.htm
    http://www.mfarris.com/hard/conner1.html
    http://cdn.preterhuman.net/tex..._ref43.por и др.)
    Через косую черту - модели, отличающиеся только последней цифрой или буквой.
    СемействоМоделиЕмкость, МбЧисло дисковСкорость портаВход в TMOSУровни тестированияПримечания
    AlleghenyCP30004127200^Z1-4Маркировка выбивается из системы. Основным (аналог T>) является 3>. Команды % и ? отсутствуют. Винт неправильно отдаёт логические параметры CHS, правильные - 980/5/17.
    AlleghenyCP30104H104
    StubbyCP4021/4, CP4041/421/41"Тонкий"
    GatorCP408485"Тонкий". OEM заказ GRiD Systems
    SierraCP3020, CP3040/421/42
    HopiCP30084, CP30100/1/485/121
    AegeanCP30540/4544
    BajaCP313701370
    MontereyCP30124, CP30254H126/252
    FileProCP30254, CP30174, CP30124251/170/125
    JaguarCP30174E, CP30080/4/5E170/851-29600^Z1-4, 6, TНе путать с предыдущим!
    CougarCP30200/4204
    RamboCP3200/4F213
    SummitCP3304, CP3360/4, CP3504, CP3540/4340/362/509/544OEM заказ Olivetti
    FileProCFA340A, CFA170A340/1701-29600^W^S^Q^E1-8, T
    Pcat (TOMCAT)CFS420A, CFS210A, CFS105A420/210/1059600^W^S^Q^E1-8, T
    CFS425A, CFS270A425/270Прошивка. Он же ST3425A
    BobcatCFS540A, CFS210A540/21329600^W^S^Q^E1-8, T
    Fast BoatCFA1275A, CFA850A, CFA420A1275/850/4201-39600^Z1-8, T
    CaboCFS1275A, CFS850A, CFS635A1275/850/4201-39600^Z1-8, T
    Cabo StingrayCFS1621A, CFS1081A CFS541A1621/1081/541
    LapazCFS1276A, CFS636A1280/640Позже выпускались под маркой Seagate
    2.5" IDE
    KatoCP2020/421.4OEM заказ Epson. Прошивка
    HonshuCP2088/485
    PanchoCP2034, CP2044, CP2060/1/434/44/641-2OEM заказ Compaq
    PanchoCP2084, CP212485/1221-2
    SaharaCP2064/7
    TriggerСP2250/4253
    TriggerCFN170A/S, CFN250A/S, CFN340A168/253/344как AT, так и SCSI. Возможно, смена маркировки пришлась как раз на то время.
    KiwiCFL420A422
    PCMCIA
    DERRINGCP-104442.6
    SCSI
    BarbadosCFP1060S/E/W1062
    AntiguaCFP1080S/E/W1080
    CaymanCFP2105/7/9 S/E/W, CFP4207/9 S/E/W2147/4295
    ChinookCP5500510Единственная модель (и вообще единственный в мире винт) с двумя актуаторами. 5.25", половинной высоты.
    У Fast Boat, Cabo и более поздних основной режим (работа по интерфейсу) - N50, у более ранних - N40.

    Скорость порта 9600 или 7200. Комбинация для входа в TMOS у одних это ^Z, как у Seagate, у других нажмите последовательно ^Q ^E ^W ^S (смысл этих команд требуют уточнения). Селфскан запускается командой T>N2 и затем ^T или ^Q ^E ^T, после скана ничего не портится и обратно заливать не нужно. Весь код умещается в ПЗУ, оверлеев нет. Полный список доступных команд - 8>? Вот вывод этого списка (правда, неизвестно с какого винта)
    Lvl T - Factory tsts
    --------------------
    Dx   Dsp cert elogs
    Ex   Dsp elog
    Fx,y Set ftr bit x to y (0,1)
    Nx   Set drv age
    Tx   Run tst x
    Yxx  Set drv typ
    #    Enter ser #

    Health bits
    15 -Fat r/w err  12 -Hi r/w err rt
    11 -Skp asgn err 10 -Hrdwr err
      9 -Xecsv skps    8 -Xcesv alts
      7 -Act fail      6 -Spn fail
      5 -Srv dat fail  4 -Xfer rt warn
      1 -Spn warn      0 -Srv warn

    More /2 cmds
    ------------
    Ax,y  Set tst spc = x
      b0 all heads   b3 unused       b6 seq out
      b1 all cyls    b4 even cyls    b7 random data
      b2 rnd cyl,hd  b5 odd cyls
      x=8 -> y=min cyl  x=9 -> y=max cyl
      x=A -> y=max hd   x=D -> set default

    Yrr,xx,yyzz   Set retry options = r
      b0 hdr rty      b3 srv rcvry    b6 boost,filtr
      b1 OTF enable   b4 offtrk rd    b7 splash enab
      b2 2 brst ECC   b5 window,thld
      x=rd rty  y=hdr rty  z=wrt rty

    P    Fil buf 2 with rnd dat
    cx,y Create y data errs, sctr x
    fx   Frmt unrdable hdr
    rx   Rd lng sctr x to buf 0
    wx   Wrt lng sctr x from buf 0
    yx   Wrt bad dat field sync byte
    gx   Rd adp parm x
    px,y Wr adp parm x with dat y

    Error codes
    10-Drv not rdy
    11-Drv busy
    12-Wrt gat blkd before rd op
    13-Wrt gat blkd before wrt op
    14-Wrt flt active durng wrt
    16-TO on sk cmplt
    17-Wrt gate blkd after wrt op
    18-Srv offtrk lvl 1 (bad)
    19-Srv offtrk lvl 2 (worse)
    1A-Drv not rdy on zap scan
    1C-Srv brst zapped
    1E-Unable to zap srv brst
    21-Disk ptr=0 during rd op
    23-Disk ptr=0 during wrt op
    24-Srv brst zapped
    25-Multi brsts on trk zaped
    26-2 adj brsts on trk zaped
    30-Dat cmpr err (offset)
    35-Invalid target sctr
    36-Bad blk flg set in hdr
    39-Incorrect header data
    40-CRC err on hdr rd op
    41-Incrct ctlr stat on r-w op (reg 79)
    42-Msng sctr mrk on r-w op (01=wrt)
    43-ECC err on data fld rd op (reg 79)
    46-Incorrect greycode
    47-No sync byte fnd on hdr rd op
    48-Incorrect disk ptr (rd op)
    50-Sctr skipped
    51-Sctr altd
    55-Rd or wrt past end of pack
    57-Unable to wrt mrgn tst
    60-Unable to fnd sctr for alt asgn
    62-Unable to save data on alt asgn
    92-Unable to zap servo burst
    97-Invld cyl or hd in sk arg
    98-Niwot not idle at strt of rw op
    99-TO on read op
    9A-TO on write op

    Lvl 1 - Intf mem cmnds
    ----------------------
    Ax     Set stck adr
    Bx     Set brk pt
    C      Cnt aftr brk
    Dx     Dsp mem adr x
    Fx,y   Find dta x, strt=y
    Gx     xct adr
    H      Hdwr tst
    I      Reload ctlr map
    Jx,y   Drv cmnd x (see ?B)
    K      Drv uP intf tst
    Mx,y,z Mov mem x-y to z
    Px,y   Find dta x in buf
    Sx     Dsp/mod mem
    T      Dta bfr tst
    Ux     Dsp/mod bfr
    Wx     Wrt mem loc
    Xx     Set XREG adr
    Z      Disbl intrpts

    Level 1 J cmnds
    ---------------
    J0,x Tst I/O cmd
    J14  Dsp last log hd, R.FLAG

    Srv frmls
    ---------
    BURST = 64*256/((A+B)-(C+D)) ontrack
    TF.GAIN = GAIN * BURST * 2
    TF.THLD = (THLD*64*256/25)/(BURST*2)

    Diag buf usage
    Buf 0-1 Rd buf
    Buf 2   Wrt buf
    Buf 4-7 Elog
    Buf 8-B Dsp log
    Buf C-F Asc log
    Buf 10-7F unused

    PB,4   Hi f pat 1/7
    P3,4   Lo f pat 1/7
    P11B,C Tri-bit pat 1/7

    Onln action codes
    -----------------
    a Alternate processed
    b No buf space on wrt
    e Data corr 2 brst
    f Hdr moved in frmt
    h Hdr rtry on rd
    i Niwot frcd idle
    j Hdr rtry on wrt
    m Map reload rd
    n Map reload wrt
    p Map reload hdr rd
    s Servo rty (wr-rd)
    S Seek retry (wr-rd)
    u Unscssful 2 brst corr
    w Wrt rtry op
    . Rd rtry op

    Lvl 5 - Drv mem cmnds
    ---------------------
    Ax    Set stack adr cmd
    Bx    Set brk pt
    C     Cnt aftr brk
    Dx    Dsp mem
    E     Erase EE
    Fx,y  Fnd dat x
    Gx    xct adr
    Hx    Slct hd x
    I     Hrdwr tst
    Kx    Chg clk spd (1=slow)
    M     Mov rom to ram
    Px,yy Pgm EE adr x
    Sx    Dsp/mod mem
    Vx,y  Dsp schd
    Wx    Wrt mem loc
    Xx    Set XREG adr
    Yx    Dsp gycd, cyl x
    i     Init adaptv EE
    yx    Dsp cyl, gycd x
    Z     Disable intrpts

    Lvl 6 - Batch file cmnds
    ------------------------
    Bxx    Run batch file xx     Dxx    Display file xx
    Ex     Enter btch file 8,9   @x     Btch file label
    *1     Batch file pause      *6     Stop on err
    *2,xxx Btch file dly x ms    *7,xxx Set btch loop ct
    *3,x   Branch label x        *8,x   Dec btch loop, goto lbl x
    *4,x   Incrmt hd, brnch x    *9     Stop on no err
    |x     End btch entry, set file #

    B2   Stats dsp      B4   Trkg analysis
    B7   Hd swt dsp     B6   SRS btch file
    B8-9 User batch     B31  1 burst corr
    B32  2 brst corr    B33  3 brst corr
    B34  1 brst 4 sct   B35  Altn asgn tst
    B36  2 brst 1 brst  B37  Frmt bad tst
    B38  Data cmpr tst  B39  ECC test
    B40,41 Set drive type - start cert

    Lvl 7 - Rd-wrt buf cmpr
    -----------------------
    Axx,y  Set tst space (see ?D)
    Bxx    Dsp buf xx
    Cx,y,z Cmpr buf, y blks at x to z
    K      Dsp stats
    Mx,y,z Mov buf, y blks at x to z
    Px,y,z Data x(3 bytes), lngth y(bits), buf z
    Qx,y,z Wrt-rd cmpr y blks at sctr x, wbuf = z
    Rx,y,z Rd y blks at sctr x into buf z
    Sccc,h Sk to cyl,hd
    Vx,y,z Rd y sctrs, strt sctr x, cmpr to buf z
    Wx,y,z Wrt y blks at sctr x from buf z
    X      Fill buf 10-7F with rndm data
    Yx,y,z Set/dsp rtry cntrl

    Online cmnds
    ------------
    ctl D  Tgl actn code dsp
    ctl F  Sgmnt stat
    ctl G  Intf stat
    ctl P  Tgl pwr cyc
    ctl Q  Frgrnd resume
    ctl R  Drv micro soft rst, Niwot stp
    ctl S  Frgrnd pause
    ctl T  Restrt dflt pgm
    ctl V  Tgl intf dsp
    ctl X  Dsp dat at X reg
    ctl Z  Exit to DIAMON
    > or > Dec or inc rw idx sctr
    { or } Dec or inc srv idx sctr
    `      Stats dsp
    '      Xfer stat
    ~      Intf stat
    .      Online stat
    ;      Mach stat

    Gen use cmnds
    -------------
    /x   Chg lvls, x = 1-8,T
    Lx,y Lp nxt cmd (x=1 cnt on err)
    =x,y Wrt dta y to mem adr x
    +x   Dsp cntnts of mem adr x
    \    Qck call btch

    А вот список команд, выдаваемый CFS540: https://pastebin.com/HnDJBspn

    Ну и наконец, вот результаты моего эксперимента по поиску команд на Jaguar: http://www.phantom.sannata.ru/...1#pp449201

    В общем, всё как у старых Seagate (Lapaz, Belize и были переименованными коннеровскими разработками), так что читаем главу про TMOS Seagate и применяем в упрощённом варианте.
    SCSI модели тестируются точно так же как IDE, команды те же. Главное отличие - в служебной зоне хранятся конфигурационные таблицы, которые затираются в ходе тестирования служеюной зоны и не восстанавливаются, поэтому селфскан нужно запускать не с N2, а с N3.

    Документация по TMOS Conner
    Руководство к утилите PCCONNER от Acelab
    http://ikserg.chat.ru/CONNER.RAR ,
    http://shostatsky.narod.ru/rem_comp/tmos.zip, и
    http://dr-shost.com/freqs/dosutil/tmos.arj - хватит с избытком (кстати, http://dr-shost.com/ вообще полон всяческих ретрокомпьютерных ништяков, лишний раз прорекламирую здесь).
    Программы:
    Считывалка ПЗУ Conner в файл по COM1, документация внутри. На старых Сигейтах тоже должна работать. На CP3000, правда, не сработала.



    Также недолгое время (1996-1998) существовала компания Conner Technologies, основанная выходцами из бывшей Conner и производившая бюджетные жёсткие диски на индийских заводах. Всего было выпущено четыре или шесть моделей, в настоящее время эти диски - коллекционная редкость, а в рабочем состоянии - и вовсе уникальны... Чинятся они по другим методикам, про которые тоже могу рассказать, только вряд ли они кому-то пригодятся. Если кто-то отдельно попросит - расскажу. В моей коллекции есть CT215, безнадёжно стучащий головами, ему уже ничто не поможет.
  • i8088
    Advanced Member


    Откуда: г. Баку, Азербайджан
    Всего сообщений: 2132
    Рейтинг пользователя: 0


    Ссылка


    Дата регистрации на форуме:
    30 янв. 2015
    KALDYH написал:
    [q]
    Всего было выпущено четыре или шесть моделей, в настоящее время эти диски - коллекционная редкость, а в рабочем состоянии - и вовсе уникальны...
    [/q]
    У меня есть такой рабочий, 15GB. Только помню звук рекалибровки какой-то не
    такой как у других дисков.
    KALDYH
    Advanced Member
    Технонекромант

    Откуда: Кемерово
    Всего сообщений: 2355
    Рейтинг пользователя: 0


    Ссылка


    Дата регистрации на форуме:
    5 июня 2009
    Мне в руки перепала пара полудохлых дисков Fujitsu, пора написать и о них главу.

    Fujitsu Ltd. - крупная японская многофункциональная IT-корпорация, третья старейшая в мире - основана 20 июня 1935 г. под именем Fuji Telecommunications Equipment Manufacturing как подразделение Fuji Electric Company, совместного предприятия Furukawa Electric Company и немецкого конгломерата Siemens, основанного в 1923 г. Название составлено из слогов «Fu» от слова Furukawa и «Ji» от слова Siemens (в японском произношении). Компания тесно сотрудничает с концерном Siemens AG. В апреле 1978 года между компаниями было заключено соглашение о совместном производстве компьютеров, а в 1999 году была создана дочерняя компания Fujitsu Siemens Computers.

    В 2008 компания Siemens заявила, что компьютерный бизнес не является для компании профильным, и вышла из предприятия. Соответственно, Fujitsu выкупила долю партнёров за €450 млн и получила в наследство все региональные офисы и штат сотрудников Fujitsu Siemens Computers. C 1 апреля 2009 года компания называется Fujitsu Technology Solutions и специализируется на ИТ-решениях.

    Корпорацией выпускались следующие линейки жёстких дисков под внутренними (на этикетке не писались) названиями:
    2.5" Hornet (HN) - ноутбучные
    3.5" PicoBird (PB) - десктопные
    3.5" Allegro (AL) - серверные.
    Информация по ремонту есть только по десктопным 3.5" IDE. По ноутбучным - есть инфа, но нет свободного софта.

    Маркировка:
    M P D 3 0 6 4 A T - E W
    • M - код жёстких дисков в номенклатуре Fujitsu
    • P Вторая буква:
    • [q]
      A - 3.5" SCSI
      P - 3.5" IDE
      H - 2.5" IDE
      [/q]
    • D Третья буква - поколение
    • 3 - форм-фактор:
      [q]
      3 - 3.5"
      2 - 2.5"
      [/q]
    • 064 - емкость в сотнях мегабайт (6.4 Гб в данном примере)
    • A - интерфейс AT
    • T - скорость вращения:
      [q]
      T - 4200/5400
      H - 7200
      [/q]
    • Через дефис - особые модификации


    Старая система обозначений:
    M 16 3 8 T A U #L
    • M - код жёстких дисков в номенклатуре Fujitsu
    • 16 - значение не установлено
    • 3 - плотность: 3 - обычная, 2 - пониженная
    • 8 - старшинство модели в семействе: 8...5 - обычная плотность (см. выше), от 4 до 1 головки соответственно; 4...1 - пониженная плотность, также от 4 до 1 головки
    • T - тип интеpфейса:
      [q]
      T = ATA (EIDE)
      S = SCSI
      SY = Fast SCSI-2 (Ultra)
      H = SCSI, диффеpенциальный
      Q = Wide SCSI
      R = Wide SCSI, диффеpенциальный
      C = Wide SCSI, SCA-1
      E = Wide SCSI, SCA-2
      [/q]
    • A - стандаpтный pазмеp блока:
      [q]
      X = 256 байт
      A = 512 байт
      B = 1024 байта
      [/q]
    • U - тип pезьбы винтов:
      [q]
      M = метpическая M3
      U = #6-32 UNC
      [/q]
    • #L - Специальная веpсия (ICL)



    Номер версии микропрограммы - последние 6 символов в правом нижнем углу этикетки, в данном примере 05-0344 (первая цифра 7 - месяц выпуска)


    Семейства 3.5":
    Все накопители имеют конструктив в виде плоского основания с узнаваемой штампованной профилированной крышкой (см. фото). Код семейства PBxx написан на микросхеме ПЗУ.

    • По ранним разработкам компании, таким как M2611T или M2617T, никакой информации нет.
    • Picobird-9 (PB-9): M16xxTAU (старая система обозначений). 1996 год, 1-2 пластины, 1.28 Гб/пластина.
    • PB-10: MPA, 1-3 пластины, 1.74 Гб/пластина. Магниторезистивные головки. Первое семейство с поддержкой UDMA (модификация PB-10U).
    • PB-11: MPB, 1-3 пластины, 2.1 Гб/пластина
    • PB-12: MPC, 1-3 пластины, 3.2 Гб/пластина. Начиная с этого семейства, в модельном ряду появляются модели со скоростью шпинделя 7200 об/мин (PB-12H), в нём же объединяются в одну микросхему процессор и интерфейсный контроллер.
    • PB-13: MPD, 1-4 пластины, 4.32 Гб/пластина.
    • PB-14: MPE, 1-4 пластины, 6.4 Гб/пластина или 8.4 Гб/пластина (модификация PB-14E)
    • PB-15: MPF, 1-4 пластины, 10.2 Гб/пластина. Смена архитектуры процессора - модели на 7200 об/мин (PB-15H) ещё строятся на старой архитектуре Fujitsu MB9000, а модели на 5400 об/мин. - на новой ARM7 (чипсет производства Cirrus Logic)
    • PB-16: MPG. 1-2 пластины, плотность 10 Гб/пластина (PB-16H), 15 Гб/пластина (PB-16), 20 Гб/пластина (PB-16E, HE). Архитектура ARM7, первое семейство с гидродинамическими (FDB) подшипниками. Имело множество аппаратных проблем и дефектный микрокод, из-за чего стало одним из первых и самых крупных провалов на рынке HDD. Именно с этого семейства началось массовое изучение и ремонт жёстких дисков. Начинал с него и я.

    После провала в 2001 году линейки Fujitsu MPG, связанного с их массовым выходом из строя, компания ушла с рынка десктопных жёстких дисков и в дальнейшем производила только ноутбучные и серверные. Подразделение по производству жёстких дисков было продано компании Toshiba в июле 2009 года.

    У меня в коллекции нашлись для опытов PB11U, PB12 и PB15H, где-то ещё PB16HE должен валяться. В следлующей главе будет описание методик ремонта с особенностями каждого семейства, программы, утилиты и документация, ссылки на ресурсы.

    Статьи по теме:
    Статья о проблемах винчестеров Fujitsu MPG от Сергея Казанского (ONEHALF.PISEM.NET)
    Справочник по HDD. Fujitsu`2003
    Подборка фирменных утилит от производителя (диагностика, пеерключение режимов UDMA и т.п.)
    KALDYH
    Advanced Member
    Технонекромант

    Откуда: Кемерово
    Всего сообщений: 2355
    Рейтинг пользователя: 0


    Ссылка


    Дата регистрации на форуме:
    5 июня 2009
    Самое первое, что следует изучить по их ремонту - документация к PC3000. Архитектурно "фуджики" делятся на две группы:
    • http://www.acelab.ru/dep.pc/do..._MPG-3.pdf - по моделям с процессором архитектуры ARM7 (чип производства Cirrus Logic с интегрированным каналом чтения-записи, кодовое имя Himalaya): MPF-AT, MPG
    • http://www.acelab.ru/dep.pc/do...uj_MPE.pdf - по моделям с процессором архитектуры Fujitsu MB9000 (канал чтения-записи отдельный): MPF-AH, а также все более старые.
    Бонусом идёт отдельная инструкция к официально бесплатной демонстрационной полнофункциональной версии утилиты PCFUJTAU: http://www.acelab.ru/dep.pc/pr...au-doc.pdf
    http://www.osslab.org.tw/@api/deki/files/3953/=Fujitsu.pdf - документация к утилите из состава PC3000UDMA. Содержит также информацию по 2.5" моделям.

    Аппаратная часть
    Начнём с проблем железа. Модели с чипом Cirrus Logic страдают проблемой, прозванной "циррозом": http://www.antivirus.ru/Okno7_MPG.html
    [q]
    Долгое время многие ремонтники обвиняли во всем микросхему HA13627, которая очень сильно нагревалась при работе и иногда вспучивалась. А ее замена возвращала винт в рабочее состояние.
    Но вскоре выяснилось, что она здесь не причем - отремонтированные винты Fujitsu снова начинали жутко глючить, а в аналогичных дисках Samsung эта микросхема работала без нареканий. И еще было сделано интересное наблюдение - жесткие диски Fujitsu умирали даже от простого хранения на складе! Тогда и были проведены тщательные исследования, что и выявило истинную причину всех неполадок - нарушение технологии пайки элементов платы. Оказалось, что почти на всех заводах по сборке этих винтов применялся какой-то очень агрессивный флюс, который не удаляли с монтажа после сборки платы. Со временем он разрушал соединения выводов деталей с медными дорожками платы, а нагрев микросхем способствовал этому.
    По оценке некоторых специалистов, "особенно страдал от этого многофункциональный чип Cirrus Logic: испаряясь, флюс проникал сквозь поры пластмассового корпуса этой микросхемы, со временем выводя из строя ее кристалл, и начинались проблемы."
    Но основной причиной считается то, что между выводами микросхемы и контактными отверстиями, а также в переходный отверстиях многослойной печатной платы, образовывалась оксидная пленка, и электрический контакт нарушался. И именно этим объяснялись все мистические явления, происходившие с этими винчестерами: тепловые и механические воздействия приводили к временному восстановлению контакта, и жесткие диски ненадолго оживали.
    [/q]
    На самом деле причина другая. По результатам расследований, причиной выхода чипов из строя был назван "зелёный" halogen-free компаунд для корпусировки на основе красного фосфора, производства Sumimoto Bakelite.
    [q]
    Последний пример последствий дебилизма: "ах, надо запретить применение
    галогенсодержащих полимерных компаундов в производстве микросхем, а то при
    сжигании они диоксины выделяют". Hу что ж, Sumitomo Bakelite (снабжающая
    полимерными компаундами почти все "кремниевые" фирмы в мире) перешла на выпуск
    новоизобретенного компаунда - у которого в составе галогенов нет, зато есть
    фосфор.

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

    Больше всех от этого уже успел пострадать Cirrus Logic (и вслед за ним Fujitsu,
    применившая Cirrus'овские заказные контроллеры с ядром ARM7 в своих винтах серии
    MPG). О том, как сейчас эти MPG'шки сыплются, все уже знают.

    Кроме них, еще и IDT сообщила об отказах своих чипов памяти по тем же самым
    причинам. Да и Maxim сейчас тоже трясется в испуге - не пойдут ли массовые
    отказы и в их микросхемах (они тоже этот компаунд тоннами закупали). Ведь тогда
    Maxim'у придется попрощаться с привычным имиджем компании, дерущей втридорога за
    разрекламированную надежность своих микросхем...

    "Фосфорного" компаунда, по сообщению Sumitomo, было выпущено и распродано всего
    около 1000 тонн. Предположим, что на производство одной микросхемы его
    расходуется 0.5-1 грамм. Сколько всего микросхем с встроенной "химической
    часовой бомбой" гуляет теперь по миру, и каков будет ущерб мировой экономике от
    того, если хотя бы 10% изделий, где они применены, неожиданно засбоит и сдохнет
    - считайте сами. По моему - так существенно больше, чем от тонны диоксинов,
    попавших в атмосферу.
    [/q]
    Аналогичной болячкой страдают крутилки TDA5247HT на квантумах и коммутатор БМГ на них же.
    [q]
    Только что проделал небольшое исследование. Взял 2 цирруса, один от MPF-AT, которые не глючат, другой от MPG, ну и TDA5247HT от квантума. Просто переломал их корпуса пополам. На изломе, в толще компаунда, в месте, где проходят проводники к кристаллу смотрю под мощным микроскопом. В компаунде от MPF-AT ничего необычного. А вот в компаунде от MPG и TDA чрезвычайно интересная картина! При 200х увеличении отчетливо видны повсюду! какие то красные вкрапления. При 600х увеличении видно, что это мелкие кристаллы какого то вещества (очень красивые такие, прям как рубины и цвет как у рубина ). Некоторые из них относительно мелкие, некоторые крупные. Сейчас еще глянул 2 разные микросхемы памяти отодранные с дохлых видюх - все чисто, а в циррозах и TDA, которые дохнут с одинаковыми глюками - красные кристаллы.
    [/q]
    Статьи на тему:
    http://cdn2.hubspot.net/hubfs/...1928721593
    https://www.calce.umd.edu/TSFA/red_phosporous.pdf
    http://www.shippai.org/fkd/en/cfen/CA1000624.html
    Лечение (временное) - "прожарка" чипа или его замена. Подробный анализ дефекта и инструкция по его устранению - тут: http://forum.ixbt.com/topic.cgi?id=11:19775 , см. первый пост. А вот статья по замене чипа в домашних условиях, с картинками и видео
    Такхе частенько горит крутилка HA13627. Замену можно найти на платах Samsung.
    По замене плат. Внутри семейства существуют модели с разной плотностью, и так как таблица зонного распределения хранится в ПЗУ - при замене платы в общем случае необходима перестановка или перепрошивка ПЗУ. У накопителей MPG-AT в ПЗУ, кроме того, хранятся загрузочные адаптивы (один из первых случаев в истории), индивидуальные для каждого накопителя, их терять нельзя! Кроме того, при замене плат MPG-AH на MPG-AT и наоборот необходима перепайка двух резисторов и замена ОЗУ (AT - 512k, AH - 2Mb)

    Программная часть

    Терминала 3.5" Fujitsu не имеют. Доступ к служебной информации производится по интерфейсу IDE, после ввода ключа super-on. Весь микрокод и подпрограммы, необходимые для нормальной работы винчестера, хранятся в параллельном флеш-ПЗУ, таким образом, для инициализации нечитающего накопителя отправка данных по интерфейсу в ОЗУ не требуется. Однако, начиная с ARM7, появляются модули овелеев (номер 3Dh) с кодом, и для инициализации накопителя необходима их отправка. Если ПЗУ или оверлеи не читаются, работа с накопителем производится в т.н. Kernel mode.
    Организация служебной зоны на диске - классическая, модульная. Каталог модулей находится в ПЗУ. Доступ к модулям производится по их номеру-ключу.
    Пример ручной работы с модулями от Андрея Киреева (курсивом выделены мои примечания):
    [q]
    Если у Вас эта ситуация попробуйте зашить прогой HDDL (универсальный ATA терминал).

    Как это сделать?
    5.1. Сначала допишем ini - файл:
    _Valid_mode= 0000 fa 43 42 41 40 a0 c1 (это и есть super-on)
    _Read_sa_19= 0000 19 01 00 00 00 00 c2 ( 19 - дано для примера )
    Write_sa_19= 0000 19 01 00 00 00 a0 64 ( и добавте пустую строку )
    5.2. Запускаем прогу, заходим в "окно регистров"
    В окне "сохраненные соманды" выбираем
    _Valid_mode "загрузить", "выполнить"
    Далее выбираем нужное и "загрузить"
    В пункте регистр: 19 - правим на нужный регистр и "послать".
    5.3. В буфере обмена
    При _read_sa - "получить", "сохранить".
    При write_sa - "загрузить","отправить".
    [/q]
    Модули имеют краткое символьное имя. Некоторые модули:
    • HS (Head Select) - таблица выбора головок. Правкой этого модуля производится отключение головок. Утилиты делают это автоматически.
    • PL (Primary List) - секторный дефект-лист.
    • TS (Track Skip) - трековый дефект-лист
    • CS (Cylinder Skip)- цилиндровый (треки по всем головкам) дефект-лист, не у всех семейств, заменяет TS
    • SN (Serial Number) - серийный номер (тот, что на наклейке на крышке)
    • FI (Factory Information) - информация о прохождении заводского тестирования. Содержит дату выпуска накопителя.
    • CL (Component List) - перечень компонентов: тип магнитных головок (HEADS), дисков (MEDIA), микросхемы коммутатора-предусилителя (HD-IC), шпиндельного двигателя (DCM)
    • DM (DU) - таблицы транслятора. Можно пересоздать их из дефект-листов командой "Пересчёт транслятора".
    • DT - таблицы констант позиционирования, усиления по каналам и т.д. Индивидуальны для каждого гермоблока, терять их нежелательно!
    • ZP (Zone Plan) - таблицы зонного распределения
    • SM (Security Master) - мастер-пароль. Для снятия пароля - переписать его модулем от незапароленного накопителя
    • SU (Security User) - юзер-пароль, аналогично
    • SCH, SEQ, WTP, END, ECT, ERR, SVE и т.д. - результаты заводского тестирования
    • FA,RE,WE - логи ошибок
    • 09h, 0Ah, 0Bh - модули SMART
    • 20h у MPG - адаптивы. При их утере винчестер перестаёт нормально читать, в худшем случае - и удерживаться на сервометках. Процедура их подбора долгая и нудная, так что этот модуль лучше не терять.
    • 3Dh у ARM - программный оверлей. Должен соответствовать версии прошивки.
    Часть модулей, указанных в каталоге, на выпущенных накопителях в норме всегда отсутствуют (какие именно - см. документацию на конкретное семейство). При разрушенной или повреждённой служебной информации винчестер нормально распарковывается и выходит на готовность, но на любую команду отвечает ошибкой ABRT..

    Итак, для ремонта повреждённой служебной информации необходимо:
    • 1. Убедиться в исправности ПЗУ (винт раскручивается и даёт доступ к служебным командам). В случае необходимости - переписать ПЗУ донорским, взятым из ресурсов.
    • 2. Прочитать каталог модулей.
    • 3. Прочитать модули и проверить их целостность.
    • 4. Переписать повреждённые модули из ресурсов.
    Более подробно - см. документацию в начале сообщения.

    Скрытие дефектных секторов
    Селфскана у Fujitsu нет, ремапа также нет. Утилиты дают доступ к некоторым сервисным командам, применяемым при производстве и заводском тестировании накопителей, которые можно использовать для скрытия бэдов.
    • Тест сервометок - тестируется время декодирования сервометок, если оно выходит за установленные рамки - сектор или дорожка целиком добавляется в таблицу дефектов. Внимание! Во время теста сервометок дорожки переформатируются специальным образом, необходимым для работы последующих тестов! Для их успешного завершения тест сервометок должен быть пройден полностью! Информация на диске при этом безвозвратно уничтожается.
    • Сканирование поверхностей - поиск дефектных физических секторов. Перед запуском теста вначале обязательно должен быть пройден "Тест сервометок"!
    • Внутреннее форматирование - осуществляется форматирование накопителя, создаются сектора и производится пересчёт транслятора. Только после выполнения внутреннего форматирования винт получает возможность работы в обычном пользовательском режиме. Для начала форматирования необходимо, чтобы дефект-листы не содержали ошибок (например, адресов за границами рабочей зоны или дефекты по отключенным головкам), в противном случае форматирование вылетает с ошибкой сразу при попытке старта.
      Расшифровка ошибок форматирования (содержимого регистров):
      - 04h - неверно сформированные таблицы дефектов: 1F4, 1F5 - номер цилиндра, 1F6 - номер головки
      - 18h - разрушенная сервометка: 1F3-1F6 - LBA дефекта
    • Логическое сканирование - обычное сканирование по LBA. Утилита автоматически преобразует адреса найденных дефектных секторов в PCHS и добавляет в таблицу дефектов. После логического сканирования для скрытия найденных дефектов необходимо выполнить пересчёт транслятора.
    Также утилиты позволяют вручную добавлять сектора или треки в дефект-листы и выполнять их очистку.

    Таким образом, алгоритм скрытия дефектов выглядит следующим:
    • 1a. В случае небольшого числа бэдов и отсутствия дефектов серворазметки - выполнить логическое сканирование, внести найденные сектора в PL-лист, при необходимости сгруппировать дефекты в треки (TS-лист). Внимание: ёмкость дефект-листов ограничена!
    • 2a. Произвести пересчёт транслятора. Внимание: пользовательские данные при этом "разъезжаются", а содержимое скрытых секторов/дорожек теряется!
    • 1b. В случае большого числа бэдов или серьёзных повреждений дорожки (срыв позиционирования, скрежет, стук) - выполнить "Тест сервометок", добавить найденные дефекты в листы. Внимание: этот и дальнейшие тесты полностью разрушают пользовательские данные!
    • 2b. После теста сервометок произвести "Сканирование поверхности", добавить найденные дефекты в листы.
    • 3b. Запустить внутреннее форматирование и дождаться его успешного завершения.
    • 4b. Провести логическое сканирование по п. 1a. Если число найденных дефектов всё ещё слишком велико - повторить процедуру, начиная с 1b.
    Винчестеры Fujitsu допускают отключение головок, причём отключать можно как крайние, так и в середине пакета. Нулевая поверхность - системная, является неотключаемой, однако у старых семейств можно аппаратно обменять её местами с первой, напаяв на плату инвертор, у более новых это делается правкой ПЗУ. Подробнее - см. инструкцию к PC3000
    [q]
    Для диагностики и обслуживания винтов Fujitsu существует малоизвестная утилита IDE Faltool, которую почему-то убрали с официального сайта. Программа позволяет скрывать бэд-блоки и даже просматривать заводской дефект-лист на любых моделях Fujitsu в графическом режиме. Выглядит это очень прикольно, в чем вы можете убедиться, скачав эту прогу отсюда: http://savage2.winex.org/pub/d...%20ver4.3/
    [/q]
    Терминал
    Оказывается, у Fujitsu он есть. Подробнее - http://www.hardw.net/forum/arc...index.html

    Программы и утилиты

    Во-первых, разумеется, поддержка есть в PC3000. Где брать, я уже говорил. Во-вторых, в старых постах упоминается некий coolstuff (это ломаный набор утилит от 11-й версии), брать тут: тыц
    Свободно распространяемая PCFUJTAU: http://www.acelab.ru/dep.pc/products/utility.pcfujtau.zip

    Так как падёж Fujitsu MPG в своё время был массовым, это явление вызвало в сердцах и умах народа бурный отклик, и поскольку народ был тогда технически грамотным, а винчестеры не в пример проще нынешних, породило множество доморощеных утилит.

    http://hardw.net/forum/topic22.htm - HDD Fujitsu их проблемы и решения. Старый тред со старыми ссылками от Андрея Киреева, некогда легендарной в области винторемонта личности.
    http://hddremont.narod.ru/ by Shark - куча программ в одном месте: перечислять не буду, гляньте сами.
    http://savage2.winex.org/pub/d...%20(v1.5)/ - ещё одна подборка утилит
    http://www.scspb.ru/pchdd/index.html - сайт PCHDD.EXE
    http://www.fuj-mpg.narod.ru/ - ещё одна подборка утилит и документации
    http://stephan.win31.de/rare/Fujitsu-RecoveryToolV202A.zip - утилита автовосстановления служебки от самой фирмы
    Темы по ремонтам на ру-борде - читать и учиться
    http://project857.narod.ru/index.htm - три обстоятельные статьи по ремонту Fujitsu, а также кое-какие файлы

    Примечания по DMA режиму
    (взято с FAQ SU.COMP.OLD)
    Оптимальным режимом работы для винтов серии MPG является UDMA-66, а не 100, как заявлено производителем. Перeключалку режимов DMA можно скачать по адресу: ftp://retronn.de/mirrors/ftp.m...ma100c.zip

    У моделей Fujitsu M16xx выпуска 1996 - начала 1997 годов не pаботает pежим Multiword DMA, поэтому обмен идет в pежиме Single Word, в котоpом накладные pасходы гоpаздо больше и pеальная скоpость (даже пpи чтении из буфеpа) огpаничивается пpимеpно 6.7 Мб/с. В pежиме PIO 4 скоpость чтения из буфеpа винчестеpа может доходить до 12-14 Мб/с.
    ATauenis
    Advanced Member


    Откуда: Москва
    Всего сообщений: 2904
    Рейтинг пользователя: 0


    Ссылка


    Дата регистрации на форуме:
    30 апр. 2015
    KALDYH написал:
    [q]
    При разрушенной или повреждённой служебной информации винчестер нормально распарковывается и выходит на готовность, но на любую команду отвечает ошибкой ABRT..
    [/q]
    Только поздние модели с Cirrus Logic или все? А то пришлось превратить в точилку MPC3032AT, были целые головки, внешне нормальные блины, но диск при старте щёлкал головками около минуты, после чего головки резко вставали на 0 дорожку, и диск просто крутился, никак не определяясь компьютером. Особенность, что диск не останавливается при не читающейся служебке побудила сделать из этого фуджика точилку. :)
    Оффтопик: Оффтопик: Кстати, если сильно не давить, точит нормально. Хотя 5400 оборотов маловато, нужен крупный наждак.
    <<Назад  Вперед>> Страницы: 1 2 3 4 5 * 6 7 8 9 .. 75 76 77 78 79 80
    Печать
    Полигон-2 »   Документация »   Програмный ремонт жёстких дисков HDD
    RSS

    1 посетитель просмотрел эту тему за последние 15 минут
    В том числе: 1 гость, 0 скрытых пользователей

    Последние RSS
    [Москва] LIQUID-Акция. Сливаются разъемы CF
    МС7004 и 7004А на AT и XT
    Пайка термотрубок
    Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
    Подскажите по 386 материке по джамперам.

    Самые активные 5 тем RSS