日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式微處理器
[導(dǎo)讀][導(dǎo)讀]大家好,我是逸珺。前面寫了一些SPI/I2C/RS-485之類的文章,有朋友留言希望能分享一些USB方面的梳理總結(jié),今天就從系統(tǒng)標(biāo)準(zhǔn)層面先來梳理一下。看看有沒有朋友喜歡。先從系統(tǒng)層面來梳理。個(gè)人學(xué)習(xí),習(xí)慣于先從整體上摸個(gè)大概,然后再對(duì)感興趣的細(xì)節(jié)逐漸深入。USB是比較復(fù)雜...

[導(dǎo)讀] 大家好,我是逸珺。

前面寫了一些SPI/I2C/RS-485之類的文章,有朋友留言希望能分享一些USB方面的梳理總結(jié),今天就從系統(tǒng)標(biāo)準(zhǔn)層面先來梳理一下。看看有沒有朋友喜歡。先從系統(tǒng)層面來梳理。個(gè)人學(xué)習(xí),習(xí)慣于先從整體上摸個(gè)大概,然后再對(duì)感興趣的細(xì)節(jié)逐漸深入。

USB是比較復(fù)雜的協(xié)議棧,如果發(fā)現(xiàn)文章中有錯(cuò)誤,請(qǐng)幫忙指正。

注:本文主要參考USB2.0規(guī)范第4章,將標(biāo)準(zhǔn)中個(gè)人認(rèn)為比較重要的一些點(diǎn)盡量條理清晰的總結(jié)出來。我感覺很多朋友可能對(duì)于閱讀英文標(biāo)準(zhǔn)有點(diǎn)輕度抗拒,所以整理此文這也是一個(gè)起因,希望對(duì)朋友們有所幫助。

總線拓?fù)?/span>

說到總線拓?fù)?,這張圖大家一定都見過:

USB標(biāo)準(zhǔn)上說USB總線拓?fù)涫且环N分層星形結(jié)構(gòu),這張拓?fù)鋱D延申出來的一些要點(diǎn):

  • 所謂星型是針對(duì)Hub而言的,一個(gè)Hub下面可以掛Hub或者設(shè)備,最頂層就是USB主機(jī)控制器
  • USB主機(jī)控制器一般都伴隨有一個(gè)根集線器Root Hub。
  • Hub級(jí)聯(lián)最多5層
  • 總線上理論最大允許連接127個(gè)設(shè)備。
  • Hub級(jí)聯(lián)遵循向下兼容,USB2.0主機(jī)或者高速Hub可以連接USB1.1Hub。
  • 一個(gè)USB分層星型結(jié)構(gòu)有且僅有一個(gè)USB主機(jī)控制器
  • 線纜最長(zhǎng)不超過5米
這個(gè)最大7層星形結(jié)構(gòu),代表的是一條USB總線,一個(gè)USB分層星型結(jié)構(gòu)有且僅有一個(gè)USB主機(jī)控制器,但并不是說一臺(tái)計(jì)算機(jī)就只有一個(gè)USB總線,比如我的計(jì)算機(jī)內(nèi)部就是2個(gè)USB主控制器 Root Hub,從Windows設(shè)備管理器可以看到:

7層拓?fù)鋱D中的第2層只畫了一個(gè)Hub,并不意味真正的第2層就只能有一個(gè)Hub,但這個(gè)圖無法顯示出更為詳細(xì)的總線連接關(guān)系,用USBTrace軟件來看看:

第1條總線有4個(gè)端口,第2條總線的根集線器具有18個(gè)端口,其中8、9、10為計(jì)算機(jī)內(nèi)部的USB設(shè)備占用了。我這臺(tái)筆記本對(duì)外有兩個(gè)USB接口,通過分別將U盤插入這兩個(gè)端口,再利用USBTrace探測(cè)可以推斷出這兩個(gè)端口都屬于第2條總線的Port 3以及Port 4:

那么Hub長(zhǎng)什么樣呢?比如下面是一個(gè)7口的USB Hub示意圖,來源于USB2.0標(biāo)準(zhǔn):

物理接口

電氣概覽

USB 通過四線電纜傳輸信號(hào)和電源。信令發(fā)生在每個(gè)點(diǎn)對(duì)點(diǎn)網(wǎng)段上的兩條線上。

  • VBUS/GND:供電
  • D /D-:USB差分信號(hào)線。
