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

Полигон-2

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

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

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

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

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

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

<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 59 60 61 62 63 64 65 66 67 .. 75 76 77 78 79 80
Печать
 
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
Электронная часть винчестеров Samsung весьма надёжна, поэтому каких-либо указаний по её ремонту дать не могу.

Для изучения механической части, а также структуры служебной информации и методики диагностики с помощью HUTIL, доступны сервис-мануалы на некоторые семейства: http://files.hddguru.com/downl...20Manuals/

Самые первые диски семейства Apollo строились на микроконтроллере Motorola 68HC11, последующие - на интегрированных чипсетах компании Adaptec. Начиная примерно с Voyager, Samsung использует чипсеты собственной разработки. Начиная примерно с P40, платы делаются в основном на контроллерах Marvell, хотя чипы Samsung продолжают встречаться в некоторых редких моделях.

Программы и утилиты
Компания Samsung отличалась тем, что долгое время (дольше всех прочих производителей) осуществляла ремонт и рефаб своих накопителей в авторизованных СЦ. Поэтому для них доступен официальный софт и утилиты.

HUTIL - пользовательская диагностическая утилита, путём ввода ключа расширяется до сервисной. DOS/Win9x.
Инструкция и описание: https://web.archive.org/web/20...t4035.html
Кое-что о её возможностях: (взято с форума ihdd.ru, ссылка утеряна): (найти ссылку в архиве)
Последняя версия - 2.10. Все версии можно взять тут: http://files.hddguru.com/download/Software/Samsung/HUTIL/ или тут: http://www.hddoracle.com/viewtopic.php?f=129&t=81 (и там и там 2.10 уже "ломаная").
Руководство к HUTIL (на английском)

VTOOL - сервисная утилита с более широкими возможностями. По интерфейсу подобна HUTIL. Для DOS, некоторые версии требуют Windows. С ru-board.com:
[q]
Попадались Втулы таких версий

554 426 Vtool 4.49 tmp.EXE
529 018 Vtool 4.73e.EXE
542 218 Vtool 4.73i.exe
548 408 Vtool16 5.05a.EXE
369 623 Vtool32 5.04W.EXE
1 709 552 Vtool32 5.05a.EXE
1 840 624 Vtool32 5.07l.EXE
1 836 528 Vtool32 5.07N.EXE
1 844 720 Vtool32 5.07u.EXE - пере залито с MONITOR NET RU
555 586 Vtool32 5.75azl.EXE
1 025 306 VtoolFDD.exe
[/q]
Часть версий можно взять вот тут: http://files.hddguru.com/download/Software/Samsung/VTOOL/ , а также тут: http://www.hddoracle.com/viewtopic.php?f=128&t=232

WCube (Wincube) - сервисная утилита под Windows. Я её так запустить и не смог, кто сможет - пусть напишет в теме. Доступны версии 2.0.2 и 2.0.6. В программу также входит Vtool (как DLL). Программа, похоже, использует собственный драйвер IDE контроллера, в комплекте 2.0.6 есть только для Promise Ultra100. Представляет собой интерпретатор скриптов на языке Small-C. Взять версию 2.0.2 можно тут: http://www.hddoracle.com/viewtopic.php?f=130&t=233 , в том же архиве - мануал. Версия 2.0.6 тут: ftp://atxlab.ddns.net/ftp/hdd/sams/WCube%202.06/
Пример использования WCUBE: http://forum.ru-board.com/topi...art=220#20
LEO - подобна Vtool, но для совсем старых винтов (до V11P включительно, вроде бы). Единственная известная версия - 2.98, брать тут: http://files.hddguru.com/downl...LEO298.RAR Мануал внутри.
SUTIL
GEMINI
MiniWin (Mini Winstar) - программа для послесканового финишного стресс-тестирования. Не обнаружена, упоминается в документации. Представляет собой скрипт-машину, скрипты с расширением *.SPT есть в наличии. Описание

Программы сторонних разработчиков: (будет дополнено позже)
PC-3000 v14 поддерживает Samsung семейств APLUS (PLS-xxxx), Apollo 2-5, STARGATE, Winner-3A, Winner-1, 2, 3, 3x, 5, VG2 и VG6, P/V40, V60. PCSAMSPP.exe появляется только в версии 14.5, его в паке с крякнутой 14.0 может и не оказаться - ищите отдельно. Вот ещё мануал по Spinpoint от Windows-версии, по P/V80 включительно, и от PC-3000 UDMA - по всему модельному ряду от V11 до F4
HRT: есть в наличии мануал (HRT_SAM2.pdf) от старой версии
SeDiv также поддерживает Samsung. Демо-версия (только на чтение), пароль на архив - цифры от 0 до 9 и снова 0.
Китайская утилита SRT (Samsung Repair Tool) от China HDD Union. Отломанная утилита HRT Samsung_New. Тыц, тыц
MRT от MRTLab - если вы её раздобудете, самсунги она тоже поддерживает.
SHT - Samsung HDD tool от русскоязычного автора USSTO (редистрибьютор - ICCSYS, мутная, в общем, история) - ознакомиться и взять демки можно тут: http://www.hddoracle.com/viewforum.php?f=149 , мануал тут: ftp://atxlab.ddns.net/ftp/hdd/sams/man/MANUAL_EN.pdf

