- 相關(guān)推薦
基于USB2.0的高速同步數(shù)據(jù)采集系統(tǒng)設(shè)計
摘要:介紹基于USB2.0協(xié)議、最多可四路同步采樣的高速同步數(shù)據(jù)采集系統(tǒng)。其單通道采樣速度620ksps,四通道同時采樣速度可達180ksps。USB接口控制及通信芯片采用Cypress公司FX2系列中的CY7C68013,通過對其可編程接口控制邏輯的合理設(shè)計和芯片內(nèi)部FIFO的有效運用,實現(xiàn)了數(shù)據(jù)的高速連續(xù)采樣。USB(Universal Serial Bus)總線是INTEL、NEC、MICROSOFT、IBM等公司聯(lián)合提出的一種新的串行總線接口規(guī)范。為了適應(yīng)高速傳輸?shù)男枰,2000年4月,這些公司在原1.1協(xié)議的基礎(chǔ)上制訂了USB2.0傳輸協(xié)議,已超過了目前IEEE1394接口400Mbps的傳輸速度,達到了480Mbps。USB總線使用簡單,支持即插即用PnP(Plug And Play),一臺主機可串連127個USB設(shè)備。設(shè)備與主機之間通過輕便、柔性好的USB線纜連接,最長可達5m,使設(shè)備具有移動性,可自由掛接在具有USB接口的運行在Windows98/NT平臺的PC機上。USB總線已被越來越多的標(biāo)準(zhǔn)外設(shè)和用戶自定義外設(shè)所使用,如鼠標(biāo)、鍵盤、掃描儀、音箱等。
筆者結(jié)合設(shè)備檢測中數(shù)據(jù)采集的實際需要,設(shè)計了該高速同步數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)最多可四路同步采樣,單通道采樣速度可達620ksps,四通道同時采樣速度可達180ksps。USB接口控制芯片采用Cypress公司FX2系列中的CY7C68013,通過對其可編程接口控制邏輯的合理設(shè)計和芯片內(nèi)部FIFO的有效運用,實現(xiàn)了數(shù)據(jù)的高速連續(xù)采樣和傳輸。
1 基本原理
該采集系統(tǒng)總體框架分三部分:主機(能支持USB2.0協(xié)議的PC機)、內(nèi)部包含CPU及高速緩存的USB接口控制芯片(CY7C68013)和高速同步采樣芯片(MAX115),如圖1所示。其數(shù)據(jù)傳輸分兩部分:控制信號傳輸和采集數(shù)據(jù)傳輸。控制信號方向為由主機到外設(shè),由外設(shè)CPU控制,數(shù)據(jù)量較小;采集到的數(shù)據(jù)由外設(shè)到主機,數(shù)據(jù)量較大。為了保證較高的傳輸速度,不經(jīng)過CPU。系統(tǒng)基本操作過程為:主機給外設(shè)一個采樣控制信號,FX2根據(jù)該信號向A/D轉(zhuǎn)換器送出相應(yīng)控制信號,即采樣模式控制字;之后由A/D轉(zhuǎn)換器自主控制轉(zhuǎn)換,并將各通道采樣數(shù)據(jù)存入其片內(nèi)緩存。一旦轉(zhuǎn)換完成,由A/D的完成位向FX2的可編程控制接口發(fā)讀采樣結(jié)果信號;然后由可編程接口的控制邏輯依次將各通道采樣結(jié)果從A/D的緩存讀入FX2的內(nèi)部FIFO。當(dāng)FIFO容量達到指定程度后,自動將數(shù)據(jù)打包傳送給USB總線。期間所有操作不需要CPU的干預(yù)。采樣過程中接口控制邏輯依次取走批量數(shù)據(jù),在打包傳送時A/D仍持續(xù)轉(zhuǎn)換,內(nèi)部FIFO也持續(xù)寫入轉(zhuǎn)換結(jié)果。只要內(nèi)部FIFO寫指針和讀指針位置相差達到指定的值就立即取走數(shù)據(jù)。從而保證了同步連續(xù)高速采集的可靠性。
2 硬件部分
2.1 芯片介紹
CY7C68013屬于Cypress公司的FX2系列產(chǎn)品,它提供了對USB2.0的完整解決方案。該芯片包括帶8KB片內(nèi)RAM的高速CPU、16位并行地址總線+8位數(shù)據(jù)總線、I2C總線、4KB FIFO存儲器以及通用可編程接口(GPIF)、串行接口引擎(SIE)和USB2.0收發(fā)器。在代碼的編寫上,與8051系列單片機兼容,且速度是標(biāo)準(zhǔn)8051的3~5倍。
CY7C68013與外設(shè)有兩種接口方式:可編程接口GPIF和Slave FIFOs。
可編程接口GPIF是主機方式,可以由軟件設(shè)置讀寫控制波形,靈活性很大,幾乎可以對任何8/16 bit接口的控制器、存儲器和總線進行數(shù)據(jù)的主動讀寫,使用非常靈活。Slave FIFOs方式是從機方式,外部控制器可象對普通FIFO一樣對FX2的多層緩沖FIFO進行讀寫。FX2的Slave FIFOs工作方式可設(shè)為同步或異步;工作時鐘為內(nèi)部產(chǎn)生或外部輸入可選;其它控制信號也可靈活地設(shè)置為高有效或低有效。筆者在設(shè)計中采用主機方式。
MAX115是美信公司的高速多通道同步采樣芯片。含有兩組4路同步通道,共8個輸入端。采樣精度為12位,采樣模式由采樣控制字決定,可靈活地在兩組中的1~4個通道間選擇。采樣時,各通道轉(zhuǎn)換結(jié)果先存入其內(nèi)部相對應(yīng)的4個12bit存儲單元,各通道都轉(zhuǎn)換完后再一起取走。
2.2 電路原理及設(shè)計
考慮CY7C68013與MAX115接口時,采樣模式不同,控制波形有所差別,筆者選擇主機方式即可編程控制接口(GPIF)。
GPIF是FX2端點FIFO的內(nèi)部控制器。在這種方式下,接口內(nèi)核可產(chǎn)生6個控制輸出端(CTL0~CTL5)和9根線的地址(GADR[8:0])輸出,同時可以接收6個外部輸入(RDY0~RDY5)和2個內(nèi)部輸入。FX2有4個波形描述符控制各個狀態(tài)。這些波形描述符可以動態(tài)地配置給任何一個端點FIFO。例如,一個波形描述符可以配置為寫FIFO,而另一個配置為讀FIFO。FX2的固件程序可以把這些描述符配置給四個FIFO中的任意一個,配置后,GPIF將依據(jù)波形描述符產(chǎn)生相應(yīng)的控制邏輯和握手信號給外界接口,滿足向FIFO讀寫數(shù)據(jù)的需要。GPIF的數(shù)據(jù)總線既可以是單字節(jié)寬(8位FD[7:0])也可以是雙字節(jié)寬(16位FD[15:0])。每個波形描述符包含了S0~S6 七個有效狀態(tài)和一個空閑狀態(tài)。在每個有效狀態(tài)對應(yīng)的時間段里,經(jīng)過預(yù)先設(shè)置,GPIF可以做以下幾件事情:(1)驅(qū)動(使為高或低)或懸。秱輸出控制端;(2)采樣或驅(qū)動FIFO的數(shù)據(jù)總線;(3)增加GPIF地址總線的值;(4)增加指向當(dāng)前FIFO指針的值;(5)啟動GPFIWF(波形描述符)中斷。除此之外,在每個狀態(tài),GPIF可以對以下幾個信號中任意兩個進行采樣,它們是:(1)RDYX輸入端;(2)FIFO狀態(tài)標(biāo)志位;(3)內(nèi)部RDY標(biāo)志位;(4)傳輸計數(shù)中止標(biāo)志位。把其中兩個信號相與、相或或者相異或,根據(jù)
【基于USB2.0的高速同步數(shù)據(jù)采集系統(tǒng)設(shè)計】相關(guān)文章:
基于USB2.0的同步高速數(shù)據(jù)采集器的設(shè)計03-18
基于USB總線的高速數(shù)據(jù)采集系統(tǒng)03-26
基于USB2.0和FPGA的高速圖像采集系統(tǒng)03-07
基于USB接口的數(shù)據(jù)采集系統(tǒng)設(shè)計03-18
具有USB2.0接口的高速數(shù)據(jù)采集卡設(shè)計03-18
基于Verilog HDL設(shè)計的自動數(shù)據(jù)采集系統(tǒng)03-21
基于Web的MCF5249數(shù)據(jù)采集系統(tǒng)的設(shè)計03-19