91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

USB的四大傳輸方式介紹

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2022-02-09 14:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

來源:公眾號(hào)【魚鷹談單片機(jī)
作者:魚鷹Osprey
ID :emOsprey

我們知道,傳輸事務(wù)解決了主機(jī)、設(shè)備之間交互一次數(shù)據(jù)的問題,但是有些端點(diǎn)是需要進(jìn)行多次雙向傳輸或者多次單向傳輸?shù)?,同時(shí)因?yàn)樵O(shè)備的功能不同,所需要的帶寬和傳輸特性也不同,那么就需要一個(gè)更上層的機(jī)制解決以上問題,四大傳輸應(yīng)運(yùn)而生。

控制傳輸(Control Transfers)、中斷傳輸(Interrupt Transfers)、批量傳輸(Bulk Transfers)、同步傳輸(Isochronous Transfers)稱之為四大傳輸。
接下來我們看看這些傳輸各自的特點(diǎn),同時(shí)了解一下這些傳輸方式在生活中的應(yīng)用。

控制傳輸

一種可靠的雙向傳輸,所有USB設(shè)備必須支持的一種傳輸方式,該傳輸一般發(fā)生在端點(diǎn)0 中,用于USB的枚舉、配置(也可能進(jìn)行其他數(shù)據(jù)傳輸)等階段。而我們接下來需要詳細(xì)介紹的傳輸方式就是它。

當(dāng)設(shè)備插入主機(jī)后,主機(jī)通過端點(diǎn) 0 (還記得前面說它是雙向端點(diǎn)嗎)進(jìn)行控制傳輸,通過一系列的數(shù)據(jù)交互,主機(jī)可以了解設(shè)備有多少個(gè)接口,有多少可用的端點(diǎn)等各種設(shè)備信息。

你的設(shè)備能否被主機(jī)(電腦)正確識(shí)別,完全取決于控制傳輸能否正常進(jìn)行,這是 USB 學(xué)習(xí)中最先遇到的攔路虎,也是很多人望而卻步的一個(gè)地方,但是希望大家通過魚鷹的介紹能夠真正掌握它。

在帶寬(所謂帶寬,可以認(rèn)為主機(jī)對(duì)USB總線進(jìn)行分時(shí)數(shù)據(jù)傳輸,比如1秒中使用100毫秒用于控制傳輸)使用上,高速端點(diǎn)的控制傳輸不能占用 20 %的微幀(125 us 一個(gè)微幀),全速和低速不能超過 10 %(1 ms 一幀

在控制傳輸中,為了實(shí)現(xiàn)完整的一次控制傳輸,一般由三個(gè)階段組成:

建立階段、數(shù)據(jù)階段(該階段可能沒有,由建立階段的數(shù)據(jù)決定)、狀態(tài)階段,每一個(gè)階段都由傳輸事務(wù)組成,即存在三個(gè)數(shù)據(jù)包的傳輸。

我們可以具體看看上面最簡單的無數(shù)據(jù)階段控制傳輸(其他傳輸類似):

100052997-107830-2.png

這里需要特別注意的是,建立階段一定是DATA0 數(shù)據(jù)包,之后如果有數(shù)據(jù)階段,將進(jìn)行翻轉(zhuǎn),變成 DATA1,并且在每次正確數(shù)據(jù)傳輸后都會(huì)進(jìn)行一次翻轉(zhuǎn),這個(gè)機(jī)制用于保證數(shù)據(jù)被正確接收,而不是發(fā)送方發(fā)送的重復(fù)數(shù)據(jù)包(如果對(duì)方?jīng)]有正確接收數(shù)據(jù),DATAx不會(huì)翻轉(zhuǎn)

在狀態(tài)階段,一律使用 DATA 1進(jìn)行回復(fù),狀態(tài)階段的數(shù)據(jù)包中的數(shù)據(jù)為空,也就是說不攜帶任何數(shù)據(jù)。

同時(shí),根據(jù)建立階段中的數(shù)據(jù)要求不同,比如要求發(fā)送數(shù)據(jù)或者接收數(shù)據(jù),將使用相反的 IN 或 OUT 令牌完成狀態(tài)階段,比如建立階段主機(jī)要求發(fā)送 15 字節(jié)到設(shè)備中,那么數(shù)據(jù)階段將先使用 OUT 令牌發(fā)送數(shù)據(jù),之后在狀態(tài)階段主機(jī)將使用相反的 IN 令牌獲得空數(shù)據(jù)包。