Структура микропрограммы

Особенность программной архитектуры - весь управляющий код хранится в ПЗУ, оверлеев практически нет нет даже у совсем новых моделей. Это здорово добавляет дискам в надёжности, т.к. порча ПЗУ встречается у них очень редко. У старых семейств ПЗУ - однократное или масочное, 16-битное, всегда в панельке для обновления и переконфигурации. у более новых используется flash-ПЗУ, также параллельное 16-битное.

Служебная область на диске организована по модульному принципу. У семейств до PALO расположение модулей хранится в виде смещений в коде ПЗУ, у более новых присутствует таблица модулей (также в ПЗУ). Кроме этого, копия таблицы записывается на диск в модуль FIT. Таблица содержит имя модуля, цилиндр/сектор, длину и флаги проверки заголовка и трековости. Модули могут иметь в своём теле заголовок (с именем в точности не совпадает). Назначение модулей (на примере PALO):
IDИмяОписание
00FSIFile System Information Record - запись о системных файлах
02FITFile Information Table - Таблица модулей
04MLISTТаблица дефектов служебной зоны (Maintenance), трековая
05SERVTBLТаблица параметров сервосистемы
06CONFIGКонфигурация накопителя. До PALO назывался UNITABLE
07SNTBLСерийный номер накопителя
08BISPTBurn-In script. Заголовок BURN - тестирование, END - нормальная работа.
09BRSLTРезультаты Burn-In
0ACRITERIAКритерии Burn-In теста
0BFINALTSTFinal Test
0CARCOTBLТаблица Arvanced Read Channel Optimization (CHN_TBL)
0DGEO_TBLГеометрические параметры зонной таблицы, SPT
0EVLISTHDRЗаголовок V-List
0FVLISTТаблица дефектных сервометок
10SLISTHDRЗаголовок S-List
11SLISTТаблица пропускаемых (slipped) секторов
12TLISTТаблица трековых дефектов
13ALISTТаблица замещённых (alted) секторов
14TMPRTRТемпература накопителя (текущая)
15SETMAXSet Max LBA
16SECURITYМодуль безопасности (пароли)
17SRVTBL2Резервная копия SERVTBL
18ARCOTBL2Резервная копия ARCOTBL
19OVERLAYОверлеи микропрограммы
1AHDAF_RPTОтчёт функционального теста
1BHD_DLISTDLIST функционального теста
1CLATCHFRCLatch force data
1DRCOSCRPTСкрипт RCO
1EBTIMEВремя Burn-In теста
1FERRTRKBit error rate на дорожку (BER)
20ERRZN...на зону (BER1)
21ERRDRV...на накопитель (BER2)
22SRTDATAКол-во ошибок данных Burn-In теста (ER_CNT)
23SRTSRVOКол-во ошибок сервосистемы Burn-In теста (SV_ERCNT)
24SCN_GRAYScan Gray data
25PARAM
PAR_MON
Burn-In channel parameter monitor
26WKHEADWeak Head data
27TSTPI
TPI_WRW
Данные теста TPI (см. "Адаптивное форматирование")
28MRTUNEMTПараметры настройки MR головок
2AGEO_00
TST_GEO
Таблица геометрии для подбора TPI/BPI
2BTST_ZHТаблица каналов для теста BPI
2CGEO_ZHРезультаты теста BPI
2DAZLBPI
2EAZLBPI0
2FAZLBPI1
30AZLBPI2
31AZLBPI3
32AZLBPI4
33AZLBPI5
34AZLBPI6
35SKTIME2Время позиционирования?
36RCO_LOGRCO лог (см. 1D)
37SMARTМодуль S.M.A.R.T.
38SMRT_LOGЛоги SMART
39SMRT_TSTЗаписи тестов SMART
3ASMRT_HLGОсновной лог SMART
3BBIAS_SHKBias shock data
3CHD_ERLOGЛог ошибок функционального теста (см. 1A, 1B)
3DELOGЛог ошибок Burn-In теста
3EIPC_DBGIPC Debug
3FSV_TRACEServo trace
40PES_LOG
41SPSTWPes Burn-In Log
41SPESB0(совпадение ID требует дальнейшего анализа)
42SPESB1
43SPESB2
44SPESB3
45SPESB4
46BIMODAL
47CAPSELВыбор ёмкости
48CURBPICurrent BPI
49AZLCSMСм. 2D-34
4AAZL_CSM0
4BAZL_CSM1
4CAZL_CSM2
4DAZL_CSM3
4EAZL_CSM4
4FAZL_CSM5
50AZL_CSM6
51SPSTWPes Burn-In log
52INSTABHD
53MRRTABLE
54NPV_RSLT
55TPICSC
56P60CODEРесурс для понижения модели до P60 (даунсайз)
57CAPSELDAСм. 47
58SEEKTIME
59HDAF_SPT
5AHDAFTIME
5BBTIME2Время повторного прохождения Burn-In
5CPMP
5DCONFIG2Содержит зонную таблицу, а также порядок зон
У более старых или более новых состав может отличаться. Дополнительная информация тут: http://www.hddoracle.com/viewtopic.php?f=44&t=1175

