張凱虹,陳 誠,萬書芹
(中國電子科技集團公司第58研究所,江蘇 無錫 214035)
FPGA是電子設(shè)計領(lǐng)域中最具活力和發(fā)展前途的一項技術(shù)。隨著它的廣泛應(yīng)用,其可靠性變得越來越突出,電子元器件可靠性試驗和篩選越來越重要。測試已成為制約FPGA實際應(yīng)用的一個關(guān)鍵因素[1]。
基于ATE的FPGA測試的關(guān)鍵是如何生成對FPGA進行配置的測試向量,特別是不依賴于產(chǎn)品設(shè)計的條件下。本文基于PC、ATE與自制轉(zhuǎn)換軟件,對FPGA驗證與測試開發(fā)技術(shù)進行研究。通過對FPGA的實際測試,達到了很好的效果,證明了實用性。
一般實現(xiàn)FPGA配置的方式有兩種,一種是將配置文件存放在FPGA外的PROM或EPROM中,系統(tǒng)加電后配置文件自動加載到SRAM中;另一種是將測試系統(tǒng)用作一個處理器,通過數(shù)字通道將配置數(shù)據(jù)加載到SRAM中[2]。本文采用第二種方法實現(xiàn)FPGA的在線配置。
FPGA根據(jù)配置模式管腳(M0、M1、M2)的不同輸入,產(chǎn)生8種配置模式[3]。由于測試FPGA的過程中需要多次“配置-測試”過程,其中配置占用時間相對比較長。從并模式的數(shù)據(jù)寬度為8位,與其他配置模式相比速度快8倍,所以選用從并作為測試配置模式。此模式為系統(tǒng)加載FPGA配置程序提供了最簡單的接口。數(shù)據(jù)D0~D7和時鐘CCLK可同時從外部提供。
配置比特流是由ISE調(diào)用BitGen程序把布局布線后的約束文件轉(zhuǎn)換為二進制文件,由于FPGA可能的配置文件有五種[4],其中bin的二進制文件不僅可用于定制的配置方案還可存儲于第三方PROM,符合本測試方案要求。圖1是bin二進制文件。該類文件不含文件頭信息。0Xaa995566是同步字,0X30008001是器件ID,之后數(shù)據(jù)為配置幀。
圖1 FPGA.bin配置文件
為實現(xiàn)bin文件到機器可識別的atp文件的轉(zhuǎn)換,特設(shè)計小型軟件如圖2所示。該軟件使用C語言編制,將bin文件按特定方式分離成D0~D7的向量文件。轉(zhuǎn)換后文件不僅包含了bin中D0~D7的信息,還增加了從并模式中其他管腳的輸入/輸出信息,提高編碼效率。圖3為轉(zhuǎn)換后的文件格式。根據(jù)圖4配置流程可以看出增加的信息包括外部輸入CCLK信號,PROGRAM信號拉低,驗證INIT是否變高,CRC校驗后INIT與DONE信號的輸出驗證。
由于本文的試驗對象是XCV1000,芯片規(guī)模比較大。同時FPGA的測試需要多次“配置-測試”過程,對測試向量的深度要求比較高。所以本文以Teradyne的UltraFLEX為測試平臺,該ATE的測試管腳數(shù)可達1 024個,測試向量深度達256M,測試頻率可達2GHz,完全滿足市場上多數(shù)FPGA的測試要求。
圖2 轉(zhuǎn)換軟件
圖3 轉(zhuǎn)換后的文件形式
使用2.3的方法將bin文件轉(zhuǎn)換成ATE識別的可配置文件。生成的配置文件導(dǎo)入到ATE后,可將其作為普通的功能碼進行測試。為了驗證FPGA是否完成配置,在結(jié)尾處增加一小段測試碼,即DONE信號輸出為高,INIT信號輸出為高,如圖4所示。若這兩個信號輸出正確說明配置成功。為了觀察直觀與調(diào)試,本文使用的DUT在DONE信號的輸出增加了一個LED。
FPGA配置完成后,F(xiàn)PGA便被配置為特定的功能,此時就可以作為普通邏輯器件進行測試了,可進行參數(shù)與功能測試。
該方法把配置作為一個測試項,實現(xiàn)了FPGA的在線配置,且可以改變配置速度,對芯片進行全面的分析與測試,施行比較簡單。通過對XCV1000的測試表明,該方法可行、高效、通用性強,對于實現(xiàn)FPGA的產(chǎn)業(yè)化具有重要意義。
圖4 配置流程
圖5 最終配置碼
[1] 薛宏,趙欣.FPGA測試技術(shù)研究[J].微處理機,2008,2 279(2):11-14.
[2] 唐恒標,馮建華,馮建科.基于測試系統(tǒng)的FPGA邏輯資源的測試[J].微電子學,2006,36(3):292-295.
[3] Xilinx, Inc. Virtex? 2.5 V Field Programmable Gate Arrays[C].
[4] 薛小剛,葛毅敏.Xilinx ISE 9.X FPGA/CPLD設(shè)計指南[M],北京,人民郵電出版社,2007:210-219.