具有三種數(shù)據(jù)速率:

  • 高速模式 high-speed:480 Mb/s,常縮寫為HS模式
  • 全速模式 full-speed:12 Mb/s,??s寫為FS模式
  • 低速模式 low-speed:1.5 Mb/s,??s寫為L(zhǎng)S模式
至于數(shù)據(jù)編碼模式,這里先不管它。

機(jī)械概覽

機(jī)械部分主要定義USB采用什么尺寸的接插件,線纜的顏色定義、線號(hào)。線纜的抗拉強(qiáng)度等。主要從以下幾個(gè)方面去標(biāo)準(zhǔn)化:

  • 主要連接器類型規(guī)范,主要分A、B系列。定義了公頭、母頭。

  • 線纜規(guī)范。高速/全速電纜由信號(hào)雙絞線、VBUS、GND 和整體屏蔽組成。當(dāng)高速/全速電纜與低速設(shè)備一起使用時(shí),電纜必須滿足所有低速設(shè)備要求。低速設(shè)備可以不使用雙絞線。雙絞線可有效抵抗共模噪聲。

  • 連接器機(jī)械尺寸及材料要求。

連接器腳號(hào)信號(hào)名線芯顏色
1VBUS紅色
2D-白色
3D 綠色
4GND黑色
外殼屏蔽屏蔽層
    • A/B系列插座規(guī)范
    • A/B系列插頭規(guī)范
    • 電纜尺寸材料規(guī)范,這里就不羅列了,知道在哪里查就可以了。
    • 電氣、機(jī)械和環(huán)境合規(guī)性標(biāo)準(zhǔn)
    • 接地規(guī)范,屏蔽層一定要焊接在插頭的外殼接地點(diǎn)。
    • 插座PCB尺寸規(guī)范。所以對(duì)于有繪制接插件需要的,可以參考6.9節(jié)的尺寸。
    • Logo位置
    • 線芯顏色規(guī)范。
    • USB Logo尺寸規(guī)范。

協(xié)議概述

USB采用主從通訊模式,是一種輪詢總線。所有數(shù)據(jù)傳輸都由主機(jī)控制器發(fā)起。這是USB標(biāo)準(zhǔn)中最難啃的部分,這里先不總結(jié)。

健壯設(shè)計(jì)

標(biāo)準(zhǔn)關(guān)于協(xié)議健壯性,又稱魯棒性,做了這幾個(gè)方面的設(shè)計(jì):

  • 從信號(hào)完整性角度:使用差分驅(qū)動(dòng)器、差分接收器和以及對(duì)信號(hào)線纜的屏蔽處理。差分收發(fā)策略主要在抵抗共模干擾方面效果顯著,而屏蔽層則有兩方面的作用:其一,有效降低USB線通過無線電波對(duì)外界干擾;其二、能有效隔斷外界無線干擾對(duì)USB信號(hào)線、電源線的干擾。
  • CRC報(bào)文校驗(yàn)。報(bào)文中數(shù)據(jù)如果出錯(cuò),可以檢測(cè)出來,可以做相應(yīng)的處置。
  • 熱插拔檢測(cè)及對(duì)相應(yīng)硬件設(shè)備的系統(tǒng)配置管理。這個(gè)設(shè)計(jì)有助于提升用戶體驗(yàn),用戶隨用隨插,而無需關(guān)機(jī)插拔。
  • 利用對(duì)數(shù)據(jù)丟失或數(shù)據(jù)損壞超時(shí)檢測(cè)實(shí)現(xiàn)通訊自恢復(fù)機(jī)制,以增強(qiáng)協(xié)議的健壯性。
  • 對(duì)流數(shù)據(jù)的進(jìn)行流量控制以確保同步以及底層收發(fā)硬件緩沖區(qū)管理。
  • 數(shù)據(jù)管道和控制管道分離

配置管理

USB支持熱插拔,所謂熱插拔就是,設(shè)備插入,系統(tǒng)需要正確識(shí)別設(shè)備加載驅(qū)動(dòng)程序,斷開后,系統(tǒng)需要從軟件層面識(shí)別到設(shè)備已經(jīng)從總線上移除了。這里所謂的系統(tǒng),有可能是帶操作系統(tǒng)的計(jì)算機(jī),也有可能是不帶操作系統(tǒng)的嵌入式設(shè)備。

