日立硬盤固件結(jié)構(gòu)及模塊,固件數(shù)據(jù)的特點(diǎn)
作者:佚名 文章來源:本站原創(chuàng) 點(diǎn)擊數(shù): 更新時(shí)間:2013/7/15
核心提示:2003年,IBM公司和日立公司合作創(chuàng)建了環(huán)球存儲科技公司,所以現(xiàn)在市面上所出售的日立( Hitachi)硬盤,都是兩家合作的產(chǎn)物。所以,下文所指的日立硬盤皆為Hitachi-IBM硬盤。
2003年,IBM公司和日立公司合作創(chuàng)建了環(huán)球存儲科技公司,所以現(xiàn)在市面上所出售的日立( Hitachi)硬盤,都是兩家合作的產(chǎn)物。所以,下文所指的日立硬盤皆為Hitachi-IBM硬盤。日立硬盤固件數(shù)據(jù)的分布
日立硬盤固件由以下幾部分組成:
oROM中的微代碼(microcode)。
● 位于NV-RAM中的配置數(shù)據(jù),那些沒有NV-RAM硬盤(如,ATDA),這些數(shù)據(jù)存放盤面固件區(qū)中。
● 日立硬盤固件區(qū)的數(shù)據(jù)。
硬盤固件由固件版本號和版本代碼來表示。微代碼不斷更新形成了不同的固件版本號,它由ASCII表示;版本代碼實(shí)際上就是一個(gè)修訂號,它由16進(jìn)制數(shù)據(jù)表示。
日立硬盤掩膜ROM中存儲的固件信息,不能被修改。而NV-RAM以及SA overlays中固件數(shù)據(jù)可以做一些修改。IBM的研發(fā)團(tuán)隊(duì)采用以下標(biāo)準(zhǔn):當(dāng)固件代碼(CODE)不變時(shí),僅可
以修改固件版本號(NUMBER)。這種改變不會影響到整個(gè)號碼,僅僅影響到版本號碼的最后兩個(gè)字符。例如:如果固件版號為“A32A”被修改,那么更新后的版本號將改變?yōu)椋骸癆3XX”,其中“XX”代表兩個(gè)其他的字符串。
固件兼容的條件
不同家族的硬盤之間,其固件是不允許相互置換的。
Hitachi-IBM硬盤固件的兼容的必要條件如下:
-ROM、NV-RAM、SA overlay的固件版本代碼相同。
-NV-RAM和SA overlay的pL--code匹配。
記錄在ROM、NV-RAM以及SA overlay的固件版本號的最后兩位(僅最后兩位)可以不同。
硬盤電路板上的ROM種類
Hitachi-IBM硬盤電路板上有兩個(gè)或三個(gè)ROM芯片:
集成在處理器中的掩膜ROM。它包含執(zhí)行處理器代碼和默認(rèn)設(shè)置值。
相當(dāng)于串行存取的NV-RAM的Flash ROM。它包含訪問硬盤固件區(qū)的設(shè)置參數(shù)。由于硬盤家族的不同,其容量大小也有所不同,一般為如下三種選項(xiàng):256、512、1024字節(jié)。
第三塊ROM芯片,有些電路板上沒有裝配該芯片。這些芯片是一些已存儲有固件信息的串行Flash ROM,而不是掩膜ROM,所以該ROM中的代碼錯(cuò)誤允許修改。該芯片常
用于對硬盤裝載功能進(jìn)行簡單的測試,它位于NVRAM附近,其容量大小為lMb,類型為25FVlOIT。
NVRAM數(shù)據(jù)配置
NVRAM (Non-Volatile Random Access Memory)非易失性隨機(jī)存儲器,其特點(diǎn)為:可隨機(jī)讀寫信息,掉電后信息不丟失。
在曰立硬盤的NVRAM中存儲了硬盤的磁頭數(shù)量、固件區(qū)的起始地址信息、ROMoverlay模塊的校驗(yàn)和、以及盤片適配參數(shù)等重要信息。而在以往的硬盤產(chǎn)品中,磁頭數(shù)、盤片適配參數(shù)這些重要信息都存儲在ROM中。而日立硬盤產(chǎn)品的NVRAM中,增添了一個(gè)重要信息,即固件區(qū)的起始地址信息。
對每一個(gè)日立硬盤而言,固件區(qū)的起始地址(SA top)都是唯一的,即很難找到固件區(qū)起始位置完全相同的兩塊硬盤。這就是說,每塊硬盤只能與自己的NVRAM配合才能工作,是一一對應(yīng)的關(guān)系。一旦硬盤的NVRAM損壞或丟失,那么該硬盤將無法被操作系統(tǒng)或各種工具軟件所識別,更無法對硬盤的固件區(qū)進(jìn)行訪問,這將給數(shù)據(jù)恢復(fù)帶來一個(gè)比較大的障礙,對于這種故障,即使采用熱交換電路板也無法恢復(fù)NVRAM的原始信息。當(dāng)然,也并不是意味著如果某日立硬盤出現(xiàn)這種故障的,我們就給它判了死刑,如果能通過一種手段,找到故障盤固件區(qū)的起始位置,問題就會迎刃而解了。為此,PC-3000和效率漂都有自己解決問題的方法,下文會予以介紹。
固件數(shù)據(jù)的特點(diǎn)
Hitachi-IBM硬盤固件數(shù)據(jù)有其自身的特點(diǎn),具體表現(xiàn)為:
一是Hitachi-IBM硬盤有“open”固件模塊,對“open”固件模塊的讀、寫,不需要進(jìn)入技術(shù)模式。相當(dāng)一部分“open”模塊列表中的模塊來自于USAG/RESF(硬盤模塊的主表,部分呈現(xiàn)的是別名);與之相對應(yīng)的是“closed”固件模塊,它是Hitachi-IBM硬盤固件中的一些核心模塊,對“closed”固件模塊進(jìn)行的讀寫操作需要進(jìn)入技術(shù)模式。
二是在固件的存儲位置和其他硬盤區(qū)別在于,Hitachi-IBM硬盤電路板上,裝配有NV-RAM。NV-RAM的大小分別為:256、512及1024字節(jié)。NV-RAM中包含一個(gè)附加服
務(wù)模塊,用于調(diào)整特定型號的設(shè)置信息。
三是在Hitachi-IBM硬盤模塊列表中還包括廠商用于故障診斷應(yīng)用程序的附加模塊。大部分附加模塊,對硬盤功能而言不是必須的(有可能廠商不給安裝)。
四是固件的主要功能部分位于USAG/RESF的主模塊表中。盡管硬盤在加載固件時(shí)要讀取固件區(qū)的所有磁道,但USAG[RESF中的模塊并沒有占據(jù)全部固件區(qū)磁道。因此,所謂在主磁道的“空間( spaces)”是指那些沒被主模塊表中的模塊覆蓋的區(qū)域。如果這些空間不能夠被讀取,硬盤將初始化失敗。系統(tǒng)將給一個(gè)這樣的信息提示:“Error reading the tableof open modules”。
固件數(shù)據(jù)模塊
在表5-2和表5-4的“重要性”一欄中的代碼的意義。
A-硬盤的基本模塊:As-適配設(shè)置,Ad-譯碼表。如果重要性為A模塊與另一個(gè)硬盤的相同模塊進(jìn)行置換,將導(dǎo)致讀/寫設(shè)置和數(shù)據(jù)的丟失(例如:適配數(shù)據(jù)模塊)。
A模塊是必需的,但可以用另一個(gè)硬盤的相同模塊替換。通常情況下,硬盤的型號和固件版本應(yīng)該一致。
B模塊是必需的,但部分模塊的損壞不會妨礙硬盤驅(qū)動器的啟動。硬盤能夠糾正模塊的內(nèi)容(在缺陷重定位期間自動重新計(jì)算)。
C模塊不影響硬盤的運(yùn)轉(zhuǎn)及其操作性能。此類模塊通常包括模塊信息。Dd-用于生成硬盤譯碼器的原始缺陷列表。Dr一表示自測試技術(shù)模塊。
表5-2在3。5”驅(qū)動器中某些“closed”模塊的功能及用途
表5-4在2.5”驅(qū)動器中某些“closed”組件的用途
在分析固件時(shí),要注意在模塊內(nèi)沒有校驗(yàn)( checksum)字段,因此,試圖通過校驗(yàn)字段來鑒別固件模塊的結(jié)構(gòu)損壞與否,是行不通的。
Hitach-IBM硬盤能夠?qū)Σ糠忠殉跏蓟碾娐钒宓墓碳䲠?shù)據(jù)(NV二ROM必須初始化,對模塊操作不需要從固件數(shù)據(jù)區(qū)裝載固件)進(jìn)行讀、寫操作。因此如果硬盤中的一些模塊不可讀,并在查看了固件區(qū)結(jié)構(gòu)報(bào)告之后,鑒別模塊損壞這樣的問題就很容易。
Hitachi-IBM硬盤數(shù)據(jù)的基本模塊:PSHT、RDMT、SRVM、SRVM、ZONE、CNSL、MLBA,此外,你需要記住非常必要的內(nèi)容,即存儲在HV-RAM中的head map.