因?yàn)閭鬏敃r(shí),可能需要多次傳輸事務(wù)才能完成數(shù)據(jù)階段,那么如何判斷對(duì)方數(shù)據(jù)傳輸已經(jīng)完成,從而讓主機(jī)不再發(fā)送IN或OUT令牌包傳輸數(shù)據(jù)呢?

有兩種可能:

如果傳輸?shù)臄?shù)據(jù)大小剛好是端點(diǎn)支持?jǐn)?shù)據(jù)大小的整數(shù)倍,比如一個(gè)端點(diǎn)最大數(shù)據(jù)包長度為64字節(jié),如果傳輸128字節(jié),就需要在最后發(fā)送一個(gè)空數(shù)據(jù)包。

而如果要傳輸127字節(jié),那么因?yàn)樽詈笠粋€(gè)包不是滿負(fù)載(只有63字節(jié)),所以也將認(rèn)為數(shù)據(jù)傳輸完成。

100052997-107831-3.png

也就是說,最后一個(gè)數(shù)據(jù)包一定不是滿載的,前面的數(shù)據(jù)包一定是滿載的。這代表了數(shù)據(jù)階段的結(jié)束。

當(dāng)完成了以上幾個(gè)階段,一次控制傳輸才算完成。

正因?yàn)榭刂苽鬏數(shù)那闆r比較復(fù)雜,所以學(xué)習(xí)起來也比較麻煩。

中斷傳輸

中斷傳輸時(shí)一種可靠的單向傳輸方式,采用定時(shí)輪詢的方式收發(fā)數(shù)據(jù),每次主機(jī)對(duì)中斷端點(diǎn)查詢時(shí),如果設(shè)備有數(shù)據(jù)傳輸,則返回?cái)?shù)據(jù),否則NAK,表示未準(zhǔn)備好。

同理,如果是主機(jī)發(fā)送數(shù)據(jù),如果設(shè)備沒有準(zhǔn)備好接收,也將使用 NAK 回復(fù)。

如果需要雙向傳輸,必須使用 IN 和 OUT 兩個(gè)端點(diǎn)。

中斷傳輸?shù)难舆t有保證,也就是說,可以在有限的延遲中完成傳輸,并且支持錯(cuò)誤重傳(在下一個(gè)周期進(jìn)行重傳),所以它是可靠的。因?yàn)榭赡墚a(chǎn)生錯(cuò)誤重傳,所以中斷傳輸也會(huì)采用 PID 翻轉(zhuǎn)的機(jī)制保證收發(fā)端數(shù)據(jù)的同步。

中斷傳輸一般用于對(duì)延遲要求比較嚴(yán)格,同時(shí)數(shù)據(jù)量較小,比如我們常見的鍵盤、鼠標(biāo)就是采用中斷傳輸方式。

當(dāng)你的鼠標(biāo)、鍵盤插入電腦后,電腦在枚舉配置成功后,就會(huì)按照描述符中的查詢時(shí)間定時(shí)發(fā)送 IN 令牌包,獲取所需的數(shù)據(jù),如果設(shè)備沒有數(shù)據(jù)發(fā)送,則回復(fù) NAK。

對(duì)于全速端點(diǎn),中斷傳輸?shù)拈g隔在 1 ms 到 255 ms 之間,對(duì)于低速端點(diǎn),間隔時(shí)間限制在10ms到255ms之間, 對(duì)于高速端點(diǎn),間隔為2^bInterval-1×125us, bInterval的值在1到16之間。

CMSIS-DAP 調(diào)試器使用的就是中斷傳輸,全速模式下1 ms 64 字節(jié)一包數(shù)據(jù),所以最大傳輸速率是64 K,速率不是很高,如果使用高速,可以達(dá)到125 us 1024 字節(jié),還有一種高速高帶寬的中斷端點(diǎn),125 us 微幀內(nèi)可以進(jìn)行三次中斷傳輸,即125 us 內(nèi)可傳輸 3072 字節(jié)。

100052997-107832-4.png

(注意上圖未畫出握手包)

批量傳輸

批量傳輸是一種可靠的單向傳輸,但是和中斷傳輸不同,傳輸延遲沒有保證,它會(huì)盡可能的利用可以利用的帶寬完成傳輸(說白了,就是個(gè)撿漏的),適合數(shù)據(jù)量比較大的傳輸。
當(dāng)然如果說總線上只有批量傳輸,那么延遲也是能保證的,畢竟沒人和它競爭帶寬。

