0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

電子設(shè)計 ? 作者:電子設(shè)計 ? 2018-11-01 08:10 ? 次閱讀

USB總線是目前最為成功,應(yīng)用最為廣泛的外設(shè)接口。隨著時代的進(jìn)步和發(fā)展,電子產(chǎn)品、手持設(shè)備、超大容量的高清視頻設(shè)備以及千萬像素的數(shù)碼相機(jī)等設(shè)備的需求越來越高,USB接口規(guī)范也需要相應(yīng)地進(jìn)行不斷地更新和升級。USB3.0的最高理論速度達(dá)到了5Gbit/s,向需要更大電力支持的設(shè)備提供更好的支持和電力供應(yīng),它在USB2.0的基礎(chǔ)上增加了新的電源管理功能,采用全雙工數(shù)據(jù)通信,提供更快的傳輸速度,并且向下兼容USB2.0和USB1.1設(shè)備。USB體系主要包括三個部分:主機(jī),設(shè)備和物理連接。主機(jī)通常是PC或者主機(jī)控制器;設(shè)備是指常用的U盤、帶USB的攝像頭、相機(jī)等設(shè)備;物理連接就是通常用的傳輸線,在USB3.0系統(tǒng)中,采用了對偶單純形四線制差分信號線,因此可以支持雙向并發(fā)數(shù)據(jù)流傳輸,這也是USB3.0相比于USB2.0設(shè)備速度提升的關(guān)鍵因素。

HUB是USB系統(tǒng)中的重要組成部分,且能夠應(yīng)用在大多數(shù)操作系統(tǒng),它是建立主機(jī)與USB設(shè)備之間的橋梁。作為一類特殊的USB設(shè)備,可以同時將一個接口轉(zhuǎn)換為多個接口,為用戶提供了效率和便捷。

1. USB3.0 HUB的簡介

1.1 USB3.0 HUB的基本組成

根據(jù)最新USB3.0的協(xié)議規(guī)定,USB3.0 HUB主要由Super Speed HUB,Vbus Control Logic,USB2.0 HUB以及上下行端口組成。由于USB3.0是向下兼容的,所以它有完整的USB2.0 HUB設(shè)計,而Super Speed HUB部分就是USB3.0 HUB區(qū)別于USB2.0 HUB的主要部分。USB3.0 HUB基本結(jié)構(gòu)如圖1所示。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖1 USB3.0 HUB的基本結(jié)構(gòu)

1.2 USB3.0集線器的功能

USB3.0 HUB是USB系統(tǒng)中的重要部分,它的基本功能如下:

1)基本連接功能。

2)電源管理功能。USB3.0能夠提供900mA的電源,這樣就可以給那些連接USB3.0的設(shè)備更快更好地完成充電。由于新的接口提供了額外的兩條線,900mA的電力支持能夠驅(qū)動無線適配器,這樣在900mA的高電力支持下可以擺脫靠線纜連接的必要性。在大量數(shù)據(jù)傳輸?shù)耐瑫r,空閑的設(shè)備可以自動進(jìn)入低功耗狀態(tài),給正在傳輸?shù)脑O(shè)備提供更好更快的性能支持。

3)設(shè)備連接和斷開檢測。

4)總線的錯誤檢測和恢復(fù)。

5)HUB3.0的自動掛起和恢復(fù)功能。

6)向下兼容,下行端口同時支持高/低/全速設(shè)備。

2. Super Speed HUB的設(shè)計

USB3.0 HUB是一種便攜的低成本的USB3.0擴(kuò)展接口,它的下行端口面向USB設(shè)備,上行端口面向PC主機(jī)或者嵌入式主機(jī)控制器,速度由上行端口的主機(jī)來決定,同時它在下行端口給設(shè)備提供連接和斷開的檢測,根據(jù)USB3.0最新協(xié)議規(guī)范,要實現(xiàn)上節(jié)所述各項功能設(shè)計。Super Speed HUB的整體構(gòu)架如圖2所示,包括SIE、控制、處理轉(zhuǎn)換、中繼、路由、AES加解密等部分。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖2 USB3.0 HUB的整體構(gòu)架

