基于USB通信的FPGA高速數(shù)據(jù)采集系統(tǒng)
摘要:為了解決高速數(shù)據(jù)采集以及數(shù)據(jù)傳輸問(wèn)題,設(shè)計(jì)了基于USB通信的FPGA高速數(shù)據(jù)采集系統(tǒng)。方案以FPGA為控制核心,實(shí)現(xiàn)A/D控制、數(shù)據(jù)緩存雙口RAM和控制CY7C68013A三個(gè)功能。系統(tǒng)采用Verilog HDL語(yǔ)言,通過(guò)ISE軟件編程控制多個(gè)AD7356同時(shí)進(jìn)行數(shù)據(jù)采集,將采集所得數(shù)據(jù)存入雙口RAM,控制CY7C68013A將數(shù)據(jù)通過(guò)USB總線上傳到PC機(jī)。系統(tǒng)進(jìn)行實(shí)測(cè)實(shí)驗(yàn)表明,在CY7C68013A設(shè)定為16.7Mb/s的傳輸速率下,系統(tǒng)工作正常。
關(guān)鍵詞:USB;FPGA;高速數(shù)據(jù)采集;CY7C68013A;雙口RAM
0 引言
現(xiàn)代安全防衛(wèi)系統(tǒng)中及時(shí)發(fā)現(xiàn)和定位入侵行為具有重要的現(xiàn)實(shí)意義。傳統(tǒng)的安全防衛(wèi)系統(tǒng)存在監(jiān)測(cè)距離較短、抗電磁干擾能力弱、維護(hù)成本高等缺點(diǎn)。分布式光纖振動(dòng)傳感器能測(cè)量整個(gè)光纖長(zhǎng)度上隨時(shí)間變化的振動(dòng)信息,具有檢測(cè)距離遠(yuǎn)、抗電磁干擾能力強(qiáng)、安裝后易維護(hù)等優(yōu)點(diǎn),已成為長(zhǎng)距離管道監(jiān)測(cè)和安全防衛(wèi)領(lǐng)域最具有應(yīng)用前景的技術(shù)之一。
本系統(tǒng)中需要對(duì)多路信號(hào)進(jìn)行高速、高精度采集,然后將數(shù)據(jù)上傳到PC機(jī)中進(jìn)行數(shù)據(jù)處理。所以上位機(jī)(PC機(jī))和下位機(jī)(FPGA)如何高效、快速、方便地?cái)?shù)據(jù)傳輸是本系統(tǒng)中的重要問(wèn)題。目前常用的傳輸方法為RS 232串口通信方式,通信協(xié)議簡(jiǎn)單,在交互數(shù)據(jù)量不大,傳輸速度要求不高的情況下使用非常方便。但是其通常傳輸速率在幾十Kb/s,在高速實(shí)時(shí)傳輸系統(tǒng)中無(wú)法達(dá)到要求。
本文研究基于USB接口的上、下位機(jī)通信方法,來(lái)解決數(shù)據(jù)的實(shí)時(shí)交換問(wèn)題。通用串行總線(UniversalSerial Bus,USB)是計(jì)算機(jī)上的一種新型接口技術(shù),它使得計(jì)算機(jī)和外部設(shè)備的連接十分方便。USB接口已經(jīng)和串口、并口一樣,成為PC機(jī)的標(biāo)準(zhǔn)接口。目前最新的USB 2.0接口的最高傳輸可以達(dá)到480 Mb/s,遠(yuǎn)高于傳統(tǒng)的串、并口連接速度,可以滿足絕大多數(shù)情況的大數(shù)據(jù)量實(shí)時(shí)交換的需求。除此之外,USB接口還支持插拔,極大地方便了系統(tǒng)的開發(fā)調(diào)試和實(shí)際使用。
1 主要器件選擇
本系統(tǒng)為分布式光纖振動(dòng)傳感器的數(shù)據(jù)采集和傳輸系統(tǒng),需要實(shí)現(xiàn)的主要功能有光電轉(zhuǎn)換、A/D轉(zhuǎn)換和USB通信。系統(tǒng)的總體結(jié)構(gòu)圖如圖1所示,可以看出系統(tǒng)以FPGA為處理核心,包含光電轉(zhuǎn)換、A/D轉(zhuǎn)換和USB通信等外圍功能模塊。
由于光纖微擾動(dòng)傳感器的傳感采用的是光纖,所以首先需要將信號(hào)經(jīng)過(guò)光電轉(zhuǎn)換和A/D轉(zhuǎn)換,將信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。然后,在FPGA中進(jìn)行數(shù)據(jù)緩存,并對(duì)多路信號(hào)進(jìn)行排序后通過(guò)USB總線將存儲(chǔ)器中數(shù)據(jù)上傳到PC機(jī)中。
1.1 光電轉(zhuǎn)換和A/D轉(zhuǎn)換器件
光電轉(zhuǎn)換部分采用的是PINFET,PIN管反偏高、輸出阻抗與FET的高輸入阻抗得到很好匹配,同時(shí)減少了外部干擾和雜散電容,大大降低了熱噪聲,這對(duì)低噪聲器件是非常有益的。比起目前較通用的PIN器件來(lái)說(shuō),PINFET不需要復(fù)雜的后續(xù)電路,而且其模塊化設(shè)計(jì),使輸出噪聲較小,輸出電壓較大,為后續(xù)A/D轉(zhuǎn)換器的采樣電壓提供較好的工作范圍。
A/D轉(zhuǎn)換模塊采用的是12位雙通道差分輸入SAR型AD7356,結(jié)構(gòu)簡(jiǎn)單實(shí)用。AD7356為12位雙通道差分輸入SAR型AD。該AD為雙通道型,所以2路信號(hào)的轉(zhuǎn)換是同時(shí)進(jìn)行,減小了因轉(zhuǎn)換帶來(lái)的時(shí)間延遲。而且AD7356的采樣頻率由輸入時(shí)鐘信號(hào)決定,因此可以很方便的改變系統(tǒng)的采樣頻率,滿足系統(tǒng)1~5 MHz的采樣速率要求。另外該AD采用單2.5 V供電,可以與FPGA共用電源,使系統(tǒng)的供電系統(tǒng)簡(jiǎn)潔。
1.2 FPGA
作為高速數(shù)據(jù)采集系統(tǒng)數(shù)據(jù)緩存的FPGA,由于系統(tǒng)需要對(duì)16路信號(hào)進(jìn)行高速實(shí)時(shí)緩存,所以FPGA的內(nèi)部存儲(chǔ)空間需要比較大。另外,系統(tǒng)由于下一步需要對(duì)于信號(hào)做初步處理以減輕PC的運(yùn)算量,提高處理的實(shí)時(shí)性,所以采用的是XC4VSX25。XC4VSX25的內(nèi)部塊RAM高達(dá)2 304 KB,分布式RAM高達(dá)160 KB,完全滿足系統(tǒng)需求。而且XC4VSX25中含有128個(gè)XtremeDSP Slice,而每個(gè)XtremeDSP Slice包含一個(gè)18×18位帶補(bǔ)數(shù)功能的有符號(hào)乘法器、加法器邏輯和一個(gè)48位累加器,每個(gè)乘法器或累加器都能獨(dú)立使用。XtremeDSP Slice可以通過(guò)IP核的形式方便的調(diào)用,在XC4VSX25中可以方便的將乘法器和累加器進(jìn)行組合,構(gòu)成所需要的數(shù)據(jù)處理結(jié)構(gòu),為下一步信號(hào)處理提供了基礎(chǔ)。
評(píng)論