USB20接口和DSP構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)_第1頁
USB20接口和DSP構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)_第2頁
USB20接口和DSP構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)_第3頁
USB20接口和DSP構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)_第4頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、USB2.0接口和 DSP構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)摘要: 介紹一個基于 USB2.0 接口和 DSP的高速數(shù)據(jù)采集處理系統(tǒng)的工作原理、設(shè)計及實 現(xiàn)。該高速數(shù)據(jù)采集處理系統(tǒng)采用 TI 公司的 TMS320C6000數(shù)字信號處理器和 Cypress 公 司的 USB2.0 接口芯片,可以實現(xiàn)高速采集和實時處理,有著廣泛 的應(yīng)用前景。關(guān)鍵詞:USB2.0 CY7C68013 DSP高 速數(shù)據(jù)采集隨著數(shù)字信號處理理論和計算機的不斷發(fā)展,現(xiàn)代工業(yè)生產(chǎn)和科學(xué)技術(shù)研究都需要 借助于數(shù)字處理方法。進行數(shù)字處理的先決條件是將所研究的對象進行數(shù)字化,因此數(shù) 據(jù)采集與處理技術(shù)日益得到重視。在圖像處理、瞬態(tài)信號檢測、軟

2、件無線電等一些領(lǐng) 域,更是要求高速度、高精度、高實時性的數(shù)據(jù)采集與處理技術(shù)?,F(xiàn)在的高速數(shù)據(jù)采集 處理卡一般采用高性能數(shù)字信號處理器( DSP)和高速總線技術(shù)的框架結(jié)構(gòu)。 DSP用于完 成計算量巨大的實時處理算法,高速總線技術(shù)則完成處理結(jié)果或者采樣數(shù)據(jù)的快速傳 輸。 DSP主要采用 TI 或者 ADI 公司的產(chǎn)品,高速總線可以采用 ISA、 PCI、 USB等總線技 術(shù)。目前,使用比較廣泛的是 PCI 總線,雖然其有很多優(yōu)點,但是存在如下嚴重缺陷; 易受機箱內(nèi)環(huán)境的影響,受計算機插槽數(shù)量的地址、中斷資源的限制而不可能掛接很多 設(shè)備等。 USB總線由于具有安裝方便、高帶這、易擴展等優(yōu)點,其中USB

3、2.0 標準有著高達 4800bps 的傳輸速率,已經(jīng)逐漸成為計算機接口的主流。本文介紹一個采用USB2.0 接口和高性能 DSP的高速數(shù)據(jù)采集處理系統(tǒng),主要是為光纖通信中密集波分復(fù)用系統(tǒng)的波 長檢測與調(diào)整所設(shè)計的,也可以應(yīng)用于像圖像處理、雷達信號處理等相關(guān)領(lǐng)域。1 高速數(shù)據(jù)采集處理系統(tǒng)原理及器件選用整個高速數(shù)據(jù)采集處理系統(tǒng)的硬件構(gòu)成為:高速ADC、高速大容量數(shù)據(jù)緩沖、高性能 DSP和 USB2.0接口。系統(tǒng)的原理框圖如圖 1 所示。高性能 DSP采用 TI 公司的 TMS320C6000系列定點 DSP中的 TMS320C6203B;高速 ADC 采用 TI 公司的 ADS5422, 14

4、位采樣,最高采樣頻率為 62MHz;PC機接口采用 USB2.0,理 論最大數(shù)據(jù)傳輸速率為 480Mbps,器件選用 Cypress 公司 EZ-USB FX2系列中的 CY7C68013;數(shù)據(jù)緩沖采用 IDT 公司的高速大容量 FIFO 器件 IDT72V2113;程序存儲在 Flash 存儲器中,器件選用 SST291E010。下面逐一介紹各個器件的主要特性。1)TMS320C6203BTMS320C6203B是美國 TI 公司高性能數(shù)字信號處理器 TMS320C6000系列的一種,采 用修正的哈佛總線結(jié)構(gòu),共有 1 套 256 位的程序總線、兩套 32 位的程序總線和 1套 32 位的

