免费色播,亚洲国产欧美国产第一区二区三区,毛片看,日本精品在线观看视频,国产成人精品一区二区免费视频,日本黄色免费网站,一级毛片免费

基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

來源:網(wǎng)絡(luò)

點擊:1347

A+ A-

所屬頻道:新聞中心

關(guān)鍵詞: FPGA,USB2.0,數(shù)據(jù)采集系統(tǒng),

      現(xiàn)代電子偵查技術(shù)要求能夠?qū)ν獠磕M信號進行精確提取和分析,從而對數(shù)據(jù)采集的精度提出了很高的要求,本文提出了一種以FPGA 作為主控制器的高精度500M 數(shù)據(jù)采集系統(tǒng)設(shè)計方法,詳細地闡述了各硬件平臺的具體構(gòu)成。最后利用QUARTUS 內(nèi)部的嵌入式邏輯分析儀(SignalTap ii)可以觀察到被采集到的信號并且對數(shù)據(jù)的有效位數(shù)及性能進行簡略分析。

      0 引言

      隨著數(shù)字通信技術(shù)的逐步發(fā)展,高速數(shù)據(jù)采集系統(tǒng)已經(jīng)逐步取代傳統(tǒng)的數(shù)據(jù)采集系統(tǒng),其廣泛應(yīng)用在眾多場合。新一代可編程邏輯器件FPGA 都擁有較多的IO 端口以及強大的數(shù)據(jù)處理能力,這也為高速高精度數(shù)據(jù)采集系統(tǒng)的研發(fā)提供了基礎(chǔ)條件。

      1 工作原理

      本文設(shè)計的數(shù)據(jù)采集卡硬件原理框圖1 如下所示。

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      如圖1 所示,前端模擬電路將外界的模擬信號轉(zhuǎn)化成為ADC能夠接收到的數(shù)據(jù)格式;高速時鐘電路提供500MHz 的高速時鐘,ADC 在此時鐘作用下,進行ADC 變換。在整個數(shù)據(jù)采集卡中,F(xiàn)PGA 是進行采集控制,以及數(shù)據(jù)接收的核心。FPGA 按照1 :4 的比率對將接收到的500MHz 的LVDS 差分?jǐn)?shù)據(jù)流進行分流和降速。

      數(shù)據(jù)分流之后由于數(shù)據(jù)速率與USB 接口數(shù)據(jù)傳輸速度不同,所以還要進行FIFO 緩沖。FIFO 的寫時鐘與串行收發(fā)器保持同步,當(dāng)FIFO 緩沖器被寫滿之后,由FPGA 讀取FIFO 緩沖器中的數(shù)據(jù),并且將數(shù)據(jù)通過USB 接口芯片傳輸?shù)缴衔粰C中進行顯示或者存儲。

      2 系統(tǒng)設(shè)計

      數(shù)據(jù)采集卡主要包括高速A/D 轉(zhuǎn)換模塊、FPGA 主控模塊和USB 接口電路三個模塊。

      2.1 高速A/D 轉(zhuǎn)換模塊

      ADC 芯片作為模數(shù)轉(zhuǎn)換的核心,設(shè)計采用TI 公司推出的ADS5463,其采用流水線型結(jié)構(gòu),最高采樣速度500MSPS,精度12位,擁有高速差分?jǐn)?shù)字接口LVDS.

      對于高速ADC 采樣電路,模擬信號輸入接口的設(shè)計不僅要保證足夠的傳輸帶寬而且要完成將單端的輸入信號變成差分信號的功能。本設(shè)計使用射頻變壓器將單端輸入轉(zhuǎn)換為差分輸入,并通過TI 公司生產(chǎn)的可級聯(lián)中頻放大器THS9001 芯片實現(xiàn)中頻信號放大的功能。

      在A/D 轉(zhuǎn)換模塊中,采樣始終的質(zhì)量非常重要。在本文的設(shè)計中,采用了鎖相環(huán)芯片CDCM61001 生成采樣時鐘,并利用FPGA內(nèi)部PLL 資源倍頻生成采樣時鐘作為備用的采樣時鐘。本設(shè)計是用25M 的時鐘倍頻20 倍生成500M 以LVPECL 格式的差分電平形式。

      高速A/D 轉(zhuǎn)換模塊的原理圖如圖2 所示:

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      2.2 FPGA 主控模塊

      FPGA 是整個采集模塊的控制核心,其主要的功能是接收數(shù)據(jù),并且對數(shù)據(jù)進行降速、分流以及緩沖,并且將數(shù)據(jù)傳通過USB接口傳輸給上位機。在本文的設(shè)計設(shè)計中,選擇Cyclone II 系列的EP2C35F672C6,它屬于一款中等密度的FPGA,相比較于ASIC低得多的成本在單片機上實現(xiàn)復(fù)雜的數(shù)字系統(tǒng)。

      設(shè)計使用FPGA 的Bank3 和Bank4 接收來自ADS5463 輸出的高速LVDS 數(shù)據(jù),包括DRY(數(shù)據(jù)輸出準(zhǔn)備好)以及OVR(數(shù)據(jù)溢出位)。Bank5 和Bank6 用于USB 接口芯片的控制,其余BANK 留作擴展之用。

      在FPGA 主控模塊中,AD 輸出信號和時鐘信號被傳輸?shù)紽PGA 中的DIFFIO_RX p/n 通道上。其中p 表示正差分通道信號,而n 表示負差分通道信號。在這部分的軟件設(shè)計中,使用altvds模塊接收ADC 的輸出數(shù)字信號、始終信號,并且利用DMUX 對數(shù)據(jù)流進行串行- 并行轉(zhuǎn)換,以方便對輸入信號的后續(xù)操作。

      數(shù)據(jù)流在DMUX 模塊的仿真結(jié)果如圖3 所示。

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      如圖3 所示,Data_in 是一路500MHz 的數(shù)據(jù)流,而dout1,2,3,4 為Data_in 通過DMUX 進行降速和分流之后的結(jié)果。從圖中可以看出,500MHz 的高速數(shù)據(jù)流經(jīng)過DMUX 降速、分流之后的輸出較干凈、平滑,在高速狀態(tài)下,達到這種結(jié)果是比較理想的,對系統(tǒng)設(shè)計上也是很有利的。

      經(jīng)過DMUX 降速之后的數(shù)據(jù)流已經(jīng)達到了FPGA 的處理要求,但是由于FPGA 的處理速度和與上位機相連的USB 接口速率不匹配,為此需要采用FIFO 來進行緩沖。在本文的設(shè)計中,采用兩個容量為4K,寬度為32 位的FIFO 來來作為FPGA 與USB 接口之間的數(shù)據(jù)緩沖。FPGA 接收高速DMUX 降速后的數(shù)據(jù)流,并且寫入到FIFO 中,當(dāng)FIFO 寫滿8K 之后,啟動讀始終,將FIFO 中的數(shù)據(jù)通過USB 接口分批讀取到上位機中。

      2.3 USB 接口電路設(shè)計

      USB 接口的主要功能是將FPGA 緩沖區(qū)中的數(shù)據(jù)讀取到上位機中。在本文的設(shè)計中,USB 接口電路采用CYPRESS 公司CY7C68013A 芯片。CY7C68013A 芯片集成了串行接口引擎來方便讀取FPGA 中的數(shù)據(jù)。芯片采用2MHz 的時鐘信號,同時使用外部EEPROM 存儲固件程序。在USB 接口電路的初始化過程中,首先需要從EEPROM 中讀取固件程序。FPGA 通過USB 接口與上位機進行數(shù)據(jù)傳送的流程圖如圖4 所示。

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      如圖4 所示,EZ-USB FX2 芯片中包含有GPIF 和SlavFIFO 兩種接口方式,可以滿足不同數(shù)據(jù)流速度以及用戶對數(shù)據(jù)處理實時性的要求。在CY7C68013A 芯片中,其接口時鐘與FPGA中的IFCLK 引腳連接,從而在FPGA 中的FIFO 緩沖寫滿時,F(xiàn)PGA可以控制USB 接口電路開始從FIFO 緩沖區(qū)中讀取數(shù)據(jù)。

      USB 接口的主要工作室實現(xiàn)對FIFO 緩沖區(qū)中數(shù)據(jù)的讀取,因此其設(shè)計的邏輯也主要是對FIFO 讀、寫狀態(tài)機的監(jiān)控,其實現(xiàn)的流程如下:在接收到數(shù)據(jù)讀指令之后,分成8 次讀取FIFO中的128 位數(shù)據(jù),并且將這些數(shù)據(jù)一起存放到FPGA 控制寄存器組中;將FPGA 的FIFO 中的數(shù)據(jù)讀出,并且寫入到EP6 端點緩沖區(qū)中。狀態(tài)機先由空閑狀態(tài)進入等待狀態(tài);當(dāng)EP2 不為空時,進入讀狀態(tài)EP2 ;當(dāng)讀命令有效時,那么就進行數(shù)據(jù)的讀取并且發(fā)送相應(yīng)的命令,之后回到空閑狀態(tài);在等待狀態(tài)下,當(dāng)EP2 為空,EP6 不滿時,開始寫EP6,寫滿后也回到空閑狀態(tài)。

      3 系統(tǒng)測試采用以產(chǎn)生頻率為20MHz 的高頻信號發(fā)生器,峰值為2.36Vpp 的正弦波作為模擬輸入。系統(tǒng)的測試采用SignalTapII來獲取兩路數(shù)據(jù)采樣數(shù)據(jù),并且模擬轉(zhuǎn)后后存入到FIFO 中的數(shù)據(jù)和信號。采樣數(shù)據(jù)的模擬波形圖如圖5 所示。

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      從圖5 可以看出,由于兩路輸入的信號存在一定的增益和偏移誤差,從而導(dǎo)致所收集數(shù)據(jù)的信號增幅值之間,產(chǎn)生了不一致現(xiàn)象。采用快速傅里葉變化分析法,首先在輸入的輸入信號上采集N 個點做快速傅里葉變換,假設(shè)信號譜線在K 和N-K-1 之間,那么就可以得到信噪諧波比SINAD :

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      為避免信號頻譜泄露,要求波形的采樣率fs 和輸入信號頻率f0,滿足其f0=fs*M/N,其中M 為一個合適的正整數(shù)。

    基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計

      此方法可以進行ADC 的有效位數(shù)的測試,實驗ENOB,將其取6 次得到的平均結(jié)果約為6.2.后面還要將采集到的數(shù)據(jù)進行進一步的分析,來檢驗通道間的不匹配對系統(tǒng)性能的影響。

      4 結(jié)論

      介紹了一種基于FPGA 基于FPGA 和USB2.0 的高精度數(shù)據(jù)采集系統(tǒng),通過FPGA 對AD 的工作方式,進行合理的配置,并充分利用其內(nèi)部自帶的邏輯資源,實現(xiàn)對數(shù)據(jù)的緩存,避免使用其他微處理器進行的數(shù)據(jù)處理,本設(shè)計可以很好的減少芯片數(shù)和空間體積,更有利于FPGA 的發(fā)揮,具有簡單、靈活、功能多樣的特點。
     

    (審核編輯: 智匯李)

    聲明:除特別說明之外,新聞內(nèi)容及圖片均來自網(wǎng)絡(luò)及各大主流媒體。版權(quán)歸原作者所有。如認為內(nèi)容侵權(quán),請聯(lián)系我們刪除。