2.1 SIE(Serial Interface Engine)模塊

Super Speed HUB中的SIE模塊處理USB規(guī)范中物理層和協(xié)議層的協(xié)議解析,它主要實現(xiàn)包的識別與產(chǎn)生、比特填充和提取、時鐘與數(shù)據(jù)分離、NRZI編碼和解碼、PID(包標(biāo)識符)的產(chǎn)生和檢測、CRC校驗碼的識別和產(chǎn)生、地址檢測等。SIE模塊設(shè)計中,分為SIE_PL和SIE_FUC兩個部分。SIE_PL模塊負(fù)責(zé)數(shù)據(jù)包的解析與組織,PID(包標(biāo)識符)產(chǎn)生與檢測、CRC校驗識別與產(chǎn)生、地址檢測等。SIE_FUC模塊主要實現(xiàn)SIE模塊與MCU的接口邏輯功能。另外,為了使本系統(tǒng)設(shè)計更加穩(wěn)定,SIE模塊中采用跨時鐘域的設(shè)計,一個是本地的48MHz的全局時鐘,另外一個是USB主機(jī)從接收到的數(shù)據(jù)流中采樣接收的12MHz數(shù)據(jù)時鐘(即將48MHz本地全局時鐘4分頻得到)。SIE模塊設(shè)計框圖如圖3所示。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖3 SIE模塊設(shè)計框圖

2.2 HUB控制器模塊

HUB控制器主要完成HUB的管理及控制,實現(xiàn)與主機(jī)的交互。主機(jī)端通過類請求與HUB控制器模塊通信,取得HUB端口的描述符,并且完成USB HUB及其下行端口的管理和控制。主機(jī)通過向端點0發(fā)送類請求和標(biāo)準(zhǔn)請求來實現(xiàn)HUB的枚舉過程。

2.3 AES模塊

AES是一種基于置換和代替的算法,它實現(xiàn)加解密功能。在USB3.0 Super Speed模式下,根據(jù)用戶的需求,當(dāng)數(shù)據(jù)從上行端口向下行端口傳輸時,對數(shù)據(jù)進(jìn)行加密,以防止信息竊取。同樣,在數(shù)據(jù)由下行端口向上行端口傳輸時實現(xiàn)其解密過程。AES算法加解密過程如圖4所示。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖4 AES算法加解密過程

在加解密的過程中,由于USB3.0 HUB的傳輸速度可達(dá)到3200Mbit/s,但是AES的加解密IP在250MHz的吞吐率下最高速率只能達(dá)到2400Mbit/s,因此在加解密的過程中需要2個AES來實現(xiàn)其功能。圖5是USB3.0 AES加密原理圖,從圖中可以看到上行端口會向EM_A發(fā)送奇數(shù)128bit數(shù)據(jù),向EM_B發(fā)送偶數(shù)128bit數(shù)據(jù),同時,Mem_buf模塊也會輪詢地從EM_A模塊和EM_B模塊接受數(shù)據(jù)。而在以前的USB2.0的模式下,數(shù)據(jù)位寬只有8bit,全速的帶寬為480Mbit/s,所以只需要1個AES就可以。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖5 AES算法加密原理圖

2.4 ROUTING模塊

ROUTING模塊即路由邏輯模塊,它的作用是根據(jù)連接到下行端口設(shè)備的速度來決定將下行端口連接到中繼模塊還是連接到TT模塊。由于在USB3.0HUB的上行端口中的速度是高速的,而下行端口則不確定為高速、全速或者低速,所以當(dāng)下行端口設(shè)備的速度為高速時,ROUTING模塊連接到中繼模塊,如果下行端口設(shè)備的速度為全速或者低速時就連接到TT模塊。

2.5 Repeater中繼模塊