5、DMA專用總線;內(nèi)部有 8 個功能單元可以并行操作,工作頻率最大為300MHz,最大處理能力為 2400MIPS;內(nèi)部集成了外圍設(shè)備接口,如外部存儲器接口(EMIF)、外部擴展總線( XB)、多通道緩沖串口( McBSPs)和主機接口( HPI),與外部存儲器、協(xié)處理 器、主機以及串行設(shè)備的連接非常方便。2)ADS5422ADS5422是由美國 TI 公司生產(chǎn)的高速并行 14 位模數(shù)轉(zhuǎn)換器,其最高采樣頻率達到 62MHz,采樣頻率為 100MHz時, SNR為 72dB, SFDR為 85dB。模擬信號輸入可以是單端輸 入方式或者差分輸入方式,最高輸入信號峰峰值為4V,單一 5V 電源供電。輸

6、出數(shù)字信號 完全兼容 3.3V 器件,并且提供輸入信號滿量程標志以及輸出數(shù)字信號有效標志,從而方 便和其它器件的連接。(3)IDT72V2113IDT72V2113是由美國 IDT 公司生產(chǎn)的高速大容量先進先出存儲器件(FIFO)。其最高工作頻率為 133MHz;容量為 512KB,可以通過引腳方便地將容量設(shè)置成512K9bit 或者 256K18bit 兩種方式; IDT72V2113 可以設(shè)置標準工作模式或者 FWFT( First Word Fall Through )工作模式,并提供全滿、半滿、全空、將滿以及將空等五種標志信號; 非常方便進行容量擴展。容量擴展是 IDT72V2113

7、的一大特點,擴展方式可分為字長擴展 和字深擴展。通過容易擴展可以由多片 IDT72V2113 形式更大容量的緩沖,并且電路連接 簡單、可靠。(4)CY7C68013CY7C68013是美國 Cypress 公司推出的 USB2.0 芯片,是一個全面集成的解決方案, 它占用更少的電路板空間,并縮短開發(fā)時間。CY7C68013主要結(jié)構(gòu)如下:包括 1 個 8051處理器、 1個智能串行接口引擎( SIE)、 1個 USB收發(fā)器、 16KB片上 RAM(其中包括 4KB FIFO)存儲器以主 1 個通用可編程接口( GPIF)。圖3CY7C68013獨特的架構(gòu)具有如下特點: 包括 1 個智能串行的接口

8、引擎( SIE ),它執(zhí)行所有基本的 USB功能,將嵌入的 MCU解放出來以用于實現(xiàn)其它豐富的功能,以保證持續(xù)高速有效的數(shù)據(jù)傳輸; 具有 4KB的大容量 FIFO 用于數(shù)據(jù)緩沖,當作為從設(shè)備時,可采用 Synchronous/Asynchronous FIFO 接口與主設(shè)備(如 ASIC, DSP等)連接;當作為主設(shè)備 時,可通過通用可編程接口( GPIF)形式任意 的控制波形來實現(xiàn)與其它從設(shè)備連接,能 夠輕易地兼容絕大多數(shù)總線標準,包括ATA、 UTOPIA、EPP和 PCMCIA等; 固件軟配置,可將需要在 CY7C68013上運行的固件,存放在主機上,當 USB設(shè)備 連上主機后,下載到設(shè)

