基于USB的DSP高速數(shù)據(jù)傳輸系統(tǒng)_第1頁
基于USB的DSP高速數(shù)據(jù)傳輸系統(tǒng)_第2頁
基于USB的DSP高速數(shù)據(jù)傳輸系統(tǒng)_第3頁
基于USB的DSP高速數(shù)據(jù)傳輸系統(tǒng)_第4頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、    基于USB的DSP高速數(shù)據(jù)傳輸系統(tǒng)        張 鑫1, 蘇東林1, 李保權 時間:2008年04月11日     字 體: 大 中 小        關鍵詞:        摘要:介紹了在TMS320C32系列DSP上,利用EZ-USB FX2微控制器擴展USB接口

2、的技術,實現(xiàn)了DSP與計算機之間的高速數(shù)據(jù)傳輸。關鍵詞:USB DSP FX2 USB驅動 固件數(shù)字信號處理器DSP以其運算速度快的特點已被廣泛應用。但目前絕大部分DSP處理器僅提供了串口通訊方式,該方式僅適合少量數(shù)據(jù)的傳送,不能滿足通訊、圖像處理等需要高速數(shù)據(jù)交換場合的應用。由于DSP運算過程中產(chǎn)生的大量數(shù)據(jù)不能實時向計算機傳輸,從而成為拓展DSP應用領域的一個瓶頸。而近幾年發(fā)展起來的通用串行總線USB技術,能夠滿足設備間的高速數(shù)據(jù)傳輸。如果將USB技術應用到DSP處理器上,就可以徹底地解決DSP設備與計算機間大數(shù)據(jù)量的交換問題,從而極大地擴展了DSP的應用領域。本文實現(xiàn)了在TMS320C3

3、2系列DSP上,利用EZ-USB FX2微控制器擴展USB接口的技術,實現(xiàn)了DSP與計算機之間的高速數(shù)據(jù)傳輸。1 USB簡介1。2 系統(tǒng)構成2.1 EZ-USB FX2性能特點為了實現(xiàn)USB2.0的高速帶寬,把FX2的端點FIFO和從屬FIFO(實現(xiàn)和外部邏輯器件或處理器接口的FIFO)集成在一起以減少內(nèi)部數(shù)據(jù)傳輸時間。并且FX2的FIFO有獨特的“量子”特性22.2 TMS320C32性能特點數(shù)字信號處理器采用TI公司的TMS320C32,這是TI公司的第一代浮點DSP芯片。TMS320C32的性能特點:具有16M字的空間,每字32位。這16M字空間包括程序存儲區(qū)、數(shù)據(jù)存儲區(qū)和I/O空間;為

4、32位處理器,具有32位內(nèi)部存儲器、32/40位內(nèi)部寄存器、32位內(nèi)部總線,還支持8位、16位數(shù)據(jù)操作,并且包含了兩個512×32位的快速RAM塊;C32通過24位的地址總線、32位的數(shù)據(jù)總線和三組選通信號IOSTRB、STRB0和STRB1訪問外部存儲器;TMS320C32是在TMS320C30和TMS320C31基礎上進行了簡化和改進。在結構上的改進包括可變寬度的存儲器接口、更快速的指令周期時間、可設置優(yōu)先級的雙通道DMA處理器、靈活的引導程序裝入方式、可重定位的中斷向量表以及可選的邊緣/電平觸發(fā)中斷方式等。特別是其增強的外部存儲器接口,使得對外部數(shù)據(jù)的操作更加方便,存儲器接口電

5、路的設計也更加靈活,因此在許多實時數(shù)據(jù)采集和信號處理的系統(tǒng)中得到了廣泛的應用34。2.3 系統(tǒng)設計FX2有三種工作模式:端口、GPIF和從FIFO(Slave FIFO)模式。在本系統(tǒng)中,F(xiàn)X2工作于從FIFO模式下,TMS320C32作為主控(Master),直接控制FIFO數(shù)據(jù)的讀寫。4KB的FIFO空間全部分配給了EP2端點,使其形成四重1 024字節(jié)的緩沖。當C32向其中一個FIFO寫“滿”時,F(xiàn)X2自動將該FIFO轉換到外部接口端,排隊等候PC機讀??;并將EP2中下一個為“空”的FIFO轉移上來,供C32繼續(xù)寫數(shù)據(jù)。USB的數(shù)據(jù)傳輸有四種模式:塊傳輸(Bulk Transfers)、

