FPGA芯片在高速數(shù)據(jù)采集緩存系統(tǒng)中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:給出了以FPGA為核心邏輯控制模塊的高性能數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)方法,并在QuartusII8.0集成環(huán)境中進(jìn)行軟件設(shè)計(jì)和系統(tǒng)仿真,最后給出了新型緩存系統(tǒng)中主要功能模塊的仿真圖形。
關(guān)鍵詞:FPGA;高速;數(shù)據(jù)采集;緩存
0 引言
在高速數(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)買(mǎi)所需的知識(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的10端口多,且可以自由編程、支配、定義其功能,同時(shí)配以verilogHDL語(yǔ)言以及芯片自帶的可定制模塊,即可進(jìn)行軟件設(shè)計(jì)。FPGA的最大優(yōu)點(diǎn)是可在線(xià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)以高速FPCA為核心邏輯控制模塊,并與高速ADC和DSP相連接。其系統(tǒng)基本架構(gòu)如圖1所示。
圖l中的FPGA可用作數(shù)字接收機(jī)的預(yù)處理模塊,該器件集成有PPL倍頻、ADC控制接口、FIFO及其管理、SPI接口、DSP總線(xiàn)接口、狀態(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控制串行接口為通用三線(xiàn)串口,SPI總線(xiàn)接口實(shí)際上是一個(gè)串并轉(zhuǎn)換器,可用于控制本振。本系統(tǒng)的DSP數(shù)據(jù)總線(xiàn)為
64位寬度,地址為32位。
由于雷達(dá)信號(hào)接收機(jī)中的信號(hào)處理量大,信號(hào)復(fù)雜,因此,通過(guò)基于高速大容量FPGA芯片的實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)可以很好的滿(mǎn)足對(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,故可滿(mǎn)足設(shè)計(jì)要求。AT84AD001的最高采樣率為1000MHz,也可以滿(mǎn)足系統(tǒng)要求。此外,AT84AD00l的模擬輸入、時(shí)鐘輸入和輸出全部采用差分方式。設(shè)采樣時(shí)鐘頻率fsw為500 MHz,內(nèi)部提供了1:l/l:2降速率邏輯,其輸出A、B、C、D四路的數(shù)據(jù)速率分別為fsw/2,數(shù)據(jù)寬度為8位,電平為差分LVDS,數(shù)據(jù)寬度為2x8=16位,但是,由于速率已經(jīng)是250MSPS,故可以直接送給FPGA處理,而不需要再進(jìn)行專(zhuān)門(mén)的降速率處理。
StratixII系列FPGA是Altera公司具有全新構(gòu)架的高密度產(chǎn)品。它采用1.2V電壓、90nm及全銅層SRAM工藝,是采用自適應(yīng)構(gòu)架的FPGA。與第一代Stratix相比,StratixII器件的邏輯密度是前者的2倍,速度也快了50%,在無(wú)線(xiàn)通信、高速數(shù)字信號(hào)處理和軍事雷達(dá)等領(lǐng)域都有廣泛的應(yīng)用前景。本設(shè)計(jì)采用其中的EP2S90系列,該系列由三種不同大小的集成RAM塊組成,包括512 bit的M512塊、4Kbit的M4K塊以及512 Kbit的M-RAM塊。其中最大容量的M-RAM塊就有4塊,基于這三種塊的RAM單元最多能達(dá)到9 Mbits的容量,因此,StratixII系列FPGA是那些對(duì)存儲(chǔ)量要求很高的應(yīng)用的理想選擇。
3 系統(tǒng)的實(shí)現(xiàn)及仿真
3.1 ADC接口及控制模塊
本系統(tǒng)選用AT84AD001B芯片,設(shè)計(jì)模擬輸入的工作方式為I通道與Q通道有相互獨(dú)立的兩路輸入,時(shí)鐘輸入的工作方式為I通道和Q通道有各自獨(dú)立的時(shí)鐘,并分別在上升沿時(shí)采樣。
AT84AD001B有MODE、CLK、LDN及DATA等4個(gè)引腳用于三線(xiàn)串口配置。其中,MODE為高時(shí),啟用三線(xiàn)串口,設(shè)計(jì)時(shí)可將此引腳接入FPGA中,以便在FPGA中可以根據(jù)自身需要進(jìn)行MODE的置O與置l的配置:CLK為三線(xiàn)串口的配置時(shí)鐘輸入引腳,該引腳允許輸入的最大時(shí)鐘頻率是50 MHz,本設(shè)計(jì)的輸入時(shí)鐘為20 MHz,可以符合要求;LDN為通過(guò)三線(xiàn)串口配置寄存器的開(kāi)始和結(jié)束信號(hào)的輸入引腳;DATA為三線(xiàn)串口的寄存器配置數(shù)據(jù)輸入引腳。
每個(gè)三線(xiàn)串口寄存器所需輸入的配置數(shù)據(jù)包括3 bit的寄存器地址和16 bit送入該寄存器的數(shù)據(jù),總共需配置8個(gè)寄存器,其相關(guān)時(shí)序圖如3所示。
根據(jù)以上高速采樣相關(guān)的三線(xiàn)串口組成情況,可以得到如圖4所示的AD配置電路。
圖4中各管腳的定義如下:
clk_20m:三線(xiàn)串口時(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è)64bitx32768-words的大容量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總線(xiàn)相連接。
系統(tǒng)的其他配置以及外圍接口由于不是本文的重點(diǎn),在此省略不講。
在Quartus平臺(tái)下進(jìn)行時(shí)鐘分配、三線(xiàn)串口配置等相關(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ì)更大。