《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 一種新型高速數據采集系統的設計與實現
一種新型高速數據采集系統的設計與實現
摘要: 介紹了一種基于USB2.0接口的高速數據采集系統的設計。該采集系統能夠將雷達接收機送來的信號進行高速的采集,然后通過USB接口,將采集到的數據送到計算機,經由上層軟件對數據進行處理分析。
Abstract:
Key words :

 引言

  在雷達接收機的測試和維護中,經常需要對數據進行采集,然后將采集到的數據送入計算機進行分析處理。鑒于對數據實時采集的需求,對采集系統提出三方面的要求:第一,接口簡單靈活且有較高的數據傳輸率;第二,采集的數據能夠快速處理并能方便提取原始數據;第三,數據采集裝置具備多路數據采集能力。對于一些特殊應用,甚至需要整個數據采集系統能夠方便攜帶。

  傳統的數據采集系統大多通過PCI總線完成數據的傳輸,但PCI總線存在嚴重缺陷:受限于計算機插槽數量和中斷資源;不便于連接與安裝;易受機箱內電磁環境的影響。這些問題遏制了基于PCI總線的數據采集系統的進一步開發和應用。因此,需要一種更為簡便通用的方式來完成采集系統和計算機的數據的交互。

  考慮到現代計算機上大都配備了USB接口,且USB支持即插即用,安裝方便,易于擴展,USB2.0能夠達到480Mb/s的理論傳輸速度,非常適合在高速數據采集系統中應用。因此,通過USB接口來完成數據傳輸是一個很好的替代方案。出于上述考慮,筆者設計了一個基于USB2.0接口的高速數據采集系統,通過實際測試,該系統可以很好的完成數據采集的功能。

數據采集系統電路設計

  高速數據采集系統框圖如圖1所示。系統整體的設計思路如下:計算機將采集指令(包括數據格式,數據長度,FPGA控制指令等)送給USB控制芯片,USB控制芯片通過固件程序對指令進行簡單的格式判定,然后將判定后正確的指令送給FPGA,FPGA對指令進行譯碼,獲得需要采集的數據的長度,以及采集的地址和控制信號,控制RAM來完成數據的采集存儲。雷達接收機送過來的數據和時鐘信號經過長線接收器組以后,由差分信號變為普通的數字信號,時鐘信號送入FPGA,經過處理后,用來控制數據的采集時刻,數據先存入RAM,待完成所需數目的采集以后,再通過USB控制芯片送給計算機,完成數據的后期處理和顯示。


圖1 高速數據采集系統框圖

  圖2為FPGA與USB控制芯片的連接圖,電路中FPGA選用EP1C3T144C8,USB控制芯片選用Cypress 公司的CY7C68013。USB_Ready 為USB芯片狀態標志,低電平有效;FPGA_Ready為FPGA芯片狀態標志,低電平有效;USB_Clk為USB向FPGA傳送指令的指令時鐘,USB_Data 為USB傳送給FPGA的控制指令;FD[15:0]為USB 與FPGA交互的數據。


圖2 FPGA與USB控制芯片的電路連接圖

  FPGA與USB芯片之間的通信流程如下:

1、FPGA發送FPGA_Ready信號給USB控制芯片,表示FPGA準備好;

  2、USB控制芯片發送USB_Ready信號給FPGA,表示在USB_Ready為低電平期間將有控制指令傳送;

  3、USB控制芯片由Send_CLK發送時鐘信號,同時由Send_DATA發送控制指令給FPGA,控制指令在時鐘信號上升沿有效;

  4、FPGA收到控制指令,執行相應動作。FPGA發送各種控制時序信號和RAM地址,把I路、Q路數據存在RAM里,而后將數據讀到FPGA,再通過FD[15:0]以字的形式傳給USB控制芯片的從屬FIFO端點EP8緩沖區,由PC機讀取。

