《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > USB3.0超高速多串口傳輸系統(tǒng)的設(shè)計(jì)
USB3.0超高速多串口傳輸系統(tǒng)的設(shè)計(jì)
來源:電子技術(shù)應(yīng)用2013年第9期
朱耀麟1,2, 馬慧銘1
1. 西安工程大學(xué) 電子信息學(xué)院, 陜西 西安 710048; 2. 西安理工大學(xué) 自動(dòng)化與信息工程學(xué)院,陜西 西安 710048
摘要: 設(shè)計(jì)了一種基于USB3.0和FPGA的多串口傳輸系統(tǒng),以實(shí)現(xiàn)超高速數(shù)據(jù)傳輸。介紹了系統(tǒng)的硬件設(shè)計(jì)框架及系統(tǒng)的軟硬件設(shè)計(jì)流程,給出了系統(tǒng)軟件設(shè)計(jì)框圖、FPGA設(shè)計(jì)邏輯模塊以及時(shí)序。最后給出了實(shí)驗(yàn)結(jié)果,驗(yàn)證了該系統(tǒng)的可行性。
中圖分類號: TN-9
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2013)09-0129-03
Design of ultra-high-speed and multi-serial transmission system based on USB3.0
Zhu Yaolin1,2, Ma Huiming1
1. Electronic Information College, Xi′an Polytechnic University, Xi’an 710048, China; 2. The Faculty of Automation &Information Engineering, Xi′an University of Technology, Xi’an 710048, China
Abstract: This article describes a multi-serial transmission system based on USB3.0 and FPGA to realize ultra-high-speed data transmission. Firstly, this article introduced the design framework of the system about hardware design; followed by the introduction of the system’s hardware and software design processes、the system software design diagram、the FPGA design logical module as well as the timing; finally, given the experimental results and verified the feasibility of the system.
Key words : USB3.0; multi-serial; ultra-high-speed data transmission

   多串口數(shù)據(jù)通信技術(shù)主要研究數(shù)據(jù)的多串口采集、存儲和處理。由于串口通信技術(shù)的廣泛應(yīng)用,使得多串口采集卡一直是研究的熱點(diǎn),從早期的基于PCI總線的多串口數(shù)據(jù)采集卡到后來的基于USB的多串口數(shù)據(jù)采集卡,以及現(xiàn)在的基于USB3.0的多串口數(shù)據(jù)采集卡。

    PCI采集卡由于使用不方便,逐漸被淘汰,目前USB傳輸系統(tǒng)被廣泛應(yīng)用。USB2.0理論傳輸速度為480 Mb/s,而USB3.0的傳輸速率可高達(dá)5 Gb/s,且在USB2.0的基礎(chǔ)上又增加了超高速傳輸模式[1]。本文設(shè)計(jì)的系統(tǒng)中有80個(gè)485傳輸通道,每個(gè)通道的速率為1~10 Mb/s,最高傳輸速率可達(dá)800 Mb/s,USB2.0已不能滿足此要求。因此本文采用了Cypress的CYUSB3014和Altera的CycloneIII系列FPGA,CYUSB3014保證與PC的傳輸性能,F(xiàn)PGA負(fù)責(zé)多串口數(shù)據(jù)的采集以及對CYUSB3014的控制[2]。
1 EZ-USB3.0 FX3與FPGA接口設(shè)計(jì)[3]
1.1 系統(tǒng)框架

  整個(gè)多串口數(shù)據(jù)采集與傳輸系統(tǒng)[4-6]框圖如圖1所示。圖中虛線部分為該系統(tǒng)的硬件框圖,整個(gè)系統(tǒng)由3部分組成, USB3.0芯片選擇了業(yè)界性能表現(xiàn)最好的Cypress的CYUSB3014芯片(簡稱FX3芯片),理論上通信速率可達(dá)4.8 Gb/s,該芯片除了擁有GPIF2.0接口可方便與外設(shè)進(jìn)行通信外,還有標(biāo)準(zhǔn)的SPI、UART、I2C、I2S與外設(shè)進(jìn)行通信;FPGA采用了Cyclone 3C40系列的芯片,邏輯資源、片上RAM以及I/O腳數(shù)目都能充分滿足本系統(tǒng)設(shè)計(jì);80路485傳輸芯片采用了ADI的ADM3485E,是一款3.3 V低功耗數(shù)據(jù)收發(fā)器,提供±15 kV的ESD保護(hù),適用于多點(diǎn)總線線路的半雙工通信。共模輸入范圍-7 V~+12 V,數(shù)據(jù)速率可達(dá)12 Mb/s,能滿足本系統(tǒng)的設(shè)計(jì)要求。

