新四季網

數據存儲裝置測試方法和數據存儲裝置製造方法

2023-04-28 06:42:41

專利名稱:數據存儲裝置測試方法和數據存儲裝置製造方法
技術領域:
本發明涉及數據存儲裝置測試方法以檢查裝配的數據存儲裝置是否操作正常,以及數據存儲裝置製造方法,其具有測試階段,以檢查裝配的數據存儲裝置是否操作正常。
背景技術:
通常,在裝配之後,HDD在發貨之前經歷各種測試階段,諸如伺服寫入、功能測試、老化和最終測試。對於大規模生產的HDD而言,優選的是能夠在短時期內測試(檢查)大量的裝配的HDD而不佔用大的空間。如果測試器在一對一的基礎上連接到HDD,則不可能減少佔用的空間,因為每次需要與HDD一樣多的測試器以測試HDD。
亦即,為了減少佔用的空間,優選的是通過一個測試器儘可能迅速地測試許多HDD。因此,專利文件1披露了這樣的老化測試方法,在所述老化測試方法中,許多測試下的HDD連接到一個主計算機。
在專利文件1中描述的測試方法的情況下,一個主計算機連接到20個測試用計算機,其中的每一個都具有附著於其上的3個雙通道IDE(集成電路設備)適配器。兩個測試下的HDD連接到每個IDE適配器。連接到IDE適配器的測試下的HDD容納在高溫老化室中,而測試用計算機則容納在控制室中。這種方法一次測試多個HDD,同時降低了測試用計算機的故障率,因為測試用計算機容納在室溫室中,而不是高溫室中。
現有IDE(ATA(AT附件))接口能夠具有與其連接的最多4個設備。支持IDE接口的母板具有兩個IDE埠。一個稱作初級埠,而另一個則稱作次級埠。對於每個IDE埠,都能夠連接兩個IDE設備。一個稱作主設備,而另一個則稱作從設備。連接的每個設備都具有跳接開關,通過所述跳接開關,設備被設置為主設備或從設備。最高的優先權被賦予初級埠主設備,按順序繼之以初級埠從設備、次級埠主設備和次級埠從設備。
這樣一來,每個測試器就能夠測試最多4個HDD。在典型的HDD製造測試中,通過使它們執行許多命令來測試HDD。對於每個命令,作為測試單元執行由命令發布、數據傳送(當需要處理命令時)和驅動狀態確認組成的過程。在通過一個測試器測試4個HDD的情況下,以4個HDD依次的方式作為測試單元進行命令發布、數據傳送和狀態確認。
專利文件1日本專利公開號10-6417
發明內容為了通過專利文件1中描述的方法測試連接到IDE適配器的兩個HDD,所述IDE適配器連接到測試用計算機,上述命令發布到狀態確認的過程必須以兩個HDD依次的方式作為測試單元對每個命令進行。亦即,儘管多個HDD連接到一個測試用計算機,但是測試用計算機一次只對一個HDD發布一個命令。因此,與向每個HDD連接一個測試用計算機的一對一的配置相比,儘管能夠減少佔用的空間,但是測試時間可能長。
另一方面,取決於是否發生錯誤,每個HDD可以執行不同活動序列中的一個以處理命令。因此測試用計算機同時向例如兩個HDD發布相同的命令是可行的。如果一個HDD沒有按照規定執行操作,則當通過另一個命令檢查故障的HDD時,另一個HDD的測試會持續不可能,相反地導致使測試時間更長。
已進行了本發明以解決上述問題。本發明的目的是提供數據存儲裝置測試方法和數據存儲裝置製造方法,其允許測試器在較短的時期內執行與其連接的多個數據存儲裝置的操作測試。
為了實現上述目的,本發明提供了數據存儲裝置測試方法,其通過以下執行連接到測試器的多個數據存儲裝置中的每一個的操作測試使所述多個數據存儲裝置執行從所述測試器接收的命令,其中,在當交換在所述測試器和其操作測試正在被執行的數據存儲裝置之間停止時的等待時期期間,所述測試器執行所述多個存儲裝置中的另外一個的操作測試。
由於在當交換在測試器和其操作測試正在被執行的數據存儲裝置之間停止時的等待時期期間,測試器執行多個存儲裝置中的另外一個的操作測試,所以本發明能夠通過提高測試效率來縮短測試時間。
等待時期可以包括在數據存儲裝置接收到命令的時刻和完成命令處理之後由數據存儲裝置進行完成通知的時刻之間的時期內。這使得可以有效地使用等待時期,其發生直到數據存儲裝置執行命令並且進行命令完成通知為止。
可選擇地,等待時期可以是當數據存儲裝置完成命令執行時的時刻和數據存儲裝置準備好接收隨後命令的時刻之間的時期。這使得可以有效地使用等待時期,其發生直到數據存儲裝置準備好接收命令為止。
進一步,等待時期可以是這樣的時期,在所述時期期間,數據存儲裝置如測試步驟中指定的那樣持續空閒,所述測試步驟包括一個或多個命令並構成操作測試的部分。這使得可以有效地使用每個數據存儲裝置的空閒時期。
另外,數據存儲裝置測試方法可以是這樣的操作測試由多個測試步驟組成;多個測試器與主機設備連接,每個測試器與多個數據存儲裝置連接,並且每次一個測試步驟由一個數據存儲裝置完成,就將執行結果從測試器發送到主機設備;等待時期是當連接到測試器的數據存儲裝置完成測試步驟時的時刻和當通信變得可能以將測試步驟的執行結果從測試器發送到主機設備時的時刻之間的時期;以及在等待時期期間,執行連接到測試器並且尚未完成測試操作的另一個數據存儲裝置的操作測試。因此,這樣的持續直到通信在測試器和主機設備之間變得可能為止的等待時期能夠有效地用於測試另一個數據存儲裝置。
在這種情況下,在這樣的等待時期期間,可以例如向另一個數據存儲裝置發布命令或處理命令所需的數據。
另外,數據存儲裝置測試方法可以是這樣的以這樣的重複方式執行每個數據存儲裝置的操作測試測試器檢查數據存儲裝置是否準備好接收命令,如果數據存儲裝置準備好,則測試器向數據存儲裝置發布命令,測試器檢查數據存儲裝置是否已完全執行命令並已變得準備好接收隨後的命令,並且,如果數據存儲裝置已變得準備好,則測試器向數據存儲裝置發布隨後的命令;並且等待時期對應於直到數據存儲裝置變得準備好接收命令為止的時期和直到證實數據存儲裝置已完成命令處理為止的時期中的至少一個,而且,在等待時期期間,如果另一個數據存儲裝置準備好接收命令,則測試器能夠向另一個數據存儲裝置發布命令。因此,這樣的對於一個數據存儲裝置發生的等待時期能夠有效地用於取決於另一個數據存儲裝置的狀態而執行它的操作測試。
另外,數據存儲裝置測試方法可以是這樣的以這樣的重複方式執行每個數據存儲裝置的操作測試測試器檢查數據存儲裝置是否準備好接收命令,如果數據存儲裝置準備好,則測試器向數據存儲裝置發布命令,如果需要數據以執行命令,則測試器向數據存儲裝置傳送數據並檢查數據傳送是否完成,測試器檢查數據存儲裝置是否已完全執行命令並已變得準備好接收隨後的命令,並且,如果數據存儲裝置已變得準備好,則向數據存儲裝置發布隨後的命令;並且等待時期對應於直到數據存儲裝置變得準備好接收命令為止的時期、直到數據傳送完成為止的時期和直到證實數據存儲裝置已完成命令處理為止的時期中的至少一個,而且,在等待時期期間,測試器向另一個數據存儲裝置發布命令,如果另一個數據存儲裝置準備好接收命令的話,或者向另一個數據存儲裝置傳送數據,如果數據傳送可能的話。因此,通過取決於另一個數據存儲裝置的狀態而執行它的操作測試,能夠有效地使用這樣的對於一個數據存儲裝置發生的等待時期。
另外,多個數據存儲裝置可以經由各自的分離總線連接到測試器。這使得可以分開地向各個數據存儲裝置發布命令和傳送數據,並且使交替的主設備/從設備設置不必要。
另外,數據存儲裝置測試方法可以是這樣的如果必要的話,由一個或多個命令組成並且構成操作測試的部分的測試步驟,在一對一的基礎上通過測試器對每個數據存儲裝置執行;並且如果在一對一的基礎上對數據存儲裝置執行測試步驟,則其他數據存儲裝置的測試暫停,直到一對一測試步驟完成為止。這使得可以例如在一對一的基礎上執行測試器和數據存儲裝置之間的速度性能測試步驟。
進一步,本發明提供了包括操作測試的數據存儲裝置製造方法,其中進行每個裝配的數據存儲裝置的操作測試;所述操作測試是通過將多個裝配的數據存儲裝置連接到測試器來進行的;並且在當交換在所述測試器和操作測試正在被執行的數據存儲裝置之間停止時的等待時期期間,所述測試器執行所述多個存儲裝置中的另外一個的操作測試。
在這種情況下,通過連接到多個裝配的數據存儲裝置的測試器進行操作測試。如果交換在測試器和操作測試正在被執行的數據存儲裝置之間停止,則測試器能夠執行另一個數據存儲裝置的操作測試。這允許有效的測試,並因而改善了數據存儲裝置的大規模生產能力。
另外,操作測試可以是這樣的檢查連接到測試器的多個數據存儲裝置中的一個,所述數據存儲裝置是否準備好接收命令;如果數據存儲裝置準備好接收命令,則數據存儲裝置接收從測試器發布的命令;數據存儲裝置執行接收到的命令,然後通知測試器命令執行完成;並且在持續直到測試器證實數據存儲裝置準備好接收命令為止或者直到測試器被通知命令執行完成為止的等待時期期間,測試器能夠執行多個數據存儲裝置中的另外一個的操作測試。這縮短了測試時間。
另外,操作測試可以是這樣的數據存儲裝置還從測試器接收處理命令所需的數據;並且在當數據存儲裝置接收到數據時的時刻和當數據存儲裝置完成命令處理時的時刻之間的等待時期期間,能夠執行另一個數據存儲裝置的操作測試。因此,當數據正在被傳送到一個數據存儲裝置時,或者當基於傳送的數據正在執行處理時,可以執行另一個數據存儲裝置的操作測試。
另外,操作測試可以是這樣的在等待時期期間,如果另一個存儲裝置準備好接收命令,則測試器能夠向所述另一個數據存儲裝置發布命令,並且,如果需要數據以執行所述命令,則測試器能夠傳送數據。這使得可以根據其他數據存儲裝置各自的狀態適當地執行它們的操作測試。
另外,數據存儲裝置是硬碟驅動器,所述硬碟驅動器包括構造的硬碟組件,並且所述硬碟組件具有向其安裝的控制板。另外,測試器具有安裝在其上的適配器,並且操作測試通過測試器進行,所述測試器的適配卡經由分離總線分別連接到向多個硬碟組件安裝的控制卡。這允許每個設備被自由地設置而不用主設備/從設備辨別等等。既然因此可以例如獨立地向每個設備發布命令和傳送數據,所以就提高了測試靈活性。
根據本發明,可以提供數據存儲裝置測試方法和數據存儲裝置製造方法,其允許測試器在較短的時期內執行與其連接的多個數據存儲裝置的操作測試。


