基于ADC08D500的FPGA數(shù)據(jù)采集系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
當(dāng)前,越來越多的通信系統(tǒng)都工作在很寬的頻帶上。而且對(duì)于保密和抗干擾有很高要求的某些無線通信更是如此,隨著信號(hào)處理器件的處理速度越來越快,數(shù)據(jù)采樣的速率也變得越來越高,在某些電子信息領(lǐng)域,還要求處理的頻帶要盡可能的寬、動(dòng)態(tài)范圍要盡可能的大,以便得到更寬的頻率搜索范圍,從而獲取更多的信息量。
因此,通信系統(tǒng)對(duì)信號(hào)處理前端的A/D采樣電路也提出了更高的要求,即希望A/D轉(zhuǎn)換速度快而且釆樣精度高,以便滿足系統(tǒng)處理要求?,F(xiàn)場(chǎng)可編程門陣列(Field-ProgrammableGateArray,FPGA)的出現(xiàn),已經(jīng)顯著改變了數(shù)字系統(tǒng)的設(shè)計(jì)方式,也使數(shù)字系統(tǒng)設(shè)計(jì)具有高度的靈活性,因此FPGA的應(yīng)用越來越廣泛,這也使高轉(zhuǎn)換速率的ADC器件在FP-GA的應(yīng)用系統(tǒng)中能發(fā)揮出最好的性能。本系統(tǒng)設(shè)計(jì)就是基于以FPGA為核心芯片的高速數(shù)據(jù)采集系統(tǒng)。它選用美國(guó)國(guó)家半導(dǎo)體公司的高速A/D轉(zhuǎn)換芯片ADC08D500來實(shí)現(xiàn)高達(dá)500MHz的釆樣速率,同時(shí)利用FPGA對(duì)AD模數(shù)芯片的控制實(shí)現(xiàn)數(shù)據(jù)采集,也可以選擇將數(shù)據(jù)緩存起來以備后續(xù)處理,還可以選擇通過高速PCI接口來實(shí)時(shí)輸出數(shù)據(jù)。
1 基于FPGA的高速數(shù)據(jù)釆集系統(tǒng)的結(jié)構(gòu)原理
基于FPGA的高速數(shù)據(jù)釆集系統(tǒng)的設(shè)計(jì)原理框圖如圖1所示。
圖中的輸入信號(hào)為中頻模擬信號(hào),該信號(hào)經(jīng)差分處理后可連接到高速A/D轉(zhuǎn)換芯片ADC08D500的輸入端。ADC08D500在500MHz釆樣時(shí)鐘下,對(duì)模擬信號(hào)進(jìn)行數(shù)字化處理,然后將轉(zhuǎn)換后的二進(jìn)制數(shù)字?jǐn)?shù)據(jù)輸出到FPGA中,再由FPGA對(duì)ADC輸出的數(shù)字?jǐn)?shù)據(jù)進(jìn)行實(shí)時(shí)處理或者先將數(shù)據(jù)緩存,最后通過高速接口PCI輸出顯示或者直接輸出到高速緩存存儲(chǔ)器中。
NS公司的ADC08D500為雙通道8位模數(shù)轉(zhuǎn)換器,其采樣率為500MSP/s,因此,對(duì)輸入的模擬信號(hào)必須限制在250MHz頻率下,一般中頻信號(hào)都低于100MHz以下,因而可以滿足本設(shè)計(jì)的要求。
FPGA具有電路設(shè)計(jì)靈活,硬件資源豐富等特點(diǎn),使用FPGA不僅可以控制A/D轉(zhuǎn)換器進(jìn)行高速采樣,而且可以使用其內(nèi)部的塊RAM存儲(chǔ)資源作為高速數(shù)據(jù)的緩存,同時(shí)也可對(duì)采集到的數(shù)據(jù)進(jìn)行實(shí)時(shí)處理。
2 ADC08D500芯片的內(nèi)部結(jié)構(gòu)原理
ADC08D500是差分輸入、采樣率達(dá)500MSP/s的雙通道模擬/數(shù)字轉(zhuǎn)換器。該A/D轉(zhuǎn)換器的特點(diǎn)在于其高采樣性能和低功耗,功耗可低至1.4W以下,因此,在設(shè)計(jì)電路時(shí),無需再為該A/D轉(zhuǎn)換器加設(shè)散熱器,這樣不僅可以節(jié)省電路板的板面空間,而且還可降低系統(tǒng)成本,而且提高系統(tǒng)的可靠性。
ADC08D500芯片的內(nèi)部結(jié)構(gòu)框圖如圖2所示,由圖2可見,該器件主要由輸入多路模擬開關(guān)、采樣保持電路(S/H)、8位ADC和1:2分離器/鎖存器四部分組成。器件包含兩路相同的通道,控制邏輯可由普通方式或擴(kuò)展方式進(jìn)行配置,以對(duì)整個(gè)芯片進(jìn)行控制。其中VINI﹢、VINI-與VINQ﹢、VINQ-是兩路差分輸入端,CLK+,CLK一是差分采樣時(shí)鐘輸入端,采用差分輸入可以有效消除漂移影響;每路轉(zhuǎn)換器都有一個(gè)L2的信號(hào)分離器,這使得數(shù)據(jù)在總線上的輸出頻率總是采樣速率的一半。具體來說,在T時(shí)刻的采樣值將在之后的T+13Tclk血時(shí)刻在DI或者DQ上輸出,而T+Tclk時(shí)刻的采樣值將在T+14Tclk時(shí)刻在Did或者DQd上輸出;以此類推,采樣數(shù)據(jù)將在時(shí)間上交錯(cuò)的出現(xiàn)在2條數(shù)據(jù)線DI(DQ)和Did(DQd)上,因此,每個(gè)輸出數(shù)據(jù)頻率其實(shí)只是采樣頻率的一半。
本設(shè)計(jì)的輸出模式有二種,分別為單邊數(shù)據(jù)率模式和雙邊數(shù)據(jù)率模式。在單邊數(shù)據(jù)率模式下,輸出數(shù)據(jù)和輸出時(shí)鐘的頻率相同,外部處理器可以在輸出時(shí)鐘的上升沿采樣;而在雙邊數(shù)據(jù)率模式下,輸出時(shí)鐘的頻率是輸出數(shù)據(jù)速率的一半,也即外部處理器必須在輸出時(shí)鐘的上升和下降沿都采樣,這樣才能采集完整。采用雙邊數(shù)據(jù)率工作模式可以降低芯片的輸出時(shí)鐘頻率,有利于保證系統(tǒng)的穩(wěn)定性。
3 Xilinx FPGA芯片介紹
高速采集系統(tǒng)的性能要求主要包括兩點(diǎn):一是高速性,目前高速數(shù)據(jù)采集中所用的A/D轉(zhuǎn)換器已達(dá)到幾十甚至幾百M(fèi)SPS的水平,這就要求采樣數(shù)據(jù)存儲(chǔ)器的速度也要與之匹配,也就是應(yīng)采用高速緩存;二是大容量,其原因是高速數(shù)據(jù)采集會(huì)產(chǎn)生巨大的數(shù)據(jù)流。所以,通常需要海量緩存來存儲(chǔ)采樣數(shù)據(jù)。使用FPGA接收前端高速A/D轉(zhuǎn)換器采集的多通道數(shù)據(jù)。將該數(shù)據(jù)用作數(shù)據(jù)的緩沖和數(shù)字信號(hào)的預(yù)處理是一種比較好的方式。由于FPGA的IO端口的讀寫速度要求與A/D轉(zhuǎn)換器輸出的時(shí)鐘相匹配,因此,在FPGA內(nèi)需要作數(shù)字預(yù)處理時(shí),也由高速的乘法器來幫助完成,這樣,綜合考慮,本設(shè)計(jì)選擇TXilinx公司的性價(jià)比較高的Virtex-5系列FPGA芯片XC5VLX5OT。
Virtex-5是Xilinx公司采用先進(jìn)的65nm三柵極氧化層技術(shù)、突破性的新型ExpressFabric技術(shù)和ASMBL技術(shù)生產(chǎn)的系列產(chǎn)品,該芯片可實(shí)現(xiàn)真正的6輸入LUT,并可將性能提高2個(gè)速度級(jí)別。該芯片的邏輯單元有33萬個(gè),1/0管腳1200個(gè),并有1.25Gb/sLVDS以及增強(qiáng)型器件配置,可支持商用FLASH存儲(chǔ)器,這些都使Virtex-5系列的芯片性價(jià)比大大提高,同時(shí)也降低了器件成本和總體系統(tǒng)成本。
4 FPGA控制的ADC模塊設(shè)計(jì)
本設(shè)計(jì)可在Xilinx公司提供的開發(fā)集成軟件ISE環(huán)境平臺(tái)下,采用VerilogHDL硬件描述語言進(jìn)行控制模塊的軟件編程。編程主要分為兩個(gè)部分:分別是系統(tǒng)復(fù)位時(shí)對(duì)ADC芯片進(jìn)行運(yùn)行模式的控制和復(fù)位后對(duì)ADC芯片的自校準(zhǔn)時(shí)間進(jìn)行控制。圖3所示為FPGA控制ADC的模塊設(shè)計(jì)原理圖。
本設(shè)計(jì)采用FPGA芯片XC5VLX50T來對(duì)ADC08D500進(jìn)行采樣控制,并對(duì)數(shù)據(jù)進(jìn)行實(shí)時(shí)處理,處理后再將數(shù)據(jù)輸出。圖3中,Vin_p、Vin_n和Dclk_p、Dclk_n分別為差分模擬輸入時(shí)鐘和差分采樣時(shí)鐘引腳。FPGA當(dāng)芯片XC5VLX50T在對(duì)ADC08D500控制時(shí),可產(chǎn)生輸入復(fù)位reset信號(hào)來啟動(dòng)控制模塊,當(dāng)reset信號(hào)有效時(shí),可對(duì)ADC08D500芯片進(jìn)行基本的控制方式配置;當(dāng)reset信號(hào)無效時(shí),則控制芯片的上電時(shí)間和自校準(zhǔn)時(shí)間,以保證芯片能以最好的性能運(yùn)行起來。具體可用Verilog HDL語言來進(jìn)行編程,其基本的流程圖如圖4所示。
一些基本的控制可通過ADC的普通模式來設(shè)置,比如自校準(zhǔn)、休眠模式和量程設(shè)置等。此外,ADC08D500還提供有擴(kuò)展控制模式,可借助串行接口來配置芯片內(nèi)部的寄存器,但此擴(kuò)展控制模式不能動(dòng)態(tài)地選擇,而要通過14管腳(ECE)來選擇。本設(shè)計(jì)選擇普通控制方式,主要是對(duì)對(duì)應(yīng)管腳的電平進(jìn)行設(shè)置,包括CAL,CALDLY,FSR,OUTEDGE, OUTV,PD和PDQ等,綜合考慮可以雙邊沿采樣、650mV(峰峰值)、低邊沿SDR非低功耗模式來操作,并用VerilogHDL語言對(duì)其進(jìn)行配置。為了保證采樣精度,同時(shí)考慮到實(shí)際應(yīng)用中的發(fā)熱及環(huán)境變化等因素,可以釆用初始化延時(shí)方法,也可利用芯片本身的自校準(zhǔn)功能來予以解決。
當(dāng)ADC芯片運(yùn)行良好時(shí),就會(huì)持續(xù)不斷的輸出二路8位差分?jǐn)?shù)據(jù)對(duì),分別為Dq_p、Dq_n和Dqd_p、Dqd_n。
5 波形仿真
利用Xilinx公司提供的ChipscopePro軟件工具可以將邏輯分析儀、總線分析器以及有效的I/O小型軟件核等直接插入設(shè)計(jì)中,從而可以査看任何內(nèi)部信號(hào)和節(jié)點(diǎn),信號(hào)線可從編程接口引出并接入PC,采集到的信號(hào)可以直接通過邏輯分析儀進(jìn)行分析,這樣可為設(shè)計(jì)釋放了更多的引腳。
在A/D轉(zhuǎn)換器輸出數(shù)據(jù)的速率達(dá)到250MHz時(shí),可用ChipscopePro進(jìn)行分析。輸入信號(hào)源可以是HP公司生產(chǎn)的8165A任意波形發(fā)生器,A/D的輸出值范圍是0?255,根據(jù)物理意義,其中128即表示零電平。圖5所示是輸入端接地時(shí),從ChipscopePro中直接讀到的DQd端接收的數(shù)據(jù)。從圖5可以看出,其DQd端的數(shù)據(jù)一直保持為128,表示接收數(shù)據(jù)正確。
圖6所示是信號(hào)源產(chǎn)生50MHz正弦波時(shí),DQd端接收到的數(shù)據(jù)。圖中顯示的只是其中一段信號(hào)的采樣數(shù)據(jù),從圖中分析數(shù)據(jù)的遞增和下降趨勢(shì),可見其基本符合正弦波的波形特點(diǎn)。
圖7所示是信號(hào)源產(chǎn)生方波時(shí),DQd端接收到的數(shù)據(jù),從圖中可以看到,低電平采樣值從低電平突變到高電平的間隔非常短,中間僅僅只有一個(gè)數(shù)據(jù)11,然后馬上就過渡到高電平,在高電平處采樣得到的值都在230上下浮動(dòng),基本符合方波的特性。
從以上這三個(gè)波形結(jié)果分析可見,模擬信號(hào)經(jīng)ADC08D500的模數(shù)轉(zhuǎn)換后,F(xiàn)PGA接收的數(shù)據(jù)在DQd端基本正確,從而實(shí)現(xiàn)了高速A/D系統(tǒng)的釆樣,同時(shí)也完成了數(shù)據(jù)采集系統(tǒng)的功能。
6 結(jié)語
本文詳細(xì)介紹了基于FPGA的高速轉(zhuǎn)換芯片ADC08D500在采集系統(tǒng)的應(yīng)用設(shè)計(jì)和編程實(shí)現(xiàn)方法,并對(duì)設(shè)計(jì)的FPGA控制模塊程序進(jìn)行了詳細(xì)的說明,同時(shí)使用Xilinx公司提供的邏輯在線分析儀ChipscopePro進(jìn)行了具體的波形仿真。由于所采用的ADC芯片ADC08D500性能強(qiáng)大,價(jià)格合理,因此,在以FPGA為核心的數(shù)據(jù)釆集系統(tǒng)中不僅可以為其提供很高的釆樣速率,而且,FPGA設(shè)計(jì)的控制模塊設(shè)計(jì)簡(jiǎn)單,可以更好地發(fā)揮高速率模/數(shù)轉(zhuǎn)換器的強(qiáng)勁性能,因而在現(xiàn)代高速數(shù)字釆集系統(tǒng)中具有很好的應(yīng)用前景。