9、備上,這樣就實現(xiàn)了在不改動硬件的情況下很方便地修改固件; 能夠充分實現(xiàn) USB2.0(2000 版) 協(xié)議,并向下兼容 USB1.1。2 高速數(shù)據(jù)采集處理系統(tǒng)的硬件連接21 模擬信號輸入電路ADS5422的模擬信號輸入可以采取單端輸入方式或者差分輸入方式。單端輸入方式 連接比較簡單,但抗噪性能差,所以我們采取差分輸入方式,以盡量減少信號噪聲以及 電磁的干擾,尤其是采用差分輸入方式可以將所有偶次諧波通過正反反個輸入信號基本 上互相抵消。ADS5422的模擬信號差分輸入方式需要同時使用IN 和 IN 引腳,其硬件連接方法如圖 2 所示。圖中,首先使用放大器 OPA687以及 RF 變壓器將單端信號

10、轉(zhuǎn)換成差分信號, 然后輸入到 ADS5422,其中 ADS5422的公共端 CM和 RF變壓器的公共端連接, RF變壓器 的匝數(shù)比應(yīng)該根據(jù)信號確定。為了增強信號的穩(wěn)定性,在ADS5422每個信號的輸入前加上 RC低通濾波電路,圖 2 中推薦 Rt 為 50 , Rin 為 22 , Cin 為 10pF,這些元件也可 以根據(jù)具體的信號進行調(diào)整,一般情況下電阻值在10 100 之間,電容值在 10200pF之間。圖4page_break 22 ADS5422與 IDT72V2113的連接雖然 ADS5422的供電電壓為 5V,但其輸出的數(shù)字信號電平兼容 3.3V 電平,因此不 需要電平轉(zhuǎn)換芯片,

11、只要將 ADS5422的數(shù)據(jù)線與 IDT72V2113 的數(shù)據(jù)線相連即可。但是, ADS5422采樣和存儲采樣數(shù)據(jù)到 IDT72V3113 中,這兩個操作對時序配置要求非常嚴格, 如果兩者時序關(guān)系配合得不是很好,就會發(fā)生數(shù)據(jù)存儲出錯或者掉數(shù)。如何簡單、可靠 地實現(xiàn)采樣和存儲是設(shè)計這部分電路的難點。一般的方法是,通過可編程邏輯器件 (CPLD或 FPGA)來實現(xiàn) ADC與 FIFO存儲器之間的時序,即由 CPLD或 FPGA來控制 ADC 采樣和 FIFO 存儲器的寫操作。但是,通過仔細查看ADS5422和 IDT72V2113 的工作時序圖,找到了一種簡單可靠的實現(xiàn)方法,此方法不需要CPLD或

12、 FPGA就可以實現(xiàn)兩者的時序配合。首先分析 ADS5422的工作時序圖,如圖 3 所示,其中 t1 為采樣時鐘上跳沿到輸出數(shù) 據(jù)無效之間的時間間隔,即數(shù)據(jù)保持時間,其大小為3ns 。查看 IDT72V2113 的相關(guān)文檔可知,對其進行寫操作時,數(shù)據(jù)線的保持時間大于 1ns 即可滿足要求。因此, ADS5422與 IDT72V2113 之間的時序配合可以采用以下簡單的實現(xiàn)方法:ADS5422的采樣時鐘和IDT72V2113 的寫時鐘采用同一個時鐘源,這樣,每一個時鐘的上跳沿,ADS5422進行模數(shù)轉(zhuǎn)換,同時將上個時鐘周期內(nèi)輸出的采樣數(shù)據(jù)存儲到DT72V2113內(nèi)部。23 C6203B 與 ID

13、T72V2113 的連接C6203B與 IDT72V2113 的連接是通過 C6203B外部擴展總線( XB)。 C6203B的外部擴 展總線( XB)寬度為 32 位,可以實現(xiàn)與同步 FIFO無縫連接,可以同時無縫實現(xiàn)四個 FIFO寫接口或者實現(xiàn) 3個 FIFO寫接口及 1個 FIFO讀接口。通過無縫連接實現(xiàn) FIFO讀接 口, FIFO 必須連接到 XCE3上,數(shù)據(jù)通過 DMA方式從 IDT72V2113 傳送到 C6203B 的片內(nèi) RAM中,具體連接如圖 4所示。圖 4中,4片 IDT72V2113經(jīng)過字長和字深擴展形成 2MB 的數(shù)據(jù)輸入緩沖,輸入數(shù)據(jù)總線( D0D15)、輸出數(shù)據(jù)總