1.2 FX3與FPGA的通信設(shè)計(jì)
    FX3與FPGA通信主要分為兩類:
    (1)FX3對FPGA的配置信息:PC通過FX3將串口的相關(guān)信息發(fā)送給FPGA,如各串口的奇偶校驗(yàn)、波特率、空閑位、每路的統(tǒng)計(jì)信息等配置,此類信息數(shù)據(jù)量比較小;
    (2)FX3與FPGA的大容量數(shù)據(jù)通信:FPGA將485采集的數(shù)據(jù)通過FX3傳輸?shù)絇C。
    為了有效地利用FX3的超高速數(shù)據(jù)傳輸特性,針對這兩種不同的數(shù)據(jù)類型,本設(shè)計(jì)將兩種數(shù)據(jù)通道分開設(shè)計(jì),其中配置信息較少,而采集的485數(shù)據(jù)容量很大,為了不使配置信息數(shù)據(jù)打斷485數(shù)據(jù)通道,將配置信息和數(shù)據(jù)信息通過兩個(gè)獨(dú)立的通道進(jìn)行傳輸,其中配置信息采用了通過FX3的UART和FPGA進(jìn)行通信,通信格式如下:
    
    FX3每發(fā)一條配置參數(shù)給FPGA,F(xiàn)PGA都會返回相應(yīng)配置回應(yīng),并通知FX3可以繼續(xù)發(fā)送下一條配置信息,在配置信息都發(fā)送完成后,F(xiàn)X3最后會發(fā)送一條配置完成命令,此時(shí)FPGA會啟動(dòng)外圍接口電路進(jìn)入正常的數(shù)據(jù)采集過程[7]。
2 USB3.0芯片固件設(shè)計(jì)
    Cypress公司為USB3.0芯片提供了一個(gè)開發(fā)包,其中包括了典型的固件代碼。對USB3.0芯片固件的設(shè)計(jì),可利用EZ-USB FX3固件函數(shù)庫簡化加速USB3.0 固件程序的開發(fā)。固件程序主要完成的工作有:初始化、處理標(biāo)準(zhǔn)的USB設(shè)備請求及USB掛起時(shí)的電源管理等[8-9]。任務(wù)循環(huán)的流程圖如圖2所示。

3 FPGA邏輯設(shè)計(jì)
    FPGA采用了Altera公司的Cyclone III系列的3C40-C8,其邏輯門數(shù)有200萬門左右,最高工作頻率可以達(dá)到300 MHz。整個(gè)工程使用了Verilog語言編寫,整個(gè)工程的綜合、布局布線都是在Quartus11.0版本下進(jìn)行,仿真軟件使用Modelsim6.5se版本。本設(shè)計(jì)中FPGA邏輯設(shè)計(jì)主要包括485數(shù)據(jù)采集模塊及與FX3的讀寫時(shí)序控制邏輯,整個(gè)工程使用邏輯單元,片上RAM使用率接近系統(tǒng)的95%,整個(gè)系統(tǒng)工作頻率為100 MHz。
3.1 邏輯模塊設(shè)計(jì)
    系統(tǒng)的邏輯模塊分為時(shí)鐘模塊、FX3發(fā)送/接收緩存模塊、發(fā)送/接收控制模塊、FX3讀寫控制模塊、485接收模塊、485發(fā)送模塊以及配置串口參數(shù)模塊。
    整個(gè)系統(tǒng)的數(shù)據(jù)流分為兩個(gè)過程:485數(shù)據(jù)采集過程和485發(fā)送控制命令過程。
    (1)485數(shù)據(jù)采集過程:485數(shù)據(jù)通過485接收模塊傳送給FX3接收緩存模塊,在FX3數(shù)據(jù)接口沒有被占用時(shí),通過FX3讀寫控制模塊發(fā)送給USB3.0芯片并傳到PC端。
    (2)485數(shù)據(jù)發(fā)送過程:USB3.0芯片通過FX3讀寫控制模塊將數(shù)據(jù)發(fā)送到FX3發(fā)送緩存模塊中,在收發(fā)控制模塊檢測到相關(guān)串口空閑后通過485發(fā)送模塊將相關(guān)數(shù)據(jù)發(fā)送出去。
    485收發(fā)相對于USB3.0速度來說,屬于慢速設(shè)備。為了提高USB3.0總線利用率,此處只設(shè)計(jì)了兩種緩存,即接收緩存和發(fā)送緩存,大小都設(shè)置為512 KB,80路的485接收和發(fā)送buffer最終都匯聚到這兩種緩存上,有效地減少了短包和空包發(fā)生率。