集線器中繼模塊在HUB的數(shù)據(jù)轉(zhuǎn)發(fā)中起到建立和拆除上行端口和下行端口之間的連接,并且處理集線器的掛起和喚醒的作用。中繼器把上行端口的數(shù)據(jù)發(fā)送到下行端口,把下行端口的數(shù)據(jù)發(fā)送到上行端口,并且要用本地時鐘來從端口上發(fā)送和接受數(shù)據(jù)。它以數(shù)據(jù)包為單位控制端口的建立和連接以及HUB的喚醒和掛起。如圖6所示為Repeater的連接狀態(tài)機(jī)。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖6 Repeater的連接狀態(tài)機(jī)

2.6 PHY模塊

PHY模型就是通常所說的USB物理收發(fā)器模型,它的作用是實現(xiàn)數(shù)據(jù)的串并轉(zhuǎn)換。因為在上行端口是并行數(shù)據(jù),而在面向設(shè)備和電纜中的下行端口是串行數(shù)據(jù)。

2.7 TT處理轉(zhuǎn)換器

TT模塊的作用是完成傳輸事務(wù)轉(zhuǎn)發(fā)和速度的匹配。當(dāng)上行端口在高速環(huán)境下運(yùn)行而下行端口在全速或者低速下運(yùn)行時,TT處理轉(zhuǎn)換器就是將高速事務(wù)轉(zhuǎn)換成低速事務(wù)。由于要滿足速度的匹配,因此TT處理器必須采用緩存的方式來存儲,在緩存的上行端口是一個高速處理器,用來處理高速數(shù)據(jù)的收發(fā);緩存的下行端口是全速和低速處理器,用來處理全/低速數(shù)據(jù)的接受和發(fā)送。

3. FPGA仿真與驗證

為了更好地完成仿真和驗證,采用ModelsimSE和Navos公司的Debussy軟件。首先搭建仿真環(huán)境,包括編譯測試文件、仿真調(diào)用文件、引導(dǎo)文件、宏定義文件以及激勵文件。首先將C語言的驅(qū)動程序在Linux環(huán)境下轉(zhuǎn)換為二進(jìn)制的kvout激勵文件,把二進(jìn)制的kvout文件存儲在外掛的Flash中然后再存儲到內(nèi)置的RAM中,使其成為發(fā)出指令的源頭;同時USBDevice的行為級模型也會裝載部分命令以達(dá)到仿真的目的。如圖7所示為USB3.0HUB高速數(shù)據(jù)批量傳輸仿真結(jié)果。

實現(xiàn)了多媒體數(shù)據(jù)的同步傳輸?shù)腢SB3.0 HUB設(shè)計方案

圖7 USB3.0HUB高速數(shù)據(jù)批量傳輸仿真(截圖)

圖中數(shù)據(jù)包的總大小為4096byte,rst_n為系統(tǒng)復(fù)位信號,clk30為主機(jī)端12M時鐘,pci_clk為本地時鐘,cpu_datao是從主機(jī)發(fā)送出的數(shù)據(jù),utm0_data,utm1_data,utm2_data,utm3_data分別為經(jīng)過USB3.0HUB擴(kuò)展后的4路高速信號,Utm_rxready,utm_rxvalid,utm_rxactive分別為端口的控制信號。

為了加強(qiáng)整個設(shè)計的可靠性,必須進(jìn)行FPGA驗證,F(xiàn)PGA驗證選擇的是Altera的StratixIIS180開發(fā)板,采用QuartusII將RTL級的verilog代碼進(jìn)行變異并且綜合成網(wǎng)表,然后通過USB-blaster下載線下載到FPGA測試版中,另外激勵文件是在Linux環(huán)境下編譯產(chǎn)生的,并且通過EJTAG下載到測試版中。把激勵文件下載到FPGA板子中后,把HUB的上行端口連接到USB的主機(jī),此時如果主機(jī)檢查出有USB HUB連接,會產(chǎn)生1個復(fù)位信號;在HUB復(fù)位后,USB主機(jī)向USB Device發(fā)送令牌包,并且對HUB進(jìn)行枚舉,主機(jī)識別出該HUB;當(dāng)主機(jī)對USB3.0 HUB成功枚舉后按照USB協(xié)議進(jìn)行數(shù)據(jù)傳輸。

