新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > USB通信協(xié)議——分割數(shù)據(jù)交易

USB通信協(xié)議——分割數(shù)據(jù)交易

作者: 時(shí)間:2013-10-12 來(lái)源:網(wǎng)絡(luò) 收藏
若要實(shí)現(xiàn)真正的高速傳輸,一定要2.0主機(jī)與2.0集線器連接。但是如果中間插上了一臺(tái)1.1集線器,就無(wú)法達(dá)到這個(gè)高速傳輸?shù)男Ч?。此外,?dāng)?shù)退倩蚴侨僭O(shè)各被連接至2.0集線器后,這個(gè)集線器會(huì)轉(zhuǎn)換兩者所需的速度。但是這種速度的轉(zhuǎn)換并不是集線器的唯一工作,它還要管理多個(gè)速度。而高速比全速快了40倍,又比低速快了320倍。若當(dāng)集線器在與設(shè)各交換低速或高速數(shù)據(jù)時(shí),要整個(gè)總線去等待是沒(méi)有意義的。因此,這個(gè)解決方案即是。當(dāng)2.0主機(jī)要在高速總線上與低速或是全速來(lái)作通信時(shí),即會(huì)使用分割交易的程序。低速或全速的一個(gè)單一數(shù)據(jù)交易通常需要兩種類型的,其中,一個(gè)或是更多地起始(start-splittransactIons)來(lái)送出信息給設(shè)備,或是更多地完成分割數(shù)據(jù)交易(complete-split transactions),如圖1所示。其中,可以看到不論是起始分割數(shù)據(jù)交易去送出信息給設(shè)各,或是更多地完成分割數(shù)據(jù)交易,而其后都跟隨著一般的令牌和數(shù)據(jù)封包等。

  圖1 起始分割數(shù)據(jù)交易與完成分割數(shù)據(jù)交易的示意圖

  但其中,有一個(gè)例外的是,快速等時(shí)OUT數(shù)據(jù)交易。這是因其無(wú)須回傳任何值,所以不必使用完全分割數(shù)據(jù)交易。而即使用戶需要包含更多的數(shù)據(jù)交易來(lái)實(shí)現(xiàn)一個(gè)傳輸?shù)墓ぷ?,但分割?shù)據(jù)交易的程序?qū)?huì)使得總線的時(shí)間有較佳的使用性。這是因?yàn)樗鼈儗?huì)縮小對(duì)于低速或是全速設(shè)備用來(lái)響應(yīng)所需花費(fèi)的總線等待時(shí)間量。

  如圖1所示,在起始分割數(shù)據(jù)交易中,2.0主機(jī)會(huì)送出至起始分割令牌封包(Start-Split Token Packet,SSPLIT),其后再跟隨一般的低速或是全速令牌封包(在令牌階段中,包含2個(gè)令牌封包,SSPLIT(起始令牌)+令牌),以及指定此設(shè)備的數(shù)據(jù)封包。此時(shí),若設(shè)各所連接的2.0集線器回傳ACK或是NAK,主機(jī)就可以針對(duì)別的數(shù)據(jù)交易很自由地使用整個(gè)總線的帶寬。而設(shè)各也知道至今仍未有任何的數(shù)據(jù)存在。

  為了更清楚了解整個(gè)起始分割數(shù)據(jù)交易與完成分割數(shù)據(jù)交易的過(guò)程,讀者可以比對(duì)圖2與圖3,分割數(shù)據(jù)交易IN與OUT的過(guò)程示意圖。在這兩個(gè)圖中,包含了3個(gè)主要的傳輸部分,2.0主機(jī)、2.0集線器與低速或是全速的設(shè)各。因此,讀者可以從這3個(gè)主要的部分來(lái)加以分析,且以圖2與3所示之3個(gè)步驟來(lái)加以了解。

  圖2 分割數(shù)據(jù)交易(IN)過(guò)程示意圖

  如圖2所示的第1步中,2.0主機(jī)先送出SSPLIT與IN令牌。第2步,集線器就會(huì)轉(zhuǎn)換主機(jī)接收到的封包或多 個(gè)封包為適當(dāng)?shù)乃俣?,然后將它們送至設(shè)備,以及存儲(chǔ)如果設(shè)備有的任何響應(yīng)。根據(jù)數(shù)據(jù)交易類型,設(shè)各可以回傳數(shù)據(jù)、握手或是沒(méi)有任何動(dòng)作。對(duì)于設(shè)備部分來(lái)說(shuō),這個(gè)數(shù)據(jù)已經(jīng)是以預(yù)期的低速或是全速來(lái)處理的,且不知這是已被分割過(guò)的數(shù)據(jù)交易。此時(shí),主機(jī)仍未收到任何設(shè)備的響應(yīng)。當(dāng)集線器已經(jīng)完成了與設(shè)各的數(shù)據(jù)交易的工作后,緊接著,主機(jī)可以開(kāi)始另外的總線傳輸工作。同時(shí),該集線器也必須加以處理。

  此時(shí)對(duì)主機(jī)來(lái)說(shuō),當(dāng)其認(rèn)為集線器已經(jīng)有足夠的時(shí)間來(lái)完成與設(shè)各的數(shù)據(jù)交易后,就開(kāi)始與集線器進(jìn)行完成分割數(shù)據(jù)的步驟,這即是步驟3(注意到這個(gè)動(dòng)作在數(shù)據(jù)交易OUT,是不需要的)。

  在第3步中的完成分割數(shù)據(jù)交易中,主機(jī)會(huì)送出完成分割數(shù)據(jù)交易,其后一般再跟隨低速或全速令牌封包(在令牌階段中,包含2個(gè)令牌封包,CSPLIT(完成令牌)+令牌),來(lái)要求集線器已經(jīng)從設(shè)各收到的數(shù)據(jù)或狀態(tài)信息。這也可參考圖2所示的下半部。集線器就會(huì)回傳所要求的數(shù)據(jù)或是狀態(tài)碼。這將是完成數(shù)據(jù)交易的動(dòng)作。如果集線器并沒(méi)有準(zhǔn)備好可以送出封包,它將會(huì)回傳NYET狀態(tài)碼,而且主機(jī)還會(huì)再試一次。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