新聞中心

USB傳輸類型

作者: 時(shí)間:2016-12-12 來(lái)源:網(wǎng)絡(luò) 收藏
USB傳輸類型
USB中有四種類型的端點(diǎn),也就對(duì)應(yīng)四種不同的傳輸方式,分別是控制傳輸、中斷傳輸、同步傳輸和塊傳輸。
1
控制傳輸

控制傳輸?shù)淖x寫時(shí)序如下:

本文引用地址:http://butianyuan.cn/article/201612/328921.htm

控制傳輸總共三個(gè)階段,setup階段、數(shù)據(jù)階段和狀態(tài)階段,其中數(shù)據(jù)階段是可選的,而每個(gè)階段都包含三個(gè)過(guò)程,即令牌過(guò)程、數(shù)據(jù)過(guò)程和握手過(guò)程。每個(gè)USB設(shè)備都必須具有控制傳輸功能,控制傳輸用于主機(jī)同設(shè)備的控制端點(diǎn)進(jìn)行通信,通過(guò)讀取設(shè)備的配置信息來(lái)完成對(duì)設(shè)備的枚舉和配置。
setup階段

setup階段首先是setup令牌,然后是數(shù)據(jù)過(guò)程,最后是狀態(tài)過(guò)程,對(duì)于數(shù)據(jù)過(guò)程只能使用DATA0包,設(shè)備在接收到setup數(shù)據(jù)包之后,需要返回ACK信號(hào),如果接收數(shù)據(jù)錯(cuò)誤,設(shè)備是不會(huì)返回握手包。setup數(shù)據(jù)呢就是主機(jī)往設(shè)備發(fā)送的請(qǐng)求數(shù)據(jù)包,設(shè)備根據(jù)這個(gè)請(qǐng)求數(shù)據(jù)包來(lái)做相應(yīng)的動(dòng)作,例如:返回設(shè)備描述符或者直接進(jìn)入狀態(tài)階段返回一個(gè)0長(zhǎng)度的數(shù)據(jù)包。SETUP傳輸呢有點(diǎn)類似于OUT傳輸,只不過(guò)OUT傳輸發(fā)送的是OUT令牌,SETUP傳輸發(fā)送的是SETUP令牌。

數(shù)據(jù)階段
如果是OUT傳輸呢,那么首先發(fā)送的是OUT令牌,如果IN傳輸呢,則發(fā)送的是IN令牌,然后是數(shù)據(jù)過(guò)程,數(shù)據(jù)過(guò)程必須以DATA1包開始,然后在DATA0和DATA1之間交替,注意數(shù)據(jù)過(guò)程的方向必須是同一個(gè)方向,即要么都是IN傳輸,要么都是OUT傳輸。
狀態(tài)階段

狀態(tài)階段的傳輸方向同數(shù)據(jù)階段的傳輸方向剛好相反,即數(shù)據(jù)階段是IN傳輸呢,狀態(tài)階段就是OUT傳輸,數(shù)據(jù)階段是OUT傳輸呢,狀態(tài)階段就是IN傳輸。如果沒有數(shù)據(jù)階段呢,那就是只能是IN傳輸。狀態(tài)階段的響應(yīng)信息如圖所示:

狀態(tài)階段的數(shù)據(jù)過(guò)程呢使用的DATA1包,如果是控制寫,設(shè)備在正確收到數(shù)據(jù)包之后將返回一個(gè)0長(zhǎng)度的數(shù)據(jù)包。注意這個(gè)0長(zhǎng)度數(shù)據(jù)和沒有數(shù)據(jù)概念是不一樣的,0長(zhǎng)度數(shù)據(jù)有數(shù)據(jù)的包頭,只是后面沒有數(shù)據(jù)罷了。對(duì)于控制讀,主機(jī)在接收數(shù)據(jù)之后,將返回ACK握手信息。
2
中斷傳輸

中斷傳輸呢分為IN和OUT傳輸,如果是IN傳輸,設(shè)備返回?cái)?shù)據(jù)或者NAK、STALL握手信息。如果端點(diǎn)沒有新的中斷信息返回,在數(shù)據(jù)過(guò)程中設(shè)備返回的是NAK握手信息,如果此時(shí)端點(diǎn)已經(jīng)被設(shè)置為暫停了,設(shè)備返回的是STALL握手信息,如果設(shè)備返回的是中斷信息數(shù)據(jù)包,主機(jī)必須返回一個(gè)ACK握手信息給設(shè)備,如果數(shù)據(jù)數(shù)據(jù)接收錯(cuò)誤,將不會(huì)返回握手信息。IN、OUT傳輸過(guò)程如圖所示

中斷傳輸一般用于這種具有固定速率、數(shù)據(jù)量少的數(shù)據(jù)傳輸,例如USB鼠標(biāo)、鍵盤就是采用的中斷傳輸。
3
同步傳輸

同步傳輸也叫做等時(shí)傳輸,也分為IN和OUT傳輸,但是注意沒有握手過(guò)程,所以說(shuō)它并不保證數(shù)據(jù)傳輸是否正確性,但是要保證數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性,所以這種傳輸方式一般用于音頻和視頻流的數(shù)據(jù)傳輸,例如你的USB攝像頭就是采用的這種傳輸方式,傳輸過(guò)程如下:

4
塊傳輸

塊傳輸也叫做批量傳輸,塊傳輸并不追求數(shù)據(jù)傳輸?shù)臅r(shí)間,但是必須保證數(shù)據(jù)傳輸?shù)恼_性,例如U盤就是采用的這種傳輸方式,傳輸過(guò)程如下:

為了保證數(shù)據(jù)傳輸?shù)恼_性,USB采用的是錯(cuò)誤檢測(cè)機(jī)制和重試機(jī)制來(lái)確保數(shù)據(jù)傳輸正確,當(dāng)然它也分三個(gè)過(guò)程,令牌過(guò)程、數(shù)據(jù)過(guò)程和握手過(guò)程,其中PING令牌和NYET令牌只用于高速設(shè)備。


關(guān)鍵詞: USB傳輸類

評(píng)論


技術(shù)專區(qū)

關(guān)閉