基于CY7C68013的高速數據傳輸系統的設計
摘 要: 采用Cypress公司的CY7C68013芯片設計了通用的USB接口,結合MAX7128的串/并/串轉換和光纖收發(fā)系統,實(shí)現數據的高速傳輸。介紹了系統的軟硬件結構, 詳細介紹了固件設計和WDM驅動(dòng)程序的結構、特性、工作機制、軟件流程及與USB設備通信的方法。測試表明,該系統達到了預期的設計目標和實(shí)用要求。
本文引用地址:http://dyxdggzs.com/article/157107.htmUSB控制器是以USB串口引擎為主的專(zhuān)用集成電路,并可延伸至對其進(jìn)行管理的MCU以及相應的軟硬件。目前市場(chǎng)上供應的USB控制器主要有2種:帶USB接口的單片機(MCU)或純粹的USB接口芯片。帶USB接口的單片機可分為2類(lèi):一類(lèi)是從底層設計專(zhuān)用于USB控制的單片機,如Cypress公司的CY7C63513、CY7C64013等[1],由于開(kāi)發(fā)工具的專(zhuān)用性,往往應用于各種專(zhuān)業(yè)應用場(chǎng)合,如微機主板等[2-4];另一類(lèi)是增加了USB接口的普通單片機,如Intel公司的8X931、8X930以及Cypress公司的EZ-USB,由于均基于8051內核,因而得到了廣泛應用。
1 CY7C68013與系統結構簡(jiǎn)介
Cypress公司的CY7C68013芯片是集成USB2.0協(xié)議的微處理器,支持12 Mb/s的全速傳輸和480 Mb/s的高速傳輸,具有控制傳輸、中斷傳輸、塊傳輸和同步傳輸4種傳輸方式,內部包括一個(gè)增強型8051處理器內核、一個(gè)串行接口引擎(SIE)、一個(gè)USB收發(fā)器、8.5 KB片上RAM和4 KB FIFO存儲器以及一個(gè)通用可編程接口(GPIF)。8051可工作在48 MHz/24 MHz/12 MHz時(shí)鐘頻率,內部可自動(dòng)產(chǎn)生480 MHz的頻率供USB2.0串行收發(fā)引擎使用。由于數據緩沖器與SIE相連接,數據進(jìn)入收發(fā)器后,通過(guò)SIE可直接轉向FIFO,通過(guò)8 bit或16 bit數據接口與外設連接,存取數據。微控制器不參與數據傳輸,但允許以FIFO或RAM的方式訪(fǎng)問(wèn)這些共享FIFO,從而實(shí)現低速控制、高速傳輸。CY7C68013有GPIF/SLAVE FIFO/GPIO 3種接口模式,本系統采用Slave FIFO接口模式,選用控制傳輸和塊傳輸2種方式,外部控制器可像普通FIFO一樣對FIFO進(jìn)行讀寫(xiě)。
本數據傳輸系統分為3部分:發(fā)送端和接收端、CY7C68013控制器、具有并/串(或串并轉換)功能的CPLD芯片(MAX7128)以及光纖傳輸模塊。其中,CY7C68013和MAX7128之間采用并行連接方式,MAX7128與激光發(fā)送(接收)模塊間是串行連接,如圖1(a)所示。
圖1(a)中,主機將數據發(fā)送到CY7C68013端點(diǎn)FIFO緩沖器中,然后CY7C68013將端點(diǎn)FIFO中的數據分字節放到一組I/O口上,并且使能讀信號,MAX7128讀取I/O上的邏輯值,當接收512 B后,MAX7128將這512 B的數據從低到高串行發(fā)送給激光發(fā)送模塊;數據經(jīng)過(guò)光纖傳輸,進(jìn)入激光接收模塊,輸出串行信號,通過(guò)MAX7128實(shí)現串并轉換,數據寬度為8 bit,通過(guò)CY7C68013的從屬FIFO的寫(xiě)入時(shí)序即可將數據寫(xiě)入CY7C68013的端點(diǎn)緩沖器中。
USB數據傳輸接口開(kāi)發(fā)分為4個(gè)層次,接口硬件、接口軟件、驅動(dòng)和應用程序如圖1(b)所示。
評論