比如下面這個(gè)U盤插入移除的過程:

連接檢測(cè)

所有的USB設(shè)備都必須經(jīng)過集線器上的USB端口連接到總線。從總線拓?fù)鋱D可以看出,總線上有一個(gè)主控制器,位于金字塔的頂端。上面動(dòng)圖中也可以看出,即便是計(jì)算機(jī)內(nèi)部USB設(shè)備也是經(jīng)由Hub的端口連接到總線的,現(xiàn)在的計(jì)算機(jī)內(nèi)部很多設(shè)備也會(huì)采用USB總線進(jìn)行互聯(lián),比如內(nèi)置的藍(lán)牙設(shè)備。

主機(jī)控制器位于頂端,設(shè)備是經(jīng)過集線器的端口連接到總線,那么主控制器怎么知道設(shè)備插入呢?這是由于集線器具有用于報(bào)告USB設(shè)備在其端口之一上的連接或移除的狀態(tài)位。主控制器查詢集線器檢索這些狀態(tài)位。在設(shè)備插入時(shí),主控制器啟用端口并通過設(shè)備的控制管道在默認(rèn)地址對(duì)USB設(shè)備進(jìn)行尋址。主機(jī)為設(shè)備分配一個(gè)唯一的USB地址,然后確定新連接的USB設(shè)備是集線器還是功能設(shè)備。主機(jī)使用分配的USB地址和端點(diǎn)編號(hào)0為USB設(shè)備建立其控制管道的端點(diǎn)。

  • 如果新連接的USB設(shè)備是集線器,如果這個(gè)新連接的集線器的端口上有USB 設(shè)備,則對(duì)每個(gè)連接的USB設(shè)備執(zhí)行上述識(shí)別操作。
  • 如果連接的USB設(shè)備是一個(gè)功能設(shè)備,則連接通知將由適用于該功能的主機(jī)軟件處理。如果是基于通用操作系統(tǒng)的計(jì)算機(jī)系統(tǒng),則由一般驅(qū)動(dòng)程序處理,如果主機(jī)控制器是單片機(jī)類嵌入式設(shè)備,則由單片機(jī)程序負(fù)責(zé)處理。

斷開檢測(cè)

同樣移除時(shí),從標(biāo)準(zhǔn)設(shè)計(jì)角度來看,也需要考慮兩種情況。

如果是設(shè)備從集線器移除,集線器會(huì)禁用該端口并向主機(jī)提供設(shè)備移除的指示。然后主機(jī)控制器從軟件層面做相應(yīng)的移除處理。

如果是集線器移除,需要從軟件層面移除該集線器所有端口的USB設(shè)備或級(jí)聯(lián)集線器,當(dāng)然如果集線器又連集線器,則有點(diǎn)遞歸的意思。

總線枚舉

總線枚舉是主控制器識(shí)別連接到總線的設(shè)備并為該設(shè)備分配唯一地址的活動(dòng)。由于USB允許USB設(shè)備隨時(shí)連接到USB總線或從USB總線斷開,因此總線枚舉是 USB系統(tǒng)軟件的持續(xù)進(jìn)行的過程。USB總線枚舉還包括移除的檢測(cè)和處理。

傳輸模式

USB利用單向或雙向管道在USB主機(jī)控制器和USB設(shè)備之間進(jìn)行應(yīng)用數(shù)據(jù)和功能數(shù)據(jù)傳輸。管道Pipe是一個(gè)底層軟件及硬件邏輯概念,數(shù)據(jù)就像水一樣從管道中的一側(cè)流向另一側(cè),就對(duì)應(yīng)著主機(jī)控制器與設(shè)備的兩個(gè)端點(diǎn)endpoint。endpoint就像管道的兩頭,也是軟件邏輯概念。將主機(jī)與設(shè)備側(cè)的端點(diǎn)邏輯關(guān)聯(lián)起來,就是所謂的管道了。當(dāng)然這管道之所以能傳輸數(shù)據(jù),是因?yàn)橹鞫恕⒃O(shè)備端兩側(cè)相應(yīng)的代碼配合芯片內(nèi)部硬件實(shí)現(xiàn)的。

數(shù)據(jù)流經(jīng)由一側(cè)的端點(diǎn)通過邏輯管道傳輸?shù)搅硪粋?cè)端點(diǎn),USB架構(gòu)包含四種基本類型的數(shù)據(jù)傳輸:

  • 控制傳輸
  • 批量傳輸
  • 中斷傳輸
  • 同步傳輸
