亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種提升傳輸數(shù)據(jù)包的效率的方法與裝置的制作方法

文檔序號:7859704閱讀:211來源:國知局
專利名稱:一種提升傳輸數(shù)據(jù)包的效率的方法與裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種數(shù)據(jù)傳輸方法,更明確地說,有關(guān)一種可提高同時型傳輸類型數(shù)據(jù)包的傳輸效率的數(shù)據(jù)傳輸方法。
背景技術(shù)
在通用串行總線(Universal Serial Bus, USB)協(xié)議3. O版中,包含四種傳輸類型控制型傳輸類型(control transfer type)、中斷型傳輸類型(interrupt transfer type)、巨量型傳輸類型(bulk transfer type),以及同時型傳輸類型(isochronous transfer type)。一般而言,同時型傳輸類型是應(yīng)用于語音和視頻的傳輸,且由于語音與視頻的傳輸需為即時傳輸(real-time transfer),因此,在傳輸同時型傳輸類型的數(shù)據(jù)包時, 需以穩(wěn)定的速度且持續(xù)地傳輸同時型傳輸類型的數(shù)據(jù)包,以避免造成接收端所接收的語音或視頻產(chǎn)生斷斷續(xù)續(xù)(不連續(xù))的現(xiàn)象,或者與傳輸端所傳送的語音或視頻不同步(延遲) 的現(xiàn)象。
以USB 3. O為例,請參考圖1,圖1為說明一 USB 3. O數(shù)據(jù)包DP的數(shù)據(jù)包格式的示意圖。如圖1所示,數(shù)據(jù)包DP包含一檔頭(header)H,以及一數(shù)據(jù)負(fù)載P。檔頭H包含一型態(tài)資訊TP、一端點資訊(end point)EP>一連結(jié)命令字元(link command word)LW,以及一檔頭錯誤檢查碼CRCh。數(shù)據(jù)負(fù)載P包含一數(shù)據(jù)段D,以及一數(shù)據(jù)錯誤檢查碼CRCd。
型態(tài)資訊TP可用來判斷數(shù)據(jù)包DP的數(shù)據(jù)包類型。數(shù)據(jù)包類型,舉例來說,可為握手(handshake)、數(shù)據(jù)(data)…等。端點資訊EP可用來判斷數(shù)據(jù)包DP所屬的傳輸類型(如同時型傳輸類型)。連結(jié)命令字元LW用來表示數(shù)據(jù)連結(jié)的情況,且連結(jié)命令字元LW另包含一連結(jié)命令字元錯誤檢查碼CRClj與檔頭順序參數(shù)(Header Sequence Number) HSEQ0連結(jié)命令字元錯誤檢查碼CRQ用來判斷連結(jié)命令字元LW是否有錯誤。檔頭順序參數(shù)HSEQ用來判斷數(shù)據(jù)包DP的數(shù)據(jù)包順序是否有錯誤。檔頭錯誤檢查碼CRCh用來判斷檔頭H是否有錯誤。
數(shù)據(jù)段D提供傳送端實際所傳輸?shù)臄?shù)據(jù),如語音數(shù)據(jù)、視頻數(shù)據(jù)…等。數(shù)據(jù)錯誤檢查碼CRCd用來判斷數(shù)據(jù)段D是否有錯誤。此外,數(shù)據(jù)段D可包含N筆數(shù)據(jù)SD廣SDn。
請參考圖2。圖2為說明在現(xiàn)有技術(shù)中傳輸同時型傳輸類型數(shù)據(jù)包的示意圖。在圖2中,傳送端T可為一主控端(host)或一裝置端(device),而接收端R則為一對應(yīng)的裝置端或一對應(yīng)的主控端。而傳輸端T與接收端R的數(shù)據(jù)處理從最底部依序分層為實體層 (physical layer)PH、數(shù)據(jù)連結(jié)層(data link layer)DL 與協(xié)議層(protocol layer)PR0 如圖2所示,當(dāng)接收端R接收一來自于傳送端T的數(shù)據(jù)包DP1后,經(jīng)過實體層PH的處理之后,接收端R的數(shù)據(jù)連結(jié)層DL會直接依據(jù)數(shù)據(jù)包DP1的連結(jié)命令字元錯誤檢查碼CRCu與檔頭錯誤檢查碼CRChi,判斷數(shù)據(jù)包DP1的檔頭H1是否正確。當(dāng)判斷數(shù)據(jù)包DP1的檔頭H1正確后,接收端R才會根據(jù)數(shù)據(jù)包DP1的檔頭H1,對數(shù)據(jù)包DP1進(jìn)行后續(xù)處理,如將數(shù)據(jù)包DP1往上傳送至接收端R的協(xié)議層PR以依據(jù)數(shù)據(jù)包DP1的數(shù)據(jù)負(fù)載P1中的數(shù)據(jù)錯誤檢查碼CRCdi 來判斷數(shù)據(jù)包DP1的數(shù)據(jù)負(fù)載P1是否正確,以及在判斷DP1的數(shù)據(jù)負(fù)載P1為正確后,根據(jù)協(xié)議所定義的事件及數(shù)據(jù)段D1的內(nèi)容(數(shù)據(jù)SDn SD1N),產(chǎn)生對應(yīng)的動作,如根據(jù)協(xié)議與數(shù)據(jù)段D1的內(nèi)容,輸出語音或視頻數(shù)據(jù)。然而,當(dāng)接收端R的數(shù)據(jù)連結(jié)層DL判斷數(shù)據(jù)包DP1的檔頭H1錯誤時,接收端R的數(shù)據(jù)連結(jié)層DL會直接發(fā)出一重新傳送信號Sketky至傳送端T,而使傳送端T得再重新傳送一次數(shù)據(jù)包DP115換句話說,即使數(shù)據(jù)包DP1是屬于同時型傳輸類型數(shù)據(jù)包,接收端R仍會針對檔頭錯誤的同時型傳輸類型數(shù)據(jù)包DP1發(fā)出一重試信號Sketky 至傳送端T,而使得傳送端T再重新傳送一次同時型傳輸類型數(shù)據(jù)包DP115如此一來,在傳輸語音或視頻時,會產(chǎn)生不必要的延遲,例如讓語音或視頻的斷斷續(xù)續(xù)的狀況更為嚴(yán)重,或者與傳送端之間的同步性更差,而造成使用者的不便。發(fā)明內(nèi)容
為了解決在現(xiàn)有技術(shù)中傳輸同時型傳輸類型數(shù)據(jù)包的不連續(xù)與不同步的問題,提出了新的傳輸方法以及裝置,以提升在傳輸同時型傳輸類型數(shù)據(jù)包的效率并降低在傳輸語音或視頻時產(chǎn)生不連續(xù)與不同步的現(xiàn)象。
本發(fā)明在一實施例中,提供一種提升于通用串行總線通訊協(xié)議版本3. O版中傳輸同時性型傳輸類型的數(shù)據(jù)包的效率的方法。該方法包含從一傳送端接收一第一數(shù)據(jù)包、對該第一數(shù)據(jù)包的一檔頭進(jìn)行錯誤碼檢查,以得出一檢查結(jié)果,以及當(dāng)該檢查結(jié)果表示為錯誤時,忽略該第一數(shù)據(jù)包。
本發(fā)明在另一實施例中,提供一種提升于通用串行總線協(xié)議3. O版中傳輸同時型傳輸類型的數(shù)據(jù)包 的效率的方法。該方法包含當(dāng)一傳送端從一接收端接收對應(yīng)于一第一同時型傳輸類型數(shù)據(jù)包的一重新傳送信號時,該傳送端根據(jù)該第一同時型傳輸類型數(shù)據(jù)包的一第一檔頭序列參數(shù),設(shè)定一第二同時型傳輸類型數(shù)據(jù)包的一第二檔頭序列參數(shù),以及該傳送端傳送設(shè)定該第二檔頭序列參數(shù)后的該第二同時型傳輸類型數(shù)據(jù)包至該接收端。
本發(fā)明在又一實施例中,提供一種用于同時型通訊協(xié)議中傳送數(shù)據(jù)的裝置,該裝置包含一數(shù)據(jù)連結(jié)層裝置,用來根據(jù)一偵測信號,選擇性地傳送一偽裝數(shù)據(jù)包數(shù)據(jù)。
利用本發(fā)明所提供的傳輸方法,在數(shù)據(jù)連結(jié)層中對于有錯誤的同時型傳輸類型數(shù)據(jù)包,接收端并不會對傳送端發(fā)出重新傳送信號。除此之外,本發(fā)明另提供一傳輸方法,可使當(dāng)傳送端接收到代表要求重新傳送上一次所傳送的同時型傳輸類型數(shù)據(jù)包的重新傳送信號時,傳送端不重新傳送上一次所傳送的同時型傳輸類型數(shù)據(jù)包,而直接傳送本次所要傳送的同時型傳輸類型數(shù)據(jù)包,以使得傳送端可以更快速地傳送后續(xù)的同時型傳輸類型數(shù)據(jù)包,如此便可以有效解決使用者在接收語音或視頻信號時產(chǎn)生不連續(xù)或者不同步的現(xiàn)象,提供給使用者更大的便利性。


