FPGA的可重構(gòu)測(cè)控系統(tǒng)應(yīng)用設(shè)計(jì)
2 基于FPGA的RMS的設(shè)計(jì)
2.1 基于FPGA的RMS的設(shè)計(jì)原則
進(jìn)行可重構(gòu)測(cè)試系統(tǒng)的設(shè)計(jì)應(yīng)遵循以下基本原則:
(1)接口標(biāo)準(zhǔn)化
在測(cè)控系統(tǒng)的接口設(shè)計(jì)上,盡量采用開(kāi)放式、標(biāo)準(zhǔn)化體系的接口標(biāo)準(zhǔn),例如采用通用的讀寫(xiě)、控制總線結(jié)構(gòu)、標(biāo)準(zhǔn)的伺服驅(qū)動(dòng)接口等。
(2)功能實(shí)現(xiàn)模塊化
RMS的軟件和硬件設(shè)計(jì)均采用模塊化的設(shè)計(jì)思想。依功能進(jìn)行模塊劃分,合理分配給FPGA器件和DSP器件。對(duì)于FPGA器件的功能,采用硬件描述語(yǔ)言進(jìn)行邏輯描述,經(jīng)功能設(shè)計(jì)、時(shí)序仿真、電路測(cè)試、模塊封裝,制作成專門的測(cè)控IP,供設(shè)計(jì)平臺(tái)調(diào)用。
(3)系統(tǒng)集成化、開(kāi)放化
將自己開(kāi)發(fā)的測(cè)控IP和從其他IP供應(yīng)商處購(gòu)買到的標(biāo)準(zhǔn)IP,利用專門的綜合軟件集成為測(cè)控系統(tǒng)。還可以通過(guò)裁剪和重整不同的IP來(lái)改變?cè)O(shè)計(jì),達(dá)到既能實(shí)現(xiàn)功能定制、滿足目前測(cè)控要求,又具有開(kāi)放性、能適應(yīng)未來(lái)功能擴(kuò)展的目標(biāo)。
(4)根據(jù)系統(tǒng)規(guī)模靈活選用主控制器
作為RMS的核心,可重構(gòu)主控制器是體現(xiàn)RMS規(guī)模和功能不同的關(guān)鍵器件??梢愿鶕?jù)測(cè)控對(duì)象的需要靈活選擇其實(shí)現(xiàn)器件及功能模塊,以實(shí)現(xiàn)功能和造價(jià)的合理平衡。可以選用低成本的FPGA方案,以有限狀態(tài)機(jī)(FSM)模式完成功能設(shè)計(jì),以JTAG被動(dòng)串行方式下載實(shí)現(xiàn)靜態(tài)重構(gòu),用于簡(jiǎn)單、低速的數(shù)據(jù)采集;也可以選用高性能的SOPC方案,實(shí)現(xiàn)可動(dòng)態(tài)重構(gòu),以滿足高速、復(fù)雜數(shù)據(jù)處理的需要。
(5)嵌入式特征
RMS具有功能可裁剪、結(jié)構(gòu)重定義和軟硬件協(xié)同設(shè)計(jì)特征,是典型的嵌入式系統(tǒng)。
2.2 基于FPGA的RMS的結(jié)構(gòu)與設(shè)計(jì)
RMS可以視為一個(gè)通用的測(cè)控設(shè)計(jì)平臺(tái),其硬件基本結(jié)構(gòu)如圖1所示。 本文引用地址:http://www.ex-cimer.com/article/191608.htm
該測(cè)控系統(tǒng)由主控計(jì)算機(jī)和相對(duì)獨(dú)立的基于FPGA器件的測(cè)控系統(tǒng)兩大部分,通過(guò)通信接口連接而成。主控計(jì)算機(jī)主要實(shí)現(xiàn)人機(jī)對(duì)話功能,包括測(cè)試數(shù)據(jù)的處理、顯示及儀器軟面板的控制,可以利用虛擬儀器技術(shù)實(shí)現(xiàn)。基于FPGA器件的測(cè)控系統(tǒng)包括數(shù)據(jù)采集與輸出控制單元、FPGA單元和DSP單元,3個(gè)單元均有可重構(gòu)功能,并接受主控制器單元的控制?;竟δ軌K是指作為計(jì)算機(jī)系統(tǒng)通用的不可或缺的電源、系統(tǒng)監(jiān)控模塊及存儲(chǔ)器模塊。
2.2.1 可重構(gòu)數(shù)據(jù)采集與輸出控制單元
該單元作為RMS的前向、后向通道與被測(cè)控對(duì)象直接相連。其中的信號(hào)調(diào)理電路可以設(shè)計(jì)成通用形式,并根據(jù)測(cè)控對(duì)象的數(shù)量、量程、模擬/數(shù)字類型、濾波參數(shù)等進(jìn)行重定義和調(diào)整。例如可以采用可重構(gòu)PAD器件直接與模擬測(cè)試對(duì)象相連,并由主控計(jì)算機(jī)完成設(shè)計(jì)、仿真、測(cè)試,通過(guò)主控制器單元實(shí)現(xiàn)重構(gòu)。
2.2.2 可重構(gòu)FPGA單元和可重構(gòu)DSP單元
FPGA單元和DSP單元的功能可以預(yù)先根據(jù)實(shí)際測(cè)試對(duì)象的需要進(jìn)行合理劃分,并在主控計(jì)算機(jī)上以IP核的方式完成設(shè)計(jì)、仿真、測(cè)試和整合的全過(guò)程,最后的配置數(shù)據(jù)流文件預(yù)先存放于相應(yīng)的配置存儲(chǔ)器中(一般為SRAM或Flash存儲(chǔ)器)。這種靜態(tài)重構(gòu)方式適用于對(duì)配置實(shí)時(shí)性要求不太高的一般場(chǎng)合,選用基于SRAM的FPGA器件和通用DSP即可。如果對(duì)配置切換的實(shí)時(shí)性要求較高,則可以選用特定的適于動(dòng)態(tài)配置的FPGA器件,但成本要高昂得多。
2.2.3 可重構(gòu)主控制器
主控制器單元是實(shí)現(xiàn)可重構(gòu)功能的關(guān)鍵部分,它既是測(cè)控系統(tǒng)與主控計(jì)算機(jī)數(shù)據(jù)傳遞的通道,又是數(shù)據(jù)采集與輸出控制單元、FPGA單元和DSP單元的控制中樞。在系統(tǒng)重構(gòu)模式下,它接收主控計(jì)算機(jī)的重構(gòu)指令和數(shù)據(jù),對(duì)FPGA和DSP的配置存儲(chǔ)器進(jìn)行在線編程;在正常測(cè)控模式下,主控制器從FPGA和DSP獲得采集和處理的數(shù)據(jù),并送主控計(jì)算機(jī)處理。
主控制器的設(shè)計(jì)可以根據(jù)系統(tǒng)規(guī)模合理選擇,可以采用通用MCU(如51系列單片機(jī))、嵌入式SoC(如ARM);也可利用FPGA器件實(shí)現(xiàn),例如選用A1tera公司的Nios軟處理器核基于SOPC方法進(jìn)行設(shè)計(jì)。
2.2.4 通信結(jié)構(gòu)
RMS通信結(jié)構(gòu)的選擇對(duì)系統(tǒng)的工作速度、實(shí)時(shí)性以及成本來(lái)說(shuō)至關(guān)重要。
從通用性角度考慮,RMS的通信結(jié)構(gòu)可以根據(jù)系統(tǒng)規(guī)模的需要選擇不同的形式。大型測(cè)控系統(tǒng)可以選用專用測(cè)控總線(如GPIB、CPI、CPCI等),以標(biāo)準(zhǔn)化、模塊化插卡形式與主控計(jì)算機(jī)相連;小型系統(tǒng)則可以根據(jù)需要選用通用總線(如RS232、UART、USB、CAN總線),有選擇地添加可編程I/O口、ZigBee無(wú)線通信接口、TCP/IP協(xié)議、以太網(wǎng)接口等通信、網(wǎng)絡(luò)擴(kuò)展接口,以滿足無(wú)線通信和網(wǎng)絡(luò)測(cè)控功能擴(kuò)展的需要。不論規(guī)模大小,接口類型各異,都可用IP模塊的形式進(jìn)行設(shè)計(jì)并配置到FPGA器件上,以滿足不同應(yīng)用需要。
值得注意的是,測(cè)控系統(tǒng)的通信結(jié)構(gòu)設(shè)計(jì)不僅要包括系統(tǒng)總線的設(shè)計(jì),還包括FPGA片內(nèi)通信結(jié)構(gòu)的設(shè)計(jì)。典型的可重構(gòu)FPGA片內(nèi)通信結(jié)構(gòu)通常有片上總線和片上網(wǎng)絡(luò)兩種策略。片上網(wǎng)絡(luò)結(jié)構(gòu)雖能較好地體現(xiàn)結(jié)構(gòu)參數(shù)要求,但面積花費(fèi)巨大;而片上總線結(jié)構(gòu)憑借靈活性高、可延展、設(shè)計(jì)開(kāi)銷小、帶寬要求較低、時(shí)延較短等優(yōu)點(diǎn),成為RMS的首選??紤]到FPGA的配置需要,在通信模塊、主控制器模塊和FPGA器件內(nèi)都應(yīng)設(shè)計(jì)相應(yīng)的JTAG接口,以滿足數(shù)據(jù)流配置和在線測(cè)試的需要。
2.2.5 軟件重構(gòu)
軟件重構(gòu)是作為軟硬件協(xié)同設(shè)計(jì)實(shí)現(xiàn)的測(cè)控系統(tǒng)重構(gòu)的必要內(nèi)容。傳統(tǒng)的測(cè)控軟件常常是針對(duì)具體的測(cè)控、對(duì)象和硬件資源設(shè)計(jì)的,從而限制了不同型號(hào)、不同廠家、不同硬件接口的測(cè)控器件的使用。為實(shí)現(xiàn)測(cè)控系統(tǒng)的軟件重構(gòu),應(yīng)打破傳統(tǒng)測(cè)控軟件的設(shè)計(jì)思路,采用“基于程序框架和可復(fù)用構(gòu)件”的軟件復(fù)用思路”。如圖2所示,將測(cè)控軟件劃分為測(cè)控軟件平臺(tái)和測(cè)控驅(qū)動(dòng)程序兩部分,其間通過(guò)軟件平臺(tái)提供的軟件接口來(lái)實(shí)現(xiàn)動(dòng)態(tài)鏈接。測(cè)控軟件平臺(tái)主要實(shí)現(xiàn)主控計(jì)算機(jī)功能的控制,以及主控計(jì)算機(jī)與測(cè)控系統(tǒng)的驅(qū)動(dòng)程序之間的數(shù)據(jù)通信。
評(píng)論