圖1是HDD的示意性方框圖;圖2是顯示根據本發明實施例的測試系統的示意圖;圖3顯示了測試下的HDD是如何連接到本實施例中的測試器的;圖4是顯示本實施例中的適配卡5a的方框圖;圖5是顯示在本實施例中如何測試HDD的流程圖;圖6顯示了傳統的測試器是如何與測試下的HDD連接的;圖7顯示了傳統的ATA埠。
具體實施例方式
參考附圖,以下將提供本發明的特定實施例的詳細說明。在這個實施例中,本發明應用於HDD測試方法和HDD製造方法,其能夠通過執行所述測試方法縮短裝配後的測試時間。
在本實施例中,在測試器上安裝用於嵌入應用的實時OS。通過這種OS,否則會被花費以等待來自驅動器的狀態等的時間,被分配給其他驅動器的測試。這使得可以有效地一次測試多個驅動器。與傳統的序貫方法相比,可以縮短測試時間最多大約50%。
進一步,測試器具有兩個適配卡,其中的每一個能夠連接到兩個HDD。由於在每個適配卡上起到控制器作用的FPGA裝備有用於每個HDD的分離總線,所以一個CPU板(測試器)能夠一次測試4個驅動器而不用主設備/從設備辨別。亦即,這個測試器的一個CPU板能夠一次測試4個HDD,就好像4個CPU板在測試它們。這樣一來,由於每個HDD不需要特殊設置,所以每個HDD能夠由測試器靈活地設置並測試。
首先,為了便於理解本實施例,下面提供HDD的一般說明。圖1是示意性顯示HDD的方框圖。如圖1所示,HDD 100在殼體110中具有磁碟111、磁頭112、臂電子裝置(AE)113、主軸電機(SPM)114和音圈電機(VCM)115。它們構成硬碟組件(HDA)。另外,HDD裝備有電路板120,其作為控制板固定到殼體110的外面。在電路板120上,提供了讀/寫通道(R/W通道)121、電機驅動器單元122、硬碟控制器(HDC)/MPU集成電路(在下文中稱為HDC/MPU)123和諸如RAM之類的存儲器124。
來自外部主機的寫數據由HDC/MPU 123接收,並且經由R/W通道121和AE 113由磁頭112寫入到磁碟111。另外,磁碟111上存儲的數據由磁頭112讀出,並且經由AE 113和R/W通道121從HDC/MPU123被輸出到外部主機。
然後,下面分別說明HDD的組成部分。在SPM 114的旋轉軸周圍固定磁碟111。SPM 114由電機驅動器單元122驅動,以便以一定的速度旋轉磁碟111。磁碟111在其每個側面上具有記錄表面,並且每個記錄表面與磁頭相關聯。每個磁頭112固定到浮動塊(附圖中未顯示),其固定到託架(附圖中未顯示)。託架(附圖中未顯示)固定到VCM115,其在樞軸上轉動託架以移動浮動塊和磁頭。
典型地,每個磁頭112具有集成在其上的寫磁頭和讀磁頭。寫磁頭根據向磁碟111的寫數據將電信號轉換成磁場,而讀磁頭則將來自磁碟111的磁場轉換成電信號。注意可以安裝一個或多個磁碟111,其中的每一個可以具有形成在其任意一個側面或每個側面上的記錄表面。
然後,下面說明每個電路部分。AE 113從多個磁頭112中選擇一個將要訪問數據的磁頭。選擇的磁頭112所拾取的再生信號由AE 113以一定的增益放大(預放大),並被發送到R/W通道121。另外,AE 113將來自R/W通道121的記錄信號發送到選擇的磁頭112。特別地在本實施例中,從發送自R/W通道121的記錄信號中,AE 113檢測將要被放大的目標高頻模式。AE 113中包括的寫驅動器僅放大這種高頻模式,以生成供應給寫磁頭的寫電流。這能夠抑制ATI的影響,同時改善重寫特性,如稍後詳細說明的那樣。
從主機獲得的數據經歷由R/W通道121執行的寫處理。在寫處理中,R/W通道121對從HDC/MPU 123供應的寫數據執行代碼調製,並且將代碼調製的寫數據轉換成寫信號(電流),其被供應給AE 113。另外,當向主機供應數據時,R/W通道121執行讀處理。
在讀處理中,R/W通道121將從AE 113供應的讀信號放大到一定的幅度,從獲得的讀信號中提取數據,並且對包括用戶數據和伺服數據的提取數據執行解碼處理。解碼的讀數據被供應給HDC/MPU 123。
HDC/MPU 123是集成了MPU和HDC電路的單個晶片。根據載入到RAM 124中的微代碼操作,MPU執行數據處理所需的過程以及HDD100的一般控制,包括磁頭112的定位控制、接口控制和缺陷管理。當HDD 100啟動時,從磁碟111或ROM(未顯示)將要在MPU上操作的微代碼和控制與數據處理所需的數據載入到RAM 124中。
裝備有與主機接口的能力,HDC/MPU 123接收從主機發送的用戶數據以及讀、寫和其他命令。接收的用戶數據被傳送到R/W通道121。HDC/MPU 123也通過R/W通道121從磁碟獲得讀數據並將它發送到主機。另外,HDC/MPU 123對從主機獲得的或者從磁碟111讀出的用戶數據執行誤差校正碼(ECC)處理。
R/W通道121讀出的數據包括伺服數據和用戶數據。通過使用伺服數據,HDC/MPU 123執行磁頭12的定位控制。來自HDC/MPU 123的控制數據被輸出到電機驅動器單元122。電機驅動器單元122根據控制信號向VCM 115供應電流。另外,HDC/MPU 123通過使用伺服數據來控制數據讀/寫處理。
當製造這樣的如上所述的HDD時,裝配HDA,向其安裝電路板120,然後具有向其安裝的電路板120的HDA經歷優化和檢查階段,以優化各種參數並檢查各種功能是否工作正常。這些階段例如包括伺服信息寫入階段、用於優化伺服和通道相關的各種係數的預測試階段以及功能/可靠性確認測試(在下文中被稱作操作測試)階段。
操作測試檢查HDD是否能夠正常執行從主機發布的各種命令。通過將測試下的HDD連接到使HDD執行各種命令的測試器,來執行這種操作測試。為了測試HDD,測試器發布各種命令,並且檢查HDD是否正常處理每個命令。這種測試需要非常長的測試時間,並因而降低了HDD的大規模生產能力。
因此,本實施例旨在縮短這樣的長測試時間。如上所述,測試器典型地使用兩個IDE埠,允許兩個適配卡附著到其上。每個適配卡具有安裝在其上的FPGA(現場可編程門陣列),其充當AT/PCMCIA(個人計算機存儲卡國際協會)接口控制器。由於兩個HDD能夠連接到一個FPGA,所以一次能夠測試最多4個HDD。
為了大規模生產HDD和降低製造成本,優選的是使通常合計幾十小時的上述測試時間最小化。同樣優選的是,通過將儘可能多的HDD連接到一個測試器(一個CPU板),用較小的空間測試HDD。
然而,在傳統方法中,在發布命令之後,每個命令作為測試單元被獨佔地執行,直到狀態被確認為止。因此,儘管如上所述將最多4個HDD連接到一個測試器減少了空間,但是難以縮短測試時間,因為對於打發布命令開始就確認狀態結束的每個命令,必須序貫地測試4個HDD。進一步,如果兩個HDD連接到每個適配卡,則它們不能為了測試起見而靈活地設立,因為通常有必要設置一個為主設備而另一個為從設備。
然而,儘管每個命令都包括命令發布步驟、數據傳送步驟和狀態確認步驟,以檢查命令是否被正常執行並且HDD是否準備好接受下一個命令,但是在命令發布步驟和數據傳送步驟之間,以及數據傳送步驟和狀態確認步驟之間,存在等待時間。本實施例旨在通過以下來縮短測試時間當在測試器和HDD之間沒有進行交換時,在這些等待時間期間,向另一個HDD發布命令和傳送數據。亦即,本實施例通過以下實現測試時間的減少在向HDD發布命令之後的命令執行期間,並且/或者直到HDD通過狀態確認變得準備好接受下一個命令為止,向其他HDD發布命令和傳送數據。
對4個HDD執行測試的測試器連接到主計算機。主計算機與多個測試器連接。從每個測試器中,主計算機接收測試連接到測試器的4個HDD的結果。測試器的測試由例如幾十個測試步驟(測試項目)組成。在本實施例中,每次對任何HDD完成一個步驟,測試器就向主計算機發送結果,指示HDD通過或未通過測試步驟。主計算機例如與60個測試器連接。每個測試器通過以下使測試更加高效在測試器變得能夠訪問主計算機之前(正在等待輪詢包時),向其他HDD發布命令和傳送數據。
進一步,由於本發明在每個適配卡和兩個HDD之間使用了分離總線,所以適配卡上安裝的FPGA能夠連接到兩個HDD而不用主設備/從設備辨別。這旨在通過以下縮短測試時間允許每個測試器靈活地設置4個HDD而不用主設備/從設備辨別,並且4個HDD更加高效地執行命令。
然而,根據上述分案,儘管每個測試器幾乎能夠並行地測試與其連接的所有4個HDD,但是不可以執行最優條件下的搜索時間測量和其他速度性能測試步驟,因為在對一個HDD處理一個命令時,可以進行對另一個HDD的處理。亦即,在速度性能測試步驟的情況下,「一個測試器(1個CPU)對一個HDD」的配置是必要的,以便在相同的條件下測試每個HDD。根據前述分案,如果在執行包括一個或多個命令的一個步驟時發生等待時間,則推進另一個HDD的測試。這可能使在相同的條件下執行速度性能測量不可能。因此,當將要進行速度性能測試步驟時,本實施例暫停其他HDD的測試,以便在「一個測試器(1個CPU)對一個HDD」的基礎上測試每個HDD。通過必要時設置「一個測試器(1個CPU)對一個HDD」的配置,這使得可以在本實施例中執行精確的速度性能測量。
圖2是顯示根據本實施例的測試系統的示意圖。測試系統10具有主機設備11;多個測試器1,其連接到主機設備;以及多個(在這個特定實施例中為4個)HDD 8,其連接到測試器1中的相應一個。主機設備11向每個測試器1供應測試程序(腳本)以測試每個HDD 8。測試程序例如由幾十種測試步驟(測試項目)組成。每個測試步驟由一個或多個命令組成。例如,寫操作測試步驟是活動的序列,諸如發布寫命令,傳送寫數據和地址,判斷寫操作是否成功,並且如果發生誤差,則直接或者在改變/調整寫操作相關的各種參數之後執行重試操作。
每個測試器1如稍後說明的那樣以基本上並行的方式執行4個HDD 8的測試。每次對一個HDD 8完成一個測試步驟,每個測試器1就向主機設備11發送執行結果。主機設備11記錄對每個HDD 8的每個測試步驟的執行結果。在所有的測試步驟完成之後,將這些執行結果存儲在資料庫或類似物中,供各種誤差分析之用。在本實施例中,主機設備11例如與60個測試器1串行連接。
圖3顯示了測試下的HDD是如何與本實施例的測試器連接的。在測試器中,如圖3所示,CPU 2經由總線6和SDRAM 3、快閃記憶體4以及兩個適配卡5a與5b連接。適配卡5a和5b分別具有兩個總線71-72和73-74。總線71、72、73和74分別連接到測試下的HDD 81、82、83和84。
測試器1的CPU 2經由相關的適配卡5a或5b向HDD 81-84中的每一個發布命令,必要時傳送數據並接收命令執行結果。HDD 81-84中的每一個的命令執行結果被輸出到外面或者經由監視器顯示。為了執行HDD 81-84中每一個的操作測試,測試器1從快閃記憶體4讀出程序以執行命令序列,並且將這些命令一個接一個地發布到HDD 81-84中的每一個,用於取決於其命令執行狀態而執行。如果HDD 81-84中的一個接收到數據寫入指令(寫命令),則HDD接收寫數據和寫地址,並且將接收的數據寫入到接收的地址。如果接收到數據讀取指令(讀命令),則HDD接收讀地址和讀數據記錄SDRAM地址,從接收的地址讀出數據並將讀數據寫入到SDRAM 3。如果將數據讀入到SDRAM 3中沒有造成誤差,則測試器1判斷讀取正常進行。在這種情況下,測試器1推進到下一個命令的執行。如果例如對HDD 81-84中任何一個發生寫誤差或讀誤差,則測試器1向HDD再次發布命令用於再次執行,或者向其發布誤差校正命令。這樣一來,HDD 81-84中的每一個就取決於其命令執行狀態以及存不存在誤差而執行不同的命令。
在本實施例中,適配卡5a和5b分別經由分離ATA總線71、72、73和74分別與HDD 81-82和83-84連接。可以單獨地向各個HDD 81-84發布命令。例如,甚至當一個HDD,比方說HDD 81正在處理向其發布的命令時,也能夠向另一個HDD 82發布命令。這樣一來,就不必要作為測試單元處理命令,包括發布命令、執行數據傳送和終止命令處理。例如,當測試器1在等待HDD 81變得準備好接受命令時,測試器1能夠向另一個HDD 82、83或84發布命令,並且在發布命令之後,通過其DMA傳送功能執行數據傳送。另外,由於HDD 81-84分別經由分離總線71-74連接到測試器1,所以可以同時對4個HDD執行數據傳送。進一步,分別連接到適配卡5a和5b的兩個HDD 81-82和83-84,不必交替地設置為主設備和從設備。例如,可以將所有4個HDD都設置為或者主設備或者從設備。這提高了測試靈活性。
圖4是顯示本實施例的適配卡5a的方框圖。儘管這裡引用了適配卡5a,但是適配卡5b以同樣的方式配置。如圖4所示,適配卡5a具有DMA控制器51、存儲器52和55、HDD接口53和56以及控制器54。本實施例的適配卡5a單獨地向兩個HDD發布命令和傳送數據。因此,DMA控制器51被配置以便以兩個通道控制DMA。
例如由FIFO組成的存儲器52保持用於HDD 81的數據。例如,如果命令被發布為寫指令,則將要寫入的數據經由DMA控制器51存儲在那裡。同樣經由DMA控制器51,寫地址和其他設置值被發送到控制器54。基於這個地址和其他設置值,控制器54控制HDD接口53,以向HDD 81寫入存儲器52中保持的寫數據。如果接收到讀命令,則供應將要從其讀出數據的地址。數據從HDD 81中的那個地址讀出,並且經由HDD接口53存儲在存儲器52中。同樣地,存儲器55和HDD接口56用於處理用於HDD 82的命令。控制器54判斷每個命令是用於HDD 81還是82,並且控制相應的存儲器52或55以及HDD接口53或56。
如上所述,本實施例中的適配卡5a和5b中的每一個都具有DMA控制器和控制器,其以兩個通道控制DMA,以及兩個HDD接口,其中的每一個與一個HDD連接。亦即,由於每個HDD都裝備有獨立的ATA總線,所以可以單獨地對兩個HDD執行命令。如果兩個HDD通過一個總線串行連接到傳統的適配卡(諸如稍後說明的ATA埠),則它們中的一個必須被設置為主設備,並且另一個為從設備。在本實施例的情況下,由於兩個適配卡5a和5b不必被交替地設置為主設備和從設備,亦即,4個HDD中的任何一個都可以被自由地設置為或者主設備或者從設備,所以能夠經由4個HDD分別與其連接的總線單獨地執行命令。
另外,由於適配卡5a和5b中的每一個都具有存儲器52和55,其分別與HDD 81-84中的兩個相關聯,所以例如當HDD 81在執行操作以寫入從存儲器52供應的數據時,測試器1能夠向HDD 82發布命令,並且對它執行數據傳送。還可以在當HDD 82沒有準備好執行命令時預先向存儲器55傳送數據。這樣一來,測試器就能夠有效地使用適配卡5a和5b之間的總線6。
進一步,當從HDD 81讀出的數據要通過DMA寫入到SDRAM 3中時,適配卡5a在當總線6沒有被使用時選擇的適當時刻執行寫入。亦即,如果CPU 2將要向適配卡5b發布命令等,則適配卡5b會在發布命令之後寫入數據。如對這些例子說明的那樣,單個測試器1能夠通過以下有效地執行測試通過適配卡5a和5b的總線6的有效控制。
以下提供了在本實施例中如何執行測試的進一步詳細的說明。圖5是顯示在本實施例中如何測試HDD的流程圖。為了對每個HDD執行命令或者向/從每個HDD發送/接收數據,測試器1首先訪問每個HDD中的寄存器組,如圖5所示。例如,檢查HDD 81中的狀態寄存器(DRDY設備準備好狀態),以得知HDD 81是否準備好從測試器1接受命令(步驟S1)。如果該位為「1」,則狀態寄存器指示HDD 81準備好。如果狀態寄存器指示準備好,則測試器1發布各種命令中的一個,諸如讀命令、寫命令和功率控制命令(步驟S2)。
一旦接收到命令,HDD 81就執行用於命令的操作(步驟S3)。如果步驟S2中發布的命令是諸如寫命令之類的涉及數據傳送的命令,則執行數據傳送。在寫命令的情況下,傳送包括寫數據和地址的數據。然後,檢查數據傳送是否完成(步驟S4)。注意,作為數據傳送方法支持PIO(可編程I/O)和DMA(直接存儲器訪問)。PIO經由CPU向HDD傳送數據,而DMA則不經由CPU而直接向HDD傳送數據。進一步,支持三種DMA模式單字DMA、多字DMA和超DMA。在單字DMA模式下,逐字地傳送數據。一個字由16位組成。在多字DMA模式下,連續傳送數據的多個字。在超DMA模式下,數據傳送在時鐘信號的前後沿處發起,實現多字DMA模式下兩倍高的數據傳送率。這些數據傳送方法中之一由命令指定。
最後,檢查是否從HDD聲明中斷信號(中斷請求)INTRQ作為命令完成通知(步驟S5)。如果這樣的話,則從步驟S1重複該過程。亦即,如果HDD再次變得準備好接受命令,則發布下一個命令。
傳統上,如果HDD 81中的狀態寄存器沒有被設置為準備好,則測試器等待,直到HDD 81變得準備好為止。在本實施例中,處理在這個等待時間期間前進到諸如HDD 82之類的其他HDD。另外,儘管當在圖5中的步驟S2和S5之間處理一個命令時,測試器傳統上並不執行另一個處理,但是,除了上述等待時間之外,例如在數據傳送完成(步驟S4)之前的等待時間和已完成用於命令的讀或寫操作的HDD聲明中斷信號(步驟S5)之前的等待時間期間,在本實施例中對另一個HDD執行處理。
換言之,包括命令發布、數據傳送和命令完成通知的活動序列沒有作為測試單元執行。相反地,命令發布、數據傳送和命令完成通知被分開地執行,以便通過有效地使用上述等待時間來縮短測試時間。適配卡5a和5b裝備有分別與HDD相關聯的存儲器。對於數據傳送,被傳送以執行命令的數據被一次性存儲在相應的存儲器中,進入適配卡5a和5b中的相關存儲器中,以便有效地使用總線6的空閒時間。適配卡5a和5b的每一個中的控制器控制適配卡,以便在一定的時刻向HDD寫入數據,並且通過使用總線6的空閒時間,將臨時存儲的讀數據寫入到SDRAM 3中。
如果狀態寄存器在步驟S1中沒有指示準備好,則處理前進到下一個HDD。然後,如果HDD 82尚未完成步驟S4,則檢查例如數據傳送是否已完成。如果沒有的話,則處理前進到HDD 83。這樣一來,如果當前的HDD處於任何的上述等待時間,那麼測試就前進到另一個HDD。通過有效地使用用於4個HDD的一個測試器(一個總線6),這使得可以高效地執行測試。
如上所述,在狀態寄存器被設置為準備好、數據傳送完成以及已完成用於命令的讀或寫操作的HDD聲明中斷信號之前,等待時間發生。除了它們之外,還可以在當前的HDD根據應用(空閒、睡眠等)而無所作為時向另一個HDD發布命令和傳送數據。例如,如果測試包括指令將當前的HDD置於空閒狀態下一定時期,比方說幾秒鐘,或者命令或操作測試步驟,其在執行一定的操作之前處於空閒時期,則可以在當前的HDD空閒時測試另一個HDD。
進一步,在如圖2所示的本實施例中,多個測試器連接到單個主計算機。每個測試器1向主機設備11發送對連接到它自己的HDD 81-84中的每一個進行的每個測試步驟的結果。在本實施例中,由於每個測試器1測試4個HDD,所以60個測試器1以基本上並行的方式測試總共至多240個HDD。因此,如果測試器1要向主機設備11發送對HDD進行的測試步驟的結果,則等待時間發生。測試器1執行另一個HDD的測試,直到主機設備11變得準備好與測試器通信為止(當測試器1在等待來自主機設備11的輪詢包時)。
例如,當測試器1打算通知主機設備11對HDD 81進行的測試步驟的結果時,在主機設備11變得準備好與測試器1通信之前的等待時間期間,如果可能的話,測試器1向另一個HDD 82發布命令和傳送數據。如果對HDD 82進行的測試步驟的結果也必須向主機設備11發送,或者HDD 82正在處理命令,則測試器1可以向HDD 83發布命令或傳送數據。這樣一來,通過在主機設備11變得準備好與測試器1通信之前的等待時間期間測試另一個HDD,本實施例就進一步縮短了測試時間。
基本上,根據本實施例的測試方法,如果當對一個HDD執行一個命令時發生等待時間,則測試器可以向另一個HDD發布命令或傳送數據,以便通過一個測試器以較短的時間有效地測試多個HDD。然而,這造成問題在於,在相等或希望的條件下不能對所有的HDD進行搜索時間和其他速度性能測試步驟。因此,速度性能和其他時間決定性(time-critical)的測試步驟必須通過在「一個測試器對一個HDD」的基礎上執行命令來進行。
如早先說明的那樣,主機設備11具有腳本,在那裡測試流程被說明以測試每個HDD。基於這種腳本,測試器1執行每個HDD的測試。這種腳本被設計用來當隨後的測試步驟必須在「一個測試器(CPU)對一個HDD」的基礎上進行時調用一定的函數。
具體地,例如,當必須在「一個測試器對一個HDD」的基礎上對一個HDD 81進行速度性能測試步驟或類似步驟時,為HDD 81設置一定的標記以執行「一個測試器對一個HDD」測試步驟。通常,當該標記被設置時,其他HDD正在執行其他的測試步驟或命令,並且不能立即終止處理。因此,為其設置標記的HDD 81等待,直到每個HDD到達一定的測試點為止,亦即,例如,直到當前執行的測試步驟(測試項目)或命令完成為止。
如果其他HDD中的每一個都完成了當前測試步驟或命令的執行,則檢查上述標記是否被設置。如果這個標記被設置,則其他HDD一旦執行當前測試步驟或命令完成就暫停測試,直到標記被清除為止。如果除了HDD 81之外的所有HDD都進入空閒狀態,則為其設置上述標記的HDD 81在「一對一」的基礎上用測試器1執行測試。其他HDD暫停測試,直到為HDD 81設置的標記被清除、亦即速度性能測試步驟完成為止。如果對HDD 81完成了速度性能測試步驟,則標記被清除以允許其他HDD再繼續操作測試。這樣一來,為其設置標記的HDD就能夠在「一對一」的基礎上用測試器1執行測試。另外,標記一旦速度性能測試步驟完成就總是被清除,允許其他HDD再繼續測試。
通過在必要時使用這種標記,測試器可以在「一對一」的基礎上執行每個HDD的測試。這樣一來,儘管能夠以基本上並行的方式有效地測試4個HDD,但是也可以精確地執行如速度性能測試步驟那樣的測試步驟。
不用說,儘管本發明並不限於至此說明的實施例,但是在不脫離本發明的精神的情況下,各種修改還是可能的。在至此說明的實施例中,每個測試器上的兩個ATA埠中的每一個都具有安裝在其上的適配卡。兩個HDD經由兩個分離總線分別連接到適配卡。這允許對4個HDD的自由主設備/從設備設置和並行數據傳送。
在圖6和7的情況下,測試器傳統上經由傳統的ATA埠與測試下的HDD連接。如圖6和7所示,共同的是,分別經由總線2071和2073將HDD 2081和2083連接到測試器201的兩個ATA埠205a和205b,並且分別將HDD 2082和2084連接到HDD 2081和HDD 2083。ATA埠205a裝備有PCI總線控制器251、諸如FIFO之類的存儲器252、HDD接口253和控制器254。ATA埠205a將命令和數據經由總線2071傳送到HDD 2081,並經由總線2072進一步傳送到HDD 2082。在這種情況下,HDD 2081和2082中的一個必須被設置為主設備,而另一個為從設備。與裝備有適配器的測試器1相比,所述適配器經由分離總線與HDD連接,如上所述,這種配置在測試靈活性方面是劣等的。
然而,同樣在傳統測試器201的情況下,當一個ATA埠在待命時,亦即等待,直到連接的HDD變得準備好接受命令為止,直到從存儲器252向HDD的寫數據等的傳送完成為止,或者直到從HDD發送命令完成通知為止,可以執行連接到另一個ATA埠的HDD的測試。這樣一來,就可以通過縮短測試時間來提高HDD的大規模生產能力。
權利要求
1.一種數據存儲裝置測試方法,其通過使多個數據存儲裝置執行從測試器接收的命令來執行對連接到所述測試器的所述多個數據存儲裝置中的每一個的操作測試,其中,在當交換在所述測試器和操作測試正在被執行的數據存儲裝置之間停止時的等待時期期間,所述測試器執行所述多個存儲裝置中的另外一個的操作測試。
2.根據權利要求1所述的數據存儲裝置測試方法,其中,所述等待時期包括在當所述數據存儲裝置接收到命令時的時刻和當所述數據存儲裝置完成命令處理之後由所述數據存儲裝置進行完成通知時的時刻之間的時期內。
3.根據權利要求1所述的數據存儲裝置測試方法,其中,所述等待時期是當所述數據存儲裝置完成命令執行時的時刻和所述數據存儲裝置變得準備好接收隨後命令的時刻之間的時期。
4.根據權利要求1所述的數據存儲裝置測試方法,其中所述操作測試由多個測試步驟組成,其中的每一個由一個或多個命令組成;並且所述等待時期是這樣的時期,在所述時期期間,所述數據存儲裝置如測試步驟中指定的那樣持續空閒。
5.根據權利要求1所述的數據存儲裝置測試方法,其中所述操作測試由多個測試步驟組成;多個所述測試器與主機設備連接,每個所述測試器與多個數據存儲裝置連接,並且每次一個測試步驟由一個數據存儲裝置完成,就將其執行結果從所述測試器發送到所述主機設備;所述等待時期是當連接到測試器的數據存儲裝置完成測試步驟時的時刻和當通信變得可以將測試步驟的執行結果從所述測試器發送到所述主機設備時的時刻之間的時期;以及在所述等待時期期間,執行連接到所述測試器的並且尚未完成所述測試操作的另一個數據存儲裝置的操作測試。
6.根據權利要求1至5中之一的數據存儲裝置測試方法,其中,在所述等待時期期間,向另一個數據存儲裝置發布命令。
7.根據權利要求1至5中之一的數據存儲裝置測試方法,其中,向另一個數據存儲裝置傳送處理命令所需的數據。
8.根據權利要求1或2所述的數據存儲裝置測試方法,其中以這樣的重複方式執行每個數據存儲裝置的操作測試所述測試器檢查數據存儲裝置是否準備好接收命令;如果所述數據存儲裝置準備好,則所述測試器向所述數據存儲裝置發布命令;所述測試器檢查所述數據存儲裝置是否已完全執行所述命令並已變得準備好接收隨後的命令;並且,如果所述數據存儲裝置已變得準備好,則所述測試器向所述數據存儲裝置發布隨後的命令;並且所述等待時期對應於直到數據存儲裝置變得準備好接收命令為止的時期和直到證實所述數據存儲裝置已完成所述命令的處理為止的時期中的至少一個,而且,在所述等待時期期間,如果另一個數據存儲裝置準備好接收命令,則所述測試器向所述另一個數據存儲裝置發布命令。
9.根據權利要求1或2所述的數據存儲裝置測試方法,其中以這樣的重複方式執行每個數據存儲裝置的操作測試所述測試器檢查數據存儲裝置是否準備好接收命令;如果所述數據存儲裝置準備好,則所述測試器向所述數據存儲裝置發布命令;如果需要數據以執行所述命令,則所述測試器向所述數據存儲裝置傳送所述數據並檢查數據傳送是否完成;所述測試器檢查所述數據存儲裝置是否已完全執行所述命令並已變得準備好接收隨後的命令;並且,如果所述數據存儲裝置已變得準備好,則所述測試器向所述數據存儲裝置發布隨後的命令;並且所述等待時期對應於直到數據存儲裝置變得準備好接收命令為止的時期、直到數據傳送完成為止的時期和直到證實所述數據存儲裝置已完成所述命令的處理為止的時期中的至少一個,而且,在所述等待時期期間,所述測試器向另一個數據存儲裝置發布命令,如果所述另一個數據存儲裝置準備好接收命令的話,或者向所述另一個數據存儲裝置傳送數據,如果數據傳送可能的話。
10.根據權利要求1所述的數據存儲裝置測試方法,其中,所述多個數據存儲裝置經由各自分離總線連接到所述測試器。
11.根據權利要求1所述的數據存儲裝置測試方法,其中,最多4個數據存儲裝置連接到所述測試器。
12.根據權利要求1所述的數據存儲裝置測試方法,其中,所述測試器具有兩個數據存儲裝置經由各自分離總線連接到其的適配卡。
13.根據權利要求1所述的數據存儲裝置測試方法,其中如果必要的話,由一個或多個命令組成並且構成操作測試的部分的測試步驟,在一對一的基礎上通過所述測試器對每個數據存儲裝置執行;並且如果在一對一的基礎上對數據存儲裝置執行測試步驟,則其他數據存儲裝置的測試暫停,直到所述一對一測試步驟完成為止。
14.一種數據存儲裝置製造方法,包括裝配多個數據存儲裝置;將所述裝配的數據存儲裝置連接到測試器;以及執行所述裝配的數據存儲裝置中的每一個的操作測試;其中,在當交換在所述測試器和操作測試正在被執行的數據存儲裝置之間停止時的等待時期期間,所述測試器執行所述多個存儲裝置中的另外一個的操作測試。
15.根據權利要求14所述的數據存儲裝置製造方法,其中,所述操作測試是這樣的檢查連接到所述測試器的所述多個數據存儲裝置中的一個,所述數據存儲裝置是否準備好接收命令;如果準備好接收命令,則所述數據存儲裝置接收從所述測試器發布的命令;所述數據存儲裝置執行所述接收到的命令,然後通知所述測試器命令執行完成;並且在持續直到所述測試器證實所述數據存儲裝置準備好接收命令為止或者直到所述測試器被通知命令執行完成為止的所述等待時期期間,所述測試器執行所述多個數據存儲裝置中的另外一個的操作測試。
16.根據權利要求15所述的數據存儲裝置製造方法,其中,所述操作測試是這樣的除了所述命令之外,所述數據存儲裝置從所述測試器接收處理所述命令所需的數據;並且在當所述數據存儲裝置接收到所述數據時的時刻和當所述數據存儲裝置完成所述命令的處理時的時刻之間的所述等待時期期間,所述另一個數據存儲裝置執行操作測試。
17.根據權利要求14所述的數據存儲裝置製造方法,其中,所述操作測試是這樣的在所述等待時期期間,如果所述另一個數據存儲裝置準備好接收命令,則所述測試器向所述另一個數據存儲裝置發布命令,並且如果需要數據以處理所述命令,則所述測試器向所述另一個數據存儲裝置傳送所述數據。
18.根據權利要求14所述的數據存儲裝置製造方法,其中,所述操作測試是這樣的所述操作測試由多個測試步驟組成,其中的每一個由一個或多個命令組成;並且所述等待時期是這樣的時期,在所述時期期間,所述數據存儲裝置如測試步驟中指定的那樣持續空閒。
19.根據權利要求14所述的數據存儲裝置製造方法,其中所述操作測試由多個測試步驟組成;多個所述測試器與主機設備連接,每個所述測試器與多個數據存儲裝置連接,並且每次一個測試步驟由一個數據存儲裝置完成,就將執行結果從所述測試器發送到所述主機設備所述等待時期是當連接到測試器的數據存儲裝置完成測試步驟時的時刻和當通信變得可以將測試步驟的執行結果從所述測試器發送到所述主機設備時的時刻之間的時期;以及在所述等待時期期間,執行連接到所述測試器的並且尚未完成所述測試操作的另一個數據存儲裝置的操作測試。
20.根據權利要求14所述的數據存儲裝置製造方法,其中,所述數據存儲裝置是硬碟驅動器;所述硬碟驅動器包括構造的硬碟組件,以及所述硬碟組件具有向其安裝的控制板,並且其中,所述測試器具有安裝在其上的適配器,並且所述操作測試通過所述測試器進行,所述測試器的適配卡經由分離總線分別連接到向多個硬碟組件安裝的控制卡。
全文摘要
提供了數據存儲裝置測試方法和數據存儲裝置製造方法,其允許測試器在較短的時期內執行與其連接的多個數據存儲裝置的操作測試。通過使多個HDD 8
文檔編號G06F11/00GK1925041SQ20061012806
公開日2007年3月7日 申請日期2006年9月1日 優先權日2005年9月1日
發明者西內繁人, 高橋賢, 津山雅史, 中川孝浩 申請人:日立環球儲存科技荷蘭有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