現(xiàn)實(shí)中,U盤就是采用批量傳輸,因?yàn)樗鼘?duì)時(shí)間延遲不是那么嚴(yán)格,只要可靠的完成大量數(shù)據(jù)的傳輸即可。

低速設(shè)備不支持批量傳輸,高速設(shè)備批量最大包長度為512字節(jié),全速批量可以為 8、16、32、64,選擇余地比較大。

因?yàn)闀?huì)錯(cuò)誤重傳,所以需要 PID 的翻轉(zhuǎn)機(jī)制,即按照 DATA0 – DATA1 – DATA0 – DATA1……的方式翻轉(zhuǎn),允許 3 次以下的傳輸錯(cuò)誤,超過三次,主機(jī)將認(rèn)為端點(diǎn)功能錯(cuò)誤 (STALL),放棄該端點(diǎn)的傳輸,需要主機(jī)使用控制傳輸恢復(fù)該端點(diǎn)的功能。

注意上面的 STALL 回復(fù),這個(gè)代表端點(diǎn)錯(cuò)誤,一旦回復(fù)該 STALL,如果沒有主機(jī)干預(yù),設(shè)備將一直使用 STALL 回復(fù),說明該端點(diǎn)不支持該功能或者產(chǎn)生了錯(cuò)誤。

同步傳輸

這種傳輸是四大傳輸中唯一不可靠的傳輸方式,但是好處就是可以保證帶寬,并且沒有延遲,而且因?yàn)槭遣豢煽康膫鬏?,所以沒有握手包,也不支持 PID 翻轉(zhuǎn),主機(jī)在安排這些傳輸事務(wù)時(shí),同步傳輸擁有最高的優(yōu)先級(jí)。

高速同步端點(diǎn)最大包長度為 1024,全速為 1023。

高速端點(diǎn)在一個(gè)微幀內(nèi)僅允許一次同步傳輸事務(wù),而高速高帶寬的同步端點(diǎn)可以在一個(gè)微幀內(nèi)傳輸三次,即3072 Byte / 125us。

在現(xiàn)實(shí)中,這種傳輸用于攝像頭、USB音響等,因?yàn)樗鼈儗?duì)實(shí)時(shí)性要求比較高,但是可以容忍錯(cuò)誤(攝像頭偶爾出現(xiàn)了一幀有錯(cuò)誤的畫面,沒多大關(guān)系,因?yàn)橄乱粠嬅骜R上就會(huì)傳過來

100052997-107834-6.png

在前面的介紹中,一直都有幀、微幀的身影,那么它是什么?

我們知道,令牌包中有一種特殊的包,稱之為 SOF (start of frame)包,格式如下:

100052997-107835-7.png

CRC校驗(yàn)為 5 bit,和 11 bit 的幀號(hào)剛好湊成 16 bit 兩個(gè)字節(jié)。

高速設(shè)備中每過 125 us 發(fā)出一個(gè)微幀,全速每過 1 ms 發(fā)出一幀,之后才會(huì)開始數(shù)據(jù)傳輸。

主機(jī)在每個(gè)幀(微幀)的開始傳輸一個(gè)SOF,每次幀號(hào)加 1,當(dāng)達(dá)到 0x7FF 時(shí),將清零重新開始計(jì)數(shù)。

看圖理解 SOF 和其他傳輸?shù)年P(guān)系:

CRC校驗(yàn)為 5 bit,和 11 bit 的幀號(hào)剛好湊成 16 bit 兩個(gè)字節(jié)。

