無(wú)理數(shù)存儲(chǔ)測(cè)試向量的測(cè)試數(shù)據(jù)壓縮方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及一種集成電路測(cè)試技術(shù)中的無(wú)理數(shù)存儲(chǔ)測(cè)試向量的測(cè)試數(shù)據(jù)壓縮方 法,特別是對(duì)系統(tǒng)巧片(System-on-a-Chip,SoC)的外建自測(cè)試炬uilt-OutSelf-Test, BOST)方法中測(cè)試數(shù)據(jù)壓縮方法,具體地為一種故障覆蓋率引導(dǎo)的無(wú)理數(shù)存儲(chǔ)測(cè)試向量的 測(cè)試數(shù)據(jù)壓縮方法。
【背景技術(shù)】
[0002] 集成電路技術(shù)的發(fā)展使得可在一個(gè)巧片中集成數(shù)W億計(jì)的器件,并且可W集成預(yù) 先設(shè)計(jì)和經(jīng)過(guò)驗(yàn)證的IP,如存儲(chǔ)器,微處理器,DSP等。該種多元化的集成巧片已經(jīng)成為能 處理各種信息的集成系統(tǒng),被稱為片上系統(tǒng)或系統(tǒng)巧片。SoC大大降低了系統(tǒng)成本,縮短了 設(shè)計(jì)周期,加快了產(chǎn)品上市時(shí)間,但是SoC產(chǎn)品的測(cè)試面臨越來(lái)越多的挑戰(zhàn),如:
[0003] 1、巧片測(cè)試點(diǎn)少,可直接控制或觀測(cè)的測(cè)試點(diǎn)有限,通常只能通過(guò)巧片有限的輸 入/輸出引腳進(jìn)行測(cè)試,而巧片內(nèi)部節(jié)點(diǎn)很難通過(guò)宏觀機(jī)械裝置直接控制或觀測(cè);
[0004] 2、自動(dòng)測(cè)試設(shè)備(AT巧價(jià)格昂貴,巧片的設(shè)計(jì)和制造技術(shù)發(fā)展速度比ATE的設(shè)計(jì) 和制造技術(shù)發(fā)展快,巧片的時(shí)鐘頻率已超過(guò)了目前最先進(jìn)的ATE的頻率,無(wú)法進(jìn)行全速測(cè) 試;
[0005] 3、測(cè)試數(shù)據(jù)量大,SoC中集成的IP越多,所需測(cè)試數(shù)據(jù)量就越大。預(yù)計(jì)到2014年 存儲(chǔ)測(cè)試向量所需存儲(chǔ)器的容量是1999年的150倍,將會(huì)超過(guò)ATE的存儲(chǔ)深度。
[0006] 為了能夠繼續(xù)有效地應(yīng)用傳統(tǒng)的自動(dòng)測(cè)試設(shè)備來(lái)測(cè)試S0C巧片,必須首先解決大 量的測(cè)試數(shù)據(jù)和有限的巧片管腳對(duì)高帶寬傳輸?shù)男枨髥?wèn)題。隨著自動(dòng)測(cè)試設(shè)備數(shù)據(jù)帶寬的 增加,設(shè)備成本的上升,一個(gè)巧片的測(cè)試成本將超過(guò)生產(chǎn)它的費(fèi)用。解決該一問(wèn)題的方法主 要采用外建自測(cè)試技術(shù),也叫做測(cè)試源的劃分技術(shù),相對(duì)于原本掃描鏈結(jié)合ATE的測(cè)試方 法而言,測(cè)試源的劃分技術(shù)將ATE的部分測(cè)試功能轉(zhuǎn)移到被測(cè)試的巧片上,巧片上的解壓 器成為一種無(wú)存儲(chǔ)的數(shù)據(jù)源,因此,可W進(jìn)一步減少測(cè)試硬件的成本,更好地權(quán)衡自動(dòng)測(cè)試 設(shè)備與片上測(cè)試器的成本分配。同樣,相對(duì)于BIST而言,B0ST將部分巧片上的測(cè)試模式生 成資源移到離線的自動(dòng)測(cè)試設(shè)備上,通過(guò)數(shù)據(jù)壓縮技術(shù)來(lái)減少存儲(chǔ)需求和測(cè)試時(shí)間,巧片 之外主要建立一個(gè)經(jīng)過(guò)變換的測(cè)試數(shù)據(jù)存儲(chǔ)源,W用來(lái)減少測(cè)試數(shù)據(jù)的傳輸,同時(shí)在巧片 上又不需要花費(fèi)太多的硬件來(lái)執(zhí)行數(shù)據(jù)變換,實(shí)現(xiàn)測(cè)試模式的生成。
[0007] 如今大規(guī)模SoC的測(cè)試數(shù)據(jù)集對(duì)測(cè)試儀存儲(chǔ)深度的要求已經(jīng)達(dá)到吉比特的量級(jí), 解決測(cè)試數(shù)據(jù)集存儲(chǔ)的成本問(wèn)題已經(jīng)成為降低總測(cè)試成本的關(guān)鍵。B0ST結(jié)構(gòu)或者說(shuō)TRP技 術(shù)可W有效解決測(cè)試數(shù)據(jù)量縮減的問(wèn)題。
[0008] 測(cè)試數(shù)據(jù)的吞吐量可W通過(guò)靜態(tài)數(shù)據(jù)壓縮技術(shù),如游程編碼,Golomb編碼和抑R 編碼(頻率導(dǎo)向的游程編碼)進(jìn)行有效的縮減。該些編碼技術(shù)將事先由內(nèi)核供應(yīng)商提供的 預(yù)計(jì)算測(cè)試矢量集Td通過(guò)壓縮,編碼成一個(gè)體積相對(duì)較小的測(cè)試矢量集Te,并且存儲(chǔ)在ATE 的存儲(chǔ)器中。然后由片上的解碼器在測(cè)試圖形施加的階段執(zhí)行將IV陜復(fù)成Td,來(lái)實(shí)現(xiàn)測(cè)試 矢量的解壓縮。先通過(guò)對(duì)原測(cè)試矢量集Td進(jìn)行差分編碼產(chǎn)生差分矢量序列TMff,然后再對(duì) 差分矢量序列進(jìn)行壓縮編碼,可w進(jìn)一步有效提高數(shù)據(jù)壓縮率,降低測(cè)試集尺寸,減少測(cè)試 時(shí)間。一般來(lái)說(shuō),使用差分序列編碼Tdiff和循環(huán)掃描寄存器CSR解碼并不是必需的,其是否 選用取決于數(shù)據(jù)壓縮效率和額外硬件開(kāi)銷兩者之間的權(quán)衡折衷。
[0009] 測(cè)試編碼的壓縮方法按照數(shù)學(xué)原理分類,可W分為統(tǒng)計(jì)編碼、傳統(tǒng)游程編碼、 Golomb編碼、抑R編碼等。其基本的壓縮原理都是基于對(duì)二進(jìn)制碼流中連續(xù)出現(xiàn)的0或者 1進(jìn)行編碼壓縮,從而實(shí)現(xiàn)數(shù)據(jù)量的縮減;按照碼字特征分類,可W分為定長(zhǎng)---定長(zhǎng),定 長(zhǎng)---變長(zhǎng),變長(zhǎng)---定長(zhǎng),變長(zhǎng)---變長(zhǎng)四種不同的編碼方式。一般而言,定長(zhǎng)到定長(zhǎng)的 壓縮效率最低,而變長(zhǎng)到變長(zhǎng)的壓縮效率最高。當(dāng)然實(shí)際的壓縮效率必然與待壓縮的數(shù)據(jù) 特征有關(guān),按照編碼對(duì)象分類,可W分為直接編碼和相關(guān)編碼兩種方式。
[0010] 編碼壓縮技術(shù)所用測(cè)試集Td其測(cè)試模式數(shù)量較少,測(cè)試時(shí)間相對(duì)BIST更短;并且 它不需要測(cè)試模式生成電路和響應(yīng)壓縮分析電路,其解壓電路的成本低于BIST;對(duì)于不支 持BIST的CUT也可實(shí)現(xiàn)測(cè)試,具有廣泛的應(yīng)用性。
[0011] 發(fā)明專利Z1201010262928. 9(公開(kāi)號(hào)CN101968528A,公開(kāi)日 20110209)提出了將 測(cè)試數(shù)據(jù)轉(zhuǎn)換成無(wú)理數(shù)的方法來(lái)存儲(chǔ),從理論上可W無(wú)限壓縮測(cè)試數(shù)據(jù),可W從根本上解 決測(cè)試數(shù)據(jù)的存儲(chǔ)問(wèn)題。然而該發(fā)明中存在;(1)在查找無(wú)理數(shù)之前就將所有無(wú)關(guān)位填充, 減少算法的靈活性,也降低了查找到的無(wú)理數(shù)的概率;(2)對(duì)無(wú)理數(shù)的查找,采用的是對(duì)小 數(shù)直接運(yùn)算的方法,計(jì)算量大,運(yùn)行時(shí)間長(zhǎng);(3)未將無(wú)理數(shù)編碼與自動(dòng)測(cè)試向量產(chǎn)生結(jié)合 起來(lái)。
【發(fā)明內(nèi)容】
[0012] 基于上述缺陷,本發(fā)明提供一種故障覆蓋率引導(dǎo)的無(wú)理數(shù)存儲(chǔ)測(cè)試向量的測(cè)試數(shù) 據(jù)壓縮方法。本發(fā)明一方面在自動(dòng)測(cè)試向量生成時(shí)就考慮無(wú)理數(shù)編碼,先編碼難測(cè)故障點(diǎn) 所對(duì)應(yīng)的測(cè)試向量,可W減少易測(cè)故障點(diǎn)對(duì)應(yīng)測(cè)試向量的編碼數(shù);另一方面在無(wú)理數(shù)編碼 時(shí)考慮易測(cè)故障點(diǎn),讓無(wú)理數(shù)解壓后再運(yùn)行一段時(shí)間,可W提高故障覆蓋率。
[0013] 本發(fā)明的解決方案是:一種無(wú)理數(shù)存儲(chǔ)測(cè)試向量的測(cè)試數(shù)據(jù)壓縮方法,其為故障 覆蓋率引導(dǎo)的無(wú)理數(shù)存儲(chǔ)測(cè)試向量的測(cè)試數(shù)據(jù)壓縮方法,該測(cè)試數(shù)據(jù)壓縮方法包括W下步 驟:
[0014] 一、根據(jù)待測(cè)試集成電路的電路結(jié)構(gòu)生成包含若干故障的故障列表;
[0015] 二、選擇任一故障,運(yùn)行自動(dòng)測(cè)試向量生成工具W此生成相應(yīng)故障的測(cè)試向量,同 時(shí)將相應(yīng)故障從該故障列表中刪除使該故障列表中的所有故障測(cè)試完畢,最終形成級(jí)聯(lián)后 原始測(cè)試數(shù)據(jù)即測(cè)試向量序列S;
[001引S、統(tǒng)計(jì)級(jí)聯(lián)后原始測(cè)試數(shù)據(jù)的游程長(zhǎng)度Yi、Y2、……,Y。,其中,Y。表示為第n個(gè)測(cè) 試向量的游程長(zhǎng)度,n為正整數(shù);將測(cè)試向量按0類型游程統(tǒng)計(jì)游程長(zhǎng)度,直到無(wú)關(guān)位結(jié)束, 若無(wú)關(guān)位與前一游程能組成同一游程,則舍棄最后一游程長(zhǎng)度,只記前若干游程長(zhǎng)度,否則 記前所有游程長(zhǎng)度;
[0017] 四、初步估計(jì)無(wú)理數(shù)^的對(duì)應(yīng)區(qū)間,其中m、1為整數(shù):步驟=中對(duì)應(yīng)的游程長(zhǎng)度 為\、\、……,Y。,默認(rèn)第1位為個(gè)位,其它全為小數(shù)部分,將其轉(zhuǎn)化為小數(shù)得到Y(jié)i.Y,……Y。;記步驟C的小數(shù)Y1.Y2……Yn=X,則有XG[Y1.Y2……Y。,Y!.Ys……炸。+1)),初步估計(jì) X對(duì)應(yīng)的無(wú)理數(shù)的區(qū)間[、/^,],方法如下;(1)令義'^£ [(Yi.Ys……Yn)k,(Y1.Y2……(Yn+l))k) ;(2)計(jì)算k = 2并保留一位小數(shù)時(shí),則xkG [A.Ai,B.Bi) ;(3)將[A.Ai,B.Bi)與 無(wú)理數(shù)對(duì)應(yīng),則有[A.Ai,B衛(wèi)1) C[A,B),因此有a = A,b=B,即xE(、/^,);
[001引五、二分無(wú)理數(shù)區(qū)間,逐次逼近;取c=^ ,計(jì)算^并與X比較,將_^對(duì)應(yīng)的小 數(shù)按0類型游程展開(kāi)成序列,判斷該序列前W位能否與測(cè)試向量序列S能否在所有確定位 --對(duì)應(yīng),如果能--對(duì)應(yīng),轉(zhuǎn)至步驟六;
[0019] 六、無(wú)關(guān)位填充:在步驟四中已經(jīng)找到與X對(duì)應(yīng)的無(wú)理數(shù)^即將無(wú)理數(shù)展 VC,I 開(kāi)成小數(shù)并按0類型的游程轉(zhuǎn)換成序列,將該序列與測(cè)試向量序列S-一對(duì)應(yīng)從頭到尾,將 所有無(wú)關(guān)位全部填充;
[0020] 走、隨機(jī)測(cè)試;將^展開(kāi)成小數(shù),轉(zhuǎn)換成游程長(zhǎng)度再轉(zhuǎn)換成0、1序列,該0、1序列 長(zhǎng)度取原測(cè)試向量長(zhǎng)度的1000倍,將該0、1序列分割成1000個(gè)測(cè)試向量,運(yùn)行故障模擬程 序,檢查其能測(cè)的故障,將能測(cè)故障從原始故障列表中