6、中斷傳輸(Interrupt Transfers)、同步傳輸(Isochronous Transfers)、控制傳輸(Control Transfers)。當需要快速傳輸大批量的準確數(shù)據(jù)時,一般采用塊傳輸模式;而當傳輸實時性較強的數(shù)據(jù)時,則應采用中斷傳輸模式。在該系統(tǒng)中采用了塊傳輸模式。TMS320C32與FX2的連接如圖2所示。其中,I/O和WR#分別是C32的一個通用I/O信號和讀寫使能信號,PKTEND用于強制FX2發(fā)送FIFO內(nèi)部數(shù)據(jù)。例如,將EP2設置為自動傳送模式,當C32向EP2中寫滿1 024個字節(jié)后,EP2自動將數(shù)據(jù)轉移至USB端口,供上位機讀?。划擟32發(fā)送的數(shù)據(jù)不是1 0

7、24的整數(shù)倍時,最后一個數(shù)據(jù)包因為比1 024小所以不會被EP2發(fā)送。這時有兩種方法:一是用無效數(shù)據(jù)將EP2補充滿;二是使用PKTEND信號在PKTEND的上跳沿處,F(xiàn)X2將EP2內(nèi)的剩余數(shù)據(jù)轉移至USB5。3 軟件設計3.1 固件設計在該系統(tǒng)中,F(xiàn)X2的固件完成如下工作:(1)配置如下描述符。; Endpoint DescriptordbDSCR_ENDPNT_LEN; 描述符長度dbDSCR_ENDPNT; 描述符類型db82H; 端點號是2,輸出OUTdbET_BULK; 端點類型db00H; 包的大小,低字節(jié)(LSB)db04H; 包的大小,高字節(jié)(MSB)db00H; 檢測間隔(2)

8、初始化一些寄存器的值,使之滿足系統(tǒng)設計。下面是采用keil C51編寫的C語言固件程序的主要代碼:void TD_Init(void)CPUCS = 0x10; /CLKSPD1:0=10, 48MHz IFCONFIG = 0xCB; /異步從FIFO模式REVCTL = 0x03; EP2CFG=0xE8; /方向OUT,塊傳輸,四緩沖,1024字節(jié)PORTACFG = 0x40; /將PA7管腳設置為SLCS,從FIFO的片選信號FIFORESET = 0x80; FIFORESET = 0x02;FIFORESET = 0x00; EP2FIFOCFG = 0x0D; /配置EP2為自

9、動方式,16位總線EP2AUTOINLENH=0x04;/數(shù)據(jù)包大小為1024字節(jié)EP2AUTOINLENL=0x00;可以看出,一旦FX2芯片上電后、CPU完成以上寄存器的初始化時,就不再干預FIFO的工作了,C32直接通過FIFO就建立起了與PC機之間的USB通道。3.2 驅動程序6。WDM型的USB驅動程序體系結構如圖3所示。該系統(tǒng)采用Cypress公司提供的GPD(General Purpose Driver)模板。該模板提供了一個上層的程序代碼來實現(xiàn)底層的驅動程序的編寫,能夠完成USB設備的標準請求及Cypress公司的電路所特定的請求和數(shù)據(jù)的傳輸。GPD所提供的接口函數(shù)具有通用性,

10、包括打開、關閉設備及USB的IO操作等7。本應用在沒有改變所提供的EZUSBSYS的驅動程序的情況下,實現(xiàn)主機和外設的數(shù)據(jù)通信。3.3 應用程序設計應用程序是用戶操作計算機的界面,界于用戶與底層驅動之間。應用程序通過調(diào)用WIN32的API函數(shù)實現(xiàn)和驅動程序之間的通訊,完成對USB外設的讀取和發(fā)送。首先,打開設備(程序打開設備“DeviceName”的方式為通用讀寫方式,文件共享讀寫):HANDLE hDevice=CreateFile (DeviceName, /指向文件名的指針GENERIC_WRITEIGENERIC_READ, /訪問模式(寫/讀)FILE_SHARE_WRITEFILE

11、_SHARE_READ, /共享模式NULL, /指向安全屬性的指針OPEN_EXISTING, /如何創(chuàng)建0, /文件屬性NULL/用于復制文件句柄);然后進行數(shù)據(jù)傳輸,其代碼為:BOOL bResult = DeviceloControl (hDevice,direction,&Control,sizeof (xxxx_TRANSFER_CONTROL),buffer,length, (unsigned long*)&nBytes,NULL ),其中,hDevice為設備句柄;direction為數(shù)據(jù)傳輸?shù)姆较?;Control為四種USB數(shù)據(jù)傳輸?shù)姆绞竭x擇;size(xxxx_TRANSFER_CONTROL)為數(shù)據(jù)格式所需存儲空間的大??;buffer為所傳輸數(shù)據(jù)的緩沖區(qū)地址指針;nBytes為傳輸完成后實際傳輸?shù)臄?shù)據(jù)個數(shù)。數(shù)據(jù)傳輸格式為USB設備的統(tǒng)一規(guī)范,可參照Windows DDK中的相應文件。本系統(tǒng)用于CCD成像檢測系統(tǒng)中,設備成像后的圖像經(jīng)USB向計算機傳輸。如

溫馨提示

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

評論

0/150

提交評論