14、線( Q0 Q15)、讀使能 ( REN)、讀時鐘( RCLK)、寫使能( WEN)、寫時鐘( WCLK)和將空標志信號( PAE)是 由 4 片 IDT72V2113 的相應(yīng)信號組合形成的; XCE3為外部擴展總線( XB)的空間選擇信 號, XFCLK為外部擴展總線( XB)的輸出時鐘, EXT_INT4是 C6203B的外部中斷信號 4, DX0用作通用輸出口,控制 IDT72V2113 的寫使能信號。2.4 CY7C68013 與 C6203B的連接CY7C68013是一個非常方便的 USB2.0 實現(xiàn)方案,它提供與 DSP或者 MCU連接的接 口,連接方法有兩種: Slave FIF

15、Os 和 Master 可編程接口 GPIF。在本方案中,選用了 Slave FIFOs 方式,異步讀寫。 Slave FIFOs 方式是從機方式, DSP可以像讀寫普通 FIFO 一樣對 CY7C68013內(nèi)部的多層緩沖 FIFO 進行讀寫。具體的電路連接如圖5 所示。FLAGA、 FLAGB和 FLAGC是 CY7C68013內(nèi)部 FIFO 的狀態(tài)標志, C6203B通過通用 I/O 口來 獲得 FIFO 的空、半滿(由用戶設(shè)定半滿的閾值)和滿等狀態(tài)信息。C6203B對 CY7C68013內(nèi)部 FIFO 的選擇,以及數(shù)據(jù)包的提交也是通過通用 I/O 口來實現(xiàn)。 C6203B通過 EMIF

16、接 口的 CE2空間對 CY7C68013進行讀寫操作。工作過程為: DSP通過 USB向 PC 發(fā)送數(shù)據(jù) 時,首先查看空、半滿和滿這三個狀態(tài)信號,然后向USB寫入適當大小的數(shù)據(jù),以保證數(shù)據(jù)不會溢出; PC機通過 USB向 DSP發(fā)送命令字時, USB通過中斷方式通知 DSP讀取命 令字。3 USB 軟件設(shè)計USB接口開發(fā)中有相當大的工作量是關(guān)于USB軟件的開發(fā), USB軟件包括三方面的工作:固件( firmware )設(shè)計,驅(qū)動程序設(shè)計和主機端應(yīng)用程序的設(shè)計。31 固件設(shè)計固件是運行在 CY7C68013上的程序,可采用匯編語言或 C 語言設(shè)計,其主要功能是 控制 CY7C68013接收并處

17、理 USB驅(qū)動程序的請求(如請求設(shè)備描述符、請求或設(shè)置設(shè)備 狀態(tài),請求或設(shè)置設(shè)備接口等 USB2.0 標準請求)、控制 CY7C68013接收應(yīng)用程序的控制 指令、通過 CY7C68013存放數(shù)據(jù)并實時上傳至 PC等。本方案中的固件設(shè)計思路如下: 使 CY7C68013工作于異步從 FIFO(Asynchronous Slave FIFO )模式。相應(yīng)的寄 存器操作為: IFCONFIG=0xCB。CY7C68013具有多種工作方式,除了可以作為能夠產(chǎn)生任意控制波形的主控芯片 外,即使作為從設(shè)備,也可選擇異步還是同步方式。由于DSP的關(guān)系,本方案選擇異步從方式。 將 4KB 的 FIFO 對應(yīng)