下表是這四類傳輸在不同速度模式下支持的最大包長(zhǎng)度,放在這里有一個(gè)整體概念:

速度模式低速全速高速
控制傳輸88/16/32/6464
同步傳輸不支持10231024
中斷傳輸0~80~640~1024
批量傳輸不支持8/16/32/64512

控制傳輸

控制傳輸,主要用于在設(shè)備首次連接時(shí)配置設(shè)備;并可用于其他設(shè)備自定義的傳輸目的,比如控制設(shè)備上的其他管道。

USB系統(tǒng)軟件在設(shè)備首次連接時(shí)使用控制傳輸進(jìn)行設(shè)備配置。其他驅(qū)動(dòng)程序軟件也可以選擇以自定義方式使用控制傳輸。控制傳輸主要使用管道0,數(shù)據(jù)傳輸是無損的。

每個(gè)USB設(shè)備都必須有控制端點(diǎn),支持控制傳輸來進(jìn)行命令和狀態(tài)的傳輸。此外,控制傳輸是雙向傳輸。

批量傳輸

批量傳輸Bulk Transfer就像其名字一樣,數(shù)據(jù)量相對(duì)較大,具有突發(fā)性。這種突發(fā)性可能來源于用戶對(duì)USB設(shè)備的操作,比如對(duì)U盤的讀寫操作就會(huì)觸發(fā)批量傳輸。批量傳輸這種突發(fā)性也就意味著是非周期性的,一般用于沒有實(shí)時(shí)性要求、數(shù)據(jù)量比較大設(shè)備。比如用于打印機(jī)或掃描儀的數(shù)據(jù)。批量傳輸數(shù)據(jù)是連續(xù)的。通過在硬件中使用錯(cuò)誤檢測(cè)并采用前面所說的錯(cuò)誤重傳機(jī)制,可以在硬件級(jí)別確??煽康臄?shù)據(jù)交換。此外,大量數(shù)據(jù)占用的帶寬可能會(huì)有所不同,具體取決于其他總線活動(dòng),這是由主機(jī)控制器動(dòng)態(tài)仲裁管理的。

批量傳輸是單向的,使用單向大容量端點(diǎn)來實(shí)現(xiàn)。

中斷傳輸

一般用于需要實(shí)時(shí)可靠的傳輸場(chǎng)景。此類數(shù)據(jù)可隨時(shí)由設(shè)備傳輸,并以不低于設(shè)備指定的速率進(jìn)行傳輸。中斷數(shù)據(jù)通常由一個(gè)或多個(gè)字節(jié)的事件通知、字符或坐標(biāo)組成。比如USB鼠標(biāo)就是一個(gè)采用中斷傳輸?shù)膶?shí)例。

同步傳輸

占用預(yù)先約定好的USB帶寬以及傳輸延遲,也稱為流式實(shí)時(shí)傳輸。所需要的帶寬以及延遲要求,與特定設(shè)備的相關(guān)數(shù)據(jù)吞吐率以及端點(diǎn)的緩沖管理有關(guān),比如用于音頻會(huì)議USB耳麥,對(duì)于音頻的采樣率是有參數(shù)要求的。

帶寬分配

USB標(biāo)準(zhǔn)定義了如何允許每種傳輸類型訪問總線的規(guī)則。帶寬分配主要在從兩個(gè)方面進(jìn)行規(guī)定:

  • 帶寬在管道之間分配。當(dāng)管道建立時(shí),USB會(huì)為一些管道分配帶寬。USB底層軟硬件需要提供數(shù)據(jù)緩沖,帶寬需求大的場(chǎng)景需要提供更大的緩沖區(qū)。
  • 帶寬可以在許多不同的數(shù)據(jù)流之間分配。從而能實(shí)現(xiàn)將各種設(shè)備連接到USB總線。此外,可以同時(shí)支持具有寬動(dòng)態(tài)范圍的不同設(shè)備比特率需求。所謂寬動(dòng)態(tài)范圍是指其帶寬需求是隨著使用場(chǎng)景在動(dòng)態(tài)變化的。
好了,先總結(jié)這么多,繼續(xù)慢慢啃~。


END
來源:嵌入式客棧,作者:逸珺版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除。
嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