數據采集系統軟件設計

  系統軟件主要分為FPGA 模塊設計程序,USB 固件程序,以及上層應用軟件程序。

  FPGA模塊編程

  系統采用Altera 公司的Cyclone系列的FPGA芯片,采用Verilog HDL 作為開發語言,開發環境采用Quartus II 5.0。

  在系統的FPGA軟件設計過程中,根據功能的需要,將整個系統分為了三個大的模塊來設計,分別為:時鐘、控制指令輸出模塊,數據采集、存儲模塊,USB數據傳輸模塊。時鐘、控制指令輸出模塊對輸入的時鐘進行整形,形成數據采集時鐘,同時,輸出22位控制電平信號;數據采集、存儲模塊對輸入的數據進行采集并存儲在存儲器里;USB數據傳輸模塊讀取存儲器里的數據并把數據輸出至USB的FIFO里。

       USB 固件程序

  固件程序即為寫入USB單片機中的程序,它是設備運行的控制中樞.Cypress公司提供了固件架構,用戶可以利用這一架構簡化固件開發。固件設計架構是由Keil C51編譯器與其整合開發工具編寫和構建的.在程序開始時,固件架構會執行下列步驟:

  1) 設置所有內部狀態變量的初始值。

  2) 調用用戶的初始設置函數TD_Init( ),待返回后,固件架構就會將USB接口設置為未配置的狀態。

  3) 在1s的時間間隔內,開始重新進行設備列舉,直到設置封包收到端點0為止。

  4) 當SETUP封包被檢測到后,固件架構就會啟動工作分配器,而這個工作分配器就會按順序重復地執行下面的工作:

A: 調用用戶函數TD_Poll( )。
B: 是否決定標準設備請求是未定(或等待決定)的。如果已決定,它將會分析所收到的命令請求,并且加以響應。
C: 是否決定USB核心已經報告了USB中止(Suspend)事件。如果已決定,它會調用用戶函數TD_Suspend()。
若取得成功的返回,則測試回復(Resume)事件。反之,如果未檢測到,將會把微處理器放人中止模式中。當回復事件被檢測到時,將調用用戶函數TD_Resume( ),并且連續地跳回至步驟C。
D: 若從TD_Suspend()函數中未收到成功的返回,再連續地跳至步驟C。
實際上Cypress公司提供的這個固件框架已經能夠使USB芯片正常的工作,但是,它并不能滿足本系統的需要。需要添加自己的控制代碼來控制USB芯片,使之能夠完成需要的工作。

  框架程序中為提供了兩個函數TD_Init( ),TD_Poll( ),根據上面的分析發現,這兩個函數分別完成了系統的初始化工作和系統的用戶期望工作。在此采集系統中,只需要修改這兩個函數,添加自己的功能函數,即可完成系統需要的功能。

  在TD_Init( )中,需要添加自己的代碼來完成系統的初始化,因為系統采用了2端點和6端點的批量讀寫功能,所以,將2端點配置單緩沖區512字節,兩倍緩沖區,作為In端點,將6端點配置為單緩沖區512字節,兩倍緩沖區,作為Out端點,配置系統為異步Slave FIFO 模式。

  在TD_Poll( )中,通過檢測2端點和6端點緩沖區數據的狀態,來及時的讀取這兩個緩沖區中的數據,然后調用自己定義的函數DecodeInst( ), ImplementInst( )來完成對于控制指令的譯碼和執行工作。

驅動程序

  基于EZ-USB FX2的二次枚舉的特性,需要編制兩個驅動程序:一個驅動程序loader.sys,它將在主機上編寫好的固件程序在主機系統啟動時下載至FX2的RAM中;另一個驅動程序USBBULK.sys為實際安裝的驅動程序。另外,為實現在系統啟動時,自動安裝兩次驅動程序,還需編寫自己的ezloader.inf文件實現。loader.sys需要自己編寫生成,USBBULK.sys可使用CYPRESS公司的通用驅動程序。

  用戶程序

  用戶程序是系統與用戶的接口,它通過通用驅動程序完成對外設的控制和通信。在編寫用戶程序時,首先要建立與外設的連接,然后才能實施數據的傳輸。啟動采樣后,為了保證不丟失數據,用戶程序應建立一個新的工作線程專門獲取外設傳來的數據。程序中主要用到兩個API函數:CreateFile()和DeviceIoControl()。CreateFile()取得設備句后,DeviceIoControl()根據該句柄完成數據傳輸。

  系統通過DeviceIoControl()完成的工作如下:

  數據批量讀,數據批量寫。

