基于EZ-USB FX2的高速數(shù)據(jù)采集系統(tǒng)軟件設(shè)計_第1頁
基于EZ-USB FX2的高速數(shù)據(jù)采集系統(tǒng)軟件設(shè)計_第2頁
基于EZ-USB FX2的高速數(shù)據(jù)采集系統(tǒng)軟件設(shè)計_第3頁
基于EZ-USB FX2的高速數(shù)據(jù)采集系統(tǒng)軟件設(shè)計_第4頁
基于EZ-USB FX2的高速數(shù)據(jù)采集系統(tǒng)軟件設(shè)計_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Computer Engineering and Applications計算機工程與應(yīng)用 2008(33S 510基于EZUSB FX2的高速數(shù)據(jù)采集系統(tǒng)軟件設(shè)計楊東凱,馮淵YANG Dong-kai,FENG Yuan北京航空航天大學(xué)電子信息工程學(xué)院,北京100083School of Electronic and Information Engineering,Beihang University,Beijing 100083,ChinaYANG Dong-kai,FENG Yuan.Software design of high-speed data acquisnion system

2、 based on EZ-USB FX2.Computer Engineering and Applications,2008(33S.Abstract:A highspeed data acquisition system based on EZ-USB FX2is designed.Critical technique of the firmware,USB device driver and application software are described in details,and the system is verified by sampling GPS raw signal

3、.Key words:USB;device driver;data acquisition摘要:設(shè)計了一種基于EZUSB FX2實現(xiàn)的高速數(shù)據(jù)采集系統(tǒng),給出了系統(tǒng)結(jié)構(gòu)組成,對固件程序、USB驅(qū) 動程序、應(yīng)用程序的設(shè)計進行了詳細論述。通過采集GPS原始信號對系統(tǒng)進行驗證,表明該系統(tǒng)工作穩(wěn)定可靠。 炎鍵詞:USB;驅(qū)動程序;數(shù)據(jù)采集1引言在微型計算機的很多應(yīng)用場合都需要完成數(shù)據(jù) 采集的功能。以前,由于微型計算機標準輸入輸出接 口的傳輸速率比較低,基本都是采用ISA、EISA或者 PCI板卡來完成數(shù)據(jù)采集與傳輸,但是這種方式的驅(qū) 動程序開發(fā)難度大,通用性和可移植性差。自1998年 USBl.1規(guī)范推

4、出以來,USB技術(shù)逐漸得到了廣泛應(yīng) 用,USB接口成為微機的標準接口。但是USBI.1的最 高數(shù)據(jù)傳輸速率只有12Mbps,不能滿足很多應(yīng)用場 合的需求。在2000年年底推出的USB2.0規(guī)范,傳輸 速度達到480Mbps。這一傳輸速率基本與當(dāng)前微型 汁算機的處理能力相適應(yīng),有效解決了微型計算機與 外部沒備進行高速數(shù)據(jù)傳輸?shù)钠款i問題I。CYPRESS公司推出的符合USB2.0標準的EZ USB FX2系列芯片,代表了業(yè)界的尖端水準,它的高度 集成化和獨特的設(shè)計結(jié)構(gòu)保證USB2.0協(xié)議的480Mbps 的傳輸速度的實現(xiàn)41。本文介紹了基于EZUSB FX2芯片實現(xiàn)的高速 數(shù)據(jù)采集系統(tǒng)及各子模塊的

5、軟件沒計。 2采集系統(tǒng)結(jié)構(gòu)組成FX2與外部邏輯的2種接口模式:Slave FIFOs 模式和通用可編程接口GPIF模式。Slave FIFOs模 式是從機方式,外部控制器可像普通FIFO一樣對 FX2的多重緩沖FIFO進行讀寫。在本采集系統(tǒng)的設(shè) 計中,采用了EZUSB FX2的Slave FIFOs接口模 式,FPGA作為Slave FIFOs接口的外部控制器。采集 系統(tǒng)結(jié)構(gòu)如圖1所示。圖1采集系統(tǒng)結(jié)構(gòu)框圖其中FPGA完成AD采樣并作為EZUSB FX2的Slave FIFO接口的外部控制器;EZUSB FX2芯片 執(zhí)行固件程序,完成USB協(xié)議轉(zhuǎn)化;PC上執(zhí)行USB 采集程序。3采集系統(tǒng)各子模

6、塊軟件設(shè)計FPGA作為AD采樣與USB Slave FIFOs之間的基金項目:國家自然科學(xué)基金(the National Natural Science Foundation of China under Grant No.60602046。作者簡介:楊東凱(1972-,副教授,主要研究方向:通信與信息系統(tǒng);馮淵(1984-,碩士研究生,主要研究方向:衛(wèi)星導(dǎo)航定位技術(shù),5112008(33S Computer Engineering and Applications計算機工程與應(yīng)用接口,主要完成AD采樣與Slave FIFOs接口控制的 功能。AD采樣模塊以采樣頻率連續(xù)采樣數(shù)據(jù),而USB 事務(wù)

7、被操作系統(tǒng)的底層驅(qū)動程序調(diào)度,其接口數(shù)據(jù)傳 輸速率不恒定。為了諧調(diào)二者的速率差異,防止數(shù)據(jù) 丟失,在FPGA內(nèi)建立起一個大容量的片內(nèi)FIFO,作 為AD采樣與USB接口之間的緩沖。FPGA實現(xiàn)結(jié)構(gòu) 如圖2所示。圖2FPGA實現(xiàn)結(jié)構(gòu)框圖AD采樣模塊以采樣頻率連續(xù)采樣數(shù)據(jù)并寫入 FPGA片內(nèi)FIFO。Slave FIFO控制器從FPGA片內(nèi)FIFO讀取采樣 數(shù)據(jù),并依照Slave FIFO接口的讀寫時序?qū)懭險SB Slave FIFOs,進行USB數(shù)據(jù)傳輸。Slave FIFOs控制 器的基本結(jié)構(gòu)是狀態(tài)機,其狀態(tài)轉(zhuǎn)移圖如圖3所示。圖3SlaveFIFO控制器狀態(tài)轉(zhuǎn)移圖Slave FIFOs控制器狀

8、態(tài)轉(zhuǎn)移如下:(1IDLE:當(dāng)采集卡啟動,轉(zhuǎn)到Statel。FX2的Slave FIFOs能夠被配置為自動輸入或輸 出模式,自動輸入模式方式如圖4所示。從圖4可以 看出,當(dāng)個FIFO被配置為自動輸入時,從外部控制器來的數(shù)據(jù)被自動打包并提交給USB,這時CPU不進 行任何干預(yù),克服了低速MCU給高速數(shù)據(jù)傳輸帶來 的瓶頸效應(yīng)。所以在本設(shè)計中采用了自動輸入模式。FX2曰 外部l卡機b 爿usB H Slave FIFO b 控制 器圖4EZUSB FX2自動輸入模式方式在Windows系統(tǒng)中,USB驅(qū)動程序由三部分組 成:USB設(shè)備驅(qū)動程序、USB總線驅(qū)動程序和USB主 控制器驅(qū)動程序。其中,Wind

9、ows操作系統(tǒng)已經(jīng)提供 了處于驅(qū)動程序棧底的USB總線驅(qū)動程序和USB主 控制器驅(qū)動程序。而USB設(shè)備驅(qū)動程序由設(shè)備開發(fā) 者編寫,通過向USB總線驅(qū)動程序發(fā)送包含URB (USB Request Block的IRP(IO Request Packet,來 實現(xiàn)Pc與USB外設(shè)之間的信息交換。USB設(shè)備驅(qū)動程序開發(fā)是USB設(shè)備開發(fā)最困難 的部分,開發(fā)周期長而調(diào)試難度大。Cypress公司提供 的USB DeveloperS uStudio軟件包中包含了一個名 為CyUSB.sys的通用USB沒備驅(qū)動程序,該驅(qū)動程序 符合WDM規(guī)范,功能完善,可以滿足各種應(yīng)用需求, 因此沒備開發(fā)者不需要另行開發(fā)。

10、Cypress公司提供的USB DeveloperS uStudio 軟件包中還包含了一個名為CyAPI.1ib的簡單易用、 功能強大、面向?qū)ο蟮膽?yīng)用程序接口。CyAPI.1ib對 CyUSB.sys中的API進行了封裝,為用戶提供了一個 高級編程接口51。在CyAPI.1ib中不僅提供了XferData(等同步方 法,也提供了BeginDataXfer(,WaitForXfer(和Fin ishDataXfer(等低級異步方法以將系統(tǒng)的吞吐性能 發(fā)揮的極致。在本設(shè)計中,為了提供數(shù)據(jù)傳輸速率,采 用了CyAPI.1ib提供的低級異步方法。異步方法使得程序設(shè)計人員能夠在開始處理返 回數(shù)據(jù)之前預(yù)先

11、加載一個請求隊列,并且能夠保持足 夠的可用請求緩沖區(qū),這樣就無需中斷設(shè)備而去等待 新的請求?;诋惒椒椒ǖ牟杉绦蛟O(shè)計結(jié)構(gòu)如圖5所示。 應(yīng)用程序始終保持一個請求隊列,并從數(shù)據(jù)緩沖區(qū)內(nèi) 讀取數(shù)據(jù)寫入存儲文件。(下轉(zhuǎn)554頁Computer F,RsqneeriiIg and Appli,.tttioll.E計算機工程與應(yīng)用 2008(335 554可“看HB碼的校ut精度為20us左右,相對干聲與0碼的毫秒彗級的精度而言,鼬可以忽略嘲5Jn k。標準的時統(tǒng)挫播棚比4結(jié)跑m比對的結(jié)果ur以分析出,聲卡枝時的精度范圍 吐一 lq 7肇堆教排的解澗輸¨I 為±20his,陵精度完全

12、可以適用J。載人航天任務(wù)及未 柬空m砧計劃的馴挖、通信計算機時mJ保障工作一h 也可在需盟精確時間的各類計算機系統(tǒng)tIt惟廣應(yīng)州.參_孽文獻:【803051懷準化時統(tǒng)世衢說明書成都國營吊華儀器r.199813J Kntgllnski lJ.Visual I:¨技術(shù)內(nèi)幕【M J婚愛民,坪4峨北 京清華大學(xué)出版杜i9994l鐘琢,蔡蓮生|:多繅體計算機掛術(shù)基礎(chǔ)戊川lJE求高 *教育m*#199992109pnmb"ntIhIonI” 時6秉染缸槲的捕艘l里數(shù)H杜批通過多狄試驗,表明本系統(tǒng)工作穩(wěn)定可靠。且具 有傳輸速率高.配置靈活,使用方便,支持熱抽拔.具 有良好的性價比等優(yōu)點參弩

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論