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