核心提示:硬盘在盘体与电路板装配完毕后,需要将固件烧写(burn-in)到ROM与盘面固件区,同时会生成一些参数保存到硬盘面固件区中。这些参数是通过“BurnTest”(也称为Self-Servowriting,或Servotest,或Self-test)过程来生成的。
硬盘在盘体与电路板装配完毕后,需要将固件烧写(burn-in)到ROM与盘面固件区,同时会生成一些参数保存到硬盘面固件区中。这些参数是通过“BurnTest”(也称为Self-Servowriting,或Servotest,或Self-test)过程来生成的。过程首先检测硬盘的区域分配Zoning、读参数、写参数等,然后对这些参数进行优化,最后写到盘面固件区中。通过BurnTest每个盘都会生成自身的独特参数。如果这些参数出错,就会造成硬盘不能正常工作,如产生坏道、敲盘、读写变慢、数据出错等。
三星硬盘广泛使用了动态译码器机制与自适应区域分配表,这也意味着大量参数对于每个盘来说都是独一无二的。为此三星设计了先进的自检/自恢复机制,利用BurnTest可以在硬盘关键且唯一的模块损坏时恢复对用户数据区的访问。需要注意的是,BurnTest主要用于修复硬盘而不能用来恢复数据。写入测试脚本并执行测试前,需要备份硬盘的模块和ROM。还需准备一个独立电源,因为根据硬盘情况不同,测试可能耗时几小时到几天。
执行BurnTest需要将Burn代码写到硬盘上。这些代码可以从网络获取或者从PC3000工具套件的数据库中搜索得到。这里利用PC3000三星程序来描述BurnTest的运行。
对于VANGOPLUS,PANGO,VELOCE,PALO与MAGMA家族的硬盘,还有两类代码:“DownSizeBurnCode”与“H/TCode”。H/TCode主要在硬盘使用当前ROM固件无法工作时用来恢复对固件区的访问。
“DownSizeBumCode”主要用于在“Downsized”小型化型号中代替“BurnCode”。所谓DownSize,DS型号一般是指单盘容量小于40GB的硬盘。例如SP0612N型号(2头),SP0802N(3头),SP1203N(4头)。因此需要运行BumTest时,应当在数据库中查找对应的资源,确定硬盘是否属于小型化型号,若是,则加载DS代码。“DownSizeBurnCode”可以用于硬盘缺陷太多的情形。如果某型号硬盘在BurnTest结束之前出现缺陷表溢出错误,可以运行“DownsizeBumCode”来将硬盘缩减到其对应的“小型化”型号。
VANGOPLUS家族是PANGO家族的小型化型号,因此“Downsize”代码是为前者设计的。若在运行BurnTest时程序在VANGOPLUS家族中找不到所需资源,可以尝试在PANG0家族中查找资源并使用其中的DS代码。
对于POSEIDON,P80M及以后家族硬盘的自检,还要用到HTBIcode与FFlashCode的固件资源。修改磁头映射图时,需要用到FFlash。