Транслятор и переназначение секторов
Транслятор у Samsung - динамический, строится в памяти из модулей SLISTHDR, SLIST, TLIST, ALIST. Заголовочный модуль SLISTHDR содержит кол-во дефектов в модуле SLIST и распределение их по зонам и головкам. У Victor и более ранних отсутствует, является частью SLIST. Информация из модуля TLIST должна дублироваться в модуле SLIST. Таблица зонного распределения содержится в модуле CONFIG.
Резервные сектора находятся в конце каждой зоны, подробнее - см. документацию Acelab.
У многих накопителей Samsung ремап выключен с завода. У каких семейств и как его включить - не выяснено.

Начиная с PALO/VELOCE и PANGO/VANGOPLUS (напоминаю, эти пары семейств построены на общих платах) вводится адаптивное зонное распределение (AZL).

Терминал

Контакты терминала:
Samsung 3.5" PATA - восьмиконтактный разъём сзади
...IDE...] [...RX]  ____
...BUS...] [...TX] /oooo\

Samsung 2.5" PATA - четыре дополнительных пина:
...IDE...] [ . . ]
...BUS...] [TX RX]

Samsung SATA
[''''PWR''''] ['''SATA'''] [ TX RX . . ]
Скорость 38400 (чип Samsung), 57600 (чип Marvell)
В ходе экспериментов на Winner (чипсет Adaptec, терминал там тоже есть) выяснилось, что битрейт в нормальной работе и в бурне можеь быть разным! Где какой - увы, не помню.

В рабочем режиме терминал выдаёт приветствие ENG> (Engine). При нажатии Esc накопитель переходит в режим DBG> (Debug) - отладка микропрограммы, ATA интерфейс при этом отключается. Переход из Debug в Engine - команда GO.
Другие режимы - BOOT> (загрузчик, команды отсутствуют) и SRV> (отладочный режим с миниальным набором команд).
Код ошибки выводится строкой, начинающейся с LED и дублируется морганием светодиода. Расшифровку кодов ошибок см. тут: http://forum.ru-board.com/topi...it=1&m=1#1 или тут: http://www.hddoracle.com/viewtopic.php?f=44&t=554&p=1359

Пример лога терминала с жёстко стучащего HM121HC (M5P1):

IS=+00003
SO
Ld
ENG>SRV> SR : +00000

  SvoTbl Loaded
Ud
Ld
Ud
Ld
Sk Fail,C:03BA
Sk Fail,C:ACF2
Sk Fail,C:AD2E
Sk Fail,C:AD6A
Sk Fail,C:ADA6
Sk Fail,C:ADE2
Sk Fail,C:AE1E
Ud
Ld
Sk Fail,C:AE5A
Sk Fail,C:AE96
Sk Fail,C:AED2
Sk Fail,C:AF0E
  BD
ENG>


Команды состоят из двух символов заглавными буквами (можно ввести больше символов, интерпретируются только начальные), параметры отделяются пробелами. Некоторые команды терминала:
  • HE - список команд. Пример с M5P1:
    ENG>HE
    DC MC BT PK DM MM SD SM VU TO CC EP EC CE SV XN
    XW XR XS XC XF XH XT XD HE RT D  DP DB DW DF DI
    M  MD MB MW MP MI FB FW SB CA RC BI DN DU LW LP
    LD FI BD BS BC GO R2 T2 SS NS DA DR MR
    ENG>
  • HE1 - более подробный список. Пример с того же M5P1 (после точки с запятой - расшифровка; добавлено мной):
    ENG>HE1
    DC >addr>              Display Channel
    MC addr data           Modify Channel
    BT ??                  SEE MANUAL     ; Вход на уровень BOOT>
    PK ??                  SEE MANUAL
    DM >addr>              Display Channel
    MM addr data           Modify Channel
    SD ??                  SEE MANUAL
    SM ??                  SEE MANUAL
    VU ??                  SEE MANUAL
    TO ??                  SEE MANUAL
    CC ??                  SEE MANUAL
    EP ??                  SEE MANUAL
    EC ??                  SEE MANUAL
    CE ??                  SEE MANUAL
    SV ??                  SEE MANUAL
    XN ??                  SEE MANUAL
    XW ??                  SEE MANUAL
    XR ??                  SEE MANUAL
    XS ??                  SEE MANUAL
    XC ??                  SEE MANUAL
    XF ??                  SEE MANUAL
    XH ??                  SEE MANUAL
    XT ??                  SEE MANUAL
    XD ??                  SEE MANUAL
    HE                                     ; Список команд
    RT                                     ; Сброс микропрограммы
    D                                      ; start [size = 8] -> Читать size слов или байт (в зависимости от модели) из ОЗУ начиная со слова/байта start и вывести их.
    DP                                     ; То же с теми же аргументами (только слова) для ПЗУ (порядок байт Big Endian)
    DB                                     ; start [size = 8] -> Читать size байт из ОЗУ начиная со байта start и вывести их.
    DW                                     ; То же, для слов
    DF ??                  SEE MANUAL      ; То же, для слов из ПЗУ
    DI ??                  SEE MANUAL
    M                                      ;  start [data...] -> Редактировать ОЗУ с байта/слова start. После нажатия ENTER, вводите байты в HEX. Для перехода к следующему байту/слову без изменения нажмите ENTER. Чтобы окончить, введите "." и нажмите ENTER.
    MD                                     ; То же
    MB                                     ; То же, для байт
    MW                                     ; То же, для слов
    MP                              
    MI                      
    FB                                     ; start pattern size -> 'Fill Bytes', заполнить size слов/байт ОЗУ с адреса start паттерном. Пример: FB 0 CAFE 20
    FW                                     ; То же, для слов
    SB                                     ; Установка битрейта
    CA                    
    RC ??                  SEE MANUAL
    BI ??                  SEE MANUAL
    DN ??                  SEE MANUAL      ; См. ниже
    DU ??                  SEE MANUAL
    LW ??                  SEE MANUAL     ; start size [z...] -> Записать size слов в ОЗУ с адреса start. Если присутствует z, ввод в HEX, иначе в ASCII. Конец ввода - по окончанию данных. Пример: LW 0 3 [ENTER] Hello! [конец].
    LP ??                  SEE MANUAL
    LD ??                  SEE MANUAL
    FI ??                  SEE MANUAL
    BD                                     ; Показать бреакпойнты (точки останова)     | Эта и следующие
    BS                                     ; x - Установить точку останова по адресу x | команды - на уровне DBG>
    BC                                     ; x - Удалить точку останова x
    GO                                     ; Вернуться на уровень ENG>
    R2 ??                  SEE MANUAL      ; RETURN?
    T2 ??                  SEE MANUAL
    SS                                     ; Переход к следующей инструкции во время отладки
    NS                    
    DA                                     ; x - Дизассемблировать код с адреса x (да-да!)
    DR                                     ; (x) - Отобразить регистры CPU, все или только x
    MR                                     ; x y - загрузить в регистр x значение y

    ENG>
  • RT - Reset
  • LB - просмотр результатов Burn-In
  • LT - просмотр T-List (пропущенные дефектные треки)
  • LV - просмотр V-List (дефекты сервометок)
  • LM - просмотр M-List (дефекты служебной зоны)
  • LR - просмотр R-List (переназначенные сектора, Remap)
  • LL - просмотр Pending List (ожидающие переназначения)
  • LS - просмотр S-List (пропущенные сектора, Slip-List)
  • LE - очистка A-List (он же R-List) дать доступ к служебной зоне
  • BT - переход на уровень BOOT>
  • DV - информация о прошивке
  • SU - раскрутка шпинделя
  • SD - останов шпинделя
  • PK - парковка головок. Сообщения:
    [q]
    Wk - seems to wake the drive
    Idl - seems to be the drive is Idle
    Sb - seems to be Standby.
    [/q]
  • DN (кол-во 16-бит слов HEX) - загрузка H/T или B/I кода. Сразу за отправкой команды посылается бинарный файл.
    [q]
    Возьмите HTBI. Размер его 30A00 байт (185H секторов). Разделите это число в калькуляторе (инженерный режим) на 2. Это кол-во слов(words) которыми и оперируют все команды загрузки в винт. Получится 18500H.
    Введите DN 18500 и нажмите Ентер. Ну и отправляйте контент бинарника HTBI в цикле. Подтверждая готовность к приему,после каждых 100H слов(т.е сектора) винт будет отплевывать в терминал 6Fh. (а может и не будет,у меня оч. мало Samsung'ов ). Будет. Это буква "o", кстати.
    После того как будет получено последнее слово,заработает LFRD и HDD произведет Erase флэш выведя букву Е,запрограмирует
    выведя букву P, и произведет верификацию (т.е видимо сравнит заново считав с буффером загрузки) выведя букву V. Если все прекрасно он так и скажет ОК! Вам остается
    а) выключить винт
    б) включить его и дождаться в терминале ENG>
    [/q]
    После отправки файла и прошивки на экране будет
    EPVOK
    BOOT>
  • DF (адрес начала) (длина в словах) - чтение ПЗУ. Сразу после нажатия Enter накопитель начинает слать бинарный файл.
  • SP - старт Burn-In. О процедуре бурна - см. в следующей главе.
  • FE - Flash Erase. Не посылать!

Вот более полные списки команд (на английском): https://forum.hddguru.com/view...le=desktop
https://forum.hddguru.com/view...le=desktop
Ошибки команд:

E:0001 - Inv Cmd
E:0003 - Req Prm
E:0004 -> Command not permitted in this level
E:0005 -> Argument value not in valid range.
E:0007 - Re-download

!В процессе дополнения!
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
В детали программного ремонта вдаваться не будем, потому что основным способом приведения в порядок жёстких дисков Samsung без сохранения данных является селфскан; в терминологии самсунга - BURN (бурн, Burn-In). Он выполняется микропрограммой, находящейся в ПЗУ.

Старт бурна
Старые семейства (Apollo, Winner, ранние Voyager)
Для проведения бурна нужен скрипт (Burn-In script) - модуль BISPT. Его заголовок представляет собой ключевое слово. Для запуска селфскана там должно быть слово BURN (BURN-IN-FLOW), у прошедших селфскан винтов там END (END-IN-FLOW). Чтобы запустить селфскан по новой, нужно считать модуль BISPT с диска, исправить заголовок с END на BURN и записать обратно, либо (при отсутствии скрипта на диске, например, у свежеизготовленой банки или после форматирования служебной зоны) его можно отослать в память по интерфейсу технологической командой. Примеры скриптов можно посмотреть в доках от Acelab (см. предыдущую главу). Провести бурн на старых моделях можно с помощью PC-3000 или LEO. Ася поддерживает не все тогдашние семейства, но формат команд принципиально не менялся, и можно просто выбрать ближайшую подходящую, на ваш взгляд, утилиту и попробовать поманипулировать в ней - валидность подключенного винта там не проверяется.

Алгоритм запуска бурна в PC3000:
1) Выполняем форматирование слубебной зоны
2) Поcылаем Burn-In script (находится в самой программе)
3) Подам команду на запуск Burn
4) Мониторим прохождение (см. ниже)
5) После успешного окончания винт готов к работе

Семейства до V10 до некоторой степени представляют собой "тёмное пятно" - поддержка их ремонтным софтом довольно скудна и требует самостоятельных раскопок. Вот тут, например, пример анализа SV0842H (V8) - можно посмотреть, например, на ключи и технологические команды.

V11P и новее
Начиная примерно с V11P, код, необходимый для проведения бурна, перестал умещаться в ПЗУ вместе с основным рабочим, и был вынесен в отдельную прошивку.

Микропрограмма для проведения бурна - Burn-In Code
Основная микропрограмма - Main Code

И то и то, строго говоря, не прошивка, а ресурс для отправки по команде 92h Download Microcode - файл содержит дополнительные данные заголовка, а само флеш-ПЗУ имеет непереписываемые участки (конфигурация, бутлоадер).

Порядок проведения бурна:
1) Находим подходящий для данного винта комплект - Main code, Burn-In Code, Burn-In Script
2) Отсылаем Burn-In Script
2.5) У VERNA - записываем Burn-In overlay
3) Записываем Burn-In Code
4) Передёргиваем питание. Винт выжидает пять минут, после чего начинается тест.
5) Мониторим, дожидаемся успешного прохождения
6) Передёргиваем питание, в течение пяти минут записываем Main Code, ещё раз передёргиваем питание
7) Фирменные руководства велят после бурна провести финальное тестирование в Miniwin, но можно и обойтись
8) Винт готов к работе

Для проведения бурна удобнее всего пользоваться VTOOL.

P80/V80 и новее
У этих серий появляется отдельный тест для подготовки служебной зоны - H/T Code (скорее всего, это вызвано введением адаптивного зонного распределения). В связи с этим меняется состав ресурсов и порядок проведения.

1) Находим подходящий для данного винта комплект - H/T Code, B/I Code, Main Code
2) Записываем H/T Code, передёргиваем питание, дожидаемся успешного окончания теста (он недолгий, до 15 минут)
3) Передёргиваем питание, записываем B/I Code, передёргиваем питание, дожидаемся успешного окончания бурна
4) Передёргиваем питание, записываем Main Code
5) Фирменные руководства велят после бурна провести финальное тестирование в Miniwin, но можно и обойтись
6) Винт готов к работе

P80PLUS и новее
У этих семейств бурновый код ПЗУ выносится в ресурс FFlash, а H/T Code и B/I Code объединяются в единый файл HTBI Code.

Дальнейший алгоритм скопипащен из табличек и мною не проверялся, также его можно упростить
1) Подбираем подходящий для данного винта комплект - FFLASH, HTBI Code, Main Code
2) Проводим Incoming Test в HUTIL
3) В зависимости от семейства, исполняем Burn Script в Gemini (NBURN) или в Wincube (см. по таблицам)
4) Записываем FFLASH Code, передёргиваем питание, записываем HTBI Code
5) Запускаем тестирование
6) Записываем Main Code
7) Проводим окончательное тестирование в Miniwin
8) Винт готов к работе


Также инструкции по прохождению Burn-In есть в сервис-мануалах (см. ссылки в предыдущей главе)
Ещё руководства (на английском): SAMSUNG REPAIR METHOD.docx (оттуда же http://www.hddoracle.com/viewtopic.php?f=33&t=550)


Ресурсы
Когда-то давно Samsung выкладывал их на закрытом сайте техподдержки для сервисных центров itself.sec.samsung.co.kr (ныне не функционирует, вот почему), прошаренные люди успели понабрать их и схоронить. Ныне ими делятся в привате, я свой архив успел понабрать на ныне нефункционирующем spruts80.mylivepage.ru (спасибо SPRUTSSSS80!) Мемориальная копия странички, если кому интересно.
Довольно многое есть тут: ftp://atxlab.ddns.net/ftp/hdd/sams/burn/
Почти всё есть тут: http://www.hddoracle.com/viewforum.php?f=114

Подбор комплектов ведётся по табличкам. Это обычные XLS таблицы, созданные разработчиками самсунга. Скачать можно, например, тут: http://www.hddoracle.com/viewtopic.php?f=44&t=653 а также тут: http://files.hddguru.com/downl...iption.rar или тут: ftp://atxlab.ddns.net/ftp/hdd/sams/man/ Если надо ещё - у меня спросите.
В этих же табличках на первом листе - инструкция по проведению бурна. и подсказка по Material Mixing.
Таблички включают в себя как Generic прошивки, так и OEM версии для разных заказчиков. Соответственные им ресурсы, в принципе, тоже имеются, можете поэкспериментировать, но в целом - не обращайте внимания.

Классификация ресурсов
(по материалам https://blog.acelaboratory.com...rces.html)

Main code - основная часть рабочей микропрограммы накопителя. Обычно содержит оверлеи. Расширение *.BIN или *.DN4, *.DN5 (у новых)
H/T code (Hardware Test?) - дополнительный тестовый код. Предназначен для отключения голов, тестирования железа накопителя, подбора адаптивных параметров и формирования служебной зоны "с нуля". Не содержит оверлеев. Расширение - *.DN
Burn Code - основной тестовый код. Тестирование поверхности и формирование транслятора. Может включать в себя оверлеи. Расширение *.BIN
H/T Burn-In Code - полная тестовая микропрограмма, объединяет функции двух предыдущих. У классических семейств всегда включает в себя оверлеи, у Trinity - не содержит оверлеев. Расширение - *.DN3 или *.DN4, *.DN5 (у новых)
FFlash - дополнительная тестовая микропрограмма, в отличие от HTBI Code - не содержит оверлеев.
Overlay (Burn overlay) - кодовый модуль на диске. У классических это модуль OVERLAY, у Trinity - BOVLY001. Если этот ресурс присутствует, значит, Burn Code или HTBI Code оверлеев не содержит. Расширение *.BIN, содержит в имени буквы "ovl"
Burn-In script - см. выше. H/T или HTBI code создаёт его самостоятельно. Расширение *.BRN
НЕТ оверлеевЕСТЬ оверлеи
H/T CodeMain Code
FFlashBurn Code
H/T Burn-In Code (Trinity )H/T Burn-In Code (классические)
Имена файлов составляются приблизительно следующим образом. Сначала две буквы - код модели (в первом приближении совпадает с первыми двумя буквами версии микропрограммы). Затем две цифры и буква - версия. Далее - буква, определяющая тип ресурса (F - H/T code, B - Burn-In code, M или отсутствует - Main code), эта буква может отделяться подчёркиванием. Смысл последних символов не ясен.


Вообще говоря, ресурсы доступны и на более новые семейства, чем классифицированные мною в таблице (F3, F4, M7E, M8E, MP4, MT2 и др.) Запуск бурна на них оставлю вне рамок данной статьи, обращайтесь за помощью в http://forum.ru-board.com/topic.cgi?forum=84&topic=5293

Заливка микропрограмы
Помимо комплексных утилит, отправку микропрограммы умеют делать:
Флешеры от обновлялок прошивки: http://files.hddguru.com/download/Software/Samsung/FLASH/
Особенно удобно было с PALO и PANGO работать.
Также залить прошивку и запустить селфскан можно через терминал. Команды для этого и их описание см. в предыдущей главе. Облегчить процесс может некая программулина IDEHOST (S-IDE TESTER APP ver1.1)

Safe mode
Если накопитель не выходит на готовность (что, надо сказать, бывает довольно редко), залить в него микропрограмму (только flash, без оверлеев) можно, установив три перемычки в зад - Master, Slave, CS
[:::::::::::::] [|||:] /oooo\
У SATA накопителей STORM2, T166, TRIDENT3, это две перемычки
[ PWR ] [SATA] [|::|]
У SATA 2.5" - две перемычки вот так:
[ PWR ] [SATA] [П П]
Терминал в этом режиме недоступен.

Мониторинг Burn-In
Мониторинг производится в терминале. Также на плате есть место для подключения светодиода:

(картинка)

После старта бурна светодиод загорается и горит непрерывно. По окончанию бурна винт останавливает шпиндель и начинает часто моргать светодиодом, если всё ОК, и вымаргивать код ошибки в случае неудачи. Расшифровку кода см. в главе "Терминал".
Также мониторинг можно вести по состоянию регистров ATA. В этом вам поможет, например, программа BiMon от Сергея Белова aka Wildwhiteash (ещё одна версия BurnInMonitor). В принципе, этими же программами можно мониторить селфскан и у других производителей (WD, Maxtor), правда, расшифровки регистров там нет.

Финишные действия
После заливки майновой прошивки по-хорошему делаются какие-то действия скриптом в Miniwin. Точный их смысл я не устанавливал, но обнаружил, что нужно включить SMART вручную - иначе на команду получения SMART винт ничего не отдаёт. Я просто сделал Clear SMART в SRT, и он заработал.

Даунсайз

Отключение головок
Отключением головок (в терминологии Samsung - Head Killing) заведует H/T Code. В SRT отключение выполняется кнопкой "Set Bad Head". Выставляем галочками головы, которые нужно отключить, на запрос файла подсовываем H/T Code или FFlash (смотря с чего начинается бурн у данного винчестера).
Также отключенте голов делается в HUTIL или VTOOL. Фирменные мануалы:
KILLING_PROCESS.pdf
How to Judgment for Killing.pdf
У древних Winner-ов с масочным ПЗУ в колодке переход на младшую модель осуществлялся только заменой ПЗУ с нужной микропрограммой. Таблицу версий прошивок см. в документации к PC-3000.

В процессе дополнения...
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
Аббревиатуры и сокращения
VSC - Vendor Specific Command
M/C - Maintenance Cylinder, служебная зона
PES - Position Error Signal
HDA - Hard Disk Assembly
PCBA - Printed Circuit Board Assembly
VCM - Voice Coil Motor
SPM - Spindle Motor
ID - inner diameter
MD - middle diameter
OD - outer diameter
B/I - Burn-In
D/F - Defect Free
RCO -
RRO -
AM - Address Mark
NR - Not Ready
DCO - Drive Configuration?
VU - Vendor Unique
S/C -

Часто задаваемые вопросы и ответы

В: Прошивку бурновую залил,а бурн сам не стартует!
О: "Пните" его в терминале: ENG>SP

В: Как мне сбросить SMART?
В: Как мне очистить A-List?
О: С помощью Vendor Specific команд: https://forum.hddguru.com/view...le=desktop
Подать их можно любым ATA терминалом, например, такая функция есть в SHT Demo.
Или воспользоваться SRT - там есть кнопочки для того и для того.

В: А как у самсунга с взаимозаменяемостью плат?
О: Неплохо так. Если нужно выдернуть данные с дохлой платой - прикручиваем целую плату той же модели и прошиваем нужным Main code (если плата снята с другого семейства, например, на PUMA с VERNAPLUS - скорее всего, шить придётся в Safe mode). Более подробно - см. документацию PC-3000. Сам я не пробовал.
Если винт под селфскан - можно попробовать прикрутить плату и другой модели, лишь бы маркировка семейства на банках совпадала. У меня получилось на Winner пройти селфскан с какой-то левой платой, было лишь общее сходство. Критерий шансов на успех - отсутствие стука.

В: Как с надёжностью у "тонких" SV/SP0411N? Я слышал, что у "тонких" максторов с этим не очень...
О: Нормально всё.

В: Где бы мне подсмотреть vendor specific команды Samsung?
О: Тут, например, есть кое-что: http://www.hddoracle.com/viewtopic.php?f=19&t=1960

В: Какая у них архитектура процессора?
О: Можно в режиме DBG> попробовать дизассемблер (см. в главе "Терминал"). Вот тут товарищ на своём винте опознал, что у него OakDSPCore. У древних APLUS была Motorola 68HC16.

В: Могу ли я как-нибудь обновить фирмварь у своего винта?
О: Да. Прошиваем в него подходящий main code любым из способов (см. выше), не забываем передёрнуть питание, готово. Данные не теряются.
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
За время написания статьи в ходе экспериментов успешно привёл в порядок ноутбучный Samsung HM121HC (семейство M5P1). Стучал, но выходил на готовность и читался на первых мегабайтах. Отключил 1-ю головку, прогнал селфскан с помощью SRT, на выходе получил абсолютно рабочий HM080GC. Ничего сложного, самым проблемным оказалось вычислить неисправную голвку - просмотр A-List не работал, пришлось высматривать сообщения о ремапах в терминале.


Ну вот, по самсунгам пока всё.
aleksvolgin
Advanced Member


Всего сообщений: 2123
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
21 нояб. 2010
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
aleksvolgin написал:
[q]
Приспособа.
[/q]
Это чтоб SPI флешку шить без выпаивания. Изящно сделано, но для любительских условий - оверкилл.
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
Перепала в руки плата от Quantum Prodrive LPS 52/85/105AT

Процессор NEC D78312AGQ. Вот прошивка от неё, версия K2300. https://drive.google.com/file/...sp=sharing
aleksvolgin
Advanced Member


Всего сообщений: 2123
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
21 нояб. 2010
Оффтопик: Оффтопик: На руборде в профильной теме разговор про jtag на самсунг.
napalm_atx
Newbie


Всего сообщений: 6
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
9 нояб. 2018
Здравствуйте, приятно видеть, что мой домашний ФТП сервер кому-то оказался полезным. По поводу ремонта Самсунгов, я вполне успешно использую WCube 2.0.6 так же к нему необходимо установить vtool 6.0.5j работает программа под версией не выше Windows NT 5.2 проверена работоспособность на контроллерах Intel ICH5r ICH7r IDE порт работает "искаропки" sata порты работают в режиме эмуляции ide. Так же в каталоге программы должен располагаться файл cube.ini следующего содержания:


//-------------------------------------------
//- By: Daniel
//- Date: 08/08/2003
//-
//- This is the CUBE Initialization file
//-
//- Here, we will scan for controller and
//- set/load driver for the first controller found
//==============================================================
// Identifier Description
//-------------------------
// DRIVE Drive selector (0 == Primary, 1 == secondary)
// SLAVE Drive selector (0 == Master, 1 == slave)
// PWR_CONTROL Power controller type specifier (default is set to 1)
// 0 == No power controller
// 1 == Parallel control
// 2 == Samsung ISA power controller
// 3 ==
// 4 == Samsung PCI power controller
//==============================================================
void main(void)
{
scanallpci;
setha(3);
DRIVE=1;
SLAVE=0;
PWR_CONTROL=0;
return;
}


У меня работает на материнской плате ASUS P5WDG2 WS Pro под управлением Windows XP. На материнке только один ide канал, соответственно в cube.ini у меня прописано DRIVE=0 SLAVE=0. так же в диспетчере устройств должен быть отключен тот канал IDE с которым вы работаете
KALDYH
Advanced Member
Технонекромант

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


Ссылка


Дата регистрации на форуме:
5 июня 2009
napalm_atx написал:
[q]
работает программа под версией не выше Windows NT 5.2
[/q]
А, вот где, наверное, собака порылась! У меня-то XP на рабочей машине стоит, и менять её как-то неохота. Ладно, потом попробую ещё один комп собрать, а пока что Самсунги на починку кончились.
<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 59 60 61 62 63 64 65 66 67 .. 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