看上圖可以了解到,每過一定時(shí)間(1 ms或者 125 us),主機(jī)發(fā)出 SOF 包,接下來進(jìn)行傳輸事務(wù)(四大傳輸中的一種),每一個(gè)傳輸事務(wù)中又包含了三個(gè)數(shù)據(jù)包(我們可以認(rèn)為SOF就是 USB 總線中的時(shí)鐘信號(hào)

通過上圖,我們就可以理解幀、傳輸、傳輸事務(wù)、包之間的關(guān)系了。

再用另一個(gè)圖看看四大傳輸之間的關(guān)系:

100052997-107837-9.png

可以看到,假如總線中有四類數(shù)據(jù)需要傳輸,那么主機(jī)將在每幀開始發(fā)送SOF包,然后優(yōu)先安排同步傳輸,之后安排中斷傳輸,其次是控制傳輸,最后才是批量傳輸(大容量傳輸),所以說批量傳輸是專業(yè)撿漏的。

版權(quán)聲明:本文為博主原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/weixin_42876465/article/details/108250959

審核編輯:何安

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

    關(guān)注

    60

    文章

    8441

    瀏覽量

    284609
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    汽車連接器的四大基本結(jié)構(gòu)組件解析

    在汽車工業(yè)迅猛發(fā)展的當(dāng)下,汽車上的各類功能件與零部件持續(xù)朝著智能化、精細(xì)化以及高可靠性的方向邁進(jìn)。這一趨勢不僅對(duì)汽車連接器的結(jié)構(gòu)設(shè)計(jì)、外觀設(shè)計(jì)提出了更為嚴(yán)苛的標(biāo)準(zhǔn),在材料選用上也要求更高,使得汽車連接器的型號(hào)日益豐富多樣。下面為您詳細(xì)介紹汽車連接器的四大基本結(jié)構(gòu)組件。
    的頭像 發(fā)表于 03-09 09:09 ?21次閱讀

    是德示波器DSOX1202A與電腦的種連接方式及操作步驟詳解

    是德科技(Keysight)DSOX1202A示波器作為高精度電子測量設(shè)備,廣泛應(yīng)用于電子工程、通信測試與自動(dòng)化調(diào)試場景。為實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)采集、波形分析與遠(yuǎn)程控制,用戶需通過USB、LAN、GPIB或串口將示波器與電腦互聯(lián)。本文將結(jié)合官方指南與實(shí)操經(jīng)驗(yàn),系統(tǒng)介紹
    的頭像 發(fā)表于 01-13 17:48 ?1516次閱讀
    是德示波器DSOX1202A與電腦的<b class='flag-5'>四</b>種連接<b class='flag-5'>方式</b>及操作步驟詳解

    TUSB8041A端口USB 3.1 1代集線器的技術(shù)剖析與應(yīng)用

    (TI)的TUSB8041A端口USB 3.1 1代集線器,從特性、應(yīng)用、設(shè)計(jì)要點(diǎn)等多個(gè)方面進(jìn)行詳細(xì)介紹。 文件下載: tusb8041a.pdf 一、TUSB8041A特性概覽 1.1 端口與連接特性
    的頭像 發(fā)表于 12-18 15:20 ?356次閱讀

    TMUXHS221LV:USB 2.0 高速信號(hào)傳輸的理想之選

    TMUXHS221LV:USB 2.0 高速信號(hào)傳輸的理想之選 在電子設(shè)備的設(shè)計(jì)中,高速信號(hào)的傳輸和處理一直是工程師們關(guān)注的重點(diǎn)。今天,我們要介紹一款由德州儀器(TI)推出的高速雙向
    的頭像 發(fā)表于 12-16 10:45 ?322次閱讀

    Amphenol SOCAPEX USB3 FTV放大器:突破USB3信號(hào)傳輸距離限制

    Amphenol SOCAPEX USB3 FTV放大器:突破USB3信號(hào)傳輸距離限制 在電子設(shè)備的連接與數(shù)據(jù)傳輸領(lǐng)域,USB接口一直扮演著
    的頭像 發(fā)表于 12-11 11:15 ?399次閱讀

    和而泰發(fā)布四大自研核心技術(shù)平臺(tái)

    從智能家電到工業(yè)機(jī)器人,從新能源汽車到低空經(jīng)濟(jì),和而泰的四大技術(shù)平臺(tái)正在重新定義智能設(shè)備的"生命系統(tǒng)"。
    的頭像 發(fā)表于 10-13 16:08 ?1210次閱讀

    觸覺智能RK3576開發(fā)板OpenHarmony開源鴻蒙系統(tǒng)USB控制傳輸功能示例

    本文介紹OpenHarmony開源鴻蒙系統(tǒng)的USB控制傳輸功能實(shí)現(xiàn)及相關(guān)代碼示例,基于觸覺智能RK3576開發(fā)板PurplePiOH2演示。OpenHarmony的USB通信
    的頭像 發(fā)表于 09-30 16:31 ?1581次閱讀
    觸覺智能RK3576開發(fā)板OpenHarmony開源鴻蒙系統(tǒng)<b class='flag-5'>USB</b>控制<b class='flag-5'>傳輸</b>功能示例

    匯川技術(shù)四大架構(gòu)重磅發(fā)布

    2025 匯川技術(shù)爆品發(fā)布會(huì)上,F(xiàn)A、運(yùn)控、傳動(dòng)、機(jī)器人四大 IPMT 主任攜覆蓋 “設(shè)計(jì) - 制造 - 傳動(dòng) - 執(zhí)行” 的全棧架構(gòu)登場,為中國制造業(yè)智能化轉(zhuǎn)型破局。這不是簡單產(chǎn)品升級(jí),而是重構(gòu)智能制造底層邏輯的革命。
    的頭像 發(fā)表于 09-02 15:54 ?4723次閱讀
    匯川技術(shù)<b class='flag-5'>四大</b>架構(gòu)重磅發(fā)布

    基于FPGA的USB數(shù)據(jù)傳輸

    你也許會(huì)有疑問,明明有這么多通信方式和數(shù)據(jù)傳輸(SPI、I2C、UART、以太網(wǎng))為什么偏偏使用USB呢?
    的頭像 發(fā)表于 08-06 14:47 ?4879次閱讀
    基于FPGA的<b class='flag-5'>USB</b>數(shù)據(jù)<b class='flag-5'>傳輸</b>

    芯片制造的四大工藝介紹

    這一篇文章介紹幾種芯片加工工藝,在Fab里常見的加工工藝有種類型,分別是圖形化技術(shù)(光刻)?摻雜技術(shù)?鍍膜技術(shù)和刻蝕技術(shù)。
    的頭像 發(fā)表于 07-16 13:52 ?3827次閱讀
    芯片制造的<b class='flag-5'>四大</b>工藝<b class='flag-5'>介紹</b>

    振弦式應(yīng)變計(jì)兩種數(shù)據(jù)傳輸方式介紹

    著數(shù)據(jù)采集的效率與可靠性。下面給大家介紹振弦式應(yīng)變計(jì)兩種數(shù)據(jù)傳輸方式。一、有線傳輸:穩(wěn)定可靠的傳統(tǒng)方案有線傳輸是振弦式應(yīng)變計(jì)最傳統(tǒng)的數(shù)據(jù)
    的頭像 發(fā)表于 07-15 13:38 ?593次閱讀
    振弦式應(yīng)變計(jì)兩種數(shù)據(jù)<b class='flag-5'>傳輸</b><b class='flag-5'>方式</b><b class='flag-5'>介紹</b>

    JAE USB Type-C連接器產(chǎn)品概述

    USB Type-C接口不僅實(shí)現(xiàn)了形狀的統(tǒng)一,還能靈活支持多種通信規(guī)格。此外,電力傳輸是您應(yīng)該記住的一項(xiàng)USB功能。隨著USB標(biāo)準(zhǔn)的修訂,這項(xiàng)電力
    的頭像 發(fā)表于 07-11 09:42 ?1100次閱讀
    JAE <b class='flag-5'>USB</b> Type-C連接器產(chǎn)品概述

    無線傳輸中的四大“隱形指揮官”:頻段、功率、靈敏度和空速

    、功率、靈敏度和空中速率。在無線通信系統(tǒng)的設(shè)計(jì)與優(yōu)化中,工作頻段、發(fā)射功率、接收靈敏度、空中速率是決定性能的四大核心參數(shù)。它們相互制約又彼此關(guān)聯(lián),直接影響傳輸距離、數(shù)
    的頭像 發(fā)表于 03-20 19:33 ?2811次閱讀
    無線<b class='flag-5'>傳輸</b>中的<b class='flag-5'>四大</b>“隱形指揮官”:頻段、功率、靈敏度和空速

    RT1735的四大優(yōu)勢介紹

    業(yè)界先鋒!立錡推出專為140W以下應(yīng)用設(shè)計(jì)的保護(hù)芯片 RT1735,適用于電腦顯示器、電競筆記本電腦、擴(kuò)展基座(docking hub)等設(shè)備的USB-C接口保護(hù)。RT1735支持PD3.0/3.2標(biāo)準(zhǔn),并提供高達(dá)28V的VBUS保護(hù)電壓。
    的頭像 發(fā)表于 03-14 11:02 ?953次閱讀

    STM32 USB傳輸到對(duì)端的時(shí)間是多少?為什么usb會(huì)丟幀?

    目前使用的stm32l452這款芯片,USB2.0,F(xiàn)ull speed設(shè)備,目前通過中斷傳輸1000HZ傳輸imu數(shù)據(jù),目前使用的是PMA 1.想問下大概USB
    發(fā)表于 03-10 08:02