FPGA芯片在高速數(shù)據(jù)采集緩存系統(tǒng)中的應(yīng)用
孫杰,,馮小平 西安電子科技大學(xué)204教研室
摘要: 在高速數(shù)據(jù)采集方面,,F(xiàn)PGA有單片機(jī)和DSP無(wú)法比擬的優(yōu)勢(shì)。FPGA的時(shí)鐘頻率高,,內(nèi)部時(shí)延小,全部控制邏輯都可由硬件完成,,而且速度快,,組成形式靈活,并可以集成外圍控制,、譯碼和接口電路,。更最主要的是,F(xiàn)PGA可以采用IP內(nèi)核技術(shù),,以通過(guò)繼承,、共享或購(gòu)買所需的知識(shí)產(chǎn)權(quán)內(nèi)核提高其開(kāi)發(fā)進(jìn)度,。而利用EDA工具進(jìn)行設(shè)計(jì)、綜合和驗(yàn)證,,則可加速設(shè)計(jì)過(guò)程,,降低開(kāi)發(fā)風(fēng)險(xiǎn),縮短了開(kāi)發(fā)周期,,效率高而且更能適應(yīng)市場(chǎng),。本數(shù)據(jù)采集系統(tǒng)就是基于FPGA技術(shù)設(shè)計(jì)的多路模擬量、數(shù)字量采集與處理系統(tǒng),。FPGA的IO端口多,,且可以自由編程、支配,、定義其功能,,同時(shí)配以verilogHDL語(yǔ)言以及芯片自帶的可定制模塊,即可進(jìn)行軟件設(shè)計(jì),。FPGA的最大優(yōu)點(diǎn)是可在線編程,。此外,基于FPGA設(shè)計(jì)的數(shù)據(jù)采集器還可以方便地進(jìn)行遠(yuǎn)程功能擴(kuò)展,,以適應(yīng)不同應(yīng)用場(chǎng)合的需要,。
Abstract:
Key words :
在高速數(shù)據(jù)采集方面,F(xiàn)PGA有單片機(jī)和DSP無(wú)法比擬的優(yōu)勢(shì),。FPGA的時(shí)鐘頻率高,,內(nèi)部時(shí)延小,全部控制邏輯都可由硬件完成,,而且速度快,,組成形式靈活,并可以集成外圍控制,、譯碼和接口電路,。更最主要的是,F(xiàn)PGA可以采用IP內(nèi)核技術(shù),,以通過(guò)繼承,、共享或購(gòu)買所需的知識(shí)產(chǎn)權(quán)內(nèi)核提高其開(kāi)發(fā)進(jìn)度。而利用EDA工具進(jìn)行設(shè)計(jì),、綜合和驗(yàn)證,,則可加速設(shè)計(jì)過(guò)程,降低開(kāi)發(fā)風(fēng)險(xiǎn),,縮短了開(kāi)發(fā)周期,,效率高而且更能適應(yīng)市場(chǎng)。本數(shù)據(jù)采集系統(tǒng)就是基于FPGA技術(shù)設(shè)計(jì)的多路模擬量、數(shù)字量采集與處理系統(tǒng),。FPGA的IO端口多,,且可以自由編程、支配,、定義其功能,,同時(shí)配以verilogHDL語(yǔ)言以及芯片自帶的可定制模塊,即可進(jìn)行軟件設(shè)計(jì),。FPGA的最大優(yōu)點(diǎn)是可在線編程,。此外,基于FPGA設(shè)計(jì)的數(shù)據(jù)采集器還可以方便地進(jìn)行遠(yuǎn)程功能擴(kuò)展,,以適應(yīng)不同應(yīng)用場(chǎng)合的需要,。
1 系統(tǒng)基本構(gòu)架
本文所設(shè)計(jì)的高速數(shù)據(jù)采集系統(tǒng)是某雷達(dá)信號(hào)處理系統(tǒng)的一部分,可用于雷達(dá)信號(hào)的預(yù)處理以及采集,、緩存,。本系統(tǒng)以高速FPGA為核心邏輯控制模塊,并與高速ADC和DSP相連接,。其系統(tǒng)基本架構(gòu)如圖1所示,。
圖1中的FPGA可用作數(shù)字接收機(jī)的預(yù)處理模塊,該器件集成有PPL倍頻,、ADC控制接口,、FIFO及其管理、SPI接口,、DSP總線接口,、狀態(tài)和自檢模塊等,。FPGA的內(nèi)部結(jié)構(gòu)功能框圖如圖2所示,。
圖2中的中斷產(chǎn)生模塊用于產(chǎn)生周期性中斷,利用視頻包絡(luò)和100 MHz時(shí)鐘可形成50 MHz的DMA同步傳送時(shí)鐘,,然后通過(guò)外部口DMA方式將采樣數(shù)據(jù)傳送到DSP,。ADC控制串行接口為通用三線串口,SPI總線接口實(shí)際上是一個(gè)串并轉(zhuǎn)換器,,可用于控制本振,。本系統(tǒng)的DSP數(shù)據(jù)總線為64位寬度,地址為32位,。
由于雷達(dá)信號(hào)接收機(jī)中的信號(hào)處理量大,,信號(hào)復(fù)雜,因此,,通過(guò)基于高速大容量FPGA芯片的實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)可以很好的滿足對(duì)信號(hào)預(yù)處理的需要,。
2 芯片的選取
ADC是數(shù)據(jù)采集系統(tǒng)的核心,其性能指標(biāo)往往是決定數(shù)據(jù)采集系統(tǒng)性能最關(guān)鍵的因素。本系統(tǒng)的中頻頻率為1125 MHz,,帶寬BW為250 MHz,。ADC選用ATMEL公司的高速采樣芯片AT84AD001本系統(tǒng)采用帶通采樣方式,其采樣頻率低于輸人中頻頻率,。但是ADC的輸入帶寬必須大于中頻頻率加二分之一帶寬,,AT84AD001的模擬輸入帶寬為1500 MHz,高于1125+125=1250 MHz,,故可滿足設(shè)計(jì)要求,。AT84AD001的最高采樣率為1000MHz,也可以滿足系統(tǒng)要求,。此外,,AT84AD001的模擬輸入、時(shí)鐘輸入和輸出全部采用差分方式,。設(shè)采樣時(shí)鐘頻率fsw為500 MHz,,內(nèi)部提供了1:1/1:2降速率邏輯,其輸出A,、B,、C、D四路的數(shù)據(jù)速率分別為fsw/2,,數(shù)據(jù)寬度為8位,,電平為差分LVDS,數(shù)據(jù)寬度為2×8=16位,,但是,,由于速率已經(jīng)是250MSPS,故可以直接送給FPGA處理,,而不需要再進(jìn)行專門(mén)的降速率處理,。
StratixII系列FPGA是Altera公司具有全新構(gòu)架的高密度產(chǎn)品。它采用1.2V電壓,、90nm及全銅層SRAM工藝,,是采用自適應(yīng)構(gòu)架的FPGA。與第一代Stratix相比,,StratixII器件的邏輯密度是前者的2倍,,速度也快了50%,在無(wú)線通信,、高速數(shù)字信號(hào)處理和軍事雷達(dá)等領(lǐng)域都有廣泛的應(yīng)用前景,。本設(shè)計(jì)采用其中的EP2S90系列,該系列由三種不同大小的集成RAM塊組成,,包括512 bit的M512塊,、4 Kbit的M4K塊以及512 Kbit的M-RAM塊),。其中最大容量的M-RAM塊就有4塊,基于這三種塊的RAM單元最多能達(dá)到9 Mbits的容量,,因此,,StratixII系列FPGA是那些對(duì)存儲(chǔ)量要求很高的應(yīng)用的理想選擇。
3 系統(tǒng)的實(shí)現(xiàn)及仿真
ADC接口及控制模塊
本系統(tǒng)選用AT84AD001B芯片,,設(shè)計(jì)模擬輸入的工作方式為I通道與Q通道有相互獨(dú)立的兩路輸入,,時(shí)鐘輸入的丁作方式為I通道和O通道有各自獨(dú)立的時(shí)鐘,并分別在上升沿時(shí)采樣,。
AT84AD001B有MODE,、CLK、LDN及DATA等4個(gè)引腳用于三線串口配置,。其中,,MODE為高時(shí),啟用三線串口,,設(shè)計(jì)時(shí)可將此引腳接入FPGA中,,以便在FPGA中可以根據(jù)自身需要進(jìn)行MODE的置0與置1的配置;CLK為三線串口的配置時(shí)鐘輸入引腳,,該引腳允許輸入的最大時(shí)鐘頻率是50 MHz,,本設(shè)計(jì)的輸入時(shí)鐘為20 MHz,可以符合要求,;LDN為通過(guò)三線串口配置寄存器的開(kāi)始和結(jié)束信號(hào)的輸入引腳,;DATA為三線串口的寄存器配置數(shù)據(jù)輸入引腳。
每個(gè)三線串口寄存器所需輸人的配置數(shù)據(jù)包括3 bit的寄存器地址和16 bit送人該寄存器的數(shù)據(jù),,總共需配置8個(gè)寄存器,,其相關(guān)時(shí)序圖如3所示。
根據(jù)以上高速采樣相關(guān)的三線串口組成情況,,可以得到如圖4所示的AD配置電路,。
圖4中各管腳的定義如下:
clk_20m:三線串口時(shí)鐘輸入;
rst:復(fù)位,;
ad_mode:配置模式,;
s_ldn:標(biāo)志信號(hào)腳,;
s_data:寄存器數(shù)據(jù)輸人,;
其仿真結(jié)果如圖5所示,由圖5可見(jiàn),,在ldn上升沿時(shí)寄存器數(shù)據(jù)開(kāi)始輸入,,每20個(gè)周期讀入一個(gè)寄存器數(shù)據(jù)。由此結(jié)果,,即可知配置正確,。
3.2 大容量FIFO數(shù)據(jù)緩存模塊
由于采集的雷達(dá)信號(hào)數(shù)據(jù)量很大,,所以,本系統(tǒng)通過(guò)Quartus中軟件自帶的宏功能MegaWizardPlag_in Manager來(lái)產(chǎn)生一個(gè)64 bit×32768words的大容量FIFO,,從而有效地利用了這片F(xiàn)PGA的存儲(chǔ)資源,。其產(chǎn)生的FIFO模塊如圖6所示。
圖6中,,64位數(shù)據(jù)由ADC的高速數(shù)據(jù)采樣提供,,ADC的I、Q兩路數(shù)據(jù)均為16位寬,。為了獲得更高的速度以及更大的數(shù)據(jù)緩存量,,在數(shù)據(jù)進(jìn)入FIFO之前,可對(duì)ADC的采樣數(shù)據(jù)進(jìn)行數(shù)據(jù)抽取和拼接,,以將兩組32位寬的IQ數(shù)據(jù)拼接成64位寬數(shù)據(jù),,然后一次送入FIFO中進(jìn)行緩存。FIFO的wrreq寫(xiě)使能信號(hào)由前面提到的視頻檢測(cè)脈沖以及DSP的控制信號(hào)共同提供,,其中寫(xiě)時(shí)鐘wrclk與ADC數(shù)據(jù)拼接時(shí)鐘同步,,讀時(shí)鐘rdclk與DSP時(shí)鐘同步,F(xiàn)IFO數(shù)據(jù)出口與DSP總線相連接,。
系統(tǒng)的其他配置以及外圍接口由于不是本文的重點(diǎn),,在此省略不講。
在Ouartus平臺(tái)下進(jìn)行時(shí)鐘分配,、三線串口配置等相關(guān)處理,,以及信號(hào)處理模塊綜合后,所得到的系統(tǒng)資源使用情況如圖7所示,。然后再利用VisualDSP++5.0平臺(tái)讀取采樣信號(hào)數(shù)據(jù),,并用plot進(jìn)行繪圖,即可得到如圖8所示的高速采樣結(jié)果圖,。
4 結(jié)束語(yǔ)
本文是在參與實(shí)際項(xiàng)目的基礎(chǔ)上完成的,,本系統(tǒng)目前已經(jīng)應(yīng)用于某雷達(dá)信號(hào)處理機(jī)中。隨著高速器件的開(kāi)發(fā)和利用,,數(shù)字接收機(jī)技術(shù)的迅速發(fā)展,,其信號(hào)采集與處理的速度必將更快,處理質(zhì)量會(huì)更好,,處理數(shù)據(jù)量也會(huì)更大,。
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。