圖1為說明一 USB 3. O數(shù)據(jù)包的數(shù)據(jù)包格式的示意圖2為說明在現(xiàn)有技術(shù)中傳輸同時型傳輸類型數(shù)據(jù)包的示意圖3為說明本發(fā)明的第一實施例的提升在USB協(xié)議3. O版中傳輸同時型傳輸類型的數(shù)據(jù)包的效率的方法的流程圖4A為說明本發(fā)明在同時型傳輸類型數(shù)據(jù)包的檔頭有錯誤的情況下,要求傳送端重新傳送數(shù)據(jù)包的示意圖4B為說明本發(fā)明在同時型傳輸類型數(shù)據(jù)包的檔頭有錯誤的情況下,不要求傳送端重新傳送數(shù)據(jù)包的示意圖5為說明本發(fā)明的第二實施例的提升在USB協(xié)議3. O版中傳輸同時型傳輸類型的數(shù)據(jù)包的效率的方法的流程圖6A為說明本發(fā)明在接收端要求傳送端重新傳送上次所傳送的同時型傳輸類型數(shù)據(jù)包的情況下,傳送端重新傳送上次所傳輸?shù)臄?shù)據(jù)包的示意圖6B為說明本發(fā)明在接收端要求傳送端重新傳送上次所傳送的同時型傳輸類型數(shù)據(jù)包的情況下,傳送端不再重新傳送上次所傳輸?shù)臄?shù)據(jù)包的示意圖7為說明本發(fā)明的用于傳輸同時型傳輸類型中的裝置的示意圖。
其中,附圖標(biāo)記
300方法301 305步驟
ACKcTACK5確認(rèn)信號
CRCh, CRCd, CRCl, CRCDh1、CRCd1、CRCu 錯誤檢查碼
DPJPcTDP5數(shù)據(jù)包D^D1數(shù)據(jù)段
DL數(shù)據(jù)連結(jié)層EP、EPjSj點資訊
H、H1檔頭hseq、HseqcTHseq4檔頭順序參數(shù)
LBAD確認(rèn)錯誤LGOOD確認(rèn)正確
Ne接收數(shù)據(jù)包數(shù)目Nt傳送數(shù)據(jù)包數(shù)目
P、P1數(shù)據(jù)負(fù)載PH實體層
PR協(xié)議層R接收端
SD1, SD2, SDn, SD11, SD12, SD1N數(shù)據(jù)
Seetey重新傳送信號T傳送端
TPJP1型態(tài)資訊LW、Lff1連結(jié)命令字元
700用于傳輸同時型傳輸類型中的裝置
711、712數(shù)據(jù)連結(jié)層裝置721、722協(xié)議層裝置
Sm、Sd2偵測信號DPcec> Dpeetey偽裝數(shù)據(jù)包數(shù)據(jù)具體實施方式
有鑒于此,本發(fā)明為了解決在現(xiàn)有技術(shù)中傳輸同時型傳輸類型數(shù)據(jù)包的不連續(xù)與不同步的問題,提出了新的傳輸方法,以提升在傳輸同時型傳輸類型數(shù)據(jù)包的效率并降低在傳輸語音或視頻時產(chǎn)生不連續(xù)與不同步的現(xiàn)象。
請參考圖3。圖3說明根據(jù)本發(fā)明的一第一實施例的提升在USB協(xié)議3. O版中傳輸同時型傳輸類型的數(shù)據(jù)包的效率的方法300的流程圖。在方法300中,假設(shè)傳輸端T欲傳輸兩個同時型傳輸類型數(shù)據(jù)包DP1與DP2,且數(shù)據(jù)包DP1與DP2所傳輸?shù)捻樞蚴莻鬏敹薚先傳輸數(shù)據(jù)包DP1至接收端R,然后再傳輸數(shù)據(jù)包DP2至接收端R。其步驟說明如下
步驟301 :接收端R接收從傳送端T傳送來的同時型傳輸類型數(shù)據(jù)包DP1 ;
步驟302 :依據(jù)同時型傳輸類型數(shù)據(jù)包DP1的連結(jié)命令字元錯誤檢查碼CRCu與檔頭錯誤檢查碼CRChi,對同時型傳輸類型數(shù)據(jù)包DP1的檔頭H1進(jìn)行錯誤碼檢查,以分別得出連結(jié)命令子兀檢查結(jié)果Eu與檔頭檢查結(jié)果Em ;
步驟303 :依據(jù)連結(jié)命令字元檢查結(jié)果Eu與檔頭檢查結(jié)果Ehi,判斷同時型傳輸類型數(shù)據(jù)包DP1的檔頭H1是否正確;若正確,則繼續(xù)步驟304 ;若否,則跳到步驟305 ;
步驟304 :接受同時型傳輸類型數(shù)據(jù)包DP1,以進(jìn)行后續(xù)處理;
步驟305 :忽略同時型傳輸類型數(shù)據(jù)包DP1,且不要求傳送端T重新傳送同時型傳輸類型數(shù)據(jù)包DP1,以使得傳送端T可直接傳送下一個同時型傳輸類型數(shù)據(jù)包DP2。
另外,上述的步驟30廣305在接收端R的數(shù)據(jù)連結(jié)層DL中所進(jìn)行。
在步驟301中,從傳送端T接收數(shù)據(jù)包DP1時,依據(jù)數(shù)據(jù)包DP1中的型態(tài)資訊TP1與端點資訊EP1,可得知數(shù)據(jù)包DP1為同時型傳輸類型的數(shù)據(jù)包。
在步驟302中,數(shù)據(jù)包DP1的檔頭H1的錯誤檢查碼CRChi可為16比特的循環(huán)冗余檢查碼(Cyclic Redundancy Check 16,CRC-16),而錯誤檢查碼CRCu可為5比特的循環(huán)冗余檢查碼(CRC-5)。而判斷數(shù)據(jù)包DP1的檔頭H1是否正確的方式,舉例而言,可對數(shù)據(jù)包DP1 的檔頭H1與連結(jié)命令字元LW1分別進(jìn)行循環(huán)冗余檢查。舉例來說,檔頭H1整體的循環(huán)冗余檢查,將數(shù)據(jù)包DP1的檔頭H1 (包含錯誤檢查碼CRChi)除以一預(yù)定除數(shù)CRCdh,以據(jù)以得一對應(yīng)的余數(shù)CRCrh1。依據(jù)所得余數(shù)CRCehi ,可得檔頭檢查結(jié)果Eh1。而連結(jié)命令子兀檢查結(jié)果Eu 可以類似的方式得出。
在步驟303中,當(dāng)余數(shù)CRCsm等于一預(yù)定值X時,檢查結(jié)果Em表示數(shù)據(jù)包DP1的檔頭H1為正確;當(dāng)余數(shù)CRC khi不等于預(yù)定值X時,檢查結(jié)果Em表示數(shù)據(jù)包DP1的檔頭H1為錯誤。舉例而言,設(shè)預(yù)定值X為0,當(dāng)余數(shù)CRCkhi等于O時,檢查結(jié)果Ehi表示數(shù)據(jù)包DP1的檔頭H1為正確;當(dāng)余數(shù)CRCkhi不等于O時,檢查結(jié)果Ehi表示數(shù)據(jù)包DP1的檔頭H1為錯誤。而檢查結(jié)果Eu亦可以類似的方式來得知連結(jié)命令字元LW1為正確或錯誤。在本實施例中,當(dāng)檢查結(jié)果Eu與Ehi皆為正確時,才判斷檔頭H1為正確;當(dāng)檢查結(jié)果Eu與Em中有一者為錯誤時,則判斷檔頭H1為錯誤。
在步驟304中,在接收端R確定接受同時型傳輸類型數(shù)據(jù)包0 1后,便會將數(shù)據(jù)包 DP1上傳至協(xié)議層PR,以進(jìn)行后續(xù)處理。而在協(xié)議層PR對于數(shù)據(jù)包DP1的處理如同前述,于此不再贅述。
在步驟305中,接收端R已經(jīng)由檔頭檢查結(jié)果Ehi與Eu得知數(shù)據(jù)包DP1有誤,因此忽略數(shù)據(jù)包DP115然而為了提升傳輸效率,使傳送端T可更快傳送后續(xù)的數(shù)據(jù)包DP2,因此接收端R不要求傳送端T重新傳送數(shù)據(jù)包DP1,意即接收端R的數(shù)據(jù)連結(jié)層DL不會發(fā)出重新傳送信號Sketky至傳送端T,來要求傳送端T重新傳送數(shù)據(jù)包DP115更明確地說,若傳送端T被要求重新傳送數(shù)據(jù)包DP1,則傳送端T便得再次傳送數(shù)據(jù)包DP1,而因此后續(xù)的數(shù)據(jù)包DP2被發(fā)出的時間便會被延后而造成延遲,而產(chǎn)生如現(xiàn)有技術(shù)般在傳送語音或視頻時的問題。然而,由于本發(fā)明在步驟305中并不會要求傳送端T重新傳送數(shù)據(jù)包DP1,因此后續(xù)的數(shù)據(jù)包 DP2不會因此等待傳送端T重新傳送數(shù)據(jù)包DP1的時間,而可以即時地傳送至接收端R,如此以提升傳輸效率并改善在傳送語音或視頻時不連續(xù)或者不同步的問題。
請參考圖4A及圖4B。圖4B為說明本發(fā)明在同時型傳輸類型數(shù)據(jù)包的檔頭有錯誤的情況下,不要求傳送端T重新傳送數(shù)據(jù)包(步驟305)的示意圖。圖4A為說明在同時型傳輸類型數(shù)據(jù)包的檔頭有錯誤的情況下,要求傳送端T重新傳送數(shù)據(jù)包的示意圖(現(xiàn)有技術(shù));圖48為說明在同時型傳輸類型數(shù)據(jù)包的檔頭有錯誤的情況下,不要求傳送端T重新傳送數(shù)據(jù)包的示意圖(本發(fā)明的步驟305);以此方式來說明本發(fā)明確能提高在傳送同時型傳輸類型數(shù)據(jù)包的傳輸效率。在圖4A及圖4B中,假設(shè)傳送端T欲依序傳送同時型傳輸類型數(shù)據(jù)包DPpDPyDPyDP4以及DP5。接收端R在接收到一數(shù)據(jù)包時,在數(shù)據(jù)連結(jié)層DL的處理中,皆會對該數(shù)據(jù)包的檔頭進(jìn)行錯誤檢查,以據(jù)以發(fā)出一對應(yīng)的確認(rèn)信號ACK至傳送端 T,來告知傳送端T所傳送的數(shù)據(jù)包是否有被正確地接收。在圖4A中,舉例來說,當(dāng)確認(rèn)信號ACK表示為“LG00D”,則表示傳送端T所傳送的數(shù)據(jù)包有被正確地接收,而不需重新傳送; 當(dāng)確認(rèn)信號ACK表示為“LBAD”,則表示傳送端T所傳送的數(shù)據(jù)包沒有被正確地接收,而需要傳送端T重新傳送該數(shù)據(jù)包。也就是說,當(dāng)確認(rèn)信號ACK表示為“LBAD”時,則表示接收端R 發(fā)出一重新傳送信號Sketky,以要求傳送端T重新傳送該數(shù)據(jù)包。而從圖4B可以看出,數(shù)據(jù)包DP1在接收端R的數(shù)據(jù)連結(jié)層DL的處理中,被檢查出有錯誤。然而,對應(yīng)于數(shù)據(jù)包DP1的確認(rèn)信號ACK1仍為“LG00D”,如此傳送端T便視為成功傳送數(shù)據(jù)包DP1,而繼續(xù)傳送下一個數(shù)據(jù)包DP2。此外,接收端R經(jīng)錯誤檢查得知數(shù)據(jù)包DP1有錯,所以實際上不會對數(shù)據(jù)包DP1 進(jìn)行后續(xù)處理,而是直接忽略數(shù)據(jù)包DP115反觀圖4A,數(shù)據(jù)包DP1在接收端R的數(shù)據(jù)連結(jié)層 DL的處理中,被檢查出有錯誤。因此,對應(yīng)于數(shù)據(jù)包DP1的確認(rèn)信號ACK1便為“LBAD”,以告知傳送端T需重新傳送數(shù)據(jù)包DP115而傳送端T在第二次傳送數(shù)據(jù)包DP1時,接收端R的數(shù)據(jù)連結(jié)層DL在處理第二次接收到的數(shù)據(jù)包DP1時,仍發(fā)現(xiàn)有錯,對應(yīng)于第二次傳送的數(shù)據(jù)包DP1的確認(rèn)信號ACK2仍為“LBAD”,以告知傳送端T需重新傳送數(shù)據(jù)包DP115直到傳送端 T第三次傳送數(shù)據(jù)包DP1時,接收端R才正確地接收到數(shù)據(jù)包DP1,而回應(yīng)“LG00D”的確認(rèn)信號ACK3至傳送端T,如此傳送端才可繼續(xù)傳送下一個數(shù)據(jù)包DP2。如此看來,在相同的時間中,圖4B已將五個數(shù)據(jù)包DP廣DP5傳送完畢;而圖4A卻僅傳送了三個 數(shù)據(jù)包DP廣DP3。雖然圖4B所接收到的數(shù)據(jù)包DP1是錯誤的,但是這樣的狀況,在進(jìn)行語音或視頻的傳輸時,是可以被允許的,而換來的是傳輸效率的提升。相較之下,圖4A所接收到的數(shù)據(jù)包都是正確的, 可是傳輸效率卻因為重新傳送的關(guān)系而下降。這樣的情況,在進(jìn)行語音或視頻的傳輸時,有可能會造成傳輸端T與接收端R的語音或視頻信號彼此間的同步性差異太大,而造成使用者的困擾。
另外,在進(jìn)行USB協(xié)議3. O版的傳輸時,傳送端T有一傳送數(shù)據(jù)包計數(shù)器CT,用來計數(shù)傳送數(shù)據(jù)包數(shù)目Ντ,以在欲傳送的數(shù)據(jù)包內(nèi)的檔頭序列參數(shù)HSEQ填入正確的值;接收端R有一接收數(shù)據(jù)包計數(shù)器CK,用來計數(shù)接收數(shù)據(jù)包數(shù)目Νκ,以判斷所接收的數(shù)據(jù)包DP的檔頭序列參數(shù)HSEQ的值是否正確。在傳送端T與接收端R進(jìn)行初始化溝通之前,傳送端T 會先同步傳送端T的傳送數(shù)據(jù)包數(shù)目Nt與接收端R的接收數(shù)據(jù)包數(shù)目Νκ。更明確地說,在傳送端T與接收端R進(jìn)行初始化溝通之前,傳送端T會先將傳送數(shù)據(jù)包計數(shù)器Ct的傳送數(shù)據(jù)包數(shù)目Nt重置為預(yù)設(shè)值N1,并發(fā)出同步序列信號Sseq至接收端R,以使接收端R將接收數(shù)據(jù)包計數(shù)器Ck的接收數(shù)據(jù)包數(shù)目Nk重置為預(yù)設(shè)值N1,并且通知接收端R在每次正確接收數(shù)據(jù)包后,就將接收數(shù)據(jù)包數(shù)目Nk增加步階數(shù)目Nstep。如此一來,每當(dāng)傳送端T接收到接收端 R所回應(yīng)的代表“LG00D”的確認(rèn)信號ACK (意即接收端R已正確接收數(shù)據(jù)包),傳送端T就會將傳送數(shù)據(jù)包數(shù)目Nt增加一步階數(shù)目Nstep。舉例來說,當(dāng)傳送端T要傳送第一個數(shù)據(jù)包 DP0時,傳送端T會根據(jù)傳送數(shù)據(jù)包數(shù)目Nt的值(N1),以將數(shù)據(jù)包DPtl的檔頭序列參數(shù)HSEQtl的值設(shè)為K。當(dāng)接收端R接收到數(shù)據(jù)包DPci時,接收端R會比較數(shù)據(jù)包DPci的檔頭序列參數(shù) HSEQ0的值(N1)與接收數(shù)據(jù)包數(shù)目Nk的值(N1)。若檔頭序列參數(shù)HSEQtl的值與接收數(shù)據(jù)包數(shù)目Nk相等(N1),則接收端R判斷數(shù)據(jù)包DPtl的數(shù)據(jù)包順序正確;反之,若不相等,則接收端R判斷數(shù)據(jù)包DPtl的數(shù)據(jù)包順序不正確。在接收端R正確接收數(shù)據(jù)包DPtl之后,接收端R 會將接收數(shù)據(jù)包數(shù)目Nk的值增加步階數(shù)目Nstep。此時,接收數(shù)據(jù)包數(shù)目Nk的值變?yōu)?N1 + Nstep),且接收端R會發(fā)出代表“LG00D”的確認(rèn)信號ACK至傳送端T,以通知傳送端T,將傳送數(shù)據(jù)包數(shù)目Nt的值增加步階數(shù)目Nstep。如此一來,當(dāng)傳送端T要傳封送數(shù)據(jù)包DPci的下一個數(shù)據(jù)包DP1時,傳送端T會根據(jù)傳送數(shù)據(jù)包數(shù)目Nt的值,將數(shù)據(jù)包DP1的檔頭序列參數(shù) HSEQ1的值設(shè)為(N1 + Nstep)。因此當(dāng)接收端R接收到數(shù)據(jù)包DP1后,可比較接收數(shù)據(jù)包數(shù)目 Ne的值與檔頭序列參數(shù)HSEQ1的值,以判斷數(shù)據(jù)包DP1的數(shù)據(jù)包順序是否正確。
請參考圖5。圖5為說明根據(jù)本發(fā)明的一第二實施例的提升在USB協(xié)議3. O版中傳輸同時型傳輸類型的數(shù)據(jù)包的效率的方法500的流程圖。在方法500中,假設(shè)傳輸端T 欲傳輸兩個同時型傳輸類型數(shù)據(jù)包DPtl與DP115也就是說,傳輸端T的緩沖存儲器內(nèi)有數(shù)據(jù)包DPtl與數(shù)據(jù)包DP1等待被傳送。數(shù)據(jù)包DPtl與DP1所傳輸?shù)捻樞蚴莻鬏敹薚先傳輸數(shù)據(jù)包 DP0至接收端R,然后再傳輸數(shù)據(jù)包DP1至接收端R。在本實施例中,當(dāng)接收端R在接收數(shù)據(jù)包DPtl后,接收端R根據(jù)同時型傳輸類型數(shù)據(jù)包DPtl的連結(jié)命令字元錯誤檢查碼CRCui與檔頭錯誤檢查碼CRChci,判斷所接收的連結(jié)命令字元LWtl或檔頭Htl有錯誤,而發(fā)出一重新傳送信號Sketky至傳送端T,來要求傳送端T得再重新傳送一次同時型傳輸類型數(shù)據(jù)包DPtlt5其步驟說明如下
步驟501 :傳送端T接收從接收端R傳送來的要求傳送端T再重新傳送一次同時型傳輸類型數(shù)據(jù)包DPtl的重新傳送信號Sketky ;
步驟502 :依據(jù)同時型傳輸類型數(shù)據(jù)包DPtl的檔頭序列參數(shù)HSEQtl的值,以設(shè)定同時型傳輸類型數(shù)據(jù)包DP1的檔頭序列參數(shù)HSEQ1的值;
步驟503 :不發(fā)送同時型傳輸類型數(shù)據(jù)包DP。,而直接傳送同時型傳輸類型數(shù)據(jù)包 DP10
另外,上述的步驟50廣503在傳送端T的數(shù)據(jù)連結(jié)層DL中所進(jìn)行。
在步驟501中,傳送端T根據(jù)重新傳送信號Sketky,可得知接收端R未成功接收傳送端T上次所傳送的數(shù)據(jù)包(在本實施例中即為數(shù)據(jù)包DPtl),且依據(jù)傳送端T的緩沖存儲器中的數(shù)據(jù)包DPci中的型態(tài)資訊TPci與端點資訊EPci,傳送端T可知數(shù)據(jù)包DPci為同時型傳輸類型的數(shù)據(jù)包。
在步驟502中,由于傳送端T未接收到代表“LG00D”的確認(rèn)信號ACK。因此,傳送端T的傳送數(shù)據(jù)包數(shù)目Nt的值不會增加步階數(shù)目Nstep。更明確地說,此時,傳送端T的傳送數(shù)據(jù)包數(shù)目Nt的值等于數(shù)據(jù)包DPci的檔頭序列參數(shù)HSEQci的值。因此,傳送端T根據(jù)傳送數(shù)據(jù)包數(shù)目Nt的值(等于檔頭序列參數(shù)HSEQtl的值),以設(shè)定數(shù)據(jù)包DP1的檔頭序列參數(shù) HSEQ1的值。舉例而言,若數(shù)據(jù)包DPtl的檔頭序列參數(shù)HSEQtl的值為0,此時傳送端T將緩沖存儲器中的數(shù)據(jù)包DP1的檔頭序列參數(shù)HSEQ1的值設(shè)定為O。
在步驟503中,傳送端T直接傳送數(shù)據(jù)包DP115由于數(shù)據(jù)包DP1的檔頭序列參數(shù) HSEQ1的值被設(shè)為等于數(shù)據(jù)包DPtl的檔頭序列參數(shù)HSEQtl的值,且由于接收端R未正確接收數(shù)據(jù)包DPci,因此接收端R的接收數(shù)據(jù)包數(shù)目Nk的值仍維持等于檔頭序列參數(shù)HSEQci的值,因此,當(dāng)接收端R接收到數(shù)據(jù)包DP1時,由于數(shù)據(jù)包DP1的檔頭序列參數(shù)HSEQ1的值等于檔頭序列參數(shù)HSEQtl的值(意即檔頭序列參數(shù)HSEQ1的值與接收數(shù)據(jù)包數(shù)目Nk的值相等),因此接收端R會判斷數(shù)據(jù)包DP1的數(shù)據(jù)包順序正確。
請參考圖6A與圖6B。圖6B為說明本發(fā)明在接收端R要求傳送端T得再重新傳送一次傳送端T上次所傳輸?shù)耐瑫r型傳輸類型數(shù)據(jù)包的情況下,傳送端T不再重新傳送上次所傳輸?shù)臄?shù)據(jù)包(步驟503)的示意圖。在圖6A及圖6B中,設(shè)傳送端T已發(fā)出序列信號Sseq 至接收端R。傳送端T將傳送數(shù)據(jù)包數(shù)目Nt重置為預(yù)設(shè)值N1 (在圖6A及圖6B中,設(shè)預(yù)設(shè)值 N1為O)。接收端R將接收數(shù)據(jù)包數(shù)目Nk也重置為預(yù)設(shè)值N1 (O)。且設(shè)步階數(shù)目NstepS I。 圖6A為說明在接收端R要求傳送端T得再重新傳送一次傳送端T上次所傳輸?shù)耐瑫r型傳輸類型數(shù)據(jù)包的情況下,傳送端T再重新傳送上次所傳輸?shù)臄?shù)據(jù)包的示意圖(現(xiàn)有技術(shù)); 圖6B為說明接收端R要求傳送端T得再重新傳送一次傳送端T上次所傳輸?shù)耐瑫r型傳輸類型數(shù)據(jù)包的情況下,傳送端T不再重新傳送數(shù)據(jù)包的示意圖(本發(fā)明的步驟503);以此方式來說明本發(fā)明確能提高USB 3. O版在傳送同時型傳輸類型數(shù)據(jù)包的傳輸效率。在圖6A 及圖6B中,假設(shè)傳送端T欲依序傳送同時型傳輸類型數(shù)據(jù)包DPc^DPpDPyDP3以及DP4。從圖6A中,數(shù)據(jù)包DP1在接收端R的數(shù)據(jù)連結(jié)層DL的處理中,被檢查出有錯誤。因此,接收端 R的接收數(shù)據(jù)包數(shù)目Nk仍維持等于1,且接收端R會發(fā)出對應(yīng)于數(shù)據(jù)包DP1的確認(rèn)信號ACK1 為“LBAD”,以要求傳送端T重新傳送數(shù)據(jù)包DP115因此,傳送端T的傳送數(shù)據(jù)包數(shù)目Nt也維持等于I。在圖6A,傳送端T會重新傳送數(shù)據(jù)包DP115然而,在圖6B中,傳送端T不會重新傳送數(shù)據(jù)包DP115而是根據(jù)此時傳送數(shù)據(jù)包數(shù)目Nt的值(等于數(shù)據(jù)包DP1的檔頭序列參數(shù) HSEQ1)來設(shè)定數(shù)據(jù)包DP2的檔頭序列參數(shù)HSEQ2,并將DP2傳送至接收端R。因此,當(dāng)接收端 R接收到檔頭序列參數(shù)HSEQ2已被更改為I的數(shù)據(jù)包DP2時,接收端R根據(jù)接收數(shù)據(jù)包數(shù)目 Nk(等于I)與檔頭序列參數(shù)HSEQ2 (等于1),會判斷數(shù)據(jù)包DP2的數(shù)據(jù)包順序為正確。若數(shù)據(jù)包DP 2的檔頭序列參數(shù)HSEQ2未被設(shè)定為I,則接收端R根據(jù)接收數(shù)據(jù)包數(shù)目Nk (等于I) 與檔頭序列參數(shù)HSEQ2 (不等于1),會判斷在傳輸?shù)倪^程中,遺漏了檔頭序列參數(shù)HSEQ為I 的數(shù)據(jù)包。此時,接收端R會判斷與傳送端T已不同步,而發(fā)出一同步請求信號Ssyn至傳送端T,以要求傳送端T重新同步。在圖6B中,傳送端T在傳送完數(shù)據(jù)包DP2后,接收端R正確接收數(shù)據(jù)包DP2,并且將接收數(shù)據(jù)包數(shù)目Nk (等于I)增加步階數(shù)目Nstep,而使接收數(shù)據(jù)包數(shù)目Nk變成2。接收端R會發(fā)出對應(yīng)于數(shù)據(jù)包DP2的“LG00D”的確認(rèn)信號ACK2。因此,傳送端T會將傳送數(shù)據(jù)包數(shù)目Nt增加步階數(shù)目Nstep,而使傳送數(shù)據(jù)包數(shù)目Nt變成2。如此一來,當(dāng)傳送端T要傳送數(shù)據(jù)包DP3時,由于傳送數(shù)據(jù)包數(shù)目Nt與接收數(shù)據(jù)包數(shù)目Nk相等,因此,傳送端T就可設(shè)定正確的檔頭序列參數(shù)HSEQ3,以使得接收端R判斷數(shù)據(jù)包順序正確,而不會發(fā)出同步請求信號SSYN。如此一來,在相同的時間中,圖6B已將五個數(shù)據(jù)包DPcTDP4傳送完畢;而圖6A卻僅傳送了四個數(shù)據(jù)包DPcTDPp雖然圖6B所接收到的數(shù)據(jù)包DP1是錯誤的,且傳送端T未重新傳送DP115然而上述的狀況,在進(jìn)行語音或視頻的傳輸時,是可以被允許的,而換來的是傳輸效率的提升。相較之下,圖6A所接收到的數(shù)據(jù)包都是正確的,可是傳輸效率卻因為重新傳送的關(guān)系而下降。這樣的情況,在進(jìn)行語音或視頻的傳輸時,有可能會造成傳輸端T與接收端R的語音或視頻信號彼此間的同步性差異太大,而造成使用者的困擾。
請參考圖7。圖7為說明本發(fā)明的用于傳輸同時型傳輸類型中的裝置700的示意圖。裝置700用來傳送數(shù)據(jù)。裝置700包含第一數(shù)據(jù)連結(jié)層裝置711、第二數(shù)據(jù)連結(jié)層712、 第一協(xié)議層裝置721,以及第二協(xié)議層裝置722。裝置700為根據(jù)本發(fā)明的第一實施例與第二實施例所衍生。如圖7所示,當(dāng)?shù)谝粩?shù)據(jù)連結(jié)層裝置711與第一協(xié)議層裝置721為傳送端時,第二數(shù)據(jù)連結(jié)層裝置712與第二協(xié)議層裝置為接收端;當(dāng)?shù)谝粩?shù)據(jù)連結(jié)層裝置711 與第一協(xié)議層裝置721為接收端時,第二數(shù)據(jù)連結(jié)層裝置712與第二協(xié)議層裝置為傳送端。 第一數(shù)據(jù)連結(jié)層裝置711與第二數(shù)據(jù)連結(jié)層裝置712皆能偵測彼此之間所傳輸?shù)臄?shù)據(jù)以據(jù)以分別產(chǎn)生偵測信號Sdi與SD2。舉例來說,設(shè)第一數(shù)據(jù)連結(jié)層裝置711與第一協(xié)議層裝置 721為接收端、第二數(shù)據(jù)連結(jié)層裝置712與第二協(xié)議層裝置722為傳送端。當(dāng)?shù)谝粩?shù)據(jù)連結(jié)層裝置711偵測到傳輸?shù)臄?shù)據(jù)包有一 CRC錯誤時,偵測信號Sdi指示出該CRC錯誤,而第一數(shù)據(jù)連結(jié)層裝置711便據(jù)以傳送一偽裝數(shù)據(jù)包數(shù)據(jù)DPrac至第二數(shù)據(jù)連結(jié)層裝置712,其中偽裝數(shù)據(jù)包數(shù)據(jù)DPac包含對應(yīng)于該CRC錯誤的錯誤數(shù)據(jù)包數(shù)據(jù)。第二數(shù)據(jù)連結(jié)層裝置712 將所接收的偽裝數(shù)據(jù)包數(shù)據(jù)DPaffi進(jìn)行處理,再傳送至第二協(xié)議層裝置722。當(dāng)?shù)诙?shù)據(jù)連結(jié)層裝置711偵測到從第一數(shù)據(jù)連結(jié)層裝置712所傳送來的重傳信號時,偵測信號Sd2表示需重傳一第一數(shù)據(jù)包,而第二數(shù)據(jù)連結(jié)層裝置712便據(jù)以傳送一偽裝數(shù)據(jù)包數(shù)據(jù)DPketky至第一數(shù)據(jù)連結(jié)層裝置711,其中偽裝數(shù)據(jù)包數(shù)據(jù)DPketky包含相異于該第一數(shù)據(jù)包的一第二數(shù)據(jù)包數(shù)據(jù)。第一數(shù)據(jù)連結(jié)層裝置711將所接收的偽裝數(shù)據(jù)包數(shù)據(jù)DPketky進(jìn)行處理,再傳送至第一協(xié)議層裝置721。此外,第二數(shù)據(jù)包可為第一數(shù)據(jù)包的下一個待傳送的數(shù)據(jù)包。
綜上所述,利用本發(fā)明所提供的傳輸方法,在數(shù)據(jù)連結(jié)層中對于有錯誤的同時型傳輸類型數(shù)據(jù)包,接收端并不會對傳送端發(fā)出重新傳送信號。除此之外,本發(fā)明另提供一傳輸方法,可使當(dāng)傳送端接收到代表要求重新傳送上一次所傳送的同時型傳輸類型數(shù)據(jù)包的重新傳送信號時,傳送端不重新傳送上一次所傳送的同時型傳輸類型數(shù)據(jù)包,而直接傳送本次所要傳送的同時型傳輸類型數(shù)據(jù)包,以使得傳送端可以更快速地傳送后續(xù)的同時型傳輸類型數(shù)據(jù)包,如此便可以有效解決使用者在接收語音或視頻信號時產(chǎn)生不連續(xù)或者不同步的現(xiàn)象,提供給使用者更大的便利性。當(dāng)然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種提升于通用串行總線協(xié)議中傳輸同時型傳輸類型的數(shù)據(jù)包的效率的方法,其特征在于,該方法包含當(dāng)一傳送端從一接收端接收對應(yīng)于一第一同時型傳輸類型數(shù)據(jù)包的一重新傳送信號時,該傳送端根據(jù)該第一同時型傳輸類型數(shù)據(jù)包的一第一檔頭序列參數(shù),設(shè)定一第二同時型傳輸類型數(shù)據(jù)包的一第二檔頭序列參數(shù);以及該傳送端傳送設(shè)定該第二檔頭序列參數(shù)后的該第二同時型傳輸類型數(shù)據(jù)包至該接收端。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,該傳送端傳送數(shù)據(jù)包的順序為先傳送該第一同時型傳輸類型數(shù)據(jù)包后,再傳送該第二同時型傳輸類型數(shù)據(jù)包。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,該傳送端根據(jù)該第一同時型傳輸類型數(shù)據(jù)包的該第一檔頭序列參數(shù),設(shè)定該第二同時型傳輸類型數(shù)據(jù)包的該第二檔頭序列參數(shù)包含該傳送端設(shè)定該第二同時型傳輸類型數(shù)據(jù)包的該第二檔頭序列參數(shù)的值為該第一檔頭序列參數(shù)的值。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,另包含在該傳輸端傳輸該第一同時型傳輸類型數(shù)據(jù)包前,該傳輸端同步該傳送端與該接收端。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在該傳輸端同步該傳送端與該接收端包含該傳輸端將該傳輸端的一傳送數(shù)據(jù)包計數(shù)器的計數(shù)值重置為一預(yù)定值;以及該傳輸端傳輸一同步序列信號至該接收端以使該接收端的一接收數(shù)據(jù)包計數(shù)器的計數(shù)值重置為該預(yù)定值。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,另包含該傳輸端控制該傳送數(shù)據(jù)包計數(shù)器在每次傳送一數(shù)據(jù)包后,該傳送數(shù)據(jù)包計數(shù)器的計數(shù)值增加一歩階數(shù)目;以及該傳輸端通知該接收端控制該接收數(shù)據(jù)包計數(shù)器在每次正確接收一數(shù)據(jù)包后,該接收數(shù)據(jù)包計數(shù)器的計數(shù)值增加該歩階數(shù)目。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,另包含當(dāng)該傳輸端從該接收端接收到該重新傳送信號時,該傳輸端控制該傳送數(shù)據(jù)包計數(shù)器的計數(shù)值不增加該歩階數(shù)目。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,該第一同時型傳輸類型數(shù)據(jù)包的該第一檔頭序列參數(shù)為該傳輸數(shù)據(jù)包計數(shù)器的計數(shù)值。
9.根據(jù)權(quán)利要求1所述的方法,其特征在于,另包含該傳送端根據(jù)該第一同時型傳輸類型數(shù)據(jù)包中的一型態(tài)資訊與一端點資訊,以判斷該第一數(shù)據(jù)包為同時型傳輸類型的數(shù)據(jù)包。
10.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)該傳送端為一主控端時,該接收端為一裝置端;當(dāng)該接收端為該主控端時,該傳送端為該裝置端。
11.一種用于同時型通訊協(xié)議中傳送數(shù)據(jù)的裝置,其特征在于,包含一數(shù)據(jù)連結(jié)層裝置,用來根據(jù)一偵測信號,選擇性地傳送一偽裝數(shù)據(jù)包數(shù)據(jù)。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,當(dāng)該偵測信號為一CRC錯誤信號,該數(shù)據(jù)連結(jié)層裝置傳送包含該偽裝數(shù)據(jù)包數(shù)據(jù),其中該偽裝數(shù)據(jù)包數(shù)據(jù)包含一對應(yīng)于該CRC錯誤信號的錯誤數(shù)據(jù)包數(shù)據(jù)。
13.根據(jù)權(quán)利要求12所述的裝置,其特征在于,另包含一協(xié)議層裝置,用來接收該偽裝數(shù)據(jù)包數(shù)據(jù)。
14.根據(jù)權(quán)利要求11所述的裝置,其特征在于,當(dāng)該偵測信號為一重傳信號且指示一第一數(shù)據(jù)包數(shù)據(jù)需要重傳,該數(shù)據(jù)連結(jié)層裝置傳送該偽裝數(shù)據(jù)包數(shù)據(jù),其中該偽裝數(shù)據(jù)包數(shù)據(jù)包含一相異于該第一數(shù)據(jù)包數(shù)據(jù)的第二數(shù)據(jù)包數(shù)據(jù)。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,另包含一協(xié)議層裝置,用來接收該偽裝數(shù)據(jù)包數(shù)據(jù)。
全文摘要
本發(fā)明公開一種提升傳輸數(shù)據(jù)包的效率的方法與裝置。該方法包含當(dāng)一傳送端從一接收端接收對應(yīng)于一第一同時型傳輸類型數(shù)據(jù)包的一重新傳送信號時,該傳送端根據(jù)該第一同時型傳輸類型數(shù)據(jù)包的一第一檔頭序列參數(shù),設(shè)定一第二同時型傳輸類型數(shù)據(jù)包的一第二檔頭序列參數(shù);以及該傳送端傳送設(shè)定該第二檔頭序列參數(shù)后的該第二同時型傳輸類型數(shù)據(jù)包至該接收端。
文檔編號H04L1/16GK103001733SQ20121032629
公開日2013年3月27日 申請日期2010年11月24日 優(yōu)先權(quán)日2010年11月24日
發(fā)明者張倬炫, 許銘勛, 謝登全 申請人:鈺創(chuàng)科技股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1