楊崗
【摘要】本文對(duì)于自定義FPGA測(cè)試系統(tǒng)的設(shè)計(jì)與應(yīng)用進(jìn)行了簡(jiǎn)要的分析,對(duì)FPGA測(cè)試系統(tǒng)的主要功能進(jìn)行了介紹,并進(jìn)行了測(cè)試系統(tǒng)的設(shè)計(jì)和軟件測(cè)試,取得了良好的測(cè)試結(jié)果,能夠有效的保障測(cè)試的準(zhǔn)確性。
【關(guān)鍵詞】自定義FPGA測(cè)試系統(tǒng);軟件測(cè)試;Virtex5測(cè)試系統(tǒng)
由于電子產(chǎn)品的設(shè)計(jì)越來越復(fù)雜,要對(duì)起進(jìn)行測(cè)試就要使用更為復(fù)雜的測(cè)試方法。通過FPGAPGA能夠提供一個(gè)硬件自定義設(shè)計(jì)途徑,使用戶能夠以軟件編程的方式來對(duì)硬件邏輯進(jìn)行重新配置。這樣一來,軟件工程師的測(cè)試時(shí)間就得到了縮短。
一、拓?fù)銯PGAPGA測(cè)試的功能
1、動(dòng)態(tài)測(cè)試盒閉環(huán)控制。主要是被測(cè)環(huán)境和被測(cè)系統(tǒng)進(jìn)行實(shí)時(shí)信號(hào)交互時(shí),被測(cè)設(shè)備可以通過FPGAPGA來獲得反饋信息,從而使測(cè)試覆蓋的范圍滿足相應(yīng)的要求。在通信系統(tǒng)中經(jīng)常運(yùn)用這種方式。2、自定義協(xié)議接口。為了避免進(jìn)行解碼和編碼操作時(shí)必須按照傳統(tǒng)協(xié)議,可以在硬件上使用FPGAPGA進(jìn)行解碼和編碼,這樣能夠在自定義簡(jiǎn)單協(xié)議的基礎(chǔ)上對(duì)測(cè)試系統(tǒng)的軟件進(jìn)行簡(jiǎn)化,硬件還可以通過FPGAPGA的可重置性得到重復(fù)使用。3、自定義采集和觸發(fā)。可以將數(shù)據(jù)記錄功能和自定義觸發(fā)功能添加到FPGAPGA上,對(duì)傳遞所需的數(shù)據(jù)進(jìn)行選擇。由于FPGAPGA 的可重置性,特定硬件的應(yīng)用要求也可以得到滿足,例如可以對(duì)頻譜分析儀進(jìn)行替代,實(shí)現(xiàn)實(shí)時(shí)頻率觸發(fā)功能。4、執(zhí)行實(shí)時(shí)連續(xù)測(cè)量。通過專享的硬件資源,F(xiàn)PGA可以實(shí)現(xiàn)快速、高吞吐率的數(shù)據(jù)處理,使傳統(tǒng)的數(shù)據(jù)處理模式得到改變,可以通過IO端口采集數(shù)據(jù)并進(jìn)行處理,從而使測(cè)試時(shí)間得到縮短[1]。
二、設(shè)計(jì)測(cè)試系統(tǒng)
本文設(shè)計(jì)的測(cè)試系統(tǒng)為CCD圖像數(shù)傳系統(tǒng)測(cè)試系統(tǒng),其不僅具備基本功能,能夠進(jìn)行全面和深入的性能測(cè)試,還具有低成本、便捷性、實(shí)時(shí)性的優(yōu)點(diǎn)。對(duì)被測(cè)設(shè)備與FPGA之間的配合進(jìn)行測(cè)試,能夠?qū)Ρ粶y(cè)試系統(tǒng)需要的條件輸出進(jìn)行模擬,從而驗(yàn)證被測(cè)設(shè)備的功能。測(cè)量端口和數(shù)據(jù)能夠在被測(cè)系統(tǒng)的故障模式下進(jìn)行排查,對(duì)通信協(xié)議進(jìn)行模擬,能夠?qū)ν獠啃畔⑦M(jìn)行可控加載。對(duì)被測(cè)設(shè)備對(duì)輸出數(shù)據(jù)進(jìn)行讀取,能夠?qū)崿F(xiàn)有選擇的數(shù)據(jù)分析、保存與輸出。該測(cè)試系統(tǒng)使用到了XC5VLX50芯片,功能相對(duì)簡(jiǎn)單,大規(guī)模FPGA測(cè)試的引腳需求能夠得到滿足,并滿足小規(guī)模的數(shù)據(jù)處理需求。該芯片的IP核與擴(kuò)展接口能夠滿足常規(guī)的接口協(xié)議應(yīng)用。
三、測(cè)試軟件
3.1測(cè)試軟件的主要組成部分
測(cè)試軟件包括FPGA軟件和PC軟件兩大部分,具有實(shí)時(shí)數(shù)據(jù)上傳存儲(chǔ)、內(nèi)部實(shí)時(shí)數(shù)據(jù)分析、端口示波器測(cè)試3種測(cè)試手段。
上位機(jī)指令的發(fā)送主要由PC軟件來實(shí)行,其他可以實(shí)現(xiàn)圖像數(shù)據(jù)的處理、分析和接收、測(cè)試用例的設(shè)置等等。可以使用串口調(diào)試助手來完成485串行指令錯(cuò)誤用例。圖像數(shù)據(jù)的存儲(chǔ)、解析和獲取以及指令和參數(shù)的設(shè)置功能主要由自定義開發(fā)的上位機(jī)通訊軟件來完成。
測(cè)試FPGA軟件主要有以下幾個(gè)功能:獲取和解析CCD圖像數(shù)據(jù)頭,從而獲取和解析CCD圖像原始數(shù)據(jù),解析和判讀內(nèi)部參數(shù);解析和判讀視頻處理器加載參數(shù);模擬北側(cè)FPGA異常運(yùn)行或正常運(yùn)行所需的外部信號(hào)。上述功能主要是通過上位機(jī)控制,在自定義485通訊協(xié)議的基礎(chǔ)上實(shí)現(xiàn)的。
測(cè)試設(shè)備與PC機(jī)通訊指令進(jìn)行直接連接解析,測(cè)試FPGA內(nèi)部并向被測(cè)設(shè)備發(fā)送,從而獲取被測(cè)設(shè)備的指令,并設(shè)置測(cè)試FPGA內(nèi)部指令[2]。
3.2測(cè)試的方法
①端口的狀態(tài)和時(shí)序:使用示波器進(jìn)行測(cè)量,能夠?qū)⒉僮鬟^程、加載過程、上電過程中的狀態(tài)圖得出來。②功能測(cè)試。使用485將異常和正常指令發(fā)送出去,對(duì)返回?cái)?shù)據(jù)進(jìn)行觀察。主要有以下幾種返回?cái)?shù)據(jù):視頻加載參數(shù)、圖像數(shù)據(jù)、圖像頭參數(shù)、內(nèi)部遙測(cè)參數(shù)。③模擬通路。對(duì)FPGA模擬外圍指令和數(shù)據(jù)進(jìn)行測(cè)試,與被測(cè)設(shè)備實(shí)現(xiàn)準(zhǔn)實(shí)時(shí)運(yùn)行,并對(duì)被測(cè)設(shè)備輸出狀態(tài)對(duì)時(shí)序關(guān)系和性能進(jìn)行測(cè)量。④錯(cuò)誤測(cè)試和故障測(cè)試。⑤魯棒性測(cè)試。主要是對(duì)同一狀態(tài)進(jìn)行反復(fù)測(cè)試,判斷系統(tǒng)在異常切換、異常時(shí)序、異常操作、錯(cuò)誤值、典型值、臨界值條件下的反應(yīng)。⑥可靠性測(cè)試。對(duì)外部干擾源進(jìn)行模擬,對(duì)系統(tǒng)的可靠程度進(jìn)行測(cè)試,主要使用組合邏輯產(chǎn)生毛刺來模擬外部干擾源,產(chǎn)生的干擾信號(hào)低于一個(gè)時(shí)鐘周期。
四、測(cè)試結(jié)果
由端口測(cè)量和數(shù)據(jù)分析得到的功能測(cè)試結(jié)果能夠滿足測(cè)試要求,測(cè)試系統(tǒng)提高的測(cè)試向量能夠進(jìn)行模擬錯(cuò)誤模式和故障模式,并對(duì)被測(cè)設(shè)備的運(yùn)行情況進(jìn)行觀察。針對(duì)被測(cè)設(shè)備的內(nèi)部程序容錯(cuò)機(jī)制和輸入條件可以進(jìn)行可靠性測(cè)試和魯棒性測(cè)試。對(duì)于被測(cè)設(shè)備出現(xiàn)的問題,能夠通過測(cè)試FPGA提供的測(cè)試向量進(jìn)行分析和糾正。
五、結(jié)語
綜上所述,自定義的FPGA測(cè)試系統(tǒng)具有更加靈活的測(cè)試方式,不僅能夠降低測(cè)試的難度,而且能夠使被測(cè)系統(tǒng)的可靠性要求得到提高,能夠滿足低功耗、高性能的測(cè)試要求,并對(duì)后續(xù)測(cè)量過程進(jìn)行了兼容。
參 考 文 獻(xiàn)
[1] 余銘奇,譚偉,姚錫凡. 基于FPGAPGA和DSP的噴油器霧化粒徑測(cè)量系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)測(cè)量與控制. 2011(02)
[2] 白明方,楊瑞峰. 高精度角位移測(cè)量系統(tǒng)設(shè)計(jì)[J]. 機(jī)械管理開發(fā). 2010(04)