18、兩個端點( EndPoint ),即 EndPoint2 和 EndPoint6 。相應(yīng)的 寄存器操作為: EP2CFG=0xA0,EP6CFG=0xF。2EndPoint2 與 EndPoint6 分別對應(yīng) 2KB 的內(nèi)裝中 FIFO(下文分別稱為 FIFO2、 FIFO6),存放 USB需要上傳與接收的數(shù)據(jù)。其中 EndPoint2 為 OUT型,負責從主機接收 數(shù)據(jù); EndPoint6 為 IN 型,負責向主機發(fā)送數(shù)據(jù)。另外, EndPoint2 與 EndPoint6 均采 用批量( BULK)傳輸方式,這種方式相對于其它USB2.0 定義的傳輸方式具有數(shù)據(jù)可靠、傳輸速率高等特點,是

19、最常用的傳輸方式。 對 FIFO 進行配置。相應(yīng)的寄存器操作為: EP2FIFOCFG=0x1,1 EP6FIFOCFG=0x0。D 本方案將 FIFO2、FIFO6 設(shè)置成自動方式。這里所謂“自動”,是指在數(shù)據(jù)的傳輸過 程中,不需要 CY7C68013的 8051 內(nèi)核參與。如有特殊需要可以設(shè)成手動方式,這樣8051就可以對數(shù)據(jù)進行修改,如圖 6所示。另外還將 FIFO配置成 16 位接口。 其它操作。為了完善整個 USB傳輸功能,提高固件的健壯性,還必須配以其它設(shè) 計,這包括 FIFO 的自動清空復(fù)位,個性化命令等功能,在此就不進行詳細討論了。32 驅(qū)動程序設(shè)計USB系統(tǒng)驅(qū)動程序采用分層結(jié)

20、構(gòu)模型,分別為較高級的USB設(shè)備驅(qū)動程序和較低級的 USB函數(shù)層。其中 USB函數(shù)層由兩部分組成:較高級的通用串行總線驅(qū)動程序模塊 ( USBD)和較低級的主控制器驅(qū)動程序模塊(HCD)。在上述 USB分層模塊中, USB函數(shù)層( USBD及HCD)由 Windows提供,負責管理 USB設(shè)備驅(qū)動程序和 USB控制器之間的通 信;加載及卸載 USB驅(qū)動程序;與 USB設(shè)備通用端點( EndPoint )建立通信并執(zhí)行設(shè)備 配置、數(shù)據(jù)與 USB協(xié)議框架和打包格式的雙向轉(zhuǎn)換任務(wù)。目前Windows 提供有多種 USB設(shè)備驅(qū)動程序,但并不針對實時數(shù)據(jù)采集設(shè)備,因此USB設(shè)備驅(qū)動程序需由開發(fā)者自己編寫

21、。開發(fā) USB設(shè)備驅(qū)動程序,可采用 Numega公司的開發(fā)包 Driver Works 和 Microsoft 公司的 2000DDK,并以 VC+6.0作為輔助開發(fā)環(huán)境。 Driver Works 提供的驅(qū)動向?qū)?,?根據(jù)用戶的需要,自動生成代碼框架,減少了開發(fā)的難度,縮短了開發(fā)的周期。但是, Cypress 公司為了方便用戶開發(fā) USB接口,在 CY7C68013的開發(fā)包中提供了一個通用驅(qū)動 程序,該程序可不加修改,經(jīng) DDK編譯后直接使用。在本設(shè)計方案中,采用的就是這個 通用驅(qū)動程序。33 應(yīng)用程序設(shè)計主機應(yīng)用程序是主要實現(xiàn)從高速數(shù)據(jù)采集處理板該取處理后的數(shù)據(jù)、存儲、顯示處 理結(jié)構(gòu)以及向數(shù)據(jù)采集處理板發(fā)送控制命令。在Windows 2000 下,我們使用的應(yīng)用程序開發(fā)工具是 VC+6.0。4 系統(tǒng)工作原理上電后, ADS5422一直工作,采樣產(chǎn)生的數(shù)據(jù)是否存儲到I

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論