簡(jiǎn)述存儲器測試圖形算法論文
1 介紹
隨著(zhù)集成電路制造工藝的不斷進(jìn)步,半導體芯片的發(fā)展趨于高密度、高速度、高復雜度,給測試帶來(lái)了極大的挑戰。存儲器是集成電路產(chǎn)品中的一個(gè)主要門(mén)類(lèi),主要用來(lái)存放數據、指令、程序等信息。存儲器的測試一方面可用于判斷產(chǎn)品質(zhì)量是否合格,另一方面通過(guò)測試獲得一些數據用于改進(jìn)工藝。
目前存儲器的基本測試方法已經(jīng)比較成熟,主要有存儲器直接存取測試、存儲器的宏測試、存儲器內建自測試三種,各有利弊。存儲器直接存取測試是利用自動(dòng)測試設備來(lái)進(jìn)行測試,自動(dòng)測試設備的性能和測試成本使得直接存取測試方式對大容量的存儲器并不合適。存儲器的宏測試將存儲器作為一個(gè)宏模塊,利用電路內部的掃描路徑生成宏模塊的測試向量,再通過(guò)自動(dòng)測試設備在電路外部施加測試矢量,對于較大的存儲器,宏測試向量的數據量較大,測試需要較長(cháng)時(shí)間。存儲器內建自測試是在存儲器外圍產(chǎn)生一整套控制電路,實(shí)現芯片內置存儲器測試模式的自動(dòng)產(chǎn)生及測試結果的自動(dòng)判別,這種方法增加芯片的面積,但是具有自動(dòng)化程度高、測試質(zhì)量高、測試成本低、測試時(shí)間短等優(yōu)勢。
對于存儲器來(lái)說(shuō),最主要的測試是讀寫(xiě)邏輯功能測試,以檢測存儲單元的故障,包括由于壞的金屬連接、壞的元件、芯片邏輯錯誤等原因引起的功能故障。這些故障通常被簡(jiǎn)化為幾個(gè)較為成熟的故障模型,通過(guò)不同的測試圖形算法來(lái)檢測故障。本文以存儲器的測試圖形為切入點(diǎn),先簡(jiǎn)單介紹存儲器簡(jiǎn)化的故障模型,然后介紹常用的存儲器測試圖形算法以及一些新近提出的改進(jìn)存儲器測試圖形算法,對其進(jìn)行比較,并對將來(lái)存儲器測試圖形的發(fā)展進(jìn)行預期。
2 常用的存儲器測試圖形算法
對于存儲器的功能測試,算法有很多種,分別針對不同的存儲器故障模型,包括固定故障、轉換故障、耦合故障、圖形敏感故障、尋址故障、數據保留故障等。一個(gè)高效率的測試算法,需要用盡可能少的測試圖形和盡可能短的測試時(shí)間檢測到盡可能多的故障。從理論上說(shuō),存在覆蓋所有故障的測試算法,但是實(shí)際上由于時(shí)間復雜度的原因無(wú)法實(shí)現。假設用N 表示一個(gè)存儲器的地址數,那么測試圖形的復雜度可以用N來(lái)表示。
對于較大容量的存儲器來(lái)說(shuō),N3/2圖形和N2圖形的測試時(shí)間在實(shí)際測試中是無(wú)法承受的。在實(shí)際測試中最常用的算法主要有全“0”/全“1”圖形,奇偶校驗板圖形和齊步“1”/“0”圖形。這三種圖形均為N圖形。
1、全“0”/全“1”圖形
將全部存儲單元按順序寫(xiě)0、讀0、寫(xiě)1、讀1,測試圖形序列長(cháng)度為4 N,可用于檢測存儲器的固定故障。
2、奇偶校驗板圖形
奇偶校驗板圖形也稱(chēng)棋盤(pán)圖形,向存儲單元矩陣寫(xiě)入的數據圖形是根據存儲單元選址地址碼的奇偶性而定的,如果存儲單元的行地址碼和列地址碼中有偶數個(gè)1,其奇偶性為0,則在該存儲單元中寫(xiě)“0”,反之寫(xiě)“1”。根據算法寫(xiě)入背景圖形,然后逐位讀出并檢測結果的正確性,再以反碼圖形重復上述測試過(guò)程,測試圖形序列長(cháng)度為4 N。奇偶校驗板圖形可用于檢測存儲器的固定故障、地址譯碼故障,以及相鄰位的短路故障。
3、齊步圖形
齊步圖形算法也稱(chēng)March算法,是對存儲器的每個(gè)單元依次進(jìn)行檢驗的一種方法,從第一個(gè)存儲單元開(kāi)始,逐一對每個(gè)單元進(jìn)行取反和檢驗,直到最后一個(gè)單元檢測結束才完成一遍掃描。齊步算法的流程如圖2所示,W0、W1、R0、R1分別表示寫(xiě)“0”、寫(xiě)“1”、讀“0”、讀“1”。具體流程為:首先背景圖形寫(xiě)全“0”,從低地址開(kāi)始沿增址方向順序讀“0”、寫(xiě)“1”(R0W1),一直到最高地址。然后從最高地址開(kāi)始沿減地址方向順序讀“1”、寫(xiě)“0”(R1W0),測試圖形序列長(cháng)度為5 N。齊步圖形可用于檢測全部的固定故障、地址譯碼故障和轉換故障。
4、其他測試圖形
以上三種測試圖形均為N 型測試圖形,其共同特點(diǎn)是測試時(shí)間短,但覆蓋的故障比較有限。相較而言,齊步算法的效率最高。除此之外,還有很多復雜度更高的圖形,比如乒乓算法、蝶形算法等。乒乓算法的`故障覆蓋率很高,能夠有效地檢測出固定故障、轉換故障、耦合故障和部分圖形敏感故障,其測試圖形序列長(cháng)度為4 N2+2 N,屬于N2型測試圖形。蝶形算法同樣具有很高的故障覆蓋率,能夠有效地檢測出固定故障、地址解碼故障和圖形敏感故障,屬于N3/2型測試圖形。
這些高復雜度的測試圖形都具有一個(gè)共同的弊端,時(shí)間復雜度太高,測試時(shí)間過(guò)長(cháng),雖然在理論中有很高的故障覆蓋率,但在實(shí)際生產(chǎn)中很少使用。
因此,在近期關(guān)于存儲器測試圖形算法的研究中,提出了一些改進(jìn)的N圖形算法,跟經(jīng)典的測試算法相比,在不大量增加測試時(shí)間的前提下,能夠有效地提高故障覆蓋率,在下一部分將詳細進(jìn)行介紹。
3 改進(jìn)的存儲器測試圖形算法
目前,國內外經(jīng)典的March算法有MATS、MATS+、March A、March B、March C、March C-、March C+、March LR、March SR等。1979年Nairt提出的MATS算法對固定故障提供了最短的齊步測試;由MATS改進(jìn)的MATS+算法能夠檢測地址解碼故障及固定故障;1980年提出的March A、March B算法可用于測試部分連接故障;1991年,Van de Goor對Match C算法進(jìn)行改進(jìn),提出了March C-算法,在獲得同樣的故障覆蓋率的前提下降低了March C 算法的復雜度;March C+在March C的基礎上增加了3 N 的復雜度,但同時(shí)提高了故障覆蓋率。March C算法及其衍生算法現成為存儲器測試的主流算法。本文將介紹三種較為新穎巧妙的改進(jìn)算法。
1、棋盤(pán)型齊步算法
這種算法的基本構想是在齊步算法中使用棋盤(pán)格式,棋盤(pán)算法可以檢測出固定故障和相鄰單元的橋接故障,齊步圖形算法可以覆蓋全部的固定故障、地址譯碼故障和轉換故障。將兩種算法相結合,不僅可以實(shí)現兩種算法本來(lái)的功能,由于讀寫(xiě)特殊性,還可以檢測一部分相鄰圖形敏感故障。
(1)所有存儲單元寫(xiě)0。
(2)讀A0單元(表示地址為0的單元)的“0”,再改寫(xiě)為“0”;讀A1單元的“0”,再改寫(xiě)為“1”;讀A2單元的“0”,再改寫(xiě)為“0”;讀A3單元的“0”,再改寫(xiě)為“1”…直到An-1。此步執行完后,存儲器被寫(xiě)為棋盤(pán)格式。
(3)讀An-1單元的“l(fā)”,再改寫(xiě)為“0”;讀An-2單元的“0”,再改寫(xiě)為“l(fā)”…直到A0。此步完成后,存儲器被寫(xiě)為一個(gè)與步驟(2)結束后相反的棋盤(pán)格式。
經(jīng)過(guò)改進(jìn)的棋盤(pán)格齊步算法測試圖形序列長(cháng)度為5 N,跟齊步圖形算法相比,測試時(shí)長(cháng)沒(méi)有增加,而故障覆蓋率明顯提高。
2、基于棋盤(pán)算法的改進(jìn)
棋盤(pán)格圖形算法中,對于每一個(gè)存儲單元來(lái)說(shuō),只經(jīng)過(guò)了從“0”到“1”的轉換或者從“1”到“0”的轉換,不能覆蓋全部的轉換故障。于是對棋盤(pán)算法進(jìn)行了巧妙的改進(jìn),具體流程如下:
(1)寫(xiě)入反棋盤(pán)格圖形;
(2)寫(xiě)入棋盤(pán)格圖形;
(3)讀棋盤(pán)格圖形;
(4)寫(xiě)入反棋盤(pán)格圖形;
(5)讀反棋盤(pán)格圖形。
該改進(jìn)算法與棋盤(pán)格算法相比,測試圖形序列長(cháng)度增加了N,能夠檢測出全部的轉換故障、地址解碼故障、固定故障以及相鄰單元的橋接故障,故障覆蓋率有所提高。
3、March SSE算法
(1)所有存儲單元寫(xiě)“0”;
(2)從低地址位遞增到高地址位,對每個(gè)存儲單元依次進(jìn)行讀“0”、寫(xiě)“0”、讀“0”、寫(xiě)“1”、讀“1”操作;
(3)從低地址位遞增到高地址位,對每個(gè)存儲單元依次進(jìn)行讀“1”、寫(xiě)“1”、讀“1”、寫(xiě)“0”、讀“0”操作;
(4)從高地址位遞減到低地址位,對每個(gè)存儲單元依次進(jìn)行讀“0”、寫(xiě)“0”、讀“0”、寫(xiě)“1”、讀“1”操作;
(5)從高地址遞位減到低地址位,對每個(gè)存儲單元依次進(jìn)行讀“1”、寫(xiě)“1”、讀“1”、寫(xiě)“0”、讀“0”操作;
(6)所有的存儲單元讀“0”。其測試圖形序列長(cháng)度為22N,通過(guò)改進(jìn),除了能夠覆蓋固定故障、地址解碼故障等靜態(tài)故障意外,還能夠覆蓋全部的動(dòng)態(tài)讀破壞故障、動(dòng)態(tài)讀錯誤故障、動(dòng)態(tài)干擾耦合故障和部分動(dòng)態(tài)偽讀破壞故障、動(dòng)態(tài)偽讀破壞耦合故障。在檢測存儲器動(dòng)態(tài)故障的算法中,以較低的測試時(shí)間復雜度,獲得了較高的故障覆蓋率。
4 存儲器測試圖形算法的應用
在目前的實(shí)際測試生產(chǎn)中,采用的都是存儲器直接存取測試的方法,考慮到設備能力和測試效率的問(wèn)題,通常使用的都是經(jīng)典的O(N)型測試圖形,僅包括全“0”/全“1”測試圖形和奇偶校驗板圖形,對于大容量的存儲器,由于設備測試圖形存儲容量的限制,僅采用奇偶校驗板圖形進(jìn)行測試。這兩種算法時(shí)間復雜度低,算法編寫(xiě)簡(jiǎn)單,且覆蓋了出現頻率較高的基本故障。結合測試圖形自動(dòng)發(fā)生器(Automatic Pattern Generator,APG)能夠生成復雜度更高的測試圖形,但又帶來(lái)了可讀性差、測試時(shí)間長(cháng)、調試不便等問(wèn)題,因而一些針對某些特殊故障的復雜測試圖形更多地還停留在科研階段。簡(jiǎn)單、高效、高故障覆蓋率的測試圖形算法是實(shí)際工業(yè)生產(chǎn)中追求的最終目標。
上一節提到的基于棋盤(pán)算法的改進(jìn)方法,跟棋盤(pán)格算法比較,測試圖形序列長(cháng)度僅增加了N,覆蓋了全部轉換故障,測試圖形的編寫(xiě)難度未增加。因此,在設備能力能夠滿(mǎn)足需求的條件下,在實(shí)際測試中采用該改進(jìn)算法替換傳統的棋盤(pán)格算法是很有價(jià)值的。
齊步法較目前使用的方法具有更高的故障覆蓋率,測試圖形的復雜度極少量的提高,測試圖形編寫(xiě)難度也有所增加。棋盤(pán)型齊步算法結合了齊步法和棋盤(pán)法的特點(diǎn),較齊步法有更高的故障覆蓋率而未增加時(shí)間復雜度,在實(shí)際的測試生產(chǎn)中值得去嘗試。
5 結語(yǔ)
存儲器的測試圖形算法始終存在測試時(shí)間復雜度和故障覆蓋率的矛盾,故障覆蓋率高的算法必然時(shí)間復雜度大。在目前的工業(yè)生產(chǎn)應用中,只能使用時(shí)間復雜度為O(N)的測試圖形,因而根據實(shí)際需要,國內外研究人員基于經(jīng)典N(xiāo) 型測試圖形算法進(jìn)行了改進(jìn)研究,在不大量增加時(shí)間復雜度的前提下,提高故障覆蓋率。但大多數研究還停留在理論分析層面,未通過(guò)實(shí)驗驗證,更沒(méi)有投入到生產(chǎn)應用中。將來(lái)測試算法有可能將測試時(shí)間復雜度和故障覆蓋率的矛盾調和到更低,也可能出現解決時(shí)間復雜度的方法,總之,存儲器測試圖形算法的研究還有待進(jìn)一步的研究和發(fā)展。
【簡(jiǎn)述存儲器測試圖形算法論文】相關(guān)文章:
豐富的圖形世界測試及答案01-21
小羊軍團發(fā)展論文簡(jiǎn)述04-06
關(guān)于議論文的簡(jiǎn)述06-26
數學(xué)算法初步測試題03-19
算法案例測試題練習05-22
負數的加減算法測試題06-29
有關(guān)算法案例測試題05-02
算法設計與分析課程論文11-18