文獻標識碼: A
文章編號: 0258-7998(2012)10-0075-02
由于PLD具有可重復編程性,在很多時候不必為實現(xiàn)一個新的功能而設計新的ASIC,,這樣就節(jié)約了大量的設計成本,。這一優(yōu)點讓PLD近年來得到了市場的認可,又由于開發(fā)周期短投入軟件少,,PLD在很多領域開始取代ASIC的地位,。目前其應用已經(jīng)涉及到通信、醫(yī)療,、工業(yè)控制,、系統(tǒng)診斷以及航空航天等諸多領域。
1 系統(tǒng)總體設計方案
本套測試系統(tǒng)主要由上位機軟件,、通信電纜,、控制電路和待測CPLD組成。上位機發(fā)送測試命令通過USB轉串口線送到控制電路,,控制電路發(fā)送測試向量并檢測測試響應返回上位機軟件,,上位機軟件進行分析、定位和顯示,??偟南到y(tǒng)結構功能圖如圖1所示。
2 待測CPLD
Lattice半導體公司的在系統(tǒng)可編程大規(guī)模集成電路(ispLSI)系列,,是一種結合了PLD易用性,、高性能和現(xiàn)場可編程門陣列(FPGA)的靈活性和高密度特性的可編程邏輯器件。ispLSI1032E是該系列器件中的一款性價比極高的芯片,,它的高集成度,、低功耗、很強的可重構能力,、保密性好和在系統(tǒng)編程等特性使它被廣泛應用于電子系統(tǒng)的設計,。
ispLSI1032E是包含192個寄存器、64個通用I/O管腳,、8個專用輸入管腳,、4個專用時鐘輸入管腳和一個全局布線區(qū)(GRP)的高密度可編程邏輯器件。GRP能為所有這些部件之間提供完善的互聯(lián),。ispLSI1032E器件上的基本邏輯單元是萬能邏輯塊(GLB),, GLB包括A0、A1…D7[1],。在ispLSI1032E器件內(nèi)總共存在32個GLB,,每個GLB都有18個輸入、一個可編程的與/或/異或陣列以及4個既能構成組合式的又能構成寄存器式的輸出。GLB的輸入來自GRP和專用的輸入,,所有GLB的輸出都被送入GRP,,以便能把它們連接到器件上任何GLB的輸入[1]。
3 控制電路
控制電路的主控芯片采用的是Lattice公司的ispMACH4A5系列的M4A5-192芯片,,該芯片有192個宏單元,,在引腳數(shù)目和邏輯資源數(shù)目方面,都能很好地滿足測試ispLSI1032E,??刂齐娐分饕撠熃邮彰钪蟀l(fā)送控制命令控制繼電器的關斷和發(fā)送測試向量,然后接收測試數(shù)據(jù)并返回上位機,。
4 測試步驟
對于ispLSI1032E的測試是基于“分治法”[2]的思想,,對待測電路只進行三次電路配置,施加對應的測試向量,,就可以把性能指標和芯片可能出現(xiàn)的故障予以覆蓋,。該芯片有64個I/O管腳,把I/O0~I/O31作為輸入,,I/O32~I/O63作為輸出配置一次,,I/O32~I/O63作為輸入,I/O0~I/O31作為輸出配置一次,,然后內(nèi)部組合邏輯功能測試配置一次,。另外該套裝置還具有自檢功能,在開始測試之前,,先不放入待測芯片,,通過從上位機發(fā)送相應的命令,控制電路接收到命令后控制相應的繼電器的通斷,,來進行輸入輸出自檢,,也可以用示波器進行觀測,確保裝置沒有任何問題之后再進行待測芯片的測試,。整體測試流程如圖2所示,。
4.1 配置電路一的測試
(1)芯片輸入輸出基本功能測試。配置電路一下載到ispLSI1032E之后,,I/O0~I/O31輸入,,I/O32~I/O63輸出??刂齐娐份敵鱿鄳目刂菩盘栔?,ispLSI1032E的4個BANK的所有I/O都直接連通,不與D/A輸出相連,,確保I/O腳的輸出不進入A/D進行采樣,。利用一定算法分別輸入0000H時返回$TEST1-1,,XXH,XXH,XXH,XXH;輸入FFFFH時返回$TEST1-2,,XXH,XXH,XXH,XXH,。輸入0000H時返回$TEST1-3,XXH,XXH,XXH,XXH;輸入FFFFH時返回$TEST1-4,,XXH,XXH,XXH,XXH,。上位機根據(jù)返回的四組數(shù)據(jù), 利用一套異或/或邏輯算法就能分析出I/O0-I/O31作為輸入,I/O32-I/O63輸出哪些引腳有故障,。
(2)芯片傳輸延遲測試。示波器的CH1,、CH3測試ispLSI1032E的BANK1和BANK3之間的傳輸延時,,CH1、CH4測試ispLSI1032E的BANK1和BANK4之間的傳輸延時,,CH1為輸入端,。示波器的CH2、CH3測試ispLSI1032E的BANK2和BANK3之間的傳輸延時,,CH2,、CH4測試ispLSI1032E的BANK2和BANK4之間的傳輸延時,CH2為輸入端,。把示波器通過GPIB線和PC機相連,,上位機軟件發(fā)出測試延時命令并自動捕獲和存儲示波器的屏幕,對比觀察延時數(shù)據(jù),。
(3)芯片輸入信號閾值的測試,。采用四通道16位A/D轉換芯片,控制電路發(fā)出控制命令,BANK3的I/O32和BANK4的I/O48接到A/D的AD2和AD3輸入端,, BANK1的I/O0接D/A輸出,通過A/D轉換AD2,,AD3采樣判斷I/O0對I/O32和I/O48的閾值范圍;然后BANK2的I/O16接D/A輸出,,通過A/D轉換AD2,,AD3采樣判斷I/O16對I/O32和I/O48的閾值范圍。
4.2 配置電路二的測試
配置電路二與配置電路一基本類似,,只是I/O管腳輸入輸出反向,,控制相應繼電器的關斷即可。
4.3 內(nèi)部邏輯資源測試
根據(jù)ispLSI1032E的內(nèi)部結構,,在4個BANK包含的32個GLB充分利用的情況下,,設計出相應的乘法器,將I/O0~I/O31作輸入,,I/O32~I/O63作輸出,,控制電路輸出控制信號,,設計一組測試輸入序列,通過串口返回輸出數(shù)據(jù)分析芯片內(nèi)部資源是否有故障,。在內(nèi)部邏輯資源的測試中斷開相應的跳線即可測試功耗,。
5 測試系統(tǒng)
由于本測試系統(tǒng)采用的芯片都是Lattice公司的ispLSI系列,所以為了節(jié)約測試時間,提高測試效率,,可以采用菊花鏈式一次下載程序到主控芯片和待測芯片,。整個測試系統(tǒng)如圖3。
本套裝置具有自檢功能,,留有接口,,稍加改裝即可測試同類芯片,同時能將芯片的性能指標和可能出現(xiàn)的故障予以充分覆蓋,,摒棄了其他的測試系統(tǒng)僅存在于理論或者只測試其單一方面的缺陷,,具有很好的實用價值,目前在工業(yè)測試系統(tǒng)中使用良好,。
參考文獻
[1] Lattice. ispLSI1032E datasheet.1997.
[2] 于明. CPLD測試方法研究[J].電子測試,,2010(1):38-43.
[3] 黃維康. FPGA的測試[J]. 計算機輔助設計與圖形學學報, 2000,12(5):396-400.
[4] 陳慶孔. FPGA的測試[D]. 南京: 南京理工大學,, 2009.
[5] 周濤. FPGA的測試[D]. 成都:電子科技大學,, 2006.
[6] 龍祖利, 王子云. FPGA測試技術及ATE實現(xiàn)[J].計算機工程與應用, 2011,47(6):65-67.
[7] 杜社會. FPGA時延故障測試技術研究[D]. 長沙:湖南大學,2008.
[8] 王秀珍, 薛萍. In-system可編程器件的應用[J]. 寧波工程學院學報,, 2006(4):57-59.
[9] 石堅, 吳丹, 韓紅星. ispLSI測試[J]. 計算機與數(shù)字工程, 2005(9):85-88.
[10] 石堅, 吳丹, 韓紅星. Lattice可編程器件測試程序開發(fā)技術[J]. 計算機與數(shù)字工程, 2004,32(1):38-41.