利用USB2.0技術(shù)的高速雙路數(shù)據(jù)采集系統(tǒng)
1.引言
近年來,USB接口由于其傳輸速率高,真正的即插即用等優(yōu)點正在逐漸取代傳統(tǒng)的計算機(jī)接口如:RS232,EPP等。目前,許多的芯片生產(chǎn)商都推出了符合USB協(xié)議的芯片,如Philips公司的PDIUSBD12,NS公司的USBN9602等。在眾多的USB2.0芯片中,Cypress公司的EZ-USB FX2(CY7C68013)芯片是一個不錯的選擇。本文設(shè)計了一種基于EZ-USB FX2和MAX1195的數(shù)據(jù)采集系統(tǒng),該系統(tǒng)符合USB2.0協(xié)議標(biāo)準(zhǔn),通過與高精度激光縱模分析儀連接進(jìn)行調(diào)試,證明該系統(tǒng)達(dá)到了預(yù)定目的。
2. CY7C68013芯片和MAX1195芯片介紹
2.1 CY7C68013介紹:
CY7C68013在一塊芯片上同時集成了USB2.0收發(fā)器,串行接口引擎SIE,增強(qiáng)型的8051微控制器以及一個可編程外圍接口GPIF(General Programmable Interface)。CY7C68013的“量子FIFO”(FIFO,先進(jìn)先出存儲器)特性使得無需8051CPU的任何干預(yù),數(shù)據(jù)即可從外設(shè)上傳到主機(jī),這種數(shù)據(jù)傳輸模式徹底解決了USB2.0收發(fā)器與一般8051微控制器連接時由于8051的時鐘頻率低而導(dǎo)致的傳輸速率瓶頸問題。CY7C68013芯片的另一個突出優(yōu)點是其“‘軟’配置”,代碼和數(shù)據(jù)能夠直接通過USB接口下載到片內(nèi)的RAM上,這一功能通過Cypress公司獨創(chuàng)的“重枚舉”(ReNumerationTM)功能實現(xiàn)。CY7C68013芯片有四個可編程的批量、中斷、同步傳輸端點,可以分別設(shè)置為雙緩沖,三緩沖和四緩沖模式,8位或者16位的外部數(shù)據(jù)接口,該接口可以根據(jù)需要工作在 GPIF或者SLAVEFIFO模式。其中GPIF能夠和絕大部分并行接口如FIFO等實現(xiàn)“無膠”連接,即無需外加任何微控制器或CPLD、FPGA 等。本文的設(shè)計中采用了GPIF方式。
2.2 MAX1195介紹:
MAX1195是由MAXIM公司推出的一款低功耗、雙路、高速、八位模數(shù)轉(zhuǎn)換芯片,采用流水線(Pipeline)結(jié)構(gòu),較高采樣率40Mbps,內(nèi)部集成了兩個 ADC,真正實現(xiàn)兩路同步采樣轉(zhuǎn)換。其工作電壓范圍是2.7V-3.6V,具有減小功耗的休眠模式和關(guān)斷(Shut-Down)模式,單端或者差分輸入方式,片上采樣保持(T/H)電路,內(nèi)部或者外部參考電壓,含有用戶可選擇的數(shù)據(jù)輸出格式:二的補(bǔ)碼格式或者補(bǔ)償二進(jìn)制碼格式,具有輸出使能控制,可以將輸出置為高阻態(tài)。此外MAXIM還提供了與MAX1195引腳、封裝完全兼容的10位、更高采樣率的模數(shù)轉(zhuǎn)換芯片,如MAX1197、MAX1198等,因此系統(tǒng)升級非常方便。在本文的工作中,采用了內(nèi)部參考電壓、雙路單端模擬輸入、補(bǔ)償二進(jìn)制碼輸出格式。
3.系統(tǒng)整體構(gòu)成及其工作原理介紹:
3.1系統(tǒng)構(gòu)成:
系統(tǒng)的整體框圖如圖1所示。整個系統(tǒng)主要包括USB傳輸芯片CY7C68013,先進(jìn)先出存儲器(FIFO)SN74V235和模數(shù)轉(zhuǎn)換芯片MAX1195組成。反相器74LVC04主要起MAX1195和FIFO之間的邏輯控制作用。
圖1 系統(tǒng)整體框圖
3.2系統(tǒng)工作原理:
MAX1195的兩路輸入信號是同時被采樣的,十六位的數(shù)據(jù)輸出總線使兩路數(shù)據(jù)可以同時輸出,分別占八位,即:D0A~D7A和D0B~D7B;SN74V235輸入為18位,根據(jù)CMOS技術(shù)的要求,將未使用的D16和D17引腳接地。MAX1195采集到的數(shù)據(jù)首先送進(jìn)FIFO里, FIFO的寫時鐘(WCLK)和AD的轉(zhuǎn)換時鐘反相,這樣可以充分滿足MAX1195輸出數(shù)據(jù)的建立時間,避免發(fā)生數(shù)據(jù)丟失或者數(shù)據(jù)重復(fù)寫入現(xiàn)象。 SN74V235的 (Programmable Almost Full)可編程幾乎滿信號經(jīng)74LVC04反相后接MAX1195的Sleep和 引腳,以免FIFO發(fā)生溢出而丟失數(shù)據(jù)。SN74V235的數(shù)據(jù)輸出引腳Q0~Q15與CY7C68013的GPIF模式下的數(shù)據(jù)線FD[15:0]即端口B和端口D組成的十六位數(shù)據(jù)總線相連,數(shù)據(jù)SN74V235到EZ-USB FX2的時序過程由CY7C68013的GPIF 控制。FX2采用了“量子FIFO”結(jié)構(gòu),在FX2里面,數(shù)據(jù)可以分為兩個域:USB域和GPIF接口域。這兩個域是獨立的,允許分別使用不同的時鐘和邏輯控制數(shù)據(jù)的傳輸,USB域是由SIE控制的,SIE通過USB口接收或者發(fā)送端點FIFO的數(shù)據(jù)。FX2的“量子FIFO”能夠幾乎不花時間在這兩個數(shù)據(jù)域中的轉(zhuǎn)移數(shù)據(jù),因為這兩個域用的FIFO在物理上是同一個。所以根據(jù)“量子FIFO”原理,實際上數(shù)據(jù)已經(jīng)存在于屬于USB域的端點FIFO里面了,采用USB的BULK傳輸方式,使該數(shù)據(jù)完全不經(jīng)過低頻CPU干預(yù),而是采用FX2提供的AutoIn模式,即一旦FX2端點緩沖區(qū)的數(shù)據(jù)達(dá)到指定字節(jié)數(shù),數(shù)據(jù)將自動被打包從USB口上傳到主機(jī)。
3.3 GPIF波形及程序介紹:
GPIF是FX2的端點FIFO的片內(nèi)控制器,可以完全代替片外的控制器而實現(xiàn)FX2與外圍FIFO的“無膠”連接。GPIF的核心是一個可編程狀態(tài)機(jī),可以產(chǎn)生六個“控制”(CTL)和九個“地址”(GPIFADR[8:0])信號,可以接收六個外部(RDY)“準(zhǔn)備好”輸入,八位或者十六位數(shù)據(jù)總線,時鐘可以用FX2的IFCLK,也可以由外圍提供。本文GPIF接口的詳細(xì)硬件連接如圖2所示。
圖2 GPIF與SN74V235詳細(xì)連接圖
關(guān)鍵字:USB2.0技術(shù) 高速雙路數(shù)據(jù)采集
GPIF狀態(tài)機(jī)可以定義四個波形描述符,一般情況下是:FIFO讀,F(xiàn)IFO寫,單字/字節(jié)讀,單字/字節(jié)寫。Cypress提供了圖形化的波形描述工具GPIF Designer,用戶只需要給出GPIF波形,GPIF Designer會自動生成C語言的波形代碼Gpif.c,可以直接鏈接到用戶的固件程序中。本文中用到了FIFORd描述符,波形如圖3所示。
圖3 GPIF Designer設(shè)計的 FIFORd波形
4.系統(tǒng)軟件編寫
系統(tǒng)軟件主要包括三個部分:下位機(jī)CY7C68013的固件,USB驅(qū)動程序和上位機(jī)主機(jī)應(yīng)用程序。
4.1 固件程序編寫
對于下位機(jī)CY7C68013的固件編寫,Cypress公司給出了在Keil C51下的固件程序框架,固件框架完成EZ-USB FX2的初始化、USB標(biāo)準(zhǔn)設(shè)備請求處理、USB掛起模式下的電源管理服務(wù)和USB中斷處理。Cypress還提供了函數(shù)鉤子來加速用戶代碼的添加。用戶只需要簡單地提供一個USB描述符表和執(zhí)行外圍功能的代碼即可。
4.2 驅(qū)動程序編寫
Windows系統(tǒng)下的USB驅(qū)動包括三層,從高到低依次是:USB客戶端設(shè)備驅(qū)動(USB Client Device Driver)、USB總線驅(qū)動(USB Hub(Bus) Driver)、主機(jī)控制器驅(qū)動(Host Controller Driver)。后兩者由Windows系統(tǒng)提供,用戶只需要開發(fā)USB客戶端設(shè)備驅(qū)動程序,Cypress公司提供了一個通用的驅(qū)動程序 (General Purpose Driver),即ezusb.sys,一般情況下,該驅(qū)動程序可以滿足FX2開發(fā)者的需要。本文使用了Cypress公司的通用驅(qū)動 ezusb.sys。為了使用ezusb.sys,用戶必須編寫對應(yīng)的inf文件,inf文件將特定的USB設(shè)備綁定給相應(yīng)的驅(qū)動程序,該inf文件參照 ezusbw2k.inf編寫。
4.3 主機(jī)應(yīng)用程序編寫
通用驅(qū)動程序GPD即ezusb.sys提供了基本USB設(shè)備請求和數(shù)據(jù)傳輸?shù)挠脩裟J浇涌冢脩裟J綉?yīng)用程序通過Win32函數(shù) DeviceIoControl()給設(shè)備驅(qū)動器發(fā)送請求。Ezusb.sys提供了基本設(shè)備請求、批量讀寫、同步讀寫等一系列IOCTL函數(shù)。這里以 IOCTL_EZUSB_BULK_READ(EZUSB批量傳輸)為例加以介紹。
批量傳輸模式下讀FX2的端點FIFO的關(guān)鍵代碼如下:
DWORD ioctl_val=IOCTL_EZUSB_BULK_READ; //設(shè)置從設(shè)備中讀數(shù)據(jù)
Bresult=DeviceIoControl ( hDevice , ioctl_val , //從設(shè)備讀數(shù)據(jù)
&bulkControl , //端點號
sizeof ( BULK_TRANSFER_CONTROL), //傳入?yún)?shù)的大小
buffer , //讀數(shù)據(jù)的緩沖區(qū)
length , //讀數(shù)據(jù)的長度
(unsigned long *)&nBytes , //驅(qū)動返回的數(shù)據(jù)的實際長度
NULL);
限于篇幅,其他程序代碼從略。
6.結(jié)束語
本文的創(chuàng)新點是充分發(fā)揮了CY7C68013的優(yōu)勢,利用FX2的內(nèi)部可編程狀態(tài)機(jī)GPIF實現(xiàn)了與外圍FIFO“無膠”連接,避免了使用外圍ASIC或者CPLD、FPGA等的麻煩,系統(tǒng)升級方便。整個電路結(jié)構(gòu)緊湊,占用面積小,便于攜帶。
本文采用Cypress公司的USB2.0芯片CY7C68013設(shè)計了一種通用的高速雙路同步數(shù)據(jù)采集系統(tǒng),通過將其與高精度激光縱模分析儀連接進(jìn)行試驗,證明該系統(tǒng)實現(xiàn)了數(shù)據(jù)的高速實時傳輸,達(dá)到了預(yù)先設(shè)計的目標(biāo)。隨著USB口的進(jìn)一步普及和計算機(jī)的發(fā)展,本文設(shè)計的這種USB數(shù)據(jù)采集系統(tǒng)必將得到更加廣泛的應(yīng)用。
相關(guān)閱讀:
- ...· “芯創(chuàng)杯”首屆高校未來汽車人機(jī)交互設(shè)計大賽報名正式啟動
- ...· 探秘第二屆衛(wèi)藍(lán)山鷹“創(chuàng)新·共享”試驗技術(shù)論壇!
- ...· “2018中國半導(dǎo)體生態(tài)鏈大會”在江蘇省盱眙舉行
- ...· 新主題新規(guī)劃,CITE 2019瞭望智慧未來
- ...· 從汽車到工廠,TI毫米波傳感器致力于創(chuàng)造更智能的世界
- ...· 意法半導(dǎo)體(ST)、Cinemo和Valens在CES 2018展上聯(lián)合演示汽車信息娛樂解決方案
- ...· 北京集成電路產(chǎn)業(yè)創(chuàng)新發(fā)展高峰論壇即將在京召開
- ...· 三菱電機(jī)強(qiáng)勢出擊PCIM亞洲2017展
- ...· GPGPU國產(chǎn)替代:中國芯片產(chǎn)業(yè)的空白地帶
- ...· 物聯(lián)網(wǎng)產(chǎn)品設(shè)計中Wi-Fi連接的四個關(guān)鍵因素
- ...· 第三屆中國MEMS智能傳感器產(chǎn)業(yè)發(fā)展大會即將于蚌埠拉開帷幕
- ...· IAIC專項賽演繹“中國芯“應(yīng)用創(chuàng)新,信息安全高峰論壇亮劍海寧
- ...· 智能控制有源鉗位反激
- ...· 解讀5G毫米波OTA 測試技術(shù)
- ...· 多個市場高速增長推動Molex加強(qiáng)汽車領(lǐng)域的發(fā)展
- ...· 中國綠色制造聯(lián)盟成立大會召開在即 政產(chǎn)學(xué)研用共探綠色發(fā)展新模式
- ...· Efinix® 全力驅(qū)動AI邊緣計算,成功推出Trion™ T20 FPGA樣品, 同時將產(chǎn)品擴(kuò)展到二十萬邏輯單元的T200 FPGA
- ...· 英飛凌亮相進(jìn)博會,引領(lǐng)智慧新生活
- ...· 三電產(chǎn)品開發(fā)及測試研討會北汽新能源專場成功舉行
- ...· Manz亞智科技跨入半導(dǎo)體領(lǐng)域 為面板級扇出型封裝提供化學(xué)濕制程、涂布及激光應(yīng)用等生產(chǎn)設(shè)備解決方案
- ...· 中電瑞華BITRODE動力電池測試系統(tǒng)順利交付北汽新能源
- ...· 中電瑞華FTF系列電池測試系統(tǒng)中標(biāo)北京新能源汽車股份有限公司
- ...· 中電瑞華大功率高壓能源反饋式負(fù)載系統(tǒng)成功交付中電熊貓
- ...· 中電瑞華國際在電動汽車及關(guān)鍵部件測評研討會上演繹先進(jìn)測評技術(shù)
- ...· 數(shù)據(jù)采集終端系統(tǒng)設(shè)備
- ...· 簡儀科技踏上新征程
- ...· 易靈思® 宣布 AEC-Q100 資質(zhì)認(rèn)證和汽車系列產(chǎn)品計劃
- ...· 易靈思® 宣布擴(kuò)充高性能 鈦金系列™ FPGA 產(chǎn)品 鈦金系列產(chǎn)品擴(kuò)充至包含 1M 邏輯單元的 FPGA
- ...· 易靈思® 宣布Trion® Titanium 在臺積電 (TSMC) 16納米工藝節(jié)點流片
- ...· TI杯2019年全國大學(xué)生電子設(shè)計競賽頒獎典禮在京舉行
- ...· BlackBerry QNX虛擬機(jī)獲得全球首個汽車安全完整性等級(ASIL) ‘D’認(rèn)證
- ...· 威馬汽車選擇BlackBerry助力下一代汽車