3.2 FX3接口時(shí)序
     FPGA與FX3之間采用了Slave fifo模式,F(xiàn)PGA通過狀態(tài)標(biāo)志的flaga、flagb、flagc、flagd來判斷FX3的接收/發(fā)送緩存的數(shù)據(jù)狀態(tài)[10],當(dāng)flaga/flagc為高時(shí),表示FX3緩存中接收到了數(shù)據(jù);當(dāng)flagb/flagd為高時(shí),表示FX3的發(fā)送緩存為非滿狀態(tài),F(xiàn)PGA可對其進(jìn)行寫數(shù)據(jù)操作。
    圖3所示為FX3的A通道讀時(shí)序,F(xiàn)PGA先檢測i_usb_flaga是否為高電平,如果為高電平則表示A通道buffer中有數(shù)據(jù)可讀,此時(shí)將通道地址信號設(shè)置為0,片選信號o_usb_slcs_n/o_usb_sloe_n拉低,o_usb_slrd_n信號拉低后,在4個(gè)時(shí)鐘之后,數(shù)據(jù)將出現(xiàn)在io_usb_dq上,如果進(jìn)行寫操作則將o_usb_slwr_n拉低。對應(yīng)的通道號地址選對,同時(shí)將片選信號拉低即可,寫通道時(shí)序如圖4所示。


4 通信速度實(shí)驗(yàn)結(jié)果
    利用Cypress的Streamer軟件,可以測試該USB3.0傳輸系統(tǒng)的傳輸速率。將Packets per Xfer設(shè)置為256,在win764位下(電腦配置為華碩N53XI241SN, Fresco FL1000系列的控制器)的傳輸速率測試結(jié)果為2.5 Gb/s,滿足了整個(gè)系統(tǒng)的性能,如圖5所示。

 

 

    該系統(tǒng)適合于超高速數(shù)據(jù)的傳輸,具有電路簡單、體積小等優(yōu)點(diǎn)。FPGA技術(shù)與USB3.0的結(jié)合有極大的靈活性和可擴(kuò)展性,基于FPGA和USB3.0的突出優(yōu)點(diǎn),該設(shè)計(jì)方案必將應(yīng)用在更廣闊的領(lǐng)域。
參考文獻(xiàn)
[1] 馬俊濤,李振宇.SlaveFIFO模式下CY7C68013和FPGA的數(shù)據(jù)通信[J]. 中國傳媒大學(xué)學(xué)報(bào)(自然科學(xué)版),2009,16(2):38-44.
[2] 倪明輝,周軍,楊庚. USB在FPGA控制的高速數(shù)據(jù)采集系統(tǒng)中的應(yīng)用[J]. 計(jì)算機(jī)測量與控制,2006,14(2):268-271.
[3] 白海亮. USB2.0微控制器CY7C68013與外FIFO通信發(fā)送過程的GPIF接口設(shè)計(jì)[J].黑龍江科技信息,2009(3):79.
[4] 薛園園,趙建領(lǐng). USB應(yīng)用開發(fā)寶典[M].北京:人民郵電出版社,2011.
[5] 黃大勇,李鑒,張建正. 基于USB2.0接口的高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2007(24):69-72.
[6] 呂超,張玉霞,王立欣.USB接口高速數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn)[J]. 計(jì)算機(jī)測量與控制,2009,17(5):1003-1005.
[7] 袁江南. 基于USB2.0與FPGA技術(shù)的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用,2007,33(7):116-118.
[8] 張世偉,印世平,何運(yùn)桃. USB2.0接口傳輸?shù)腇PGA控制與實(shí)現(xiàn)[J]. 國外電子測量技術(shù),2009,28(11):74-76.
[9] 索曉杰,翟正軍,姜紅梅. USB3.0協(xié)議分析與框架設(shè)計(jì)[J]. 計(jì)算機(jī)測量與控制,2012,20(8):2233-2235.
[10] 王宗超,倪凱,王偉能,等.新一代高速串行接口USB3.0介紹[J]. 記錄媒體技術(shù),2010(2):32-34.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 五月亚洲综合 | 黄色网站视频在线观看 | 国产网站麻豆精品视频 | 地狱男爵2 | 欧美做a一级视频免费观看 欧美做a欧美 | 色婷婷综合在线视频最新 | 四虎精品永久在线网址 | 精品国内在线视频2019百度 | 国产精品久久久久久久久电影网 | 久久成人国产精品 | 六月丁香啪啪六月激情 | 欧美自拍区 | 999成人精品视频在线 | 欧美日韩成人高清色视频 | 久99久热| 片子免费在线观看 | 男女男精品视频在线播放 | 99热这里只有精品国产动漫 | 精品国产亚洲人成在线 | 欧美婷婷六月丁香综合色 | 久久久国产精品免费视频 | 国产精品成在线观看 | 成人尤物 | 国产精品欧美日韩精品 | 五月婷婷综合在线视频 | 国产色视频网站免费观看 | 精品欧美成人高清在线观看2021 | 日日爱网站 | 久久ai | 五月婷丁香| 成年在线视频免费视频观看 | 中文字幕欧美日韩久久 | 九七影院不用播放器下载 | 国产成人精品视频频 | 国产美女视频一区 | 精品久久久久久国产 | 国产成人综合亚洲欧美在 | 国产伦码精品一区二区三区 | 97视频在线观看播放 | 成人亚洲欧美在线电影www色 | 久久天天躁夜夜躁狠狠85台湾 |