專利名稱:通過動態(tài)重新映射來適應(yīng)數(shù)據(jù)存儲介質(zhì)上介質(zhì)缺陷的增長的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及如硬盤驅(qū)動器,光驅(qū)動器,以及類似的數(shù)據(jù)存儲設(shè)備。尤其是,它涉及到這些存儲設(shè)備中對缺陷的檢測,糾正和報告。
背景技術(shù):
諸如硬盤驅(qū)動器,磁帶驅(qū)動器,及類似的典型數(shù)據(jù)存儲設(shè)備利用了磁性的存儲介質(zhì),可以從這種介質(zhì)中讀出數(shù)據(jù)和/或向它寫入數(shù)據(jù)。典型的磁性存儲介質(zhì)包括可磁化的材料層,它可以進行有選擇的磁化,并產(chǎn)生磁性轉(zhuǎn)換(transition)以表示已存儲的信息。技術(shù)的革新不斷的減少了在存儲介質(zhì)上表示每一比特信息所需的面積,這樣就允許在存儲介質(zhì)上存儲更多的信息量。例如,硬盤驅(qū)動器可以由一個或者多個磁盤構(gòu)成,其中每個磁盤被劃分成若干個同心的磁道,并且每個磁道劃分為扇區(qū)的極座標(biāo)陣列(polar array of sectors)。存儲密度的增加既降低了現(xiàn)代硬盤驅(qū)動器中所使用的磁盤上磁道的間距(pitch),又降低了其扇區(qū)的大小,其結(jié)果使存儲容量不斷增大。
但是,當(dāng)存儲密度增加時,數(shù)據(jù)存儲設(shè)備對介質(zhì)缺陷的敏感度也會增加。特別地,對于磁盤以及其他的磁性存儲介質(zhì),磁性層的不完整性可以反映(render)在不能使用的存儲介質(zhì)上的特定區(qū)域存儲信息。這樣的介質(zhì)缺陷的大小范圍可以從非常小,例如,僅僅影響包含很少磁道的幾個扇區(qū),到相對較大的區(qū)域范圍,例如,影響包含很多的磁道的許多扇區(qū)。此外,隨著存儲密度的增加,給定大小的介質(zhì)缺陷將會相反地影響成比例的較大數(shù)量的扇區(qū)和磁道。
不考慮堅持適當(dāng)?shù)闹圃旒夹g(shù),在特定的每個制造的磁盤中至少存在一些介質(zhì)缺陷。通常,這些介質(zhì)缺陷是由于磁盤驅(qū)動器的電子元件,通過從由驅(qū)動器識別為可使用的存儲區(qū)域中未損壞的去除“損壞的(defective)”扇區(qū)獲得的。在很多的磁盤驅(qū)動器的設(shè)計中,在磁盤驅(qū)動器制造過程中要執(zhí)行表面分析測試(SAT),例如,在磁盤初始低級格式化時。在SAT的過程中,磁盤中已損壞的扇區(qū)被識別出來,然后將其存儲在表格中,并重新映射到位于磁盤上未損壞區(qū)域內(nèi)可用的替代扇區(qū),或者“空閑”扇區(qū)。接著,只要驅(qū)動器試圖訪問該已損壞的扇區(qū),就可以訪問到已經(jīng)被映射到該損壞扇區(qū)上的空閑區(qū)域上。
相似的,在某些磁盤驅(qū)動器的標(biāo)準(zhǔn)操作過程中,可能會檢測到其他的缺陷,例如,在不成功的讀操作中檢測到的軟性錯誤(softerror)。在這種例子中,可以用與在SAT過程中執(zhí)行的重新映射相似的操作在由驅(qū)動器識別為可用的存儲區(qū)域中清除最新檢測到缺陷。
然而,已經(jīng)發(fā)現(xiàn),由于諸如熱力學(xué)和機械應(yīng)力及其他介質(zhì)損害機制等多種因素,某些介質(zhì)缺陷的大小會隨著時間的增加而有所增加。這樣,介質(zhì)缺陷有時可能會影響那些與已經(jīng)識別為損壞的扇區(qū)相鄰的、但是在SAT過程中原本被識別為未損壞的扇區(qū)。在未損壞扇區(qū)所占空間上的介質(zhì)缺陷增長所造成的一個結(jié)果就是存儲在該扇區(qū)內(nèi)的信息的丟失。
通常,為了適應(yīng)介質(zhì)缺陷的增長,在被識別為損壞的扇區(qū)附近的多個扇區(qū),它們通常被稱為“填充”扇區(qū),可以在SAT過程中和/或隨后的重新映射新的缺陷的時候被標(biāo)志為不可用,這樣就在每個介質(zhì)缺陷的周圍建立一個緩沖區(qū)。從驅(qū)動器電子學(xué)的觀點上來看,就是把填充扇區(qū)作為損壞的扇區(qū)來處理,這樣,每個介質(zhì)缺陷的周圍的緩沖區(qū)域就不能夠用來存儲信息。
使用填充扇區(qū)的方法在提供了適應(yīng)介質(zhì)缺陷增長的能力的同時,也在存儲容量和可靠度之間形成了不希望的折衷。增大每個介質(zhì)缺陷周圍的緩沖器區(qū)域的大小,就可以適應(yīng)相對更多的缺陷增長,也就增加了可靠度,但是這樣做的代價是降低了磁盤上可用的面積。同樣的,在每個介質(zhì)缺陷的周圍選擇最小的填充扇區(qū)數(shù)量就增大了存儲容量,但是很有可能發(fā)生介質(zhì)缺陷超過它設(shè)定的緩沖器區(qū)域的情況,這樣就導(dǎo)致了數(shù)據(jù)丟失。
因此,在本領(lǐng)域中非常需要對在磁盤或者其他數(shù)據(jù)存儲介質(zhì)上處理介質(zhì)缺陷增長方法進行改進,并且特別地,也需要經(jīng)過改進的方法可以更好地調(diào)節(jié)存儲容量和可靠性之間的平衡。
發(fā)明內(nèi)容
本發(fā)明解決了這些問題以及其他和現(xiàn)有技術(shù)相關(guān)的問題,它提供了映射數(shù)據(jù)存儲介質(zhì)上缺陷的設(shè)備、程序產(chǎn)品及方法,其中分析了在該介質(zhì)上被預(yù)先識別(previously-identified)的一個或者多個缺陷,以檢測這些缺陷隨著時間的增長,這樣任何檢測到的預(yù)先識別的缺陷增長就可以通過將缺陷附近其他的表面區(qū)域動態(tài)重新映射到一個或者多個位于存儲介質(zhì)其他位置上的替換區(qū)域上,以進行適應(yīng)。這樣,當(dāng)這些缺陷隨著時間增長的時候,預(yù)先存在(pre-existing)的缺陷周圍確定為緩沖區(qū)的區(qū)域得到了有效的保持,這樣可以保證適當(dāng)?shù)谋Wo以免數(shù)據(jù)丟失,否則如果試圖在該區(qū)域存儲器儲信息就會造成數(shù)據(jù)丟失。
例如,在和本發(fā)明一致的一個實施例中,在磁盤驅(qū)動器的用戶初始化操作之后可能會訪問由硬盤驅(qū)動器使用的缺陷圖(defectmap),來識別一個或者多個填充扇區(qū),這些扇區(qū)已經(jīng)重新映射到磁盤上與已識別為介質(zhì)缺陷相關(guān)的空閑扇區(qū)上。然后可以掃描這樣的填充扇區(qū),來檢測它們本身是否已經(jīng)損壞,這樣就可以指示介質(zhì)缺陷是否實際上已經(jīng)隨著時間增長了。對于任何這樣檢測到的已損壞的填充扇區(qū),應(yīng)該對缺陷圖進行更新來標(biāo)識那些已損壞的填充扇區(qū),并且重新映射一個或多個與這些填充扇區(qū)相鄰的附加扇區(qū),并在缺陷圖中創(chuàng)建另外的填充扇區(qū)。
這些以及其他成為本發(fā)明的特征的優(yōu)點和特點將在附在后面的權(quán)利要求中詳細(xì)說明,并且形成了本發(fā)明的另一個部分。但是,為了更好地理解本發(fā)明,理解本發(fā)明的優(yōu)點,以及通過使用它而達(dá)到的目標(biāo),應(yīng)該參考附圖進行說明,它詳細(xì)說明了本發(fā)明的示例性實施例。
圖1是數(shù)據(jù)存儲設(shè)備的框圖,它包含了與本發(fā)明相一致的動態(tài)重新映射。
圖2是幾種數(shù)據(jù)結(jié)構(gòu)的框圖,它們被應(yīng)用在圖1中的數(shù)據(jù)存儲設(shè)備的動態(tài)重新映射中。
圖3A和3B是圖1所示的數(shù)據(jù)存儲設(shè)備中動態(tài)重新映射的一個應(yīng)用程序的流程圖。
圖4是參考圖3A和3B所示的重新映射處理器程序的流程圖。
圖5A到5D是磁盤表面上示范性的介質(zhì)缺陷的框圖,以及這些缺陷增長和應(yīng)用圖3A和3B的動態(tài)重新映射程序?qū)崿F(xiàn)的容錯的框圖。
具體實施例方式
在下文中討論的實施例應(yīng)用了動態(tài)重新映射來適應(yīng)已超出為這種缺陷建立的原始緩沖區(qū)的介質(zhì)缺陷的增長,例如,數(shù)據(jù)存儲設(shè)備中數(shù)據(jù)存儲介質(zhì)在操作過程中由于可能遭受的熱力學(xué)或者機械的應(yīng)力,或者其他介質(zhì)的損害機制造成的缺陷的增長。
在與本發(fā)明相一致的一些實施例中,可以提供空閑時間重新映射的特性來周期性地檢查存在的缺陷,并確定在缺陷周圍建立的緩沖區(qū)域(典型地用填充扇區(qū)實現(xiàn))沒有被損害(compromised)。例如,在空閑的時間里,與本發(fā)明相一致的一個實施例可以掃描已識別的填充扇區(qū)來標(biāo)識任何不能再讀取的這樣的扇區(qū)。通常,在填充扇區(qū)中不能修復(fù)的數(shù)據(jù)就表示這個相鄰的介質(zhì)缺陷已經(jīng)增長,因此為了阻止缺陷的進一步增長,這樣的實施例可以執(zhí)行另外的重分配程序,以在已擴大的缺陷周圍建立一個更大的緩沖區(qū)或者填充區(qū)域,否則如果缺陷增大到可用的區(qū)域內(nèi)將會導(dǎo)致數(shù)據(jù)的丟失。
在不同的實施例中,原始的缺陷可以在SAT過程中檢測到,或者可以稍后檢測到,例如在已經(jīng)初始化的數(shù)據(jù)存儲設(shè)備的操作使用之后。但是如果不考慮這些缺陷的來源,應(yīng)該應(yīng)用相似的動態(tài)重新映射過程來標(biāo)記這些缺陷的增長。
與本發(fā)明相一致的實施例典型地執(zhí)行動態(tài)重新映射程序,通過試圖在數(shù)據(jù)存儲介質(zhì)上檢測預(yù)先識別的缺陷增長,然后作為檢測到這樣的增長的響應(yīng),將一個或多個和缺陷相關(guān)區(qū)域相鄰的區(qū)域重新映射來實現(xiàn),在此把它稱作“缺陷區(qū)域”。典型地這種重新映射發(fā)生在將相鄰區(qū)域重新映射到一個或多個替代區(qū)域的過程中,典型的這種替代區(qū)域是在所述的動態(tài)重新映射過程之前由缺陷區(qū)域重新映射的其他替代區(qū)域之外的區(qū)域。
在下文討論的一個示范性的實施例中,例如,諸如硬盤驅(qū)動器的數(shù)據(jù)存儲設(shè)備可能包含一個或者多個磁盤,該磁盤的表面在邏輯上排列成扇區(qū)陣列,并進一步排列成多個同心圓的磁道或柱面。典型地,缺陷區(qū)域既包含數(shù)據(jù)無法修復(fù)的損壞扇區(qū),還包含本身并沒有損壞的填充扇區(qū),但是它在損壞扇區(qū)的周圍提供了緩沖區(qū)域,來適應(yīng)由預(yù)先存在的缺陷增長造成的數(shù)據(jù)的丟失。典型地,作為SAT或者隨后的測試的結(jié)果,在缺陷區(qū)域內(nèi)的損壞扇區(qū)和填充扇區(qū)將被重新映射到位于磁盤其他位置的可用的空閑扇區(qū)上(例如通過內(nèi)聯(lián)(inline)或者外部(offsite)重分配),這樣試圖訪問這樣的扇區(qū)的結(jié)果就是將該訪問轉(zhuǎn)移到對應(yīng)的空閑扇區(qū)上。
由于在這里描述的實施例是基于固定的硬盤驅(qū)動器的,所以它使用包含磁性層的磁盤,可以理解本發(fā)明可以應(yīng)用到其他的環(huán)境中,在這種環(huán)境下應(yīng)用的存儲介質(zhì)也可能遭受介質(zhì)缺陷的影響,例如,多種可去除的或者固定的磁性或者光介質(zhì)。因此,本發(fā)明并不限于在此討論的特定的環(huán)境。
正如在下文中將要變得更加明顯的,通過重新分配在缺陷區(qū)域附近的額外的填充扇區(qū)來增大緩沖區(qū)域的算法可以根據(jù)不同的情況而改變。例如,希望根據(jù)觀察到的增長的類型來設(shè)計算法。有方向性的填充將填充扇區(qū)的增加僅限制在檢測到的增長方向上,這樣的算法也許適合諸如介質(zhì)的裂開的缺陷,而這樣的缺陷決定了缺陷將沿著特定的方向增長。另一方面,圓周填充算法試圖在增長的缺陷周圍保持統(tǒng)一的緩沖器,這種算法在整個缺陷區(qū)域周圍設(shè)置額外的重分配的時候比較理想,例如,標(biāo)記(address)嵌入的顆粒或者介質(zhì)的凹點(pit)。但是,由于這兩種的算法可以單獨使用,在某些實施例中,根據(jù)檢測到的介質(zhì)缺陷的特性動態(tài)選擇不同的算法是理想的。
通過應(yīng)用在這里描述的動態(tài)重新映射方法,數(shù)據(jù)存儲設(shè)備可以進行激活前(pro-active)測量來減小由增長的缺陷造成的數(shù)據(jù)丟失。此外,可以在檢測到的介質(zhì)缺陷區(qū)域的周圍應(yīng)用典型的更小以及更加具有侵蝕性(aggressive)的緩沖區(qū)域來使從數(shù)據(jù)存儲介質(zhì)的可用空間中去除的空間量最小化,這樣就最大化了存儲的容量。
在與本發(fā)明相一致的一些實施例中,在動態(tài)重新映射中應(yīng)用的不同的參數(shù)和特性可以由制造者或者用戶配置。這些參數(shù)中的一些可以包含,例如(1)在空閑時間內(nèi)將缺陷增長檢測開啟或者關(guān)閉的能力,(2)在執(zhí)行額外的填充程序之前讀取填充扇區(qū)所允許的數(shù)據(jù)恢復(fù)的步驟數(shù),(3)在預(yù)測故障分析(PFA)操作被觸發(fā)之前可以發(fā)生的重新分配的總數(shù),(4)所使用的填充算法(例如,方向性填充或者圓周填充),及(5)確定對特定缺陷可以增加的額外填充的次數(shù)的能力。
通過下文描述的實施例,其他的變化和修改將變得更加明顯。
現(xiàn)在來看附圖,其中相同的附圖標(biāo)記在多個附圖中標(biāo)注了相同的部分,圖1顯示了具有示范性的硬盤驅(qū)動器10,它應(yīng)用了與本發(fā)明相一致的動態(tài)重新映射。驅(qū)動器10整體上包含一個或多個磁盤12,一個致動臂14,它包含一個或多個數(shù)據(jù)記錄轉(zhuǎn)換器(transducer)16(也被稱作記錄頭或者讀/寫頭),一個音圈電機18,一個驅(qū)動控制器或者控制電路20。
控制電路20例如可以包括,諸如微處理器或者微控制器22的處理器,它用來管理整個驅(qū)動器的操作。由處理器執(zhí)行的固件(firmware)或者微碼(microcode)程序代碼存儲在一個ROM 24或者其他形式的非易失性存儲器中,和/或存儲在磁盤12的保留區(qū)域上,其處理器的工作存儲器由RAM 26表示。另外,控制電路20典型地包含其他的電子電路,它受到處理器22管理的控制,來向磁盤12存儲數(shù)據(jù)或者從磁盤12重新獲取數(shù)據(jù)。電子電路典型地包含多種功能,這些功能可以由讀/寫電路28,伺服(servo)電路30,接口電路32和格式化(formatter)電路34表示。
典型地磁盤12為了進行頭(head)定位而被劃分成一組徑向間隔的磁道,其中每個磁道沿著圓周被劃分成多個數(shù)據(jù)扇區(qū)。扇區(qū)之間彼此可以是相同大小或者不同大小。如果磁盤驅(qū)動器具有多個磁盤和/或多個讀/寫頭,那么在所有磁盤表面上的這一組磁道就具有相同的半徑,被稱作“柱面”。
讀/寫電路28從讀/寫頭16接收到信號,并傳遞伺服信息到伺服電路30,然后將數(shù)據(jù)信號傳送到格式化電路34。伺服電路30用伺服信息產(chǎn)生驅(qū)動信號,它驅(qū)動語音線圈電機18來定位讀/寫頭16。接口電路32通過接口與主機系統(tǒng)(沒有顯示)進行通信,將數(shù)據(jù)和命令信息傳送給它。接口電路32也和格式化電路34通信。處理器22也需要和電路28-34中的每個電路通信,根據(jù)需要管理整個驅(qū)動器的操作。
在驅(qū)動器10的操作中,接口電路32典型地從主機系統(tǒng)接收到一個讀或?qū)憯?shù)據(jù)扇區(qū)的請求。格式化電路34從接口電路32接收到邏輯塊地址形式的所請求的數(shù)據(jù)扇區(qū)列表,并將這些地址轉(zhuǎn)化為柱面、頭和扇區(qū)號,這些參數(shù)通過本領(lǐng)域所熟知的方法可以唯一標(biāo)識所期望得到的數(shù)據(jù)扇區(qū)的位置。頭和柱面的信息將被傳遞給伺服電路30,伺服電路響應(yīng)該信息并把讀/寫頭16定位在適當(dāng)?shù)闹嫔线m合的數(shù)據(jù)扇區(qū)上。如果提供給伺服電路30的柱面號和讀/寫頭16目前位置所對應(yīng)的磁道號不一致,伺服電路30首先執(zhí)行查詢操作,以將讀/寫頭定位在適合的柱面上。
一旦伺服電路30將讀/寫頭16定位在適當(dāng)?shù)闹嫔?,期望得到的?shù)據(jù)扇區(qū)就通過讀取其ID字段來定位??蛇x地,在使用了無頭結(jié)構(gòu)的磁盤驅(qū)動器中,正如在本領(lǐng)域所熟知的那樣,伺服電路30為了定位和識別期望得到的數(shù)據(jù)扇區(qū),開始執(zhí)行扇區(qū)計算。一旦定位完成,就再次應(yīng)用本領(lǐng)域熟知的通用的方法,執(zhí)行適當(dāng)?shù)淖x或者寫操作。
與本發(fā)明相一致的動態(tài)重新映射典型地應(yīng)用在驅(qū)動控制器20內(nèi)部,并且典型地使用由處理器22執(zhí)行的程序代碼。但是,應(yīng)該理解在動態(tài)重新映射中執(zhí)行的不同的操作可能被用在不同范圍(extent)里,如硬件、軟件或者二者結(jié)合的范圍。因此,本發(fā)明并不僅限于這里描述地的特定程序代碼應(yīng)用。
通常,從軟件的角度來講,實現(xiàn)本發(fā)明不同實施例所使用的任何功能而執(zhí)行的任何程序作為微代碼的一部分或者作為較高級別程序來實現(xiàn),諸如操作系統(tǒng),應(yīng)用程序,組件,程序,對象,模塊或者指令序列,甚至是其子集(subset),在這里稱作“計算機程序代碼”,或者簡稱“程序代碼”。程序代碼典型地包含一個或者多個指令,它們在不同的時間存放在不同的存儲器位置以及計算機或可編程電子設(shè)備的存儲設(shè)備中,并且,當(dāng)設(shè)備中的一個或者多個處理器讀取程序代碼并執(zhí)行的時候,設(shè)備將執(zhí)行那些必須執(zhí)行的步驟或者組件,體現(xiàn)本發(fā)明不同的方面。另外,當(dāng)本發(fā)明已經(jīng)描述或者如下面將要描述的全功能磁盤驅(qū)動器中的那樣,本領(lǐng)域技術(shù)人員將會理解,本發(fā)明不同的實施例可以具有不同形式的程序產(chǎn)品,并且本發(fā)明的應(yīng)用也是一樣的,而不用考慮使用特殊類型的信號承載介質(zhì)來實際進行分配。信號承載介質(zhì)的例子包括但是不限于可記錄類型的介質(zhì),如易失性(volatile)和非易失性(non-volatile)存儲器設(shè)備,軟盤和其他可移動的磁盤,硬盤驅(qū)動器,磁帶,光盤(例如CD-ROM,DVD等),其他類型中,以及傳輸類型介質(zhì),如數(shù)字和模擬的通信鏈路。
此外,從硬件的角度上來講,對于這些在硬件中已經(jīng)實現(xiàn)或者將要在硬件中實現(xiàn)的功能,這些功能可以被看成是在組合了一個或者多個集成電路設(shè)備的電路系統(tǒng)中實現(xiàn),以及通過另外的支持電子元件來實現(xiàn)的。另外,如在本領(lǐng)域中所熟知的那樣,典型的集成電路設(shè)備的設(shè)計和制造也要應(yīng)用一個或多個計算機數(shù)據(jù)文件,在這里稱其為硬件定義程序,它定義了設(shè)備上電路系統(tǒng)的布線圖(layout)。該程序通常由設(shè)計工具生成,并且在隨后的制造過程中用它來制作布線模掩膜(mask),它定義了敷設(shè)到半導(dǎo)體晶片上的電路排列。典型地,該程序具有預(yù)先給定的形式,并且使用硬件描述語言(HDL)如VHDL,Verilog,EDIF等等。當(dāng)本發(fā)明已經(jīng)描述并在以后的應(yīng)用在全功能集成電路設(shè)備內(nèi)容中描述的電路系統(tǒng)中那樣,電子設(shè)備將應(yīng)用相同的設(shè)備,本領(lǐng)域技術(shù)人員將會理解本發(fā)明所述的電路系統(tǒng)也可以作為多種形式的程序產(chǎn)品銷售,并且本發(fā)明應(yīng)用也是一樣的,而不考慮使用特殊類型信號承載介質(zhì)來實際上實現(xiàn)分配(distribution)。
現(xiàn)在來描述圖2,為了實現(xiàn)本發(fā)明的動態(tài)重新映射,典型地需要某種類型的缺陷圖,來保存與磁盤上已存在的缺陷相關(guān)的信息,以及與這些缺陷相關(guān)聯(lián)的扇區(qū)是怎樣重新映射到位于磁盤其他位置上的空閑扇區(qū)上的信息。
總體上來看,為了實現(xiàn)本發(fā)明的動態(tài)重新映射,最好擴展保存在常規(guī)缺陷圖中的信息,以允許實際損壞的扇區(qū)可以從任何在已識別的缺陷區(qū)域周圍為了形成緩沖區(qū)而創(chuàng)建的填充扇區(qū)中分別識別出來。然后,隨著缺陷增長及填充扇區(qū)變成已損壞的,這樣的填充扇區(qū)將被更新并標(biāo)識為已損壞,例如,通過將這種填充扇區(qū)從填充扇區(qū)列表移動到損壞的扇區(qū)列表中。
硬盤驅(qū)動器的缺陷圖通常使用的數(shù)據(jù)結(jié)構(gòu)典型的包含兩個不同的邏輯列表。一個制造缺陷列表(PLIST),它典型地包含在驅(qū)動器的制造過程中映射為缺陷的地址,還包含一個生長缺陷列表(GLIST),它典型地包含不和任何PLIST條目相關(guān),但是在通常驅(qū)動器的操作過程中變?yōu)閾p壞的區(qū)域的地址。PLIST和GLIST由圖2顯示的缺陷圖中的40和42分別表示。
為了在下文中所要描述的實施例中實現(xiàn)動態(tài)重新映射,應(yīng)用了兩個新的附加列表,一個被稱作制造填充列表(PPLIST)44及增長填充列表(GPLIST)46。在這個實施例中,GPLIST和PPLIST不僅僅存儲位置信息,并且明確地表示出或者暗示出它與特定缺陷位置后向關(guān)聯(lián),這些缺陷來自GLIST或者來自PLIST。最好是應(yīng)用另一個被稱作已損壞的填充列表(DPLIST)48,它定義了在PPLIST或者GPLIST中變?yōu)橐褤p壞的填充扇區(qū)??梢岳斫?,在與本發(fā)明相一致的缺陷圖中可以使用多種替代的數(shù)據(jù)結(jié)構(gòu)。例如,在某些實施例中可以不使用DPLIST?;蛘?,并不由于缺陷是在SAT過程中還是在操作使用中檢測出來的而區(qū)別對待缺陷及填充。另外,對于每一個列表可以使用多種不同的數(shù)據(jù)結(jié)構(gòu)。
圖3A,圖3B和圖4接下來顯示了本發(fā)明的示范性的動態(tài)重新映射程序50,它可以由圖1中的控制電路20執(zhí)行。另外,為了更進一步顯示這一程序的操作,圖5A-5D顯示了磁盤驅(qū)動器表面示范性的缺陷,它也將結(jié)合圖3A,圖3B和圖4中的示范性動態(tài)重新映射程序來尋址。
為了實現(xiàn)這一示范的程序,假設(shè)用戶需要選擇多個配置選項,包括(1)開啟或者關(guān)閉增長檢測的能力;(2)在讀PPLIST地址的時候所允許的數(shù)據(jù)恢復(fù)的步驟數(shù);(3)在讀GPLIST地址的時候所允許的數(shù)據(jù)恢復(fù)的步驟數(shù);(4)在PFA試驗之前允許加入DPLIST條目的總數(shù);(5)在PFA試驗之前允許加入與特定PLIST和GLIST缺陷地址相關(guān)的DPLIST條目的總數(shù);(6)在缺陷周圍使用的填充算法(例如方向性填充或者圓周填充)。
現(xiàn)在簡要說明圖5A,假設(shè)一個簡單的情況,即一個制造缺陷區(qū)域包含3個相鄰的扇區(qū)。在制造的過程中,這些缺陷扇區(qū)被加入到缺陷圖中,并且使用制造算法來將這些缺陷扇區(qū)以及與之相鄰的填充扇區(qū)映射到未損壞的空閑扇區(qū)上。但是,和常規(guī)的SAT算法不同的是,已損壞的扇區(qū)和填充扇區(qū)通常存儲在不同的列表中,例如,PLIST用來存放已損壞的扇區(qū),而PPLIST用來存放填充扇區(qū)。在這一例子中,扇區(qū)由柱面號/頭號/扇區(qū)號識別。因此,在圖5A中可以看到,在SAT之后,檢測到三個已損壞的扇區(qū),標(biāo)識為29053/0/338,29054/0/338,29055/0/338(假設(shè)頭號為0),并加入PLIST,然后應(yīng)用SAT算法進行重新映射。此外,例如,在29052/0/339到29056/0/339,29052/0/337到29056/0/337,29051/0/338到29052/0/338及29056/0/338到29057/0/338的填充扇區(qū)也被加入到PPLIST,并通過SAT算法重新映射。該示范性的驅(qū)動器缺陷圖在SAT之后的狀態(tài)在下面的表格1中顯示表1制造之后的缺陷圖
現(xiàn)在假設(shè)用戶使用如下設(shè)置配置驅(qū)動器(1)啟動缺陷增長的檢測功能;(2)在制造填充扇區(qū)中允許一次數(shù)據(jù)恢復(fù)步驟;(3)對于增長填充扇區(qū)不允許數(shù)據(jù)恢復(fù)步驟;(4)在PFA問題試驗后最大允許三個填充扇區(qū)變?yōu)閾p壞的;(5)在PFA問題試驗之后對于特定的缺陷最多可以填充兩次;及(6)填充算法選擇方向性填充。
現(xiàn)在來看圖3A和圖3B,它們顯示了本發(fā)明的動態(tài)重新映射程序50。首先,如塊(block)52所示,可以假設(shè)驅(qū)動器以本領(lǐng)域熟知的方法執(zhí)行典型的標(biāo)準(zhǔn)文件操作。周期性的,程序50在塊54位置檢查驅(qū)動器是否處于空閑狀態(tài),例如,沒有掛起的讀或?qū)懖僮?,并且沒有發(fā)生其他高優(yōu)先級的功能。如果不是,控制將返回到塊52。但是,無論什么時候驅(qū)動器進入空閑狀態(tài),塊54將會跳轉(zhuǎn)到塊56來檢查所配置的設(shè)置確定是否使能了缺陷增長的檢查。
如果沒有,控制將返回塊52;否則控制將進入塊58來確定先前是否存在任何缺陷的增長,例如,通過觀察DPL1ST中是否包含任何條目,這些條目會指示填充扇區(qū)以前在動態(tài)重新映射的過程中被確定為已損壞的。在初始狀態(tài)下,DPLIST沒有列出任何的扇區(qū),所以塊58將控制傳遞給塊60,來初始化一個循環(huán)以檢測PPLIST中的每個填充扇區(qū),保證所有已知的填充扇區(qū)在所允許的數(shù)據(jù)恢復(fù)步驟數(shù)內(nèi)都是可讀的(在這種情況下1)。特別地,塊60設(shè)置一個指向PPLIST的指針,它特別指向最后被檢查的扇區(qū),這樣下一次驅(qū)動器進入空閑狀態(tài)的時候,缺陷增長檢查可以在它離開的地方繼續(xù)檢查,直到整個列表都檢查完畢(有可能在檢查最后一個扇區(qū)的時候被較高優(yōu)先級的驅(qū)動器操作預(yù)先占用,這個高優(yōu)先級的操作將驅(qū)動器帶出空閑狀態(tài),例如,讀或者寫操作請求)。如果驅(qū)動器在完成PPLIST全部的檢查后仍然保持空閑狀態(tài),檢查就從列表的開頭重新開始。
一旦指針被初始化,在塊62讀取當(dāng)前的填充扇區(qū)。然后由塊64確定讀操作是否在允許的恢復(fù)步驟內(nèi)成功。如果成功,控制將進入塊66來確定是否所有PPLIST的填充扇區(qū)都已經(jīng)檢查,如果沒有,控制將進入塊68增加指針值,讓它指向PPLIST中下一個填充扇區(qū)。否則將返回到塊52來執(zhí)行正常文件操作。
現(xiàn)在返回到塊64,如果對填充扇區(qū)的讀操作不成功,塊64將調(diào)用重新映射處理器程序70來重新映射現(xiàn)在已損壞的填充扇區(qū),這一方法將在下文中詳細(xì)描述。然后控制將進入塊66檢查PPLIST中其他的填充扇區(qū)。
圖4詳細(xì)地顯示了重新映射處理器程序70。程序70開始于塊72,它將在DPLIST中加入新的損壞的扇區(qū)。接下來,通過使用已選擇的填充算法(例如,方向性填充或者圓周填充),將與新?lián)p壞的扇區(qū)相鄰的扇區(qū)重新映射到空閑扇區(qū)上,并把它們加入到GPLIST(塊74)。在接下來,在塊76確定與當(dāng)前缺陷扇區(qū)相關(guān)聯(lián)的增長填充扇區(qū)的數(shù)目(例如,與特定缺陷相關(guān)聯(lián)的GPLIST扇區(qū)的數(shù)目)。
如果填充扇區(qū)增長的數(shù)目沒有超過配置的門限,塊78將控制傳遞至塊80來確定填充扇區(qū)增長的總數(shù)(例如,GPLIST中扇區(qū)的總數(shù))。否則,塊78將控制傳遞給塊82以通知系統(tǒng),例如,使用預(yù)測故障分析(PFA)結(jié)果或者通知,然后終止程序70。
現(xiàn)在返回到塊80,一旦確定了填充扇區(qū)增長的總數(shù),塊84就確定這個總數(shù)是否超過了配置的門限,如果沒有,終止程序70。否則,控制進入塊86,建立一個PFA結(jié)果或者通知,并在這之后終止程序。
現(xiàn)在來看圖5B,為了實現(xiàn)本例,假設(shè)在填充扇區(qū)檢查的過程中,填充扇區(qū)中的一個(29056/0/338)要求5個恢復(fù)步驟才能讀出。由于在本例中,步驟計數(shù)超過了配置的門限1,過程流程執(zhí)行了與程序70相關(guān)的操作。得到的結(jié)果就是,該填充扇區(qū)將被加入到DPLIST中,然后根據(jù)所選擇的填充算法(例如,通過如圖5B所示的方向性填充)在其預(yù)計的缺陷增長的方向上,相鄰的可用扇區(qū)被當(dāng)作新的填充扇區(qū)加入,并且為它重新指配空閑扇區(qū)。另外,加入新的填充扇區(qū)到GPLIST中。
另外,假設(shè)在用戶讀操作過程中,定位了軟錯誤(soft error)的地址,并且該錯誤地址被重新指配到空閑的扇區(qū)區(qū)域。這將被看作增長的缺陷,所以將會建立一個GLIST條目,以及任何相關(guān)聯(lián)的填充(例如,通過如圖5B所示的圓周填充)。在GLIST扇區(qū)周圍的填充扇區(qū)將典型地在GPLIST中標(biāo)識,由于其相關(guān)的缺陷在制造的過程中并不存在。因此增長的缺陷典型地被看成是損壞的填充扇區(qū),只是與他相關(guān)的缺陷并不是原始就有的。表2顯示了在加入新的填充扇區(qū)后的缺陷圖的狀態(tài)
表2在已損壞的填充扇區(qū)事件和缺陷增長之后的缺陷圖
如上面所述的程序70中,在加入新的填充扇區(qū)之后,將會檢測預(yù)測故障分析(PFA)的觸發(fā)器。每個DPLIST條目表示了一個缺陷增長的步驟,所以需要檢查DPLIST中條目的總數(shù)是否超過了配置的門限值。如果對于驅(qū)動器允許增長的總數(shù),以及特定缺陷的增長沒有達(dá)到配置的門限值,不會觸發(fā)PFA結(jié)果。
現(xiàn)在回到圖3A,一旦建立了一個GPLIST條目,它指示了增長的缺陷的地址,下次執(zhí)行塊58的時候,控制將會進入塊88(圖3B)。在這一方面,理想的是GPLIST的優(yōu)先級要高于PPLIST,因為GPLIST的條目指示了此前該缺陷地址已經(jīng)增長的歷史。
塊88初始化一個兩個步驟的過程,用來掃描已增長的缺陷區(qū)域。首先,使用沒有復(fù)位的指針遍歷GPLIST,這樣就可以繼續(xù)由于用戶的操作或者高優(yōu)先級的功能而中斷的操作。但是,塊88最初將指針設(shè)置成為指向GPLIST的開始。然后塊90執(zhí)行檢查,以保證已損壞并加入到DPLIST中的GPLIST扇區(qū)沒有被檢查到。
如果一個GPLIST中的扇區(qū)不在DPLIST中,控制進入到塊92,對扇區(qū)執(zhí)行一個讀操作。然后由塊94確定在允許的恢復(fù)步驟數(shù)內(nèi)讀操作是否成功。塊94中使用和塊64中相同的門限,或者使用不同的門限。在本例中,配置在讀失敗之前不允許數(shù)據(jù)恢復(fù)步驟。如果讀失敗發(fā)生了,塊94將調(diào)用程序70來重新映射壞的扇區(qū)。否則,控制將進入到塊96來確定是否所有的GPLIST條目都檢查過了。
如果不是所有的條目都檢查過了,控制進入塊98增加指針使之指向GPLIST中的下一個扇區(qū)。然后控制返回到塊90。而且,現(xiàn)在返回到塊90,如果GPLIST中的一個扇區(qū)也在DPLIST中,控制將會直接進入塊96。
一旦GPLIST中所有的扇區(qū)都經(jīng)過了檢查,控制將進入塊100,循環(huán)檢查DPLIST的條目,檢查所有和相同的原始缺陷相關(guān)的PPLIST條目,就像對待每個這樣的DPLIST條目(需要說明的是,對于GLIST缺陷,將不會存在相關(guān)聯(lián)的PPLIST條目)。特殊的,塊100復(fù)位了指向PPLIST的指針,從PPLIST中的第一個扇區(qū)開始,該扇區(qū)連接到DPLIST中的一個條目。然后塊101執(zhí)行了一個檢查來保證該扇區(qū)不是已經(jīng)存在于DPLIST中。如果該扇區(qū)并沒有已經(jīng)存在于DPLIST中,控制進入塊102執(zhí)行對該扇區(qū)的讀操作,及塊104決定讀操作在允許的恢復(fù)步驟數(shù)內(nèi)是否成功(例如,由于正在讀取的是PPLIST條目,所以使用和塊64相同的門限)。如果讀取失敗,調(diào)用重新映射處理器程序70,及控制進入塊106。否則,塊104將控制直接傳遞到塊106。
塊106確定是否PPLIST中在增長的缺陷地址附近的所有扇區(qū)都經(jīng)過了檢查(例如,連接到DPLIST條目)。如果沒有,控制進入塊108增加指針值,使之指向下一個連接到DPLIST條目的PPLIST扇區(qū),然后返回到塊101處理下一個扇區(qū)。否則,塊106將控制傳送給塊60(圖3A)繼續(xù)檢查PPLIST。另外,現(xiàn)在返回到塊101,如果DPLIST中已經(jīng)存在一個扇區(qū),控制直接進入塊106。由于在塊88-108執(zhí)行的檢查查找了所有PPLIST中與特定缺陷相關(guān)的填充,最好是為由塊62-68定義的循環(huán)分別保留指向PPLIST的指針。
繼續(xù)前面的例子,假設(shè)讀/寫操作在圖5B所示的事件以后被初始化。也假設(shè)實際上,在隨后的空閑周期中,另外一個填充扇區(qū)(例如29057/0/338)被檢測為已損壞的。其結(jié)果就是要在DPLIST中加入新的條目,并重新分配另外一個填充扇區(qū)(例如29059/0/338),這樣就要在GPLIST中加入另外一個填充扇區(qū)。這些扇區(qū)的重新分配在圖5C中顯示。此外,作為結(jié)果的缺陷圖在下面的表3中顯示表3額外的填充已損壞
還需要說明的是,在執(zhí)行和重新分配額外的填充扇區(qū)相關(guān)的程序70的時候,也需要檢查PFA的門限。應(yīng)用前面提到的例子的設(shè)置,發(fā)現(xiàn)相同的缺陷具有兩個增長的事件,這是試驗(trip)門限,隨后應(yīng)該給系統(tǒng)或者用戶報告一個PFA通知或者結(jié)果。得到的結(jié)果就是,用戶放棄對驅(qū)動器的繼續(xù)操作,并將所有的數(shù)據(jù)從該驅(qū)動器復(fù)制到新的驅(qū)動器上。否則,然而,用戶將會忽略最初的PFA警告而繼續(xù)執(zhí)行。
在后者的情況下,假設(shè)驅(qū)動器在執(zhí)行完一些操作之后再次進入空閑狀態(tài),并且在塊90-98(圖3B)的循環(huán)中遍歷GPLIST的時候,另外一個填充扇區(qū)變?yōu)橐褤p壞的(例如,29058/0/338),碰巧的是該填充扇區(qū)也在GPLIST中標(biāo)識。前面描述的加入新的填充扇區(qū)的操作還會發(fā)生,但是,即使缺陷的總數(shù)現(xiàn)在已經(jīng)超過了所配置的門限值3,將會報告與之相比更加重要的PFA事件,該事件為一個單獨的缺陷已經(jīng)增長超過了兩次。另外,如果另外一個填充扇區(qū),例如,在GLIST條目的周圍(例如,填充29059/0/332)變?yōu)橐褤p壞,它將會因為增長步驟的總數(shù)太大而觸發(fā)PFA。在本例中,配置的門限設(shè)置成3,并且4個缺陷被加入到DPLIST中。這些額外的錯誤的存在及重新映射在圖5D中顯示。
在這兩種情況下GPLIST中變?yōu)橐褤p壞的條目被放置到DPLIST中,但是在GPLIST中仍然將其保留,正如DPLIST在原理上是計算機制。這就是為什么在試圖檢查一個條目,確保該條目不是對應(yīng)一個已知的缺陷之前,應(yīng)該最好檢查每個GPLIST條目。
關(guān)于缺陷圖,最好將每個PLIST,PPLIST,GLIST和GPLIST列表在存儲桶(bucket)中,隔離以將所有的填充扇區(qū)關(guān)聯(lián)到它們所填充的缺陷扇區(qū)上。這可以通過多種不同的方法實現(xiàn),但是為了實現(xiàn)本實施例,一種方法就是給每個缺陷或者相關(guān)的缺陷組分配一個存儲在列表中的缺陷號,在列表中還存儲著它的位置。通過這種方法,PPLIST和GPLIST條目將參考它們所填充的缺陷桶號。這將啟動對相關(guān)填充扇區(qū)的檢查,就像在相關(guān)的圖3B中對塊104-108的循環(huán)中所描述的那樣。
由于在此提供的簡單的例子在缺陷圖中不包含多個制造缺陷,為了清楚而省略了存儲桶號。典型的三個PLIST條目應(yīng)該與一個缺陷存儲桶相關(guān)聯(lián),并且GLIST缺陷扇區(qū)將是獨立的缺陷存儲桶。為了顯示的目的,在表4中,所有與GLIST條目相關(guān)聯(lián)的填充扇區(qū)都用“*”符號標(biāo)出。將表格分割僅僅是因為要清楚地關(guān)聯(lián)表4GPLIST中變?yōu)橐褤p壞的額外的填充扇區(qū)
正如前面所述的,可以應(yīng)用多種替代的數(shù)據(jù)結(jié)構(gòu)來表現(xiàn)缺陷圖中不同的扇區(qū)。另外,用于檢測已損壞的填充扇區(qū)的方法也可以替代使用。同樣的,本發(fā)明并不限于圖3A,圖3B和圖4所顯示的特定的動態(tài)重新映射程序。
其他改進對于本領(lǐng)域的普通技術(shù)人員來講是非常明顯的。因此本發(fā)明就在后面附加的權(quán)利要求中說明。
權(quán)利要求
1.一種用于操作具有缺陷圖的類型的硬盤驅(qū)動器的方法,該缺陷圖標(biāo)識該硬盤驅(qū)動器的磁盤上的至少一個缺陷,并且將至少一個與該缺陷相關(guān)聯(lián)的已損壞的扇區(qū)、以及在其附近的至少一個無缺陷的填充扇區(qū)重新映射到位于磁盤其他位置的空閑扇區(qū)上,在該硬盤驅(qū)動器的初始化操作之后,該方法包括(a)訪問所述缺陷圖以標(biāo)識所述填充扇區(qū);(b)掃描所述填充扇區(qū)并檢測有缺陷的填充扇區(qū),其中檢測到有缺陷的填充扇區(qū)表明磁盤上的缺陷隨著時間而增長;并且(c)作為檢測到有缺陷的填充扇區(qū)的響應(yīng),更新缺陷圖,以標(biāo)識所述填充扇區(qū)作為有缺陷的填充扇區(qū),并將位于有缺陷的填充扇區(qū)附近的附加的扇區(qū)重新映射到磁盤上附加的空閑扇區(qū),從而在缺陷圖中創(chuàng)建一個附加的填充扇區(qū)。
2.一種用于映射在數(shù)據(jù)存儲介質(zhì)上的缺陷的方法,該方法包括(a)檢測數(shù)據(jù)存儲介質(zhì)上預(yù)先標(biāo)識的缺陷的增長,其中預(yù)先標(biāo)識的缺陷和已經(jīng)映射到第一替代區(qū)域的缺陷區(qū)域相關(guān)聯(lián);并且(b)將至少一個與缺陷區(qū)域相鄰的區(qū)域重新映射到第二替代區(qū)域,以適應(yīng)預(yù)先標(biāo)識的缺陷的增長。
3.如權(quán)利要求2的方法,其中所述缺陷區(qū)域包括至少一個有缺陷的扇區(qū)以及至少一個位于有缺陷的扇區(qū)附近的填充扇區(qū),并且其中檢測預(yù)先標(biāo)識的缺陷增長包括掃描填充扇區(qū)是以便發(fā)現(xiàn)缺陷。
4.如權(quán)利要求3的方法,其中重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域包括作為在填充扇區(qū)中檢測到缺陷的響應(yīng),重新分配至少一個與填充扇區(qū)相鄰的扇區(qū)。
5.如權(quán)利要求3的方法,其中所述有缺陷的扇區(qū)在缺陷扇區(qū)列表中被標(biāo)識,并且填充扇區(qū)在填充扇區(qū)列表中被標(biāo)識,該方法進一步包含在缺陷圖中指示已損壞的填充扇區(qū),作為檢測預(yù)先標(biāo)識的缺陷增長的響應(yīng)。
6.如權(quán)利要求5的方法,其中將至少一個與缺陷區(qū)域相鄰的區(qū)域重新映射包括在缺陷圖中加入至少一個與填充扇區(qū)相鄰的扇區(qū)。
7.如權(quán)利要求6的方法,其中在缺陷圖中加入至少一個與填充扇區(qū)相鄰的扇區(qū)包括在增長的填充扇區(qū)列表中存儲至少一個扇區(qū),并且其中指示該填充扇區(qū)是有缺陷的扇區(qū)包括在有缺陷的填充列表中指示該填充扇區(qū)是有缺陷的。
8.如權(quán)利要求3的方法,其中重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域包括重新分配基本上沿著相對于填充扇區(qū)增長的方向設(shè)置的至少一個扇區(qū)。
9.如權(quán)利要求3的方法,其中重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域包括重新分配圍繞所述缺陷區(qū)域周邊設(shè)置的多個扇區(qū)。
10.如權(quán)利要求3的方法,其中第一個和第二個替代區(qū)域中的每一個替代區(qū)域包含至少一個空閑扇區(qū)。
11.如權(quán)利要求2的方法,其中在包括數(shù)據(jù)存儲介質(zhì)的數(shù)據(jù)存儲設(shè)備的制造過程中分配缺陷區(qū)域,并且其中檢測預(yù)先標(biāo)識的缺陷增長以及重新映射至少一個區(qū)域?qū)⒃跀?shù)據(jù)存儲設(shè)備的操作使用之后執(zhí)行。
12.如權(quán)利要求2的方法,其中檢測預(yù)先標(biāo)識的缺陷增長以及重新映射至少一個區(qū)域在包括數(shù)據(jù)存儲介質(zhì)的數(shù)據(jù)存儲設(shè)備的操作使用之后的空閑時間內(nèi)執(zhí)行。
13.如權(quán)利要求2的方法,進一步包括啟動預(yù)測故障分析操作,以作為檢測到的預(yù)先標(biāo)識的缺陷增長超過預(yù)先定義的門限的響應(yīng)。
14.如權(quán)利要求13的方法,其中預(yù)先確定的門限至少與檢測到的多個有缺陷的填充扇區(qū)的數(shù)量以及為該缺陷區(qū)域添加至少一個填充扇區(qū)的次數(shù)中之一相關(guān)。
15.如權(quán)利要求2的方法,其中數(shù)據(jù)存儲介質(zhì)包括硬盤驅(qū)動器中的磁盤構(gòu)成。
16.一種設(shè)備,包括(a)數(shù)據(jù)存儲介質(zhì);及(b)耦合到數(shù)據(jù)存儲介質(zhì)的控制電路,被配置用來檢測數(shù)據(jù)存儲介質(zhì)上預(yù)先標(biāo)識的缺陷的增長,其中預(yù)先標(biāo)識的缺陷和已經(jīng)映射到第一替代區(qū)域的缺陷區(qū)域相關(guān),進一步配置所述控制電路,以便將至少一個與缺陷區(qū)域相鄰的區(qū)域重新映射到第二替代區(qū)域,以適應(yīng)預(yù)先標(biāo)識缺陷的增長。
17.如權(quán)利要求16的設(shè)備,其中所述缺陷區(qū)域包括至少一個有缺陷的扇區(qū)以及至少一個位于有缺陷的扇區(qū)附近的填充扇區(qū),并且其中通過掃描填充扇區(qū)以便發(fā)現(xiàn)缺陷,配置控制電路以檢測預(yù)先標(biāo)識缺陷的增長,。
18.如權(quán)利要求17的設(shè)備,其中響應(yīng)檢測填充扇區(qū)中的缺陷通過重新分配至少一個與填充扇區(qū)相鄰的扇區(qū)來配置控制電路,以重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域。
19.如權(quán)利要求17的設(shè)備,其中有缺陷的扇區(qū)在缺陷扇區(qū)列表中被標(biāo)識,并且填充扇區(qū)在填充扇區(qū)列表中被標(biāo)識,并且進一步配置控制電路,以在缺陷圖中指示填充扇區(qū)是有缺陷的,作為檢測到以前標(biāo)識的缺陷增長的響應(yīng)。
20.如權(quán)利要求19的設(shè)備,其中配置控制電路以重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域,這通過在缺陷圖中加入至少一個與填充扇區(qū)相鄰的扇區(qū)來完成。
21.如權(quán)利要求17的設(shè)備,其中配置控制電路以重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域,這通過重新分配基本上沿著相對于填充扇區(qū)增長的方向設(shè)置的至少一個扇區(qū)來完成。
22.如權(quán)利要求17的設(shè)備,其中配置控制電路以重新映射至少一個與缺陷區(qū)域相鄰的區(qū)域,這通過重新分配在缺陷區(qū)域周圍的周邊上設(shè)置的多個扇區(qū)來完成。
23.如權(quán)利要求17的設(shè)備,其中第一個和第二個替代區(qū)域中的每一個替代區(qū)域包含至少一個空閑扇區(qū)。
24.如權(quán)利要求16的設(shè)備,其中在包括數(shù)據(jù)存儲介質(zhì)的數(shù)據(jù)存儲設(shè)備的制造過程中分配所述缺陷區(qū)域,并且其中配置控制電路,用于檢測預(yù)先標(biāo)識的缺陷增長以及在數(shù)據(jù)存儲設(shè)備的操作使用之后重新映射至少一個區(qū)域。
25.如權(quán)利要求16的設(shè)備,其中配置控制電路,用于檢測預(yù)先標(biāo)識的缺陷增長,以及在包括數(shù)據(jù)存儲介質(zhì)的數(shù)據(jù)存儲設(shè)備的操作使用之后的空閑時間重新映射至少一個區(qū)域。
26.如權(quán)利要求16的設(shè)備,進一步配置控制電路,用于響應(yīng)檢測超過預(yù)先定義的門限的預(yù)先標(biāo)識的缺陷增長,啟動預(yù)測故障分析操作。
27.如權(quán)利要求16的設(shè)備,其中所述數(shù)據(jù)存儲介質(zhì)包括硬盤驅(qū)動器中的一個磁盤。
28.一種程序產(chǎn)品,包含(a)程序代碼,被配置用于檢測數(shù)據(jù)存儲設(shè)備中的數(shù)據(jù)存儲介質(zhì)上預(yù)先標(biāo)識的缺陷的增長,其中預(yù)先標(biāo)識的缺陷和已經(jīng)映射到第一替代區(qū)域的缺陷區(qū)域相關(guān),進一步配置所述程序代碼用來將至少一個與缺陷區(qū)域相鄰的區(qū)域重新映射到第二替代區(qū)域,以適應(yīng)預(yù)先標(biāo)識的缺陷的增長;以及(b)用于承載所述程序代碼的信號承載介質(zhì)。
29.如權(quán)利要求28的程序產(chǎn)品,其中所述信號承載介質(zhì)包括至少傳輸介質(zhì)和可記錄的介質(zhì)中的至少一個。
全文摘要
映射數(shù)據(jù)存儲介質(zhì)上缺陷的設(shè)備、程序產(chǎn)品和方法,分析存儲介質(zhì)上一個或者多個預(yù)先標(biāo)識的缺陷,以發(fā)現(xiàn)這些缺陷隨時間的增長,這樣對于任何檢測到的預(yù)先標(biāo)識的缺陷的增長,可以通過將缺陷附近的其他表面區(qū)域動態(tài)重新映射到一個或者多個位于存儲介質(zhì)其他位置的替代區(qū)域來進行適應(yīng)。這樣,任何在預(yù)先存在的缺陷周圍定義的緩沖區(qū)域在那些缺陷隨時間增長的時候可以得到有效的保持,這樣給數(shù)據(jù)丟失提供了適當(dāng)?shù)谋Wo,否則試圖在已被相鄰的缺陷增長影響的存儲器區(qū)域內(nèi)放信息將會導(dǎo)致數(shù)據(jù)的丟失。
文檔編號G11B20/10GK1503264SQ20031011833
公開日2004年6月9日 申請日期2003年11月21日 優(yōu)先權(quán)日2002年11月21日
發(fā)明者戴維·L·史密斯, 唐納德·E·沃斯伯格, 道格拉斯·M·齊歇爾, E 沃斯伯格, 戴維 L 史密斯, 斯 M 齊歇爾 申請人:日立環(huán)球儲存科技荷蘭有限公司