基于USB2.0總線的高速數(shù)據(jù)采集系統(tǒng)設(shè)計
發(fā)布時間:2008/5/27 0:00:00 訪問次數(shù):724
    
    
     來源:21ic中國電子網(wǎng) 作者:航天時代電子公司771研究所加固機工程部 蔡本華 摘要:本文主要介紹支持usb2.0高速傳輸?shù)膃z-usb fx2單片機cy7c68013,并詳細說明用此芯片實現(xiàn)高速數(shù)據(jù)采集系統(tǒng)和相應(yīng)的windows驅(qū)動程序及底層固件程序的開發(fā)過程。 關(guān)鍵詞:cy7c68013 usb2.0 數(shù)據(jù)采集 固件 1、引言 現(xiàn)代工業(yè)生產(chǎn)和科學(xué)研究對數(shù)據(jù)采集的要求日益提高,在瞬態(tài)信號測量、圖像處理等一些高速、高精度的測量中,需要進行高速數(shù)據(jù)采集,F(xiàn)在通用的高速數(shù)據(jù)采集卡一般多是pci卡或isa卡,存在以下缺點:安裝麻煩、價格昂貴;受計算機插槽數(shù)量、地址、中斷資源限制,可擴展性差;在一些電磁干擾性強的測試現(xiàn)場,無法專門對其做電磁屏蔽,導(dǎo)致采集的數(shù)據(jù)失真。 通用串行總線usb是1995年康柏、微軟、ibm、dec等公司為解決傳統(tǒng)總線不足而推廣的一種新型的通信標(biāo)準(zhǔn)。該總線接口具有安裝方便、高帶寬、易于擴展等優(yōu)點,已逐漸成為現(xiàn)代數(shù)據(jù)傳輸?shù)陌l(fā)展趨勢;趗sb的高速數(shù)據(jù)采集卡充分利用usb總線的上述優(yōu)點,有效解決了傳統(tǒng)高速數(shù)據(jù)采集卡的缺陷。 2、硬件設(shè)計 2.1支持usb2.0高速傳輸?shù)腸y7c68013 cypress semiconductor公司的ez-usb fx2是世界上第一款集成usb2.0的微處理器,它集成了usb2.0收發(fā)器、sie(串行接口引擎)、增強的8051微控制器和可編程的外圍接口。fx2這種獨創(chuàng)性結(jié)構(gòu)可使數(shù)據(jù)傳輸率達到56mbytes/s,即usb2.0允許的最大帶寬。在fx2中,智能sie可以硬件處理許多usb1.1和usb2.0協(xié)議,從而減少了開發(fā)時間和確保了usb的兼容性。gpif(general programmable interface)和主/從端點fifo(8位或16位數(shù)據(jù)總線)為ata、utopia、epp、pcmcia和dsp等提供了簡單和無縫連接接口。 cy7c68013的gpif引擎具有自動傳輸數(shù)據(jù)結(jié)構(gòu)的特性,這種特性使得外圍設(shè)備和主機通過cy7c68013可以無縫的、高速的傳輸數(shù)據(jù)。為了實現(xiàn)高速的數(shù)據(jù)傳輸,cy7c68013cpu不會直接參與數(shù)據(jù)的傳輸,而是直接利用gpif的自動傳輸數(shù)據(jù)模式。圖1和圖2說明了主機in和out數(shù)據(jù)傳輸過程。 2.1.1 端點緩沖區(qū) fx2包含3個64字節(jié)端點緩沖區(qū)和4k可配置成不同方式的緩沖,其中3個64字節(jié)的緩沖區(qū)為ep0、ep1in和ep1out。ep0作為控制端點用,它是一個雙向端點,既可為in也可為out。當(dāng)需要控制傳輸數(shù)據(jù)時,fx2固件讀寫ep0緩沖區(qū),但是8個setup字節(jié)數(shù)據(jù)不會出現(xiàn)在這64字節(jié)ep0端點緩沖區(qū)中。ep1in和ep1out使用獨立的64字節(jié)緩沖區(qū),fx2固件可配置這些端點為bulk、interrupt或isochronous傳輸方式,這兩個端點和ep0一樣只能被固件訪問。這一點與大端點緩沖區(qū)ep2、ep4、ep6和ep8不同,這四個端點緩沖區(qū)主要用來和片上或片外進行高帶寬數(shù)據(jù)傳輸而無需固件的參與。ep2、ep4、ep6和ep8是高帶寬、大緩沖區(qū)。它們可被配置成不同的方式來適應(yīng)帶寬的需求。2.1.2 接口信號 在利用gpif進行高速數(shù)據(jù)傳輸系統(tǒng)設(shè)計時,gpif waveforms的編輯是非常重要的,它控制著整個數(shù)據(jù)傳輸過程的讀寫時序。此時cpu的作用已經(jīng)非常小了,它只起著下載代碼到內(nèi)部ram以及在固件中如何觸發(fā)gpif waveforms的作用。fx2專門為gpif提供了外圍接口信號,如8位或16位的數(shù)據(jù)線、控制信號、ready信號以及地址線。 ifclk(雙向時鐘信號):ifclk是一個參考時鐘,可以配置成輸入或輸出。當(dāng)配置為輸出時,ifclk被fx2驅(qū)動為30mhz或48mhz;當(dāng)配置為輸入時,時鐘范圍為5-48mhz。 gpifadr[8:0](輸出):gpif使用gpifadr信號為外部設(shè)備提供地址線,在總線上地址值是自增的。 fd[15:0](雙向):這是usb主機通過fx2和外部設(shè)備進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)線,它可配置成8位或16位。當(dāng)16位時,fd[7:0]代表端點fifo中的第一個字節(jié),fd[15:8]代表第二個字節(jié)。 ctl[5:0](輸出):fx2為外部設(shè)備提供了幾個控制信號,如讀寫選通、使能等。 rdy[5:0](輸入):fx2提供了幾個狀態(tài)檢測信號,它可以檢測外部設(shè)備的狀態(tài),如fifo的空、滿、半滿等。 gstate[2:0](輸出):這是調(diào)試信號,表示gpif波形執(zhí)行的狀態(tài),通常連接到邏輯分析儀上。2.2 ad9238 ad9238是一個雙通道的12位a/d轉(zhuǎn)換器,采用單3v供電,速度可以是20msps、40msps和65msps;低功耗,工作在20msps時,功耗為180mw,40msps時,功耗為330mw,65msps時,功耗為600mw;具有500mhz 3db帶寬的差分輸入;片上參考源及sha;靈活的模擬輸入范圍:1vp-p~2vp-p;適用于:超聲波設(shè)備,射頻通訊,電池電源儀器,低價示波器等。本系統(tǒng)采用20msps的ad9238,可充分發(fā)揮usb在高速傳輸模式下的數(shù)據(jù)傳輸優(yōu)勢。2.3 數(shù)據(jù)采集系統(tǒng) 該數(shù)據(jù)采集系統(tǒng)整個框圖如圖3所示,該系統(tǒng)由以下幾部份組成:usb控制器、fifo、cpld、ad9238以及數(shù)據(jù)采集前端電路。圖3 數(shù)據(jù)采集系統(tǒng)框圖 cpld主要是控制時序,時鐘分頻等。fifo
    
    
     來源:21ic中國電子網(wǎng) 作者:航天時代電子公司771研究所加固機工程部 蔡本華 摘要:本文主要介紹支持usb2.0高速傳輸?shù)膃z-usb fx2單片機cy7c68013,并詳細說明用此芯片實現(xiàn)高速數(shù)據(jù)采集系統(tǒng)和相應(yīng)的windows驅(qū)動程序及底層固件程序的開發(fā)過程。 關(guān)鍵詞:cy7c68013 usb2.0 數(shù)據(jù)采集 固件 1、引言 現(xiàn)代工業(yè)生產(chǎn)和科學(xué)研究對數(shù)據(jù)采集的要求日益提高,在瞬態(tài)信號測量、圖像處理等一些高速、高精度的測量中,需要進行高速數(shù)據(jù)采集,F(xiàn)在通用的高速數(shù)據(jù)采集卡一般多是pci卡或isa卡,存在以下缺點:安裝麻煩、價格昂貴;受計算機插槽數(shù)量、地址、中斷資源限制,可擴展性差;在一些電磁干擾性強的測試現(xiàn)場,無法專門對其做電磁屏蔽,導(dǎo)致采集的數(shù)據(jù)失真。 通用串行總線usb是1995年康柏、微軟、ibm、dec等公司為解決傳統(tǒng)總線不足而推廣的一種新型的通信標(biāo)準(zhǔn)。該總線接口具有安裝方便、高帶寬、易于擴展等優(yōu)點,已逐漸成為現(xiàn)代數(shù)據(jù)傳輸?shù)陌l(fā)展趨勢。基于usb的高速數(shù)據(jù)采集卡充分利用usb總線的上述優(yōu)點,有效解決了傳統(tǒng)高速數(shù)據(jù)采集卡的缺陷。 2、硬件設(shè)計 2.1支持usb2.0高速傳輸?shù)腸y7c68013 cypress semiconductor公司的ez-usb fx2是世界上第一款集成usb2.0的微處理器,它集成了usb2.0收發(fā)器、sie(串行接口引擎)、增強的8051微控制器和可編程的外圍接口。fx2這種獨創(chuàng)性結(jié)構(gòu)可使數(shù)據(jù)傳輸率達到56mbytes/s,即usb2.0允許的最大帶寬。在fx2中,智能sie可以硬件處理許多usb1.1和usb2.0協(xié)議,從而減少了開發(fā)時間和確保了usb的兼容性。gpif(general programmable interface)和主/從端點fifo(8位或16位數(shù)據(jù)總線)為ata、utopia、epp、pcmcia和dsp等提供了簡單和無縫連接接口。 cy7c68013的gpif引擎具有自動傳輸數(shù)據(jù)結(jié)構(gòu)的特性,這種特性使得外圍設(shè)備和主機通過cy7c68013可以無縫的、高速的傳輸數(shù)據(jù)。為了實現(xiàn)高速的數(shù)據(jù)傳輸,cy7c68013cpu不會直接參與數(shù)據(jù)的傳輸,而是直接利用gpif的自動傳輸數(shù)據(jù)模式。圖1和圖2說明了主機in和out數(shù)據(jù)傳輸過程。 2.1.1 端點緩沖區(qū) fx2包含3個64字節(jié)端點緩沖區(qū)和4k可配置成不同方式的緩沖,其中3個64字節(jié)的緩沖區(qū)為ep0、ep1in和ep1out。ep0作為控制端點用,它是一個雙向端點,既可為in也可為out。當(dāng)需要控制傳輸數(shù)據(jù)時,fx2固件讀寫ep0緩沖區(qū),但是8個setup字節(jié)數(shù)據(jù)不會出現(xiàn)在這64字節(jié)ep0端點緩沖區(qū)中。ep1in和ep1out使用獨立的64字節(jié)緩沖區(qū),fx2固件可配置這些端點為bulk、interrupt或isochronous傳輸方式,這兩個端點和ep0一樣只能被固件訪問。這一點與大端點緩沖區(qū)ep2、ep4、ep6和ep8不同,這四個端點緩沖區(qū)主要用來和片上或片外進行高帶寬數(shù)據(jù)傳輸而無需固件的參與。ep2、ep4、ep6和ep8是高帶寬、大緩沖區(qū)。它們可被配置成不同的方式來適應(yīng)帶寬的需求。2.1.2 接口信號 在利用gpif進行高速數(shù)據(jù)傳輸系統(tǒng)設(shè)計時,gpif waveforms的編輯是非常重要的,它控制著整個數(shù)據(jù)傳輸過程的讀寫時序。此時cpu的作用已經(jīng)非常小了,它只起著下載代碼到內(nèi)部ram以及在固件中如何觸發(fā)gpif waveforms的作用。fx2專門為gpif提供了外圍接口信號,如8位或16位的數(shù)據(jù)線、控制信號、ready信號以及地址線。 ifclk(雙向時鐘信號):ifclk是一個參考時鐘,可以配置成輸入或輸出。當(dāng)配置為輸出時,ifclk被fx2驅(qū)動為30mhz或48mhz;當(dāng)配置為輸入時,時鐘范圍為5-48mhz。 gpifadr[8:0](輸出):gpif使用gpifadr信號為外部設(shè)備提供地址線,在總線上地址值是自增的。 fd[15:0](雙向):這是usb主機通過fx2和外部設(shè)備進行數(shù)據(jù)傳輸?shù)臄?shù)據(jù)線,它可配置成8位或16位。當(dāng)16位時,fd[7:0]代表端點fifo中的第一個字節(jié),fd[15:8]代表第二個字節(jié)。 ctl[5:0](輸出):fx2為外部設(shè)備提供了幾個控制信號,如讀寫選通、使能等。 rdy[5:0](輸入):fx2提供了幾個狀態(tài)檢測信號,它可以檢測外部設(shè)備的狀態(tài),如fifo的空、滿、半滿等。 gstate[2:0](輸出):這是調(diào)試信號,表示gpif波形執(zhí)行的狀態(tài),通常連接到邏輯分析儀上。2.2 ad9238 ad9238是一個雙通道的12位a/d轉(zhuǎn)換器,采用單3v供電,速度可以是20msps、40msps和65msps;低功耗,工作在20msps時,功耗為180mw,40msps時,功耗為330mw,65msps時,功耗為600mw;具有500mhz 3db帶寬的差分輸入;片上參考源及sha;靈活的模擬輸入范圍:1vp-p~2vp-p;適用于:超聲波設(shè)備,射頻通訊,電池電源儀器,低價示波器等。本系統(tǒng)采用20msps的ad9238,可充分發(fā)揮usb在高速傳輸模式下的數(shù)據(jù)傳輸優(yōu)勢。2.3 數(shù)據(jù)采集系統(tǒng) 該數(shù)據(jù)采集系統(tǒng)整個框圖如圖3所示,該系統(tǒng)由以下幾部份組成:usb控制器、fifo、cpld、ad9238以及數(shù)據(jù)采集前端電路。圖3 數(shù)據(jù)采集系統(tǒng)框圖 cpld主要是控制時序,時鐘分頻等。fifo
熱門點擊
- 交換式路由器的千兆比以太網(wǎng)接口設(shè)計和實現(xiàn)
- G.703 通信接口轉(zhuǎn)換器
- DVI數(shù)字顯示接口標(biāo)準(zhǔn)
- 基于USB2.0總線的高速數(shù)據(jù)采集系統(tǒng)設(shè)計
- 用FIFO實現(xiàn)DSP間的雙向并行異步通訊
- SSC P300 PL網(wǎng)絡(luò)接口控制器及應(yīng)用
- 32段CMOSLCD驅(qū)動器AY0438及其與
- 一種非標(biāo)準(zhǔn)VGA-TV轉(zhuǎn)換器的實現(xiàn)
- 基于SED1356的嵌入式視頻顯示接口設(shè)計
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究