国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      磁盤驅(qū)動器和刷新方法

      文檔序號:6540478閱讀:357來源:國知局
      專利名稱:磁盤驅(qū)動器和刷新方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及防止磁盤驅(qū)動器中的磁盤上存儲的信息在寫入后隨著時間的流逝而丟失的技術(shù)。
      背景技術(shù)
      在磁盤驅(qū)動器中,通過磁化磁盤的磁性粒子而記錄信息。但是,在磁盤上磁性存儲的信息具有隨著時間而退化或丟失的性質(zhì)。在磁盤中,利用被稱為晶粒的大量磁性粒子將信息磁性記錄為比特,所述晶粒由寫入頭的磁場磁化并保持在圖1所示的固定的方向。這些晶粒具有多種穩(wěn)定狀態(tài),并通過磁化在特定穩(wěn)定方向取向。然而,即使磁性寫入頭的磁場將晶粒在特定方向磁化,晶粒受熱能的影響會開始逐漸向其它穩(wěn)定方向改變其取向,并又影響相鄰的晶粒,以致越來越多的晶粒變得在不同于磁化時的初始方向取向。其結(jié)果,讀出信號會在分辨率和增益方面退化。這個現(xiàn)象稱之為熱衰變。而且,如圖1所示,在磁道的圓周方向中的磁化轉(zhuǎn)變區(qū)域上,一個方向的磁性粒子可能受其它磁性方向的磁性粒子的磁場的影響。
      而且,由于磁道密度增加的越來越多,在寫入磁頭向相鄰磁道寫入數(shù)據(jù)時產(chǎn)生的磁場可能影響磁性粒子。這個現(xiàn)象稱之為相鄰磁道干擾。因此,如果由于衰變等留下在磁盤上寫入的信息,那么它可能是退化的并且可能是不能讀出的。磁盤的SN比中的噪聲主要由所謂的轉(zhuǎn)變噪聲(transition noise)構(gòu)成。如果磁化轉(zhuǎn)變區(qū)域徑直跨過磁道,則將讀出信息與相鄰區(qū)域中的讀出信息加以電區(qū)分的可能性增加,但是如果使用大尺寸的晶粒,則磁性轉(zhuǎn)變區(qū)域的形狀會從直線偏離,引起轉(zhuǎn)變噪聲。因此,理想的是,減小晶粒尺寸,以提高SN比。但是在小的能量的影響下小晶??赡苻D(zhuǎn)變到其它穩(wěn)定狀態(tài),因此,易受諸如熱衰變和相鄰磁道干擾等的影響。
      日本專利公報No.平成7-272471公開了一種記錄對磁盤的每個扇區(qū)的累積操作時間和在累積的操作時間達(dá)到預(yù)定值時采取措施的技術(shù)。日本專利公報No.2000-187926公開的技術(shù)是,通過讀出記錄介質(zhì)的生產(chǎn)日期的信息和將該生產(chǎn)日期后經(jīng)過的時間與預(yù)定的水平比較,禁止記錄介質(zhì)被新寫入、發(fā)出報警或根據(jù)估計的退化程度備份。日本專利公報No.平成04-248164的技術(shù)是,順序測量退化的程度和停止寫入和讀出操作。

      發(fā)明內(nèi)容
      在磁盤上寫入的信息隨著時間退化。為了改善SN比并增加記錄密度,理想的是盡可能地降低晶粒尺寸。但另一方面,要求即使在從使用更小尺寸的晶粒的磁盤中讀出信息時不產(chǎn)生錯誤。因此,本發(fā)明的目的是提供一種磁盤驅(qū)動器,使得在磁盤上寫入信息后即使經(jīng)過了相當(dāng)長的時間再讀出信息時也不產(chǎn)生錯誤。本發(fā)明的另一目的是提供一種刷新信息的方法,使得在磁盤上寫入信息后即使經(jīng)過了相當(dāng)長的時間再讀出信息時也不產(chǎn)生錯誤。
      根據(jù)本發(fā)明的第一方面,提供能夠與主機通信的磁盤驅(qū)動器。該磁盤驅(qū)動器包括磁盤,該磁盤具有被分成多個扇區(qū)的存儲區(qū);和時間戳記錄介質(zhì),用于存儲時間戳,所述時間戳對應(yīng)于存儲在所述多個扇區(qū)中的各個扇區(qū)數(shù)據(jù)。所述磁盤驅(qū)動器還包括處理器,用于控制所述磁盤驅(qū)動器的組件以讀出存儲在所述多個扇區(qū)的任何一個中的扇區(qū)數(shù)據(jù)的時間戳,并刷新根據(jù)所述扇區(qū)數(shù)據(jù)的經(jīng)過時間選擇的扇區(qū)數(shù)據(jù),所述經(jīng)過時間是根據(jù)所述時間戳被讀出時的時間信息和所述讀出的時間戳計算的。
      時間戳記錄介質(zhì)可以是磁盤或其它非易失性記錄介質(zhì)。所述刷新指得是這樣一種過程讀出存儲在給定扇區(qū)中的數(shù)據(jù),然后將相同的數(shù)據(jù)寫入相同的扇區(qū)。扇區(qū)的時間戳是扇區(qū)數(shù)據(jù)被寫入扇區(qū)時的時間信息,并且隨扇區(qū)數(shù)據(jù)被更新而同時被更新。扇區(qū)數(shù)據(jù)被寫入時的時間信息可以包括數(shù)據(jù)被寫入時的年份或數(shù)據(jù)被寫入時的年份和月份。而且,可以更精確地對信息進行限定以包括時間、分和秒。
      使用扇區(qū)數(shù)據(jù)被讀出時的時間信息和讀出的時間戳能夠計算每個扇區(qū)數(shù)據(jù)被存儲后到讀出的時間的經(jīng)過時間。特別地,能夠確定信息是否由于熱衰變而退化。通過將扇區(qū)數(shù)據(jù)的經(jīng)過時間與標(biāo)準(zhǔn)經(jīng)過時間比較并選擇性地僅刷新超過預(yù)定經(jīng)過時間的扇區(qū)數(shù)據(jù),該刷新能夠更有效地進行,并且比刷新所有扇區(qū)數(shù)據(jù)時的情況用時要短。
      通過讀出主機尋址要讀出的扇區(qū)中存儲的扇區(qū)數(shù)據(jù)的時間戳,能夠不浪費額外的刷新時間地用讀出定時進行刷新。此時,通過在刷新所選擇的扇區(qū)數(shù)據(jù)之前將扇區(qū)數(shù)據(jù)返回到主機,能夠防止由于刷新而造成的性能降低。通過在非易失性存儲器中臨時存儲要刷新的扇區(qū)數(shù)據(jù)并以省電模式或斷電模式共同刷新所存儲的數(shù)據(jù),即使主機指令連續(xù)讀出扇區(qū)數(shù)據(jù),也能夠在不降低性能的情況下進行刷新。不在易失性存儲器中存儲扇區(qū)數(shù)據(jù),只是所選擇的扇區(qū)數(shù)據(jù)的扇區(qū)地址可以在非易失性存儲器中存儲。
      可以選擇磁盤作為時間戳記錄介質(zhì)。在時間戳記錄在磁盤上時,可以向每個記錄表面、每個磁道或每個扇區(qū)提供時間戳的記錄區(qū)域。在向每個記錄表面提供用于時間戳的記錄區(qū)域時,整個磁盤能夠在沒有尋道時間或旋轉(zhuǎn)延遲的情況下被快速有利地刷新,因為用于相關(guān)記錄表面的所有的時間戳能夠從特定范圍中的記錄區(qū)域中讀出。另外,如果時間戳的記錄區(qū)域向每個扇區(qū)提供時,時間戳可以在讀出扇區(qū)數(shù)據(jù)的操作過程中讀出。因此,能夠在扇區(qū)數(shù)據(jù)的讀出或讀出檢查的同時進行刷新。
      在對每個扇區(qū)提供時間戳的記錄區(qū)域時,如果時間戳結(jié)合到ECC碼中,則存儲時間戳不會占用額外的區(qū)域。通過相對磁盤驅(qū)動器的環(huán)境溫度分布校正讀出數(shù)據(jù)時的時間信息,能夠更正確地確定由于熱衰變造成的存儲信息的退化時間。
      根據(jù)本發(fā)明的第二方面,提供一種能夠與主機通信的磁盤驅(qū)動器。磁盤驅(qū)動器包括磁盤,時間戳記錄介質(zhì)和處理器。磁盤具有被分成多個扇區(qū)的存儲區(qū)。時間戳記錄介質(zhì)存儲時間戳,所述時間戳對應(yīng)于存儲在所述多個扇區(qū)中的各個扇區(qū)數(shù)據(jù)。處理器用于通過響應(yīng)從所述主機發(fā)送的刷新指令控制所述磁盤驅(qū)動器的組件,以讀出由所述刷新指令指定的扇區(qū)的時間戳,并刷新根據(jù)扇區(qū)數(shù)據(jù)的經(jīng)過時間選擇的扇區(qū)數(shù)據(jù),所述經(jīng)過時間是根據(jù)所述數(shù)據(jù)被讀出時的時間信息和所述時間戳而計算的。
      如果對于磁盤的寬范圍的扇區(qū)進行刷新,則在刷新時主機可以不訪問磁盤驅(qū)動器。但是,在本發(fā)明第二方面中,因為能夠根據(jù)從主機發(fā)送的刷新指令刷新磁盤驅(qū)動器,所以能夠?qū)λ械纳葏^(qū)數(shù)據(jù)進行刷新。因為確保了能夠通過刷新所有扇區(qū)數(shù)據(jù)在預(yù)定時間內(nèi)刷新在整個磁盤上記錄的信息,所以使用具有較小尺寸晶粒的磁盤能夠改善SN比。
      如果刷新指令包括進行讀出檢查的指令,那么刷新可以被包括在對磁盤上的數(shù)據(jù)的讀出檢查中,結(jié)果,在完成讀出檢查所需要的時間段內(nèi)基本能夠完成時間戳檢查和必要的刷新。因為磁盤驅(qū)動器確定檢查是否需要刷新的定時和向主機發(fā)送刷新請求指令,所以主機能夠精確確定檢查是否需要刷新的定時。
      根據(jù)本發(fā)明的第三方面,提供一種連接到磁盤驅(qū)動器的主機,磁盤驅(qū)動器包括磁盤,磁盤具有被分成多個扇區(qū)的存儲區(qū)。主機包括處理器,文件控制表和記錄介質(zhì)。處理器控制所述主機的操作。文件控制表保持存儲在磁盤驅(qū)動器的每個扇區(qū)中的時間戳。記錄介質(zhì)存儲刷新程序以使得處理器能夠刷新根據(jù)扇區(qū)數(shù)據(jù)的經(jīng)過時間選擇的扇區(qū)數(shù)據(jù),所述扇區(qū)數(shù)據(jù)的經(jīng)過時間是根據(jù)存儲在所述文件控制表中的時間戳和當(dāng)前時間的信息計算的。
      扇區(qū)數(shù)據(jù)的時間戳不僅可以存儲在磁盤上而且也可以由主機的文件管理系統(tǒng)保持。因此,通過使用主機保持的時間戳進行刷新能夠降低磁盤驅(qū)動器的負(fù)擔(dān)。
      根據(jù)本發(fā)明提供了這樣一種磁盤驅(qū)動器即使在信息寫入到磁盤后過去了相當(dāng)長的時間,再讀出信息時該磁盤驅(qū)動器也不產(chǎn)生錯誤。而且,根據(jù)本發(fā)明提供了這樣一種刷新信息的方法即使在信息寫入磁盤后過去了相當(dāng)長的時間,再讀出信息時也不產(chǎn)生錯誤。


      圖1是在其上記錄信息的磁盤的晶粒轉(zhuǎn)變的狀態(tài)圖;圖2是根據(jù)本發(fā)明實施例的磁盤驅(qū)動器的組件框圖;圖3(A)和(B)是扇區(qū)的結(jié)構(gòu)圖;圖4是流程圖,描述了在接收到讀出指令時磁盤驅(qū)動器用定時刷新扇區(qū)數(shù)據(jù)的方法;圖5是對溫度校正經(jīng)過時間的方法圖;圖6是流程圖,描速了磁盤驅(qū)動器從主機接收刷新指令然后刷新扇區(qū)數(shù)據(jù)的方法;圖7是主機的文件控制表圖;和圖8是主機刷新扇區(qū)數(shù)據(jù)的方法流程圖。
      具體實施例方式
      磁盤驅(qū)動器的框圖說明見圖2,下面說明根據(jù)本發(fā)明實施例的磁盤驅(qū)動器10的示意性結(jié)構(gòu)。在整個說明書中,相同的標(biāo)記表示相同的元件。作為磁性記錄介質(zhì)的磁盤11在兩側(cè)帶有記錄表面,在每個表面上形成磁性層,一個或多個疊層結(jié)構(gòu)裝到主軸軸套上,由主軸電機13旋轉(zhuǎn)。圖3(A)和3(B)示出在磁盤11上的記錄表面的結(jié)構(gòu)。如圖3(A)所示,在磁盤11的記錄表面上同心地限定多個磁道75。另外,徑向記錄多個伺服數(shù)據(jù)71。如圖3(B)所示,每個磁道在圓周方向包括與伺服數(shù)據(jù)71相鄰的數(shù)據(jù)區(qū)73。
      數(shù)據(jù)區(qū)73包括SYNC格式77,其中每個由用于增益控制和讀出/寫入信道同步的30到40個字節(jié)組成;扇區(qū)79,它們每個由512個字節(jié)構(gòu)成,并起數(shù)據(jù)記錄區(qū)和讀出/寫入單位數(shù)據(jù)區(qū)的作用;和ECC碼81,它們每個由用于補償數(shù)據(jù)讀出錯誤的約50個字節(jié)構(gòu)成。而且,本發(fā)明利用時間戳(time stamp)83,它們每個由約1個字節(jié)構(gòu)成,并記錄在每個ECC碼81和每個相鄰扇區(qū)的每個SYNC格式之間。SYNC格式77、扇區(qū)79、ECC碼81和時間戳83的多個結(jié)合形成在數(shù)據(jù)區(qū)73中。每個ECC碼81包括相應(yīng)扇區(qū)的扇區(qū)地址。
      磁頭15包括通過電和磁信號之間的雙向轉(zhuǎn)換對磁盤11進行讀出/寫入操作的分立的轉(zhuǎn)換裝置或共用的轉(zhuǎn)換裝置。致動器組件17保持磁頭15和旋轉(zhuǎn)以將磁頭15轉(zhuǎn)移到在磁盤11的指定磁道。音圈電機(下稱VCM)19包括在致動器組件17上安裝的音圈和分別安裝到磁盤驅(qū)動器10的底座上的音圈磁體和音圈磁軛。音圈電機通過音圈中的饋送電流控制致動器組件17的運動。VCM驅(qū)動器21將從數(shù)模轉(zhuǎn)換器(下稱DAC)23接收的電壓信號轉(zhuǎn)換為VCM19的驅(qū)動電流。DAC23從微處理單元(下稱MPU)25接收用于定位磁頭15的數(shù)字信號,并將此信號轉(zhuǎn)換成模擬電壓信號。
      主軸電機驅(qū)動器27包括AD轉(zhuǎn)換器,用于將從MPU25接收的數(shù)字信號轉(zhuǎn)換成用于主軸電機13的驅(qū)動電流。前置放大器29放大在讀出操作時磁頭15從磁盤11讀出的微弱模擬讀出信號,并將放大的信號送至讀出/寫入信道(下稱R/W信道)31。另外,前置放大器放大在寫入操作時從讀出/寫入信道31接收的模擬寫入信號,并將放大的信號輸出到磁頭15。
      R/W信道31進行讀出或?qū)懭氩僮鞯臄?shù)據(jù)處理。R/W信道31通過硬盤控制器(下稱HDC)33接收從主機55傳送出的寫入數(shù)字?jǐn)?shù)據(jù)。R/W信道31將接收的數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換成寫入電流,并將寫入電流發(fā)送到前置放大器29。而且,R/W信道31將通過前置放大器29從磁頭15發(fā)送的讀出信號轉(zhuǎn)換成數(shù)字?jǐn)?shù)據(jù),并通過HDC33將該數(shù)字?jǐn)?shù)據(jù)發(fā)送到主機55。伺服控制器37從R/W信道31輸出的讀出數(shù)據(jù)提取磁頭的位置信息,并將該信息發(fā)送到MPU25和HDC33。
      HDC33起與主機55通信的接口的功能,因此在與主機55的數(shù)據(jù)轉(zhuǎn)移速率和在磁盤10中的數(shù)據(jù)處理速度之間進行調(diào)節(jié)。HDC33在緩沖器35中臨時存儲從主機55轉(zhuǎn)移來的數(shù)據(jù),并根據(jù)從MPU25來的指令將其發(fā)送到R/W信道31。另外,HDC33在緩沖器35中臨時存儲從R/W信道31轉(zhuǎn)移來的數(shù)據(jù),并根據(jù)MPU25的指令將其發(fā)送到主機55。再者,HDC33包括利用ECC碼81的電路,如數(shù)據(jù)糾錯線路和地址標(biāo)志檢測電路。HDC包括與主機55進行數(shù)據(jù)通信的寄存器。
      MPU25與HDC33協(xié)作控制有關(guān)磁盤驅(qū)動器10的操作的各種組件。MPU運行刷新執(zhí)行程序以計算扇區(qū)數(shù)據(jù)在磁盤11上存儲后到根據(jù)在該扇區(qū)中存儲的相關(guān)的扇區(qū)數(shù)據(jù)的時間戳和在讀出數(shù)據(jù)時的時間信息而讀出扇區(qū)數(shù)據(jù)的經(jīng)過時間,然后,根據(jù)需要刷新扇區(qū)數(shù)據(jù)或更新時間戳。MPU25運行刷新執(zhí)行程序,以將刷新請求指令發(fā)送到主機,并從主機接收刷新指令。
      MPU25直接訪問HDC33的各種寄存器以控制與主機55間的數(shù)據(jù)轉(zhuǎn)移。另外,MPU25將從主機55發(fā)送的磁盤11的群集地址轉(zhuǎn)換成LBA,并進一步轉(zhuǎn)換為CHS參數(shù)。另外,MPU25參考再定位缺陷圖(relocation defect map)(RDM)計算次級(secondary)缺陷扇區(qū)的備用扇區(qū)的地址。另外,MPU25根據(jù)從伺服控制器37發(fā)送的伺服信息確定磁頭15的位置,并向數(shù)模轉(zhuǎn)換器(下稱DAC)23提供數(shù)字信號,該數(shù)字信號用于根據(jù)與從主機55指定的地址計算的與目標(biāo)位置的偏差,將磁頭15定位到目標(biāo)位置。
      只讀半導(dǎo)體存儲器(下稱ROM)41存儲使得MPU25能夠執(zhí)行刷新的刷新執(zhí)行程序。刷新執(zhí)行程序可以存儲在不向用戶開放的磁盤11的系統(tǒng)區(qū)中。隨機存取存儲器(下稱RAM)39是主存儲裝置,它臨時存儲MPU25執(zhí)行的各種程序,或起MPU25工作區(qū)的作用。在磁盤驅(qū)動器工作時,RAM39臨時存儲將群集地址轉(zhuǎn)換成CHS參數(shù)和RDM的表。另外,RAM39起緩沖器的作用,用于臨時存儲必須刷新的扇區(qū)數(shù)據(jù)。
      電可擦可編程只讀存儲器(下稱EEPROM)43存儲磁盤驅(qū)動器10專用的信息,如模型名、序列號、固件版本、它使用的協(xié)議和制造商名、以及諸如電源管理、寫入或預(yù)讀高速緩沖存儲器和讀出或?qū)懭刖彌_器的設(shè)定信息。EEPROM43可以存儲記錄將次級缺陷扇區(qū)變換成備用扇區(qū)的項目的再定位缺陷圖。另外,EEPROM43能夠存儲磁盤驅(qū)動器10工作時產(chǎn)生的數(shù)據(jù),諸如錯誤日志,事件日志,性能數(shù)據(jù),伺服日志或主機日志。然而,在本實施例中,RDM和錯誤日志和其它數(shù)據(jù)存儲在磁盤11上。
      主機55是將磁盤驅(qū)動器10用作外部存儲裝置或輔助存儲裝置的電子裝置。主機55連接到根據(jù)任何接口標(biāo)準(zhǔn)的接口連接器47,如ATA(AT附件)和SCSI(小型計算機系統(tǒng)接口),以與磁盤驅(qū)動器10進行數(shù)據(jù)轉(zhuǎn)移。在此實施例中,磁盤驅(qū)動器10采用ATA接口標(biāo)準(zhǔn)。另外,主計算機55發(fā)出刷新指令,指示磁盤11執(zhí)行刷新。另外,主機55根據(jù)操作系統(tǒng)(OS)的文件管理系統(tǒng)管理的控制表中的時間戳刷新磁盤11。
      雖然上述說明了根據(jù)本發(fā)明的實施例的磁盤驅(qū)動器10的例示的方框圖,但是應(yīng)理解,參照

      的每個方框的名稱、特征和相互關(guān)系僅是示例性的,本發(fā)明的精神不限于上述例子,因此其它特征的加入,以及通過不同的功能塊或?qū)⒐δ軌K合并和分解實現(xiàn)同一特征也落入本發(fā)明的范圍內(nèi),只要本領(lǐng)域的普通技術(shù)人員盡可以參照本說明書進行這些修改。
      在接收讀出指令時用定時刷新圖4是方法流程圖,通過所述方法,在從主機55接到讀出指令時,通過用定時檢查扇區(qū)數(shù)據(jù)的時間戳,磁盤驅(qū)動器10刷新在讀出指令指定的扇區(qū)中存儲的扇區(qū)數(shù)據(jù)。扇區(qū)數(shù)據(jù)的刷新指的是這樣的過程,讀出在給定的扇區(qū)存儲的數(shù)據(jù),然后將數(shù)據(jù)寫入相同的扇區(qū)。以ROM41中存儲的刷新執(zhí)行程序來說明圖4所示的刷新過程。將刷新執(zhí)行程序讀出到RAM39中,使得MPU25能夠控制磁盤驅(qū)動器10并執(zhí)行該程序。
      在各種時間點上在磁盤11的多個扇區(qū)(下稱S1)中存儲扇區(qū)數(shù)據(jù)(下稱n1)。根據(jù)每個扇區(qū)數(shù)據(jù)n1提供的每個時間戳(T1)83包括年月日這樣的日期信息或帶有在相應(yīng)扇區(qū)中存儲扇區(qū)數(shù)據(jù)n1的時間的年月日的日期信息。一些扇區(qū)S1不具有在其中存儲的扇區(qū)數(shù)據(jù)n1,與這樣的扇區(qū)S1相應(yīng)的時間戳具有無意義的值。在框101處,主機55在各扇區(qū)S1當(dāng)中指定一個或多個扇區(qū)(下稱S2)79,并將數(shù)據(jù)讀出指令發(fā)送到磁盤驅(qū)動器10。
      在框103處,MPU25控制磁盤驅(qū)動器10以訪問扇區(qū)S2并讀出扇區(qū)數(shù)據(jù)(下稱n2)。雖然扇區(qū)S2一般是包括在磁盤簇中的多個扇區(qū),但是本發(fā)明不排除單個扇區(qū)的情況。MPU25從旋轉(zhuǎn)磁盤11讀出扇區(qū)數(shù)據(jù)n2,隨后讀出與該扇區(qū)數(shù)據(jù)n2相應(yīng)的時間戳(下稱T2)83。如圖3(B)所示由于扇區(qū)數(shù)據(jù)n2和時間戳T2在磁盤11上彼此物理鄰近,所以能夠在沒有旋轉(zhuǎn)延遲的情況下讀出扇區(qū)數(shù)據(jù)n2和時間戳T2。MPU25將讀出的扇區(qū)數(shù)據(jù)n2存儲在緩沖器35中并準(zhǔn)備將扇區(qū)數(shù)據(jù)n2返回到主機55。另外,MPU25在RAM39中存儲扇區(qū)數(shù)據(jù)n2和相應(yīng)的時間戳T2以及包括在ECC碼中的扇區(qū)地址。在RAM39中,可以不存儲扇區(qū)數(shù)據(jù),只存儲時間戳T2和扇區(qū)地址。
      在框105處,MPU25將扇區(qū)數(shù)據(jù)n2返回到主機55。由于給定向主機55返回數(shù)據(jù)的優(yōu)先級比刷新的高,所以刷新不會使磁盤驅(qū)動器的性能退化。在框107處,MPU25根據(jù)時間戳T2和讀出扇區(qū)數(shù)據(jù)時的時間信息計算每個扇區(qū)數(shù)據(jù)n2在存儲后到讀出的經(jīng)過時間。讀出扇區(qū)數(shù)據(jù)時的時間信息包括與時間戳相應(yīng)的年月等日期。在主機打開后即刻執(zhí)行的啟動例行程序中,磁盤驅(qū)動器10可以從主機55接收讀出扇區(qū)數(shù)據(jù)時的時間信息。另外,也可以向磁盤驅(qū)動器10提供與可充電電池連接的時鐘以通過測量獲得該信息。
      刷新執(zhí)行程序包括用于確定刷新定時的標(biāo)準(zhǔn)經(jīng)過時間。該標(biāo)準(zhǔn)經(jīng)過時間是能夠正確讀出磁盤11上存儲的數(shù)據(jù)的時限,如設(shè)定為,三或五年,這取決于向磁盤11提供的假設(shè)的環(huán)境溫度值和選擇的記錄介質(zhì)等??梢耘渲弥鳈C55以將標(biāo)準(zhǔn)經(jīng)過時間寫入到刷新執(zhí)行程序參考的EEPROM43中。
      在框109處,MPU25通過從當(dāng)前時間信息中減去讀出的時間戳T2確定每個扇區(qū)數(shù)據(jù)的經(jīng)過時間,如果發(fā)現(xiàn)超過標(biāo)準(zhǔn)經(jīng)過時間(下稱n3)的任何扇區(qū)數(shù)據(jù),則MPU25用RAM39中的相應(yīng)扇區(qū)地址保持這樣的扇區(qū)數(shù)據(jù)n3,并從RAM39清除其它扇區(qū)數(shù)據(jù)。另外,在主機55發(fā)出其它讀出指令時,MPU25相似地操作,用相應(yīng)的扇區(qū)地址累積存儲其實際經(jīng)過時間超過標(biāo)準(zhǔn)經(jīng)過時間的扇區(qū)數(shù)據(jù)n3。
      在框111處,磁盤驅(qū)動器10開始準(zhǔn)備進入省電模式或斷電模式。在省電模式中,當(dāng)主機55沒有在預(yù)定時間段訪問磁盤驅(qū)動器10時,通過例如關(guān)掉主軸電機或部分電路板來節(jié)省電能。省電模式具有關(guān)閉的幾個范圍的步驟,但是即使在最大省電模式,磁盤驅(qū)動器10也總是能夠從主機55接收指令以開始它的工作。但是,在斷電模式,在從主機55接收了停止指令后,磁盤驅(qū)動器返回指令以表示它能夠停止,然后完全關(guān)閉電源。
      在框113處,如果MPU25確定進入省電模式或從主機55接收到停止指令,MPU25通過將存儲在RAM39中的扇區(qū)數(shù)據(jù)n3寫入到原來讀出扇區(qū)數(shù)據(jù)n3的扇區(qū)S3中以刷新扇區(qū)數(shù)據(jù)n3。另外,用刷新時間的信息更新扇區(qū)S3的時間戳T3。如果在框103處讀出的扇區(qū)數(shù)據(jù)n2沒有存儲在RAM39中,則MPU25通過從磁盤11讀出扇區(qū)數(shù)據(jù)n3來刷新扇區(qū)數(shù)據(jù)。在刷新扇區(qū)數(shù)據(jù)和更新時間戳后,在框115處,磁盤驅(qū)動器10進入省電模式。在斷電模式的情況下,磁盤驅(qū)動器10發(fā)送指令以表示它能夠停止,主機響應(yīng)這個指令關(guān)閉向磁盤驅(qū)動器10供電的電源。
      在上述過程中,因為磁盤驅(qū)動器10用從主機55接收讀出指令時的定時檢查要讀出的扇區(qū)數(shù)據(jù)n2的時間戳T2,并刷新超過標(biāo)準(zhǔn)經(jīng)過時間的扇區(qū)數(shù)據(jù)n3,所以磁盤驅(qū)動器10幾乎不會無益地浪費刷新時間,因此磁盤驅(qū)動器10的性能不退化。在每個512字節(jié)的扇區(qū)中一個時間戳僅占有約1個字節(jié),因此,幾乎可以忽略由于使用時間戳造成的磁盤11的存儲容量的減少。在磁盤11上與對應(yīng)的ECC碼81相鄰地存儲的時間戳83不引起讀出的旋轉(zhuǎn)延遲。因為ECC碼81被邏輯計算以在每次存儲扇區(qū)數(shù)據(jù)時寫入,所以時間戳83可以結(jié)合到ECC碼81中。如果將時間戳83結(jié)合到ECC碼81中,磁盤11不必提供存儲時間戳的額外區(qū)。
      圖5顯示了經(jīng)過時間的溫度校正的一個例子。磁盤11上存儲的數(shù)據(jù)由于熱衰變而退化的程度不僅取決于經(jīng)過時間(它只是一個簡單的時間因素),也取決于在經(jīng)過時間范圍內(nèi)磁盤11所處的溫度分布(profile)。因此,通過對溫度分布校正經(jīng)過時間能夠更正確地確定需要刷新的時間段。圖5中,設(shè)定50℃和60℃兩個參考溫度值并將經(jīng)過時間均勻分成t1到t10。測量t1到t10每個時間段的磁盤驅(qū)動器的平均環(huán)境溫度,然后,如果平均環(huán)境溫度小于50℃則確定實際經(jīng)過時間的溫度系數(shù)為1.0,如果平均環(huán)境溫度在50℃和60℃之間則確定溫度系數(shù)為1.1,如果平均環(huán)境溫度在60℃以上確定平均溫度系數(shù)為1.2。然后,用適當(dāng)?shù)南禂?shù)乘實際經(jīng)過時間。
      因此,通過用溫度系數(shù)乘實際經(jīng)過時間校正當(dāng)前時間的信息,以使每個扇區(qū)數(shù)據(jù)被記錄后到當(dāng)前的經(jīng)過時間能夠由溫度分布校正,因此,能夠改善在考慮了熱衰變的情況下確定刷新定時的準(zhǔn)確性。在主機55的啟動程序中主機55測量并計算每個時間段t1-t10的溫度系數(shù)并發(fā)送到磁盤驅(qū)動器10。主機55設(shè)有包括可充電電池的溫度測量系統(tǒng),以致在關(guān)閉電源時測量磁盤驅(qū)動器10的環(huán)境溫度。因為均勻分開經(jīng)過時間,所以不管何時寫入扇區(qū)數(shù)據(jù),通過用溫度系數(shù)乘寫入扇區(qū)數(shù)據(jù)后的平均分開的經(jīng)過時間能夠計算校正的經(jīng)過時間。
      接收刷新指令時用定時更新下面,說明通過從主機55接收刷新指令刷新扇區(qū)數(shù)據(jù)的方法。通過在預(yù)定時間段內(nèi)刷新扇區(qū)數(shù)據(jù)的前提下設(shè)計磁盤驅(qū)動器10,能夠降低磁盤11的晶粒度,結(jié)果能夠提高SN。
      在參照圖4的流程圖說明的刷新方法中,僅對主機所讀出的扇區(qū)中的扇區(qū)數(shù)據(jù)計算經(jīng)過時間,并僅刷新超過標(biāo)準(zhǔn)經(jīng)過時間的扇區(qū)數(shù)據(jù)。因此有可能在預(yù)定時間間隔在主機55未讀的扇區(qū)中存儲的扇區(qū)數(shù)據(jù)沒有被刷新,并且因此變得不能讀出。因此,要有效地在每個預(yù)定時間段,例如一年,檢查所有扇區(qū)數(shù)據(jù)的時間戳和刷新超過標(biāo)準(zhǔn)經(jīng)過時間的扇區(qū)數(shù)據(jù)。
      圖6是磁盤驅(qū)動器接收從主機55來的刷新指令和刷新扇區(qū)數(shù)據(jù)的示例性方法的流程圖。ROM41中存儲的刷新執(zhí)行程序說明了圖6示出的刷新過程,將該刷新執(zhí)行程序讀出到RAM39中,使得MPU25能夠控制磁盤驅(qū)動器10和執(zhí)行該程序。
      在框201處,磁盤驅(qū)動器10測量當(dāng)前時間的信息,或從主機55接收該信息,以確定檢查是否必須刷新扇區(qū)數(shù)據(jù)的定時,然后向主機55發(fā)送刷新請求指令。刷新定時可以不通過磁盤驅(qū)動器10而是通過主機來確定。在框203處,在監(jiān)視主機55操作狀態(tài)的用戶確定可進行刷新時,主機55向磁盤驅(qū)動器10發(fā)送刷新指令。
      因為根據(jù)此實施例在磁盤驅(qū)動器10進行刷新時主機55不能夠訪問磁盤驅(qū)動器10,所以理想的是,基于主機55的使用由用戶發(fā)送刷新指令,但是主機55可以通過自動響應(yīng)從磁盤驅(qū)動器10接收的刷新請求指令發(fā)送刷新指令。在此實施例中,磁盤驅(qū)動器10檢查所有扇區(qū)數(shù)據(jù)S1的時間戳T1并按照請求刷新扇區(qū)數(shù)據(jù)。另外,磁盤驅(qū)動器10也可以不檢查所有的扇區(qū)數(shù)據(jù),而是檢查對用戶開放的用戶區(qū)的扇區(qū)中的扇區(qū)數(shù)據(jù)。另外,可以分開確定系統(tǒng)程序和存儲在用戶不能夠訪問的系統(tǒng)區(qū)中的磁盤驅(qū)動器10的數(shù)據(jù)的刷新定時。
      在框205處,選擇用于檢查時間戳的第一磁道TR1。該磁道是按照希望選擇的,使得搜尋操作和旋轉(zhuǎn)延遲可以不發(fā)生,或例如首先選擇在最外柱面中的第一磁道,然后,選擇在相同柱面中的第二磁道,在檢查了相同柱面中的所有磁道的時間戳后,檢查在下一個柱面中的磁道。
      在框207處,將TR1旋轉(zhuǎn)一周以檢查所選擇的磁道TR1中的所有扇區(qū)數(shù)據(jù)S2的時間戳T2,然后從當(dāng)前時間信息計算經(jīng)過時間以便將超過標(biāo)準(zhǔn)經(jīng)過時間的扇區(qū)數(shù)據(jù)n3與相應(yīng)的扇區(qū)地址一起存儲在RAM39中。在框209處,當(dāng)旋轉(zhuǎn)下一轉(zhuǎn)時,將要刷新的存儲在RAM39中的扇區(qū)數(shù)據(jù)n3寫入到相應(yīng)的扇區(qū)S3,另外,用當(dāng)前時間信息更新扇區(qū)數(shù)據(jù)n3的時間戳T3。在框211處,確定是否所有磁道中的時間戳都已被檢查,以及是否扇區(qū)數(shù)據(jù)按照需要被刷新。如果完成了檢查和刷新,則過程繼續(xù)到框213處,在此MPU25向主機55發(fā)送表示完成了刷新的指令,這使得主機55能夠訪問磁盤驅(qū)動器10。
      如果在框211處還沒有檢查所有磁道中的時間戳,則過程繼續(xù)到框215處,在此選擇磁道TRX并執(zhí)行與在框207處相似的過程。然后,在框217處,執(zhí)行與在框209處相似的過程。如上所述,相鄰柱面中的所有扇區(qū)數(shù)據(jù)的時間戳都能得到檢查,并能夠刷新達(dá)到刷新定時的扇區(qū)數(shù)據(jù)。因為該刷新過程能夠確保刷新所存儲的扇區(qū)數(shù)據(jù)的周期,所以能夠使用具有改進SN比的晶粒的磁盤,其結(jié)果能夠增加磁盤驅(qū)動器的設(shè)計自由度。
      盡管磁盤驅(qū)動器10響應(yīng)刷新指令檢查時間戳以確定必須要刷新的扇區(qū)數(shù)據(jù)并進行刷新,但是也可以在主機進行整個磁盤11的讀出檢查的同時進行刷新。例如,Windows(Windows是微軟公司的注冊商標(biāo))標(biāo)準(zhǔn)地配置有稱之為ScanDisk的數(shù)據(jù)讀出檢查的維護工具,通過與ScanDisk同時讀出所有扇區(qū)數(shù)據(jù)的時間戳并進行需要的刷新能夠在ScanDisk所要求的時間段內(nèi)基本完成刷新。
      主機進行的刷新下面,參照圖7和8說明主機計算每個扇區(qū)的經(jīng)過時間和執(zhí)行磁盤驅(qū)動器10的刷新的方法。圖7為描述主機的文件控制表的圖示。圖8是主機刷新扇區(qū)數(shù)據(jù)的方法示例性流程圖。象個人計算機這樣的主機55的基本操作由OS控制。在諸如磁盤驅(qū)動器這樣的外部存儲設(shè)備連接到用于讀出/寫入數(shù)據(jù)的主機55時,主機55通過文件管理系統(tǒng)管理文件的位置。
      圖7是在MS-DOS的文件管理系統(tǒng)中使用的稱之為目錄的文件控制表。在目錄中存儲每個文件的文件名、擴展名、屬性、保留區(qū)、寫日期、起始簇和大小。例如,表中示出文件ABC是2001年10月15日21:41:30寫入的,該寫入日期對應(yīng)于根據(jù)本發(fā)明的時間戳。ABC文件在磁盤上存儲的位置用起始簇的地址識別。簇是主機55處理磁盤驅(qū)動器10中的文件的最小單位,由多個扇區(qū)構(gòu)成。
      關(guān)于應(yīng)當(dāng)使用哪些簇的信息存儲在被稱之為FAT(文件分配表)的表中。在文件ABC的起始簇地址5后的簇鏈的地址存儲在FAT中,文件ABC在磁盤11上的位置可以被標(biāo)識為簇地址。因此,主機55能夠通過檢查目錄知道各個文件是何時被寫入的。
      主機是眾所周知的一般用途計算機,它包括CPU,RAM,ROM,IDE控制器等。CPU控制全部操作。RAM臨時存儲CPU執(zhí)行的程序或起CPU工作區(qū)的作用。ROM存儲BIOS等。IDE控制器起與磁盤驅(qū)動器10的接口的作用。用于執(zhí)行圖8所示過程的刷新執(zhí)行程序被從磁盤10讀出到主機的RAM中以便它能夠被執(zhí)行。在圖8的框301處,主機55檢查寫入到文件管理系統(tǒng)的目錄中的時間戳。配置刷新執(zhí)行程序以使得在規(guī)律的時間間隔如每一或兩年,主機55讀出目錄中的時間戳。
      在框303處,主機55根據(jù)當(dāng)前時間信息和每個文件的時間戳選擇超過標(biāo)準(zhǔn)經(jīng)過時間的文件。在框305處,主機55向磁盤驅(qū)動器10發(fā)送用于刷新超過標(biāo)準(zhǔn)經(jīng)過時間的文件的刷新指令以及目標(biāo)文件的簇地址。在框307處,接收了刷新指令的磁盤驅(qū)動器10刷新存儲目標(biāo)文件的扇區(qū)中的扇區(qū)數(shù)據(jù)并更新時間戳。在框309處,磁盤驅(qū)動器10向主機55發(fā)送刷新完成指令,在框311處,主機55更新目錄的時間戳。
      雖然到目前為止參展附圖描述了本發(fā)明的具體實施例,但是應(yīng)理解,本發(fā)明不限于附圖中所示的這些實施例,只要能夠達(dá)到本發(fā)明的效果任何已知的結(jié)構(gòu)都可以采用。
      權(quán)利要求
      1.一種磁盤驅(qū)動器,它能夠與主機通信,該磁盤驅(qū)動器包括磁盤,具有被分成多個扇區(qū)的存儲區(qū);時間戳記錄介質(zhì),用于存儲時間戳,所述時間戳對應(yīng)于存儲在所述多個扇區(qū)中的各個扇區(qū)數(shù)據(jù);和處理器,用于控制所述磁盤驅(qū)動器的組件以讀出存儲在所述多個扇區(qū)的任何一個中的扇區(qū)數(shù)據(jù)的時間戳,并刷新根據(jù)扇區(qū)數(shù)據(jù)的經(jīng)過時間選擇的扇區(qū)數(shù)據(jù),所述經(jīng)過時間是根據(jù)所述時間戳被讀出時的時間信息和所述讀出的時間戳計算的。
      2.如權(quán)利要求1所述的磁盤驅(qū)動器,其中其時間戳被讀出的所述扇區(qū)數(shù)據(jù)是所述主機指令要讀出的扇區(qū)數(shù)據(jù)。
      3.如權(quán)利要求2所述的磁盤驅(qū)動器,其中所述處理器在刷新所述被選擇的扇區(qū)數(shù)據(jù)之前將指令要讀出的所述扇區(qū)數(shù)據(jù)發(fā)送給所述主機。
      4.如權(quán)利要求1所述的磁盤驅(qū)動器,其中所述被選擇的扇區(qū)數(shù)據(jù)的地址存儲在易失性存儲器中,所述被選擇的扇區(qū)數(shù)據(jù)在所述磁盤驅(qū)動器的省電模式或斷電模式下被刷新。
      5.如權(quán)利要求1所述的磁盤驅(qū)動器,其中所述處理器用與刷新定時相對應(yīng)的時間信息更新所述被刷新的扇區(qū)數(shù)據(jù)的時間戳。
      6.如權(quán)利要求1所述的磁盤驅(qū)動器,其中所述時間戳記錄介質(zhì)是所述磁盤。
      7.如權(quán)利要求6所述的磁盤驅(qū)動器,其中用于存儲所述時間戳的區(qū)域設(shè)在所述磁盤的每個扇區(qū)的位置上。
      8.如權(quán)利要求7所述的磁盤驅(qū)動器,其中所述時間戳被合并到ECC碼中。
      9.如權(quán)利要求1所述的磁盤驅(qū)動器,其中根據(jù)所述磁盤驅(qū)動器的環(huán)境溫度分布校正所述時間戳被讀出時的時間信息,所述磁盤驅(qū)動器的環(huán)境溫度分布是在其時間戳被讀出的所述扇區(qū)數(shù)據(jù)被存儲后到所述時間戳被讀出這段時間測量的。
      10.如權(quán)利要求9所述的磁盤驅(qū)動器,其中所述磁盤驅(qū)動器從所述主機接收根據(jù)所述環(huán)境溫度分布作了校正的時間信息。
      11.一種磁盤驅(qū)動器,它能夠與主機通信,所述磁盤驅(qū)動器包括磁盤,具有被分成多個扇區(qū)的存儲區(qū);時間戳記錄介質(zhì),用于存儲時間戳,所述時間戳對應(yīng)于存儲在所述多個扇區(qū)中的各個扇區(qū)數(shù)據(jù);和處理器,用于通過響應(yīng)從所述主機發(fā)送的刷新指令來控制所述磁盤驅(qū)動器的組件,以讀出由所述刷新指令指定的扇區(qū)的時間戳,并刷新根據(jù)扇區(qū)數(shù)據(jù)的經(jīng)過時間選擇的扇區(qū)數(shù)據(jù),所述經(jīng)過時間是根據(jù)所述數(shù)據(jù)被讀出時的時間信息和所述時間戳而計算的。
      12.如權(quán)利要求11所述的磁盤驅(qū)動器,其中所述主機指定的扇區(qū)是所述磁盤上的所有扇區(qū)。
      13.如權(quán)利要求12所述的磁盤驅(qū)動器,其中所述刷新指令包括對寫在所述磁盤上的所有扇區(qū)數(shù)據(jù)執(zhí)行讀出檢查的指令。
      14.如權(quán)利要求11所述的磁盤驅(qū)動器,其中所述處理器向所述主機發(fā)送刷新請求指令。
      15.一種連接磁盤驅(qū)動器的主機,所述磁盤驅(qū)動器包括磁盤,所述磁盤具有被分成多個扇區(qū)的存儲區(qū),所述主機包括處理器,用于控制所述主機的操作;文件控制表,用于保存存儲在所述磁盤驅(qū)動器的每個扇區(qū)中的時間戳;和記錄介質(zhì),用于存儲刷新程序,以使得所述處理器能夠刷新根據(jù)扇區(qū)數(shù)據(jù)的經(jīng)過時間選擇的扇區(qū)數(shù)據(jù),所述扇區(qū)數(shù)據(jù)的經(jīng)過時間是根據(jù)存儲在所述文件控制表中的時間戳和當(dāng)前時間的信息計算的。
      16.如權(quán)利要求15所述的主機,其中對于每個簇刷新所述扇區(qū)數(shù)據(jù)。
      17.一種刷新方法,用于刷新能夠與主機通信的磁盤驅(qū)動器中的磁盤的多個扇區(qū)中存儲的扇區(qū)數(shù)據(jù),所述方法包括如下步驟從所述主機接收刷新指令;讀出由所述刷新指令指定的扇區(qū)數(shù)據(jù)的時間戳;根據(jù)所述時間戳被讀出時的時間信息和所述時間戳計算由所述刷新指令指定的扇區(qū)數(shù)據(jù)的經(jīng)過時間;響應(yīng)計算扇區(qū)數(shù)據(jù)的經(jīng)過時間的步驟選擇要刷新的扇區(qū)數(shù)據(jù);和刷新所選擇的扇區(qū)數(shù)據(jù)。
      18.如權(quán)利要求17所述的刷新方法,其中所述刷新指令包括對寫在所述磁盤上的所有扇區(qū)數(shù)據(jù)執(zhí)行讀出檢查的指令。
      19.一種刷新方法,用于刷新在磁盤驅(qū)動器的磁盤上的多個扇區(qū)中存儲的扇區(qū)數(shù)據(jù),所述方法包括如下步驟存儲與所述的多個扇區(qū)數(shù)據(jù)中的每個扇區(qū)數(shù)據(jù)相對應(yīng)的時間戳;讀出所述時間戳;根據(jù)所述讀出的時間戳和所述時間戳被讀出時的時間信息計算所述讀出扇區(qū)數(shù)據(jù)的經(jīng)過時間;響應(yīng)計算所述扇區(qū)數(shù)據(jù)的經(jīng)過時間的步驟選擇要刷新的扇區(qū)數(shù)據(jù);和刷新所選擇的扇區(qū)數(shù)據(jù)。
      20.如權(quán)利要求19所述的刷新方法,其中所述讀出時間戳的步驟包括讀出所有扇區(qū)數(shù)據(jù)的時間戳的步驟。
      全文摘要
      提供了這樣一種磁盤驅(qū)動器即使在信息寫入磁盤后過去了相當(dāng)長的時間,當(dāng)信息再被讀出時該磁盤驅(qū)動器也不產(chǎn)生錯誤。磁盤具有被分成多個扇區(qū)ST1的存儲區(qū)。在時間戳記錄介質(zhì)上存儲與扇區(qū)ST1中存儲的每個扇區(qū)數(shù)據(jù)m1相對應(yīng)的時間戳TP1。處理器控制磁盤驅(qū)動器以讀出扇區(qū)ST1的任何扇區(qū)ST2中存儲的扇區(qū)數(shù)據(jù)m2的時間戳TP2,并刷新根據(jù)經(jīng)過時間選擇的扇區(qū)數(shù)據(jù)m3,所述經(jīng)過時間是根據(jù)讀出該時間戳?xí)r的時間信息和時間戳TP2計算的。
      文檔編號G06F12/16GK1670854SQ200510055869
      公開日2005年9月21日 申請日期2005年3月16日 優(yōu)先權(quán)日2004年3月17日
      發(fā)明者池田政臣, 戶張敦, 松井孝夫, 橋本敏 申請人:日立環(huán)球儲存科技荷蘭有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1