結語

  為了驗證本系統采集數據的準確性,利用信號源產生的正弦波信號對系統進行驗證。測試結果如圖3所示。


圖3 測試結果

  通過實際測量,該系統測量數據與實際情況完全符合,單通道采樣速率最高可達到10Mbps。

  整個采集系統由USB2.0數據傳輸、FPGA、邏輯電路、和計算機等組成,通過對該系統的硬件電路設計和軟件編程分析,以及實際測量結果的比較,證明了該系統的可行性。由于采用高速USB2.0接口,本系統具有即插即用、高速采集等特點,具有很好的擴展性。該采集系統已經在雷達接收機的測試系統中得到應用。
 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产美女诱惑一区二区| 一本色道久久综合亚洲精品小说 | 欧美日韩国产精品一卡| 免费观看一级特黄欧美大片| 久久久久国产精品午夜一区| 久久精品日产第一区二区| 久久精品国产欧美激情| 久久久福利视频| 久久人人爽人人爽| 你懂的国产精品| 欧美黑人多人双交| 欧美理论电影在线播放| 欧美日韩高清在线| 国产精品igao视频网网址不卡日韩| 国产精品a久久久久| 国产精品久久久久久久久动漫 | 亚洲国产精品视频一区| 亚洲国产日韩欧美在线图片| 亚洲精品视频二区| 日韩亚洲视频| 亚洲香蕉视频| 香蕉久久夜色精品国产| 久久国产加勒比精品无码| 亚洲国产精品久久精品怡红院| 亚洲人成网站影音先锋播放| 99在线精品视频在线观看| 亚洲一区二区在线看| 性亚洲最疯狂xxxx高清| 久久久噜噜噜久久中文字幕色伊伊| 看片网站欧美日韩| 欧美日韩第一区日日骚| 国产精品五区| 精品51国产黑色丝袜高跟鞋| 亚洲国产美女精品久久久久∴| 亚洲免费大片| 亚洲欧美国产一区二区三区| 久久精品国产亚洲a| 日韩手机在线导航| 欧美亚洲免费高清在线观看| 久色成人在线| 欧美视频四区| 国产一区二区精品久久| 亚洲第一精品福利| 一区二区国产在线观看| 欧美在线视频播放| 日韩视频一区二区三区| 亚洲欧美另类中文字幕| 久久久午夜精品| 欧美日韩视频在线一区二区观看视频 | 一区二区三区四区五区精品视频 | 亚洲人成高清| 亚洲欧美欧美一区二区三区| 久久综合给合久久狠狠狠97色69| 欧美激情亚洲一区| 国产精品网曝门| 亚洲国产精品激情在线观看| 中日韩美女免费视频网站在线观看| 欧美在线观看视频| 亚洲视频一二区| 久久精品亚洲精品| 欧美日韩精品国产| 伊人久久大香线蕉综合热线| 亚洲午夜电影在线观看| 亚洲品质自拍| 久久狠狠亚洲综合| 欧美日韩亚洲不卡| 激情综合中文娱乐网| 在线亚洲一区观看| 亚洲日本一区二区| 欧美中文字幕第一页| 欧美日韩精品在线| 精品福利电影| 亚洲一区二区综合| 99视频精品在线| 久久永久免费| 国产精品一卡二| 亚洲精品一区久久久久久| 亚洲第一视频网站| 亚久久调教视频| 欧美日韩亚洲综合| 亚洲高清二区| 久久高清国产| 欧美在线亚洲| 国产精品久久久99| 亚洲精品视频一区二区三区| 亚洲国产三级| 久久久国产精品一区二区中文| 国产精品ⅴa在线观看h| 亚洲理论电影网| 亚洲人成艺术| 浪潮色综合久久天堂| 国产日韩亚洲| 亚洲欧美日韩一区二区三区在线观看| 制服诱惑一区二区| 欧美久久视频| 亚洲国产精品成人| 亚洲国产一区二区视频| 久久午夜羞羞影院免费观看| 国产日本亚洲高清| 亚洲欧美日韩国产综合| 亚洲免费在线| 国产精品扒开腿做爽爽爽视频| 亚洲精品综合精品自拍| 日韩亚洲在线| 欧美寡妇偷汉性猛交| 在线不卡中文字幕| 亚洲国产精品精华液2区45| 久久久综合精品| 韩国精品久久久999| 欧美一区二区视频在线| 久久久久国色av免费观看性色| 国产亚洲精品v| 欧美一区永久视频免费观看| 久久99伊人| 国产一区二区三区四区| 欧美一二三区精品| 久久久精品国产免费观看同学 | 在线 亚洲欧美在线综合一区| 亚洲成色777777女色窝| 久久在线观看视频| 影音欧美亚洲| 亚洲欧洲精品天堂一级| 欧美成年人视频| 最新日韩欧美| 一区二区三区免费在线观看| 欧美日韩亚洲免费| 中文国产亚洲喷潮| 午夜精品在线| 国模套图日韩精品一区二区| 久久精品国产v日韩v亚洲| 鲁大师成人一区二区三区| 亚洲国产日韩一区二区| 在线视频日韩| 国产精品久久一卡二卡| 欧美亚洲尤物久久| 久热精品视频在线观看| 亚洲国产一区二区三区a毛片| 99精品99| 国产精品黄视频| 午夜精品成人在线视频| 久久久久一区二区三区| 在线精品国精品国产尤物884a| 日韩一二三在线视频播| 欧美性视频网站| 羞羞色国产精品| 免费亚洲电影在线观看| 日韩一区二区精品| 欧美在线日韩| 亚洲国产精品999| 亚洲视频axxx| 国产在线精品成人一区二区三区| 亚洲人成网站精品片在线观看| 欧美日韩精品一区二区在线播放 | 中文一区二区在线观看| 国产精品入口日韩视频大尺度| 欧美一区二区精品久久911| 欧美+亚洲+精品+三区| 一区二区三区成人| 久久精品人人做人人爽电影蜜月 | 欧美一区影院| 欧美久久久久久久久久| 亚洲欧美国产另类| 欧美黄色免费| 亚洲欧美一级二级三级| 免费成人在线观看视频| 中文精品视频一区二区在线观看| 久久久久久午夜| 亚洲美女av在线播放| 久久国产精品久久久久久| 亚洲国产视频一区二区| 欧美中文字幕不卡| 亚洲精品看片| 久久精品国产清自在天天线| 亚洲精品中文字幕有码专区| 久久国产成人| 亚洲毛片播放| 久久久亚洲影院你懂的| 一区二区三区视频观看| 男人的天堂成人在线| 亚洲自拍偷拍视频| 欧美精品久久一区二区| 欧美一区二区三区在| 欧美色图五月天| 亚洲娇小video精品| 国产九九视频一区二区三区| 99re在线精品| 悠悠资源网久久精品| 久久www成人_看片免费不卡| 亚洲久色影视| 蜜臀久久99精品久久久久久9 | 久久精品成人一区二区三区| 国产精品成人免费视频| 亚洲精品日本| 国精产品99永久一区一区| 亚洲欧美卡通另类91av| 日韩亚洲欧美综合| 欧美成人精品一区二区| 久久经典综合| 国产欧美日本一区二区三区| 亚洲图片在线|