在傳輸速率上,可以通過USB3.0 HUB傳輸1個比較大的文件,并且用ATTO DISK BENCHMARK軟件來測試其讀寫速度,通過ATTO可以顯示出讀取數(shù)據(jù)可以提高到1088Mbit/s,寫入速度可以達(dá)到840Mbit/s(USB2.0 HUB的讀寫速度分別為240Mbit/s和184Mbit/s);很顯然這個讀寫速度比USB2.0的提高了5~6倍。當(dāng)然由于軟件和硬件的各種原因,這個實際的傳輸速度離其理論最大值5G bit/s有一定的差距,但已基本實現(xiàn)其高速傳輸?shù)墓δ堋?/p>

從verilog的功能仿真、時序仿真和FPGA驗證表明,USB3.0 HUB基本實現(xiàn)了高速數(shù)據(jù)的傳輸,達(dá)到了預(yù)期的效果。

4. 總結(jié)

USB及HUB接口是目前計算機(jī)以及微控制器中最常用的通用高速接口,它可以連接串口、U盤、音頻、視頻、手機(jī)、相機(jī)等絕大多數(shù)的外設(shè)設(shè)備。USB3.0正在以其高速度、高性能、高可靠性、低成本等特點逐漸代替更多的USB2.0產(chǎn)品,成為通信電子市場的主要接口。本文中設(shè)計的USB3.0 HUB實現(xiàn)了多媒體數(shù)據(jù)的高速同步及時傳輸;更佳的電源管理功能以及支持AES加密解密等功能,這些都將促使它在市場上迅速普及。但是USB3.0及其HUB依舊有自己的瓶頸,比如在某些應(yīng)用中需要盡可能高的吞吐量時,線纜的長度會受到限制;同時電纜的材質(zhì)以及信號的質(zhì)量也會在整體上影響傳輸?shù)男Ч?,所以在傳輸百兆以上?shù)據(jù)流時,所用線纜最好不要超過3m。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7876

    瀏覽量

    263692
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6684

    瀏覽量

    123140
  • 多媒體
    +關(guān)注

    關(guān)注

    0

    文章

    494

    瀏覽量

    36922
