基于虛擬儀器技術(shù)的雷達(dá)信號(hào)模擬器設(shè)計(jì)
2.2.2 程序設(shè)計(jì)
?。?)主程序設(shè)計(jì)
主程序的設(shè)計(jì)思路是:首先啟動(dòng) PCl-5640R板卡,然后調(diào)用仿真數(shù)據(jù)進(jìn)行轉(zhuǎn)換,再將數(shù)據(jù)送入FPGA程序中處理,并不間斷地從FPGA讀取數(shù)據(jù),以監(jiān)控是否有溢出,最后判斷是否有錯(cuò)誤,若有則中斷程序,如無(wú)則繼續(xù)監(jiān)控是否有溢出和有無(wú)錯(cuò)誤,程序如圖5所示。
圖5(a)是將仿真數(shù)據(jù)通過(guò)路徑控件讀入到主程序中,再轉(zhuǎn)換為16位數(shù),然后通過(guò)Host to FPGA. Write控件將數(shù)據(jù)送入FPGA程序中。圖5(b)是先通過(guò)一個(gè)邏輯控件開(kāi)始一個(gè)FPGA程序中的Case結(jié)構(gòu),該結(jié)構(gòu)是用于數(shù)據(jù)讀取,然后通過(guò)一個(gè)for循環(huán)監(jiān)視Memory是否溢出和數(shù)據(jù)是否送出到AO0口,并判斷是否停止,最后結(jié)束數(shù)據(jù)讀取并使FPGA停止工作。
?。?)FPGA程序設(shè)計(jì)
FPGA程序分為兩塊,一是在FPGA上設(shè)置A/D和D/A轉(zhuǎn)換功能;二是在FPGA上加存儲(chǔ)器,將數(shù)據(jù)通過(guò)FIFO存入存儲(chǔ)器Memory ,再通過(guò)FIFO將數(shù)據(jù)送入設(shè)置好的AO0口,進(jìn)而將數(shù)據(jù)送出。FPGA程序設(shè)計(jì)如圖6所示。
圖5 主程序設(shè)計(jì)
圖6 FPGA程序設(shè)計(jì)
評(píng)論