一種存儲器在板測試方法
2023-06-12 20:25:31 1
專利名稱:一種存儲器在板測試方法
技術領域:
本發明涉及一種存儲器測試方法,尤其涉及一種存儲器在板測試方法。
背景技術:
目前對於存儲器晶片的測試,已經有一些成熟的算法在設計測試方法時被廣泛使 用,如March、Walk、Gallop、Damier、Movi等算法。但是因為以上算法都是基於一定的順序 對全地址空間進行遍歷,隨著對測試要求的充分性和存儲器空間的不斷增加,測試步驟隨 之成倍的增加,測試所需的時間和資源也成倍的增加。然而對於在板測試,通常在模塊生產 下線後對單模塊的測試時間和效率都有嚴格要求,存儲器晶片測試算法的高時間消耗顯然 不能與實際的測試需要相適應。另外對於在板存儲器的測試,還必須考慮到PCB板和板上 其它器件對被測存儲器的影響。由於在板測試在時間和效率上的嚴格要求,對單片存儲器 晶片的測試方法並不適用於存儲器的在板測試,因此許多經典的測試算法並不完全適用於 嵌入式存儲器在板測試。
發明內容
本發明的目的為提供一種存儲器在板測試方法,其具有高時效性,解決了現有存
儲器晶片測試所帶來的高時間消耗的技術問題。 本發明的技術解決方案為 —種存儲器在板測試方法,其特殊之處在於,包括以下步驟 1)先測試控制線,如果不通過故障信息顯示和處理,測試結果輸出到測試報告管 理程序,測試結束; 2)如果通過進行花碼數據輸入法測試,對數據線和地址線進行初測,其故障的規 律可以為故障晶片定位提供幫助; 3)再利用01步進法將測試故障定位到具體那根數據線和地址線,還測試部分覆 蓋的存儲單元,如果不通過故障信息顯示和處理,測試結果輸出到測試報告管理程序,測試 結束; 4)如果通過再通過March算法測試對存儲器的全地址空間進行全面測試,無論通 過還是不通過均故障信息顯示和處理,測試結果輸出到測試報告管理程序,測試結束。
上述花碼數據輸入法具體是對於測試輸入的數據,根據距離效應選取兩組差異 最大的花碼數據作為輸入數據;在選擇測試地址時,由於線路傳輸具有電容效應,在每寫完 一組後,再按寫時的順序讀出,選取的地址為與數據輸入相同的花碼。 上述01步進法是指改進Movi算法在輸入數據為全0或全l的背景下,尋址順 序為使地址線的每一位順序逐次變高或變低的地址序列,它用地址線遍歷代替全地址空間 遍歷,地址移位序列中僅包含1og2N+l個選擇的地址單元,即表1所示碼字所表示的地址單 元,其測試時間降為(1og2N+l)XT; 該測試算法先寫單元,後讀單元,先按照地址位從低到高移位的順序寫入,再按照
4地址位從高到低移位的順序讀出作比對; 上述讀寫操作共進行兩次,地址移位序列先選取在全0的背景下移位l,再選取在 全l的背景下移位0。 上述March算法具體是對一個單元進行完寫0、讀0寫1的操作後,再順次向下 一個單元進發,它對存儲器的單個單元靜態故障、單個單元動態故障、靜態耦合故障都有較 強的診斷能力。 上述距離效應即兩個測試向量的海明距離是指兩個測試向量相應位不同的個數 越大,它們能檢測到的不同故障數越多。 上述電容效應具體是指寫入數據並立即讀出,即使線路開路故障也不一定能檢測 出。 上述選取的地址為與數據輸入相同的花碼具體實現是如果地址線比數據線位數 多,則補1 ,直到選取的地址為與數據輸入相同的花碼。
上述測試控制線是用程控萬用表測試控制線。
上述存儲器可以是嵌入式存儲器。 上述01步進法的測試算法共使用了存儲器地址空間的(log2N+l) X 2個單元。
本發明的優點為 1、具有高時效性。本發明要求首先應具有高時效性,其次應對線路故障有高故障 覆蓋率,再次應兼顧存儲器晶片自身故障的檢測。 2、具有較好的故障覆蓋率。本發明同時覆蓋了存儲器晶片自身故障和電路板線路 故障,在測試需求和測試耗費間取得了較好的平衡,有較好的故障覆蓋率和時效性。
圖1為本發明測試程序流程圖。
具體實施例方式參見圖l,本發明的測試方法按順序主要分為三步測試第一步花碼數據輸入法 測試,第二步01步進法測試數據線和地址線,第三步March算法測試。第一步基本只測數 據線和地址線,初測,如果不是存儲器故障則其故障的規律可以故障晶片定位提供幫助;第 二步故障定位到具體那根數據/地址線,還可測試部分存儲單元;第三步存儲器測試。
1.用花碼數據輸入法測試 對於測試輸入的數據,根據距離效應(兩個測試向量的海明距離-兩個測試向量 相應位不同的個數越大,它們能檢測到的不同故障數越多)選取兩組差異最大的花碼數據 作為數據輸入,設數據總線為16位,兩組數據輸入為0000和FFFF, 5555和AAAA (即花碼)。 在選擇測試地址時,由於線路傳輸具有電容效應(寫入數據並立即讀出,即使線路開路故 障也不一定能檢測出),在每寫完一組後,再按寫時的順序讀出,選取的地址為與數據輸入 相同的花碼,如果地址線比數據線位數多,則補l,直到補到選取的地址為與數據輸入相同 的花碼位數相同。地址與數據碼字相同,為了便於比對,如果地址上的數據不是地址碼字, 則該碼字對應的數據/地址線故障。
2.用01步進法測試
現有的移動倒轉法Movi的基本思想是在輸入數據為全0或全1的背景下,以某種特定的尋址順序使每個單元的內容倒轉為l,再倒轉為O,如此反覆進行地址空間遍歷完終止。但是它的時間消耗較大,對於一個N單元的存儲器來說,地址線為1og2N條,按照現有Movi算法地址遍歷的操作就要進行1og2N輪,設T為單地址單元操作時間,則測試時間=1og2NXNXT。例如一個64k的存儲器,就要對全地址空間遍歷16次,即時間消耗是1MXT,可見這種算法的時效性無法滿足存儲器在板測試的要求。 但如果對移位的地址空間進行精簡壓縮,使其只需遍歷較少的地址序列就可以接近Movi算法原有的診斷能力,那麼這種改進型的Movi算法將可以在較少的時間消耗下,滿足故障覆蓋率的要求。 本發明的改進Movi算法是在輸入數據為全0或全1的背景下,尋址順序為這樣的地址序列使地址線的每一位順序逐次變高或變低,如表1所示,可以看出1或0好像從地址線低位向高位一步一步前進,所以將其稱之為01步進法。這種改進可以有效的提高測試的時效性它用地址線遍歷代替全地址空間遍歷,地址移位序列中僅包含1og2N+l個特殊的地址單元,即選擇的地址單元,表1所示碼字所表示的地址單元。其實質是用遍歷特殊的地址單元來代替遍歷全地址空間,可快速定位故障到具體那根數據/地址線,還可測試部分存儲單元,測試時間降為(1og2N+l) XT,由於移位地址空間的壓縮而大大縮短了測試時間,而且其測試時間幾乎不受存儲器空間大小的影響。
步進l步進o
0000000000000001 0000000000000010 00000000000001001111111111111111 1111111111111110 1111111111111101 1111111111111011
0100000000000000 10000000000000001011111111111111 0111111111111111 表1逐次01步進產生的地址序列 對於輸入的數據,為了便於程序讀出比對並且兼顧數據線測試,採用與花碼數據輸入法類似的方法,即把需測試的地址作為數據寫入該地址單元。 在實際應用中,測試程序先寫單元,後讀單元。先按照地址位從低到高移位的順序寫入,再按照地址位從高到低移位的順序讀出作比對。上述讀寫操作共進行兩次地址移位序列先選取在全0的背景下移位l,再選取在全1的背景下移位0。程序共使用了存儲器地址空間的(log2N+l) X2個單元。 雖然這種算法對地址空間的壓縮方法比較粗糙,但由於主要測試目的是為了檢測出地址線的故障,並不需要精確定位到地址單元。這種方法對地址線逐位進行測試,可以將故障定位到某條地址線,其時效性和故障偵測能力均滿足了測試需求。顯然這種方法同時也可以測試數據線並對晶片自身故障有一定覆蓋,所以這是一種行之有效的方法。
3.用March算法測試存儲器全地址空間 前述方法只是對可快速檢測的故障進行迅速定位,故障定位具體是數據按上述方法輸入後,再將數據讀出,數據讀出與期望不符即發生故障,並未全面測試嵌入式存儲器。實踐中雖然很少遇到存儲器晶片自身故障的情況,但仍存在此類測試需求。在高時效、低耗費的要求下,在板測試不可能像晶片廠商那樣採用完整測試的方法。最簡單的辦法是選用一種診斷能力較強、測試時間相對較短的算法。March算法是存儲器晶片測試應用最廣的算法之一。其基本思想是對一個單元進行完寫0、讀0寫1的操作後,再順次向下一個單元進發,因而得名"March(行進)"算法。它對存儲器的單個單元靜態故障、單個單元動態故障、靜態耦合故障都有較強的診斷能力。另外,March算法的複雜度與被測存儲空間呈線性關係,測試時間相對較短。由於它的這些特點,我們採用March算法對存儲器全地址空間進行在板測試。這一步耗時最長,在實際應用中,如果前兩步測試沒有通過,則不進行這項測試以減少時間消耗。由於時間開銷太大,第三步是個可選擇的步驟,如無此需求,可以不進行。
權利要求
一種存儲器在板測試方法,其特徵在於,包括以下步驟1)先測試控制線,如果不通過故障信息顯示和處理,測試結果輸出到測試報告管理程序,測試結束;2)如果通過進行花碼數據輸入法測試,對數據線和地址線進行初測,其故障的規律可以為故障晶片定位提供幫助;3)再利用01步進法將測試故障定位到具體那根數據線和地址線,還測試部分覆蓋的存儲單元,如果不通過故障信息顯示和處理,測試結果輸出到測試報告管理程序,測試結束;4)如果通過再通過March算法測試對存儲器的全地址空間進行全面測試,無論通過還是不通過均故障信息顯示和處理,測試結果輸出到測試報告管理程序,測試結束。
2. 根據權利要求1所述存儲器在板測試方法,其特徵在於所述花碼數據輸入法具體是對於測試輸入的數據,根據距離效應選取兩組差異最大的花碼數據作為輸入數據;在選擇測試地址時,由於線路傳輸具有電容效應,在每寫完一組後,再按寫時的順序讀出,選取的地址為與數據輸入相同的花碼。
3. 根據權利要求1所述存儲器在板測試方法,其特徵在於,所述01步進法是指改進Movi算法在輸入數據為全0或全1的背景下,尋址順序為使地址線的每一位順序逐次變高或變低的地址序列,它用地址線遍歷代替全地址空間遍歷,地址移位序列中僅包含log2N+l個選擇的地址單元,即表1所示碼字所表示的地址單元,其測試時間降為(log2N+l) XT ;該測試算法先寫單元,後讀單元,先按照地址位從低到高移位的順序寫入,再按照地址位從高到低移位的順序讀出作比對;上述讀寫操作共進行兩次,地址移位序列先選取在全0的背景下移位l,再選取在全1的背景下移位O。
4. 根據權利要求1所述存儲器在板測試方法,其特徵在於,所述March算法具體是對一個單元進行完寫0、讀0寫1的操作後,再順次向下一個單元進發,它對存儲器的單個單元靜態故障、單個單元動態故障、靜態耦合故障都有較強的診斷能力。
5. 根據權利要求2所述存儲器在板測試方法,其特徵在於所述距離效應即兩個測試向量的海明距離是指兩個測試向量相應位不同的個數越大,它們能檢測到的不同故障數越多。
6. 根據權利要求2所述存儲器在板測試方法,其特徵在於所述電容效應具體是指寫入數據並立即讀出,即使線路開路故障也不一定能檢測出。
7. 根據權利要求2所述存儲器在板測試方法,其特徵在於所述選取的地址為與數據輸入相同的花碼具體實現是如果地址線比數據線位數多,則補1 ,直到選取的地址為與數據輸入相同的花碼。
8. 根據權利要求1 7任一所述存儲器在板測試方法,其特徵在於所述測試控制線是用程控萬用表測試控制線。
9. 根據權利要求8所述存儲器在板測試方法,其特徵在於所述存儲器是嵌入式存儲器。
10. 根據權利要求9所述存儲器在板測試方法,其特徵在於所述01步進法的測試算法共使用了存儲器地址空間的(log2N+l) X2個單元。
全文摘要
一種存儲器測試方法,包括依次進行的先測試控制線、花碼數據輸入法測試、01步進法測試以及March算法測試步驟。本發明要求首先應具有高時效性,其次應對線路故障有高故障覆蓋率,再次應兼顧存儲器晶片自身故障的檢測;同時覆蓋了存儲器晶片自身故障和電路板線路故障,在測試需求和測試耗費間取得了較好的平衡,有較好的故障覆蓋率和時效性。適合用於各種存儲器的在板測試。
文檔編號G11C29/00GK101770812SQ20081023658
公開日2010年7月7日 申請日期2008年12月31日 優先權日2008年12月31日
發明者葉關山, 崔強, 彭剛鋒 申請人:中國航空工業第一集團公司第六三一研究所