收藏 人收藏

    評論

    相關(guān)推薦

    USB3.0 TO SATA, 銀燦IS621

    本帖最后由 eehome 于 2013-1-5 10:02 編輯 銀燦USB3.0 TO SATAII方案IS621內(nèi)置512KB的Flash,低功耗。硬盤盒的最佳選擇。隨著多媒體數(shù)據(jù)
    發(fā)表于 11-11 22:49

    分享一個不錯的基于VL813的USB3.0 HUB方案

    分享一個不錯的基于VL813的USB3.0 HUB方案
    發(fā)表于 06-15 07:00

    分享一個不錯的基于VL817-Q7的USB3.0 HUB方案

    分享一個不錯的基于VL817-Q7的USB3.0 HUB方案
    發(fā)表于 06-15 08:01

    請教下,USB3.0HUB接下行接4個USB2.0設(shè)備,上行是使用USB3.0通訊還是2.0?

    如題,USB3.0HUB接下行接4個USB2.0設(shè)備,上行是使用USB3.0通訊還是2.0? 是這樣,USB3.0
    發(fā)表于 09-12 13:21

    USB3.0即將迎來多媒體功能時代

    您上次因技術(shù)速度不夠快而等得不耐煩是什么時候?USB 3.0 SuperSpeed已經(jīng)推出,有望大幅提升多媒體文件的傳輸速度。
    發(fā)表于 01-04 15:20 ?43次下載
    <b class='flag-5'>USB3.0</b>即將迎來<b class='flag-5'>多媒體</b>功能時代

    4端口的USB3.0HUB用的最多的是GL3520方案

    USB3.0 HUB方案之GL3520USB3.0HUB,看了目前市面上的產(chǎn)品,4端口的USB3.0
    的頭像 發(fā)表于 07-30 08:33 ?3.5w次閱讀
    4端口的<b class='flag-5'>USB3.0</b>的<b class='flag-5'>HUB</b>用的最多的是GL3520<b class='flag-5'>方案</b>

    USB3.0 HUB方案之GL3520

    USB3.0 HUB方案之GL3520 USB3.0HUB,看了目前市面上的產(chǎn)品,4端口的USB3.0
    發(fā)表于 03-13 09:55 ?9679次閱讀
    <b class='flag-5'>USB3.0</b> <b class='flag-5'>HUB</b><b class='flag-5'>方案</b>之GL3520

    USB3.0 HUB方案之VL813

    USB3.0 HUB方案之VL813 USB3.0HUB,看了目前市面上的產(chǎn)品,4端口的USB3.0
    發(fā)表于 03-13 10:09 ?7464次閱讀

    全部開源USB3.0 HUB 1拖4電路設(shè)計方案

    PCB截圖: 我簡單的測試了下讀寫速度如下,直接插電腦上的: 插HUB上的: 責(zé)任編輯:xj 原文標(biāo)題:全部開源USB3.0 HUB 1拖4電路設(shè)計方案(原理圖+PCB源文件+固件升
    的頭像 發(fā)表于 11-04 10:24 ?7908次閱讀

    USB3.0 HUB的資料

    USB3.0 HUB的資料
    發(fā)表于 11-16 17:31 ?135次下載

    基于VL813芯片的USB3.0 HUB方案

    目前市面上的產(chǎn)品,4端口的USB3.0HUB也有不少用的是VL813方案,USB3.0 HUB方案
    的頭像 發(fā)表于 05-27 15:01 ?4938次閱讀
    基于VL813芯片的<b class='flag-5'>USB3.0</b> <b class='flag-5'>HUB</b><b class='flag-5'>方案</b>

    4端口USB3.0 VL813方案

    USB3.0HUB,4端口的USB3.0用的是VL813方案介紹
    發(fā)表于 08-04 10:40 ?19次下載

    基于FPGA的USB3.0 HUB設(shè)計方案

    需要相應(yīng)地進(jìn)行不斷地更新和升級。USB3.0的理論速度達(dá)到了5Gbit/s,向需要更大電力支持的設(shè)備提供更好的支持和電力供應(yīng),它在USB2.0的基礎(chǔ)上增加了新的電源管理功能,采用全雙工數(shù)據(jù)通信,提供更快的
    的頭像 發(fā)表于 06-09 16:50 ?2186次閱讀
    基于FPGA的<b class='flag-5'>USB3.0</b> <b class='flag-5'>HUB</b><b class='flag-5'>設(shè)計方案</b>

    基于FPGA的USB3.0回環(huán)傳輸測試方案

    本文開源一個FPGA項目: USB3.0 LoopBack 。基于FPGA的USB3.0通信方案有很多,其中非常好用的一款USB3.0芯片是 FT600/601Q 。
    的頭像 發(fā)表于 10-01 09:49 ?3580次閱讀
    基于FPGA的<b class='flag-5'>USB3.0</b>回環(huán)<b class='flag-5'>傳輸</b>測試<b class='flag-5'>方案</b>

    什么是USB3.0?usb3.0usb2.0有什么區(qū)別?

    和更大的帶寬,可實現(xiàn)更快的數(shù)據(jù)傳輸速率和更高的辦公效率。在本文中,我們將探討USB3.0USB2.0之間的區(qū)別。 1. 傳輸速度
    的頭像 發(fā)表于 10-27 14:31 ?8654次閱讀