集成電路測試(IC測試)主要的目的是將合格的芯片與不合格的芯片區分開(kāi),保證產(chǎn)品的質(zhì)量與可靠性。隨著(zhù)集成電路的飛速發(fā)展,其規模越來(lái)越大,對電路的質(zhì)量與可靠性要求進(jìn)一步提高,集成電路的測試方法也變得越來(lái)越困難。因此,研究和發(fā)展IC測試,有著(zhù)重要的意義。而測試向量作為IC測試中的重要部分,研究其生成方法也日漸重要。 1 IC 測試 1.1 IC測試原理 IC 測試是指依據被測器件(DUT)特點(diǎn)和功能,給DUT提供測試激勵(X),通過(guò)測量DUT輸出響應(Y)與期望輸出做比較,從而判斷DUT是否符合格。圖1所示為IC測試的基本原理模型。 根據器件類(lèi)型,IC測試可以分為數字電路測試、模擬電路測試和混合電路測試。數字電路測試是IC測試的基礎,除少數純模擬IC如運算放大器、電壓比較器、模擬開(kāi)關(guān)等之外,現代電子系統中使用的 大部分IC都包含有數字信號。 圖1 IC測試基本原理模型 數字IC 測試一般有直流測試、交流測試和功能測試。 1.2 功能測試 功能測試用于驗證IC是否能完成設計所預期的工作或功能。功能測試是數字電路測試的根本,它模擬IC的實(shí)際工作狀態(tài),輸入一系列有序或隨機組合的測試圖形,以電路規定的速率作用于被測器件,再在電路輸出端檢測輸出信號是否與預期圖形數據相符,以此判別電路功能是否正常。其關(guān)注的重點(diǎn)是圖形產(chǎn)生的速率、邊沿定時(shí)控制、輸入/輸出控制及屏蔽選擇等。 功能測試分靜態(tài)功能測試和動(dòng)態(tài)功能測試。靜態(tài)功能測試一般是按真值表的方法,發(fā)現固定型(Stuckat)故障。動(dòng)態(tài)功能測試則以接近電路 工作頻率的速度進(jìn)行測試,其目的是在接近或高于器件實(shí)際工作頻率的情況下,驗證器件的功能和性能。 功能測試一般在A(yíng)TE(Automatic Test Equipment)上進(jìn)行,ATE測試可以根據器件在設計階段的模擬仿真波形,提供具有復雜時(shí)序的測試激勵,并對器件的輸出進(jìn)行實(shí)時(shí)的采樣、比較和判斷。 1.3 交流參數測試 交流(AC)參數測試是以時(shí)間為單位驗證與時(shí)間相關(guān)的參數,實(shí)際上是對電路工作時(shí)的時(shí)間關(guān)系進(jìn)行測量,測量諸如工作頻率、輸入信號輸出信號隨時(shí)間的變化關(guān)系等。常見(jiàn)的測量參數有上升和下降時(shí)間、傳輸延遲、建立和保持時(shí)間以及存儲時(shí)間等。交流參數最關(guān)注的是最大測試速率和重復性能,然后為準確度。 1.4 直流參數測試 直流測試是基于歐姆定律的,用來(lái)確定器件參數的穩態(tài)測試方法。它是以電壓或電流的形式驗證電氣參數。直流參數測試包括:接觸測試、漏電流測試、轉換電平測試、輸出電平測試、電源消耗測試等。 直流測試常用的測試方法有加壓測流(FVMI)和加流測壓(FIMV),測試時(shí)主要考慮測試準確度和測試效率。通過(guò)直流測試可以判明電路的質(zhì)量。如通過(guò)接觸測試判別IC引腳的開(kāi)路/短路情況、通過(guò)漏電測試可以從某方面反映電路的工藝質(zhì)量、通過(guò)轉換電平測試驗證電路的驅動(dòng)能力和抗噪聲能力。 直流測試是IC測試的基礎,是檢測電路性能和可靠性的基本判別手段。 1.5 ATE測試平臺 ATE(Automatic Test Equipment)是自動(dòng)測試設備,它是一個(gè)集成電路測試系統,用來(lái)進(jìn)行IC測試。一般包括計算機和軟件系統、系統總線(xiàn)控制系統、圖形存儲器、圖形控制器、定時(shí)發(fā)生器、精密測量單元(PMU)、可編程電源和測試臺等。 系統控制總線(xiàn)提供測試系統與計算機接口卡的連接。圖形控制器用來(lái)控制測試圖形的順序流向,是數字測試系統的CPU。它可以提供DUT所需電源、圖形、周期和時(shí)序、驅動(dòng)電平等信息。 2 測試向量及其生成 測試向量(Test Vector)的一個(gè)基本定義是:測試向量是每個(gè)時(shí)鐘周期應用于器件管腳的用于測試或者操作的邏輯1和邏輯0數據。這一定義聽(tīng)起來(lái)似乎很簡(jiǎn)單,但在真實(shí)應用中則復雜得多。因為邏輯1和邏輯0是由帶定時(shí)特性和電平特性的波形代表的,與波形形狀、脈沖寬度、脈沖邊緣或斜率以及上升沿 和下降沿的位置都有關(guān)系。 2.1 ATE測試向量 在A(yíng)TE語(yǔ)言中,其測試向量包含了輸入激勵和預期存儲響應,通過(guò)把兩者結合形成ATE 的測試圖形。這些圖形在A(yíng)TE中是通過(guò)系統時(shí)鐘上升和下降沿、器件管腳對建立時(shí)間和保持時(shí)間的要求和一定的格式化方式來(lái)表示的。格式化方式一般有RZ(歸零)、RO(歸1)、NRZ(非歸零)和NRZI(非歸零反)等。 圖2為RZ和R1格式化波形,圖3為NRZ和NRZI格式化波形。 圖2 RZ和R1數據格式波形 圖3 NRZ和NRZI數據格式波形 RZ數據格式,在系統時(shí)鐘的起始時(shí)間T0,RZ測試波形保持為“0”,如果在該時(shí)鐘周期圖形存儲器輸出圖形數據為“1”,則在該周期的時(shí)鐘周期期間,RZ測試波形由“0”變換到“1”,時(shí)鐘結束時(shí),RZ 測試波形回到“0”。若該時(shí)鐘周期圖形存儲器輸出圖形數據為“0”,則RZ測試波形一直保持為“0”,在時(shí)鐘信號周期內不再發(fā)生變化。歸“1”格式(R1)與RZ相反。 非歸“0”(NRZ)數據格式,在系統時(shí)鐘起始時(shí)間T0,NRZ測試波形保持T0前的波形,根據本時(shí)鐘周期圖形文件存儲的圖形數據在時(shí)鐘的信號沿變化。即若圖形文件存儲數據為“1”,那么在相應時(shí)鐘邊沿,波形則變化為“1”。NRZI波形是NRZ波形的反相。 在A(yíng)TE中,通過(guò)測試程序對時(shí)鐘周期、時(shí)鐘前沿、時(shí)鐘后沿和采樣時(shí)間的定義,結合圖形文件中存儲的數據,形成實(shí)際測試時(shí)所需的測試向量。 ATE測試向量與EDA設計仿真向量不同,而且不同的ATE,其向量格式也不盡相同。以JC-3165型ATE為例,其向量格式如圖4所示。 ATE向量信息以一定格式的文件保存,JC-3165向量文件為*.MDC文件。在A(yíng)TE測試中,需將*.MDC文件通過(guò)圖形文件編譯器,編譯成測試程序可識別的*.MPD文件。在測試程序中,通過(guò)裝載圖形命令裝載到程序中。 圖4 ATE測試向量格式 2.2 ATE測試向量的生成 對簡(jiǎn)單的集成電路,如門(mén)電路,其ATE測試向量一般可以按照ATE向量格式手工完成。而對于一些集成度高,功能復雜的IC,其向量數據龐大,一般不可能依據其邏輯關(guān)系直接寫(xiě)出所需測試向量,因此,有必要探尋一種方便可行的方法,完成ATE向量的生成。 在IC設計制造產(chǎn)業(yè)中,設計、驗證和仿真是不可分離的。其ATE 測試向量生成的一種方法是,從基于EDA工具的仿真向量(包含輸入信號和期望的輸出),經(jīng)過(guò)優(yōu)化和轉換,形成ATE格式的測試向量。 依此,可以建立一種向量生成方法。利用EDA工具建立器件模型,通過(guò)建立一個(gè)Test bench仿真驗證平臺,對其提供測試激勵,進(jìn)行仿真,驗證仿真結果,將輸入激勵和輸出響應存儲,按照ATE向量格式,生成ATE向量文件。其原理如圖5所示。 圖5 ATE向量生成示意圖 2.3 測試平臺的建立 (1)DUT模型的建立 ① 164245模型:在Modelsim工具下用Verilog HDL語(yǔ)言[5],建立164245模型。164245是一個(gè)雙8位雙向電平轉換器,有4個(gè)輸入控制端:1DIR,1OE,2DIR,2OE;4組8位雙向端口:1A,1B,2A,2B。端口列表如下: input DIR_1,DIR_2,OE_1,OE_2; inout [0:7] a_1,a_2,b_1,b_2; reg [0:7] bfa1,bfb1,bfa2,bfb2;//緩沖區 ② 緩沖器模型:建立一個(gè)8位緩沖器模型,用來(lái)做Test bench 與164245 之間的數據緩沖,通過(guò) 在Testbench總調用緩沖器模塊,解決Test bench與164245模型之間的數據輸入問(wèn)題。 (2)Test bench的建立 依據器件功能,建立Test bench平臺,用來(lái)輸入仿真向量。 Test bench中變量定義: reg dir1,dir2,oe1,oe2; //輸入控制端 reg[0:7] a1,a2,b1,b2; //數據端 reg[0:7] A1_out[0:7]; //存儲器,用來(lái)存儲數據 reg[0:7] A2_out[0:7]; reg[0:7] B1_out[0:7]; reg[0:7] B2_out[0:7]; 通過(guò)Test bench 提供測試激勵,經(jīng)過(guò)緩沖區接口送入DUT,觀(guān)察DUT輸出響應,如果滿(mǎn)足器件功能要求,則存儲數據,經(jīng)過(guò)處理按照ATE 圖形文件格式產(chǎn)生*.MDC 文件;若輸出響應有誤,則返回Test bench 和DUT模型進(jìn)行修正。其原理框圖可表示如圖6所示。 圖6 Test bench驗證平臺框圖 (3)仿真和驗證 通過(guò)Test bench 給予相應的測試激勵進(jìn)行仿真,得到預期的結果,實(shí)現了器件功能仿真,并獲得了測試圖形。圖7和圖8為部分仿真結果。 圖7 仿真數據結果 在JC-3165的*.MDC圖形文件中,對輸入引腳,用“1”和“0”表示高低電平;對輸出引腳,用“H”和“L”表示高低電平;“X”則表示不關(guān)心狀態(tài)。由于在仿真時(shí),輸出也是“0”和“1”,因此在驗證結果正確后,對輸出結果進(jìn)行了處理,分別將“0”和“1”轉換為“L”和“H”,然后放到存儲其中,最后生成*.MDC圖形文件。 圖8 生成的*.MDC文件 3 結論 本文在Modelsim環(huán)境下,通過(guò)Verilog HDL語(yǔ)言建立一個(gè)器件模型,搭建一個(gè)驗證仿真平臺,對164245進(jìn)行了仿真,驗證了164245的功能,同時(shí)得到了ATE所需的圖形文件,實(shí)現了預期所要完成的任務(wù)。 隨著(zhù)集成電路的發(fā)展,芯片設計水平的不斷提高,功能越來(lái)越復雜,測試圖形文件也將相當復雜且巨大,編寫(xiě)出全面、有效,且基本覆蓋芯片大多數功能的測試圖形文件逐漸成為一種挑戰,在A(yíng)TE上實(shí)現測試圖形自動(dòng)生成已不可能。因此,有必要尋找一種 能在EDA工具和ATE測試平臺之間的一種靈活通訊的方法。 目前常用的一種方法是,通過(guò)提取EDA工具產(chǎn)生的VCD仿真文件中的信息,轉換為ATE測試平臺所需的測試圖形文件,這需要對VCD文件有一定的了解,也是進(jìn)一步的工作。 |