支持寫緩衝的flash內部單元測試方法
2023-07-17 13:47:51 3
專利名稱:支持寫緩衝的flash內部單元測試方法
技術領域:
本發明涉及FLASH存儲器,尤指一種對支持寫緩衝的FLASH內部單元進行測試的方法。
背景技術:
FLASH器件的故障主要表現為以下形式(1)導線的開路或短路;(2)地址解碼器不能正確尋址;(3)多重寫入;(4)一個單元的數據受到其他單元的數據或讀寫操作的影響而發生變化;(5)寫後未能恢復,立即進行讀出時得不到正確信息;(6)讀放大器讀出一系列信息x後緊接著讀x′時,無正確響應;(7)FLASH不能保持寫入的信息。
結合FLASH的基本結構和故障表現形式,可以得出以下故障模型(1)存儲單元陣列中的故障①固定邏輯故障(Stuck-at fault)一個單元的邏輯值不隨單元的任何行為而改變,也不受其餘單元的影響,又稱呆滯型故障,它包括固定為1或固定為0兩種情形(S-A-1 or S-A-0);②固定開路故障(Stuck-open fault)電路開路導致的故障;③狀態轉換故障(Transition fault)0-1或1-0的狀態轉換至少有一個不被正確執行;④數據保持故障(Data-maintaining fault)存儲單元無法保持一個邏輯值持續一定的時間;
⑤狀態耦合故障(Coupling fault)若且唯若單元j處於某一個特定狀態y(y∈{0,1})時,單元i總是為某一個確定值x(x∈{0,1}),則稱單元i耦合於單元j。耦合關係不一定具有對稱性,也就說,單元i耦合於單元j,並不一定單元j也耦合於單元I。
⑥多重寫入故障(multiple access fault)對單元i寫入x(x∈{0,1})導致單元j也寫入了x,⑥則稱單元i有多重寫入故障。多重寫入故障不一定具有對稱性。
(2)地址解碼電路中的故障①沒選中任一存儲單元;②選中被選單元,並選中了其他單元。
解碼器中的故障可等效為存儲單元陣列中的故障。故障①等效於固定開路故障,故障②等效於多重寫入故障。
(3)讀寫邏輯中的故障①輸入、輸出導線中一位或多位固定邏輯故障;②緩衝器或鎖存器中一位或多位固定開路故障;③緩衝器或鎖存器中任意兩位之間的狀態耦合故障。
讀寫邏輯電路中的故障也可等效為存儲單元陣列中的故障。故障①等效於固定邏輯故障,故障②等效於固定開路故障,故障③等效於狀態耦合故障。
由以上分析可以知道,對FLASH的測試等同於對FLASH的內部單元測試,而FLASH的內部單元主要包含了以下故障類型固定邏輯故障、固定開路故障、狀態轉換故障、數據保持故障、狀態耦合故障和多重寫入故障。
現在常用的測試方法都是按字逐個讀寫的,沒有考慮到支持寫緩衝區操作的這類FLASH的特點而採用有效的測試方法以提高測試效率。按照常規的測試方法按字逐個讀寫進行測試的方法,其效率是非常低的,對一個FLASH晶片進行完備的測試可能需要數十分鐘,甚至一個小時以上。而利用寫緩衝區的特性,可以將測試時間控制在數分鐘以內,能夠更好地滿足測試效率的要求。
而利用FLASH的寫緩衝區進行測試,需要考慮到這種批處理的特殊方式,同時結合FLASH自身的特點,設計有效的測試數據。
發明內容
鑑於上述現有技術的缺點,本發明提供一種支持寫緩衝的FLASH內部單元的測試方法,在保證測試效效率的前提下,對FLASH的故障進行比較完備的測試覆蓋。
本發明提供的支持寫緩衝的FLASH內部單元測試方法,包括下列步驟先整片擦除,然後按地址順序寫入循環走步0的數據塊,所述寫操作是按照寫緩衝區的方式進行,所有內部單元被寫完以後,再讀回數據進行校驗。
所述寫緩衝操作是一次寫滿一個緩衝區。
所述按地址順序是從最低地址開始到最高地址結束或從最高地址開始到最低地址結束。
所述循環走步0的數據塊,其每一行的數據除了一位為0,其作各位全為1,其中0的位置是順序移動、循環走步的。
所述0的位置是下一行數據比上一行數據左移一位或多位或右移一位或多位。
本發明通過構造上述特定的測試數據,能提高測試的故障覆蓋率,特別是提高了對多重寫入故障和基本耦合故障的檢測能力。
具體實施例方式
部分FLASH器件(如28F160S5和28F320S5,28F128J3A、28F320J3A和28F640J3A,28F320J5和28F640J5等)支持寫緩衝區(Write Buffer)的讀寫方式,利用Write Buffer技術寫FLASH可以顯著地提高FLASH的測試速度,但是因為Write Buffer的寫方式與普通的寫方式有很大的區別,所以測試方法也有所區別。
因為一次寫一個緩衝區,所以寫的速度成倍提高,所以對支持寫緩衝的FLASH進行測試,可以採用以下的方法先整片擦除,然後從最低(或最高)地址開始到最高(或最低)地址結束,依次寫入走步0的數據,全部寫完以後,然後再讀回進行校驗。其中寫操作是通過Write Buffer進行的。由於寫入的數據正是數字「0」循環移動的過程,所以在這裡將這種測試方法命名為「循環走步0算法」。
現在舉例說明,假設地址空間從0000到1111,數據線為3位,則寫入數據表如下
這種測試方法的特點是執行寫FLASH操作時按照寫緩衝區的方式進行,寫入的數據塊為循環走步0的數據塊,也就是每一行數據除了一位為0,其餘各位全為1,其中0的位置不是固定的,而是順序移動、循環走步的形式。
上述實例中,0的位置是下一行數據比上一行數據每次左移一位,實際操作中,並不局限於此,可左移也可右移,移動的位數也不受限制,可一次只移一位,也可一次移兩位或更多位。
本發明因為採用走步0算法,所以能夠有效檢測到相鄰單元的短路故障。因為FLASH器件本身的特點是只能寫入數字「0」,不能寫入數字「1」,擦除以後才能為「1」,所以在構造測試數據過程中,出現更多的「1」和少量的「0」,並且「0」的位置是變化的,這樣可以檢測更多的因為短路而導致「1」被錯誤寫成「0」的故障。
權利要求
1.一種支持寫緩衝的FLASH內部單元測試方法,包括下列步驟先整片擦除,然後按地址順序寫入循環走步0的數據塊,所述寫操作是按照寫緩衝區的方式進行,所有內部單元被寫完以後,再讀回數據進行校驗。
2.如權利要求1所述的支持寫緩衝的FLASH內部單元測試方法,其特徵在於所述寫緩衝操作是一次寫滿一個緩衝區。
3.如權利要求1或2所述的支持寫緩衝的FLASH內部單元測試方法,其特徵在於所述按地址順序是按從最低地址開始到最高地址結束的順序進行。
4.如權利要求1或2所述的支持寫緩衝的FLASH內部單元測試方法,其特徵在於所述按地址順序是按從最高地址開始到最低地址結束的順序進行。
5.如權利要求1或2所述的支持寫緩衝的FLASH內部單元測試方法,其特徵在於所述循環走步0的數據塊,其每一行的數據除了一位為0,其作各位全為1,其中0的位置是順序移動、循環走步的。
6.如權利要求5所述的支持寫緩衝的FLASH內部單元測試方法,其特徵在於所述0的位置是下一行數據比上一行數據左移一位或多位。
7.如權利要求5所述的支持寫緩衝的FLASH內部單元測試方法,其特徵在於所述0的位置是下一行數據比上一行數據右移一位或多位。
全文摘要
本發明有關於一種支持寫緩衝的FLASH內部單元測試方法,包括下列步驟先整片擦除,然後按地址順序寫入循環走步0的數據塊,所述寫操作是按照寫緩衝區的方式進行,所有內部單元被寫完以後,再讀回數據進行校驗。本發明方法在保障測試效率的前提下,對FLASH的故障進行比較完備的測試覆蓋,適用於各種場合的支持寫緩衝的FLASH內部單元的測試。
文檔編號G01R31/317GK1577784SQ0315001
公開日2005年2月9日 申請日期2003年7月29日 優先權日2003年7月29日
發明者李穎悟 申請人:華為技術有限公司