劉鳳偉,詹惠琴,古 軍
(電子科技大學(xué)自動(dòng)化工程學(xué)院,成都 610054)
隨著電子技術(shù)的飛速發(fā)展,數(shù)字集成電路的應(yīng)用日益廣泛。同時(shí)數(shù)字集成電路測試工作在IC設(shè)計(jì)、驗(yàn)證、封裝過程中占有非常重要的地位,而先進(jìn)的測試流程和測試方法能有效控制產(chǎn)品在生產(chǎn)各個(gè)環(huán)節(jié)的質(zhì)量和成本[1]。數(shù)字集成電路測試包括直流參數(shù)測試、交流參數(shù)測試和功能測試[2]。其中,數(shù)字集成電路交流參數(shù)是一項(xiàng)非常重要的指標(biāo),各個(gè)先進(jìn)測試設(shè)備都有其交流參數(shù)測試的功能,如惠銳捷的V50,測試精度達(dá)到8.06ns,而泰瑞達(dá)的J750更是達(dá)到了66ps的測量精度[3]。各種高速器件的應(yīng)用要求測試精度不斷提高,所以開發(fā)出大范圍、高精度、高效率的交流參數(shù)測試儀是一個(gè)充滿機(jī)遇和挑戰(zhàn)的課題,研究它具有非常現(xiàn)實(shí)的意義。
在數(shù)字IC交流參數(shù)測試中,交流參數(shù)種類繁多,主要包括脈沖寬度(Tw),輸入/輸出脈沖上升時(shí)間(Tr),輸入/輸出脈沖下降時(shí)間(Tf),建立時(shí)間(Tset),保持時(shí)間(Th),最高時(shí)鐘頻率(fmax),輸入電平到輸出電平的傳輸延遲(Tplh、Tphl、Tpzh、Tpzl、Tphz、Tplz)等[4]。本設(shè)計(jì)的IC交流參數(shù)測量板結(jié)構(gòu)如圖1所示,包括可編程負(fù)載、激勵(lì)信號施加單元、信號采集整形單元、時(shí)間間隔測量單元、RMS測量單元和控制核心單元。
以測量輸出延遲為例,設(shè)定比較電平Vref=50%Vpp,施加激勵(lì)信號DataIn,檢測DUT輸出信號DataOut,通過采樣整形電路把DataIn和DataOut信號采集,轉(zhuǎn)換成Start和Stop脈沖,而后把Start和Stop脈沖輸入給時(shí)間間隔測量單元測量,得出測量結(jié)果,顯示在計(jì)算機(jī)界面上。
針對時(shí)序器件,需要測量信號的建立時(shí)間和保持時(shí)間,此時(shí)需要功能驗(yàn)證測量板的密切配合,測量方法為:配置好負(fù)載電路,通過激勵(lì)施加網(wǎng)絡(luò)施加激勵(lì)時(shí)鐘Clk和脈沖輸入信號DataIn。
測量Tset:通過延遲芯片調(diào)節(jié)DataIn提前Clk的時(shí)間,通過功能驗(yàn)證板的功能狀態(tài)檢測器,檢測輸出時(shí)序是否滿足要求,從而測量出信號的建立時(shí)間Tset。測量Th:通過延遲芯片調(diào)節(jié)DataIn延遲Clk的時(shí)間,通過功能驗(yàn)證板的功能狀態(tài)檢測器,檢測輸出時(shí)序是否滿足要求,從而測量出信號的建立時(shí)間Tset。
對于輸出信號為脈沖信號時(shí)需要檢測輸出信號的T或F,此時(shí)設(shè)計(jì)好負(fù)載電路,施加激勵(lì)信號,信號整形模塊采集輸出脈沖,輸入給時(shí)間間隔測量單元完成測量。
測量器件最大工作頻率,通過激勵(lì)施加單元施加脈沖信號,根據(jù)具體IC設(shè)置負(fù)載電路。調(diào)節(jié)脈沖的輸出頻率范圍,通過功能驗(yàn)證板的功能狀態(tài)檢測器檢測輸出信號,做功能驗(yàn)證,看是否滿足時(shí)序要求,從而測得器件的最大工作頻率。
時(shí)間間隔測量技術(shù)發(fā)展由來已久,有各種各樣的測量方法:直接測量法、電流積分法、時(shí)間擴(kuò)展法、游標(biāo)卡尺法、內(nèi)插技術(shù)法等。在1997年,波蘭科學(xué)家Jozef Kalisz等人就開始了時(shí)間間隔測量技術(shù)在FPGA中應(yīng)用的研究[5]。他們提出一種在Quick Logic公司PASIC系列FPGA上構(gòu)建延遲線實(shí)現(xiàn)時(shí)間間隔測量的結(jié)構(gòu),精度達(dá)到了200ps[6]。該款FPGA為一次反熔絲結(jié)構(gòu)。Jozef Kalisz領(lǐng)導(dǎo)的研究小組利用這一結(jié)構(gòu),構(gòu)建了兩條延遲線。Clk從/EN輸入,Start和Stop脈沖從IN輸入,設(shè)D~Q的延時(shí)t1,/EN~/ENOUT的延時(shí)t2,插值求得T1=N1(t2-t1),同理求得T2=N2(t2-t1);得時(shí)間間隔T=NT0+(N1-N2)(t2-t1),時(shí)間分辨力達(dá)到t2-t1(t2>t1)。由于FPGA獨(dú)有的技術(shù),內(nèi)部邏輯門延遲t1和t2都非常小且非常穩(wěn)定,致使該技術(shù)得到了很大的推廣,各個(gè)研究團(tuán)隊(duì)分別在其他系列的FPGA上構(gòu)建類似延遲線以實(shí)現(xiàn)精準(zhǔn)的時(shí)間測量。近年來國內(nèi)也有相關(guān)的研究,也多是基于該思想衍生出了多種構(gòu)建延遲線的測量方法,更詳細(xì)的介紹請參閱參考文獻(xiàn)[7]和[8]。
本文基于Jozef Kalisz等人的基本思想,將其成功運(yùn)用于Altera公司ACEX1K50系列FPGA當(dāng)中。在FPGA中構(gòu)建延遲線需要滿足以下幾個(gè)條件:首先,要求時(shí)間內(nèi)插單元延遲t非常小,且隨著器件工作溫度的上升,延遲單元的時(shí)間穩(wěn)定性要非常好,因?yàn)閠直接決定了時(shí)間測量的分辨力和測量精度;其次,因?yàn)樵贔PGA內(nèi)部需要構(gòu)建精準(zhǔn)的延遲線,這就要求FPGA內(nèi)部必須有這樣一種特殊結(jié)構(gòu),便于構(gòu)建延遲線;最后,也應(yīng)該考慮系統(tǒng)的開發(fā)成本和難度。
基于這幾種考慮,經(jīng)過查閱資料和仿真驗(yàn)證,最后選定ACEX1K50系列的EP1K50TC144-1這款器件。利用該款器件當(dāng)中的專用時(shí)間進(jìn)位鏈,因?yàn)樵摽頕PGA中專用進(jìn)位鏈延遲tcico=0.1ns,延遲鏈延時(shí)非常小且可以通過施加約束自動(dòng)布線成級聯(lián)結(jié)構(gòu),滿足構(gòu)建延遲線的基本要求。本設(shè)計(jì)基本延遲線的結(jié)構(gòu)如圖2所示,每一級延遲線為一個(gè)LE中的內(nèi)部專用進(jìn)位鏈,同時(shí)每一級鎖存器與延遲線共存于一個(gè)LE當(dāng)中,鎖存延遲線上數(shù)據(jù)。布線時(shí)將寄存器和進(jìn)位鏈約束于同一個(gè)LE當(dāng)中,至此延遲線的數(shù)據(jù)就通過寄存器鎖存到數(shù)據(jù)線上,然后再通過譯碼單元得出延遲線的數(shù)據(jù)。
本設(shè)計(jì)采用延遲線插值法,外部FPGA工作主時(shí)鐘Clk為150MHz,在FPGA內(nèi)部構(gòu)建一個(gè)32位串行計(jì)數(shù)器,工作速度為150MHz,最小分辨力6.6ns,則最大計(jì)數(shù)值為6.67×232=28.6ns,計(jì)數(shù)范圍為7ns~28s。為了獲得更高分辨力,采用延遲線插值法,在FPGA內(nèi)部利用專用時(shí)間進(jìn)位鏈搭建延遲線,利用64個(gè)一位全加器級聯(lián)構(gòu)成。電路綜合后,查看時(shí)序收斂延遲線電路如圖3所示。
Start和Stop信號各搭建一條64級的延遲線。查器件手冊得知EP1K50TC144-1中每個(gè)LAB中有8個(gè)LE,每個(gè)LE中的時(shí)間進(jìn)位鏈延遲tcico為0.1ns,LE之間的延時(shí)為0,每兩個(gè)LAB之間的延遲為0.1ns,且只有奇數(shù)列和奇數(shù)列搭建,偶數(shù)列和偶數(shù)列搭建,不能跨過中間的EAB,則可知最大可以搭建的延遲線長度為72(8×9=72)個(gè)延遲單元,最大延遲時(shí)間為0.1(71+8)=7.9ns,設(shè)計(jì)主時(shí)鐘采用150MHz,插值單元大小為一個(gè)周期6.67ns,故為了方便,搭建了64級延遲線,插補(bǔ)范圍為0.1(64+8)=7.2ns,7.2ns>6.67ns滿足設(shè)計(jì)要求,同時(shí)設(shè)計(jì)了譯碼電路負(fù)責(zé)把延遲線電路輸出Q1~Q64譯碼成十進(jìn)制數(shù)據(jù)。最后的測量結(jié)果為T=NT0+0.1(N1-N2),同時(shí)從延遲線的結(jié)構(gòu)可以看出:每一級延時(shí)下到下級延遲線的傳輸延遲在LAB內(nèi)部為0,在LAB之間為0.1ns,而每一個(gè)延時(shí)鏈內(nèi)部,延時(shí)模塊到寄存器的輸入端的延遲tpacked=0.2ns,測量分辨力大約為0.1+0.2=0.3ns。
在FPGA綜合設(shè)計(jì)仿真中,采用了Altera新一代綜合仿真工具QuartusⅡ9.0,它是集設(shè)計(jì)、綜合、布線、仿真于一體,功能強(qiáng)大、操作簡單的FPGA專用設(shè)計(jì)軟件。當(dāng)然Altera也支持其他綜合仿真設(shè)計(jì)工具,如Synplify、modelsim等。在QuartusⅡ9.0中建立工程,編輯設(shè)計(jì)文件,添加好管腳和特殊門電路約束,然后全編譯。在仿真波形當(dāng)中編輯輸入波形文件,然后進(jìn)行時(shí)序仿真,仿真波形如圖4所示,改變輸入波形文件得到各種測試數(shù)據(jù),在此列出了10次測量的數(shù)據(jù),如表1所示。從表1中可以看出插補(bǔ)單元的分辨力大約在250ps左右,基本符合前面的分析。
以上介紹了數(shù)字IC交流參數(shù)測試的基本內(nèi)容,研究了FPGA的時(shí)間內(nèi)插方法,并將其運(yùn)用于數(shù)字集成電路交流參數(shù)測試工作中,最后通過仿真驗(yàn)證了這種方法的測試精度。結(jié)果表明利用最新的FPGA技術(shù)大大提高了集成電路交流參數(shù)測試精度,使測量方法更加先進(jìn)有效,同時(shí)在降低了測試成本的基礎(chǔ)上實(shí)現(xiàn)了測量精度高、動(dòng)態(tài)范圍廣、測試方法方便有效和穩(wěn)定可靠。
[1]譚偉.數(shù)字集成電路測試技術(shù)應(yīng)用[J].微處理機(jī),2008.8(4):1-2.
[2]潘曙娟,鐘杰.基于ATE的IC測試原理、方法及故障分析[J].半導(dǎo)體學(xué)報(bào),2006,12(27):1-2.
[3]李桂華,徐英偉,鐘娜,等.集成電路交流參數(shù)測試方法研究[J].微處理機(jī). 2000,8(3):1-2.
[4]張靜,于祥苓,李海泉.淺談集成電路交流參數(shù)的測試[J].微處理機(jī),2008,6(3):1-2.
[5]J Kalisz, R Szplet, R Pelka,et al. Single-Chip Interpolating Time Counter with 200-ps Resolution and 43-s Range[J].IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, 1997,46(4).
[6]J. Kalisz, R. Szplet, J. Pasierbinski,et al. Field programmable-gate-array-based time-to-digital converter with 200-ps resolution[J]. IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, 1997,46.
[7]宋健.基于FPGA的精密時(shí)間-數(shù)字轉(zhuǎn)換電路研究[D].合肥:中國科學(xué)技術(shù)大學(xué). 2006.
[8]陳炳權(quán).基于FPGA中專用進(jìn)位連線的精密TDC設(shè)計(jì)[J].湘潭大學(xué)自然科學(xué)學(xué)報(bào), 2008,3(1):2-3.