<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 如何設(shè)計(jì)基于FPGA和USB2.0的高精度數(shù)據(jù)采集系統(tǒng)?

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

          作者: 時(shí)間:2018-08-02 來(lái)源:網(wǎng)絡(luò) 收藏

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

          本文引用地址:http://www.ex-cimer.com/article/201808/385071.htm

          0 引言

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

          1 工作原理

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


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

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

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

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

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

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

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

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

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


          2.2 FPGA 主控模塊

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

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

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

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


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

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

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

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


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

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


          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();