通用串行總線傳輸轉(zhuǎn)譯器及微幀同步方法
【專利摘要】一種通用串行總線USB傳輸轉(zhuǎn)譯器,包含:一控制器,用以決定是否動(dòng)態(tài)調(diào)整一幀起始(SOF)分組的一發(fā)送周期;一幀起始SOF定時(shí)器,自該控制器接收動(dòng)態(tài)調(diào)整的該幀起始SOF分組的該發(fā)送周期,以進(jìn)行定時(shí)控制;及一幀起始SOF產(chǎn)生器,受控于該控制器,以動(dòng)態(tài)產(chǎn)生該幀起始SOF分組。
【專利說(shuō)明】通用串行總線傳輸轉(zhuǎn)譯器及微幀同步方法
[0001]本案是申請(qǐng)日為2011年3月31日、申請(qǐng)?zhí)枮?01110080319.6、發(fā)明名稱為“通用串行總線傳輸轉(zhuǎn)譯器及微幀同步方法”的發(fā)明專利申請(qǐng)的分案申請(qǐng)。
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及一種通用串行總線(Universal Serial Bus, USB),特別涉及一種USB3.0傳輸轉(zhuǎn)譯器(U3TT)及其微幀同步方法。
【背景技術(shù)】
[0003]通用串行總線(USB)為一種外圍裝置(以下簡(jiǎn)稱“裝置”)的標(biāo)準(zhǔn),用以提供裝置(device)和主機(jī)(host)之間的通信。2008年公開(kāi)了通用串行總線(USB) 3.0,其纜線如圖1A所示。USB3.0除了提供相容于USB2.0的一對(duì)數(shù)據(jù)路徑D+/D-,還提供二對(duì)超速(SuperSpeed)數(shù)據(jù)路徑 SSTX+/SSTX-及 SSRX+/SSRX-。
[0004]當(dāng)USB2.0裝置連接至USB3.0主機(jī)時(shí),將會(huì)以非超速的數(shù)據(jù)路徑D+/D-來(lái)進(jìn)行通信。為了讓USB2.0裝置能夠升級(jí)為類似USB3.0裝置,以提升其數(shù)據(jù)傳送速度,本申請(qǐng) 申請(qǐng)人:曾于中國(guó)專利申請(qǐng)第201010129143.4號(hào)申請(qǐng)文件中公開(kāi)一種通用串行總線(USB)3.0的傳輸轉(zhuǎn)譯器(transaction translator)(簡(jiǎn)稱”U3TT”)10,如圖1B所不,其連接于USB3.0主機(jī)12與USB2.0裝置14之間,用以提升USB2.0裝置14的通信效能。
[0005]通用串行總線(USB)提供四種信息傳送(transfer)類型:控制傳送(controltransfer)、大量傳送(bulk transfer)、中斷傳送(interrupt transfer)及同步傳送(isochronous transfer)。其中,同步傳送通常使用于傳送語(yǔ)音或圖像數(shù)據(jù),此種傳送類型會(huì)保留足夠的帶寬(bandwidth),因此可保證傳送速率;然而,此種傳送類型并不會(huì)對(duì)錯(cuò)誤進(jìn)行更正或重試(retry),因而不能保證傳輸?shù)耐耆_。
[0006]目前USB3.0傳輸轉(zhuǎn)譯器(U3TT)于進(jìn)行輸入請(qǐng)求(IN)同步傳輸時(shí),閑置(idle)時(shí)間過(guò)高且USB2.0總線帶寬的利用率過(guò)低,因此本申請(qǐng) 申請(qǐng)人:于另一中國(guó)申請(qǐng)文件(題為”通用串行總線傳輸轉(zhuǎn)譯器及輸入請(qǐng)求同步傳輸方法”)提出一種改良的傳輸轉(zhuǎn)譯器(U3TT)。在此改良的傳輸轉(zhuǎn)譯器(U3TT)中,使用二緩沖存儲(chǔ)器(buffer),用以自裝置預(yù)取(pre-fetch)數(shù)據(jù),因而得以提高USB2.0總線帶寬的利用率。然而,由于USB3.0主機(jī)側(cè)的微中貞時(shí)間(micro-frame time)(其為125微秒)與USB2.0裝置側(cè)的微巾貞時(shí)間,兩者之間并沒(méi)有同步,因而會(huì)產(chǎn)生以下問(wèn)題。
[0007]圖2顯示主機(jī)側(cè)及裝置側(cè)的微幀時(shí)間時(shí)序圖。對(duì)于主機(jī)側(cè),主機(jī)于每一微幀時(shí)間發(fā)送同步時(shí)間標(biāo)記分組(isochronous timestamp packet, ITP),用以宣告其微巾貞時(shí)間;主機(jī)可能在一微幀時(shí)間內(nèi)的任一時(shí)間從緩沖存儲(chǔ)器(例如,緩沖存儲(chǔ)器I或緩沖存儲(chǔ)器2)讀取數(shù)據(jù)。對(duì)于裝置側(cè),傳輸轉(zhuǎn)譯器(U3TT)于每一微巾貞時(shí)間發(fā)送巾貞起始(start-of-frame,SOF)分組,用以宣告其微幀時(shí)間;傳輸轉(zhuǎn)譯器(U3TT)可控制在每一微幀時(shí)間的一半周期時(shí)間內(nèi)(例如前半周期時(shí)間)進(jìn)行數(shù)據(jù)的預(yù)取。如圖2所示,主機(jī)與裝置可能于同一時(shí)間內(nèi)(如圖中所圈出的重疊時(shí)間)對(duì)同一緩沖存儲(chǔ)器(如圖示的緩沖存儲(chǔ)器I)進(jìn)行存取,因而造成存取沖突(access conflict)問(wèn)題。在這個(gè)例子中,裝置側(cè)的微巾貞時(shí)間可能和主機(jī)側(cè)的前一微幀時(shí)間產(chǎn)生重疊沖突。
[0008]此外,由于主機(jī)與傳輸轉(zhuǎn)譯器(U3TT)使用不同的時(shí)鐘源,因此兩者往往會(huì)有些微的周期時(shí)間差異。此時(shí)間差異于經(jīng)過(guò)許多周期后,會(huì)累積成一個(gè)相當(dāng)大的差異,造成另一個(gè)同步的問(wèn)題。
[0009]為了克服上述問(wèn)題,因此亟需提出一種改良的傳輸轉(zhuǎn)譯器(U3TT)及其微幀同步方法,以解決上述的同步問(wèn)題。
【發(fā)明內(nèi)容】
[0010]鑒于上述,本發(fā)明實(shí)施例的目的之一在于提出一種USB3.0傳輸轉(zhuǎn)譯器(U3TT)及其微幀同步方法,不但可解決裝置側(cè)和主機(jī)側(cè)之間的存取沖突問(wèn)題,也能解決主機(jī)側(cè)和傳輸轉(zhuǎn)譯器(U3TT)的時(shí)鐘源周期時(shí)間差異所造成的累積差異問(wèn)題。本發(fā)明實(shí)施例的另一目的在于增進(jìn)數(shù)據(jù)的傳送效能。
[0011]根據(jù)本發(fā)明實(shí)施例,通用串行總線(USB)傳輸轉(zhuǎn)譯器包含裝置接口、主機(jī)接口、至少二緩沖存儲(chǔ)器、控制器及幀起始(SOF)計(jì)數(shù)器。裝置接口通過(guò)裝置總線連接至一裝置,而主機(jī)接口通過(guò)主機(jī)總線連接至一主機(jī),其中,主機(jī)所規(guī)范的USB版本高于裝置所規(guī)范的USB版本。緩沖存儲(chǔ)器設(shè)置于裝置接口和主機(jī)接口之間,用以存儲(chǔ)數(shù)據(jù)??刂破饔靡詫?shù)據(jù)交替存儲(chǔ)于緩沖存儲(chǔ)器。幀起始(SOF)計(jì)數(shù)器用以計(jì)數(shù)所發(fā)送幀起始(SOF)分組的數(shù)目,其中幀起始(SOF)計(jì)數(shù)器的計(jì)數(shù)值和一預(yù)設(shè)值作比較,當(dāng)達(dá)到該預(yù)設(shè)值時(shí),控制器將幀起始(SOF)分組發(fā)送時(shí)間予以重置(reset),使得幀起始(SOF)分組的發(fā)送時(shí)間同于主機(jī)所發(fā)送的同步時(shí)間標(biāo)記分組(ITP)的發(fā)送時(shí)間。其中,當(dāng)主機(jī)發(fā)送同步時(shí)間標(biāo)記分組(ITP)時(shí),控制器據(jù)以將幀起始(SOF)分組的發(fā)送時(shí)間予以延遲(delay) —段時(shí)間。
[0012]根據(jù)本發(fā)明另一實(shí)施例所公開(kāi)的通用串行總線(USB)的輸入請(qǐng)求(IN)同步傳輸(isochronous transaction)的微巾貞同步方法,首先,傳輸轉(zhuǎn)譯器(transactiontranslator)對(duì)一巾貞起始(SOF)分組發(fā)送時(shí)間予以重置(reset),使得巾貞起始(SOF)分組的發(fā)送時(shí)間同于主機(jī)所發(fā)送的同步時(shí)間標(biāo)記分組(ITP)的發(fā)送時(shí)間。接著,自主機(jī)接收同步時(shí)間標(biāo)記分組(ITP)。根據(jù)同步時(shí)間標(biāo)記分組(ITP),將幀起始(SOF)分組的發(fā)送時(shí)間予以延遲(delay)—段時(shí)間。計(jì)數(shù)所發(fā)送的巾貞起始(SOF)分組。其中,當(dāng)巾貞起始(SOF)計(jì)數(shù)值未達(dá)一預(yù)設(shè)值,則繼續(xù)進(jìn)行計(jì)數(shù);否則,當(dāng)已達(dá)到該預(yù)設(shè)值時(shí),則重新執(zhí)行重置步驟。
[0013]根據(jù)本發(fā)明又一實(shí)施例,通用串行總線(USB)傳輸轉(zhuǎn)譯器包含裝置接口、主機(jī)接口、至少一緩沖存儲(chǔ)器、控制器、幀起始(SOF)定時(shí)器及幀起始(SOF)產(chǎn)生器。裝置接口通過(guò)裝置總線連接至裝置,主機(jī)接口通過(guò)主機(jī)總線連接至主機(jī),其中,主機(jī)所規(guī)范的USB版本高于裝置所規(guī)范的USB版本。緩沖存儲(chǔ)器設(shè)置于裝置接口和主機(jī)接口之間,用以存儲(chǔ)數(shù)據(jù),而控制器則用以將數(shù)據(jù)存儲(chǔ)于緩沖存儲(chǔ)器。幀起始(SOF)定時(shí)器自控制器接收一動(dòng)態(tài)調(diào)整的幀起始(SOF)分組的發(fā)送周期,以進(jìn)行定時(shí)控制,而幀起始(SOF)產(chǎn)生器受控于控制器,以動(dòng)態(tài)產(chǎn)生幀起始(SOF)分組。
【專利附圖】
【附圖說(shuō)明】
[0014]圖1A顯示通用串行總線(USB) 3.0的纜線。[0015]圖1B的方塊圖顯示USB3.0傳輸轉(zhuǎn)譯器(U3TT)連接至USB3.0主機(jī)及USB2.0裝置。
[0016]圖2顯示主機(jī)側(cè)及裝置側(cè)的微幀時(shí)間時(shí)序圖。
[0017]圖3的方塊圖顯示本發(fā)明實(shí)施例的通用串行總線(USB)3.0傳輸轉(zhuǎn)譯器(U3TT),用以進(jìn)行USB 3.0主機(jī)和USB 2.0裝置之間的轉(zhuǎn)譯。
[0018]圖4顯示本發(fā)明實(shí)施例的微幀同步方法的流程圖。
[0019]圖5顯示經(jīng)延遲后的主機(jī)側(cè)及裝置側(cè)的微幀時(shí)間時(shí)序圖。
[0020]圖6的方塊圖顯示本發(fā)明另一實(shí)施例的通用串行總線(USB) 3.0傳輸轉(zhuǎn)譯器(U3TT),用以進(jìn)行USB 3.0主機(jī)和USB 2.0裝置之間的轉(zhuǎn)譯。
[0021]圖7顯示本發(fā)明實(shí)施例的通用串行總線(USB) 3.0傳輸轉(zhuǎn)譯方法的流程圖。
[0022]圖8A例示依照規(guī)范的微幀時(shí)間以發(fā)送幀起始(SOF)分組的時(shí)序圖。
[0023]圖SB例示依照調(diào)整后的微幀時(shí)間以發(fā)送幀起始(SOF)分組的時(shí)序圖。
[0024]【主要元件符號(hào)說(shuō)明】
[0025]10USB 3.0 傳輸轉(zhuǎn)譯器(U3TT)
[0026]12USB 3.0 主機(jī)
[0027]14USB 2.0 裝置
[0028]30USB 3.0 傳輸轉(zhuǎn)譯器(U3TT)
[0029]301USB 2.0 接口
[0030]302USB 2.0 總線
[0031]303USB 3.0 接口
[0032]304USB 3.0 總線
[0033]305A第一緩沖存儲(chǔ)器
[0034]305B第二緩沖存儲(chǔ)器
[0035]306寄存器
[0036]307控制器
[0037]308幀起始(SOF)計(jì)數(shù)器
[0038]32USB 3.0 主機(jī)
[0039]34USB 2.0 裝置
[0040]30AUSB 3.0 傳輸轉(zhuǎn)譯器(U3TT)
[0041]1301USB 2.0 接口
[0042]130IA時(shí)鐘產(chǎn)生器
[0043]1302USB 2.0 總線
[0044]1303USB 3.0 接口
[0045]1304USB 3.0 總線
[0046]1305緩沖存儲(chǔ)器
[0047]1306寄存器
[0048]1307控制器
[0049]1309A幀起始(SOF)定時(shí)器
[0050]1309B幀起始(SOF)產(chǎn)生器[0051]41-44 步驟
[0052]71-78 步驟
【具體實(shí)施方式】
[0053]圖3的方塊圖顯示本發(fā)明實(shí)施例的通用串行總線(USB)3.0傳輸轉(zhuǎn)譯器(U3TT)30,用以進(jìn)行USB 3.0主機(jī)32和USB 2.0裝置34之間的轉(zhuǎn)譯。傳輸轉(zhuǎn)譯器(U3TT)30各組成方塊的連接關(guān)系并不限定于圖3所示。本實(shí)施例雖以USB 3.0傳輸轉(zhuǎn)譯器(仍11')30為例,然而本發(fā)明也可適用于將來(lái)通用串行總線(USB)的更高版本。圖3所示的傳輸轉(zhuǎn)譯器(U3TT)30僅顯示與本發(fā)明相關(guān)的組成方塊,其余細(xì)節(jié)可參考前述本申請(qǐng) 申請(qǐng)人:的另一中國(guó)申請(qǐng)文件內(nèi)容以及前述另一中國(guó)申請(qǐng)文件(題為“通用串行總線傳輸轉(zhuǎn)譯器及輸入請(qǐng)求同步傳輸方法”)內(nèi)容。關(guān)于USB 2.0及USB 3.0的細(xì)節(jié)可分別參考“通用串行總線規(guī)格書(UniversalSerial Bus Specification)” 及“通用串行總線 3.0 規(guī)格書(Universal Serial Bus 3.0Specification),,。
[0054]在本實(shí)施例中,傳輸轉(zhuǎn)譯器(U3TT) 30包含USB 2.0接口(“裝置接口 ”)301,其通過(guò)USB 2.0總線(“裝置總線”)302而連接至裝置34,作為傳輸轉(zhuǎn)譯器(U3TT) 30和裝置34之間的信號(hào)接口。此外,傳輸轉(zhuǎn)譯器(U3TT) 30還包含USB 3.0接口(“主機(jī)接口 ”)303,其通過(guò)USB 3.0總線(“主機(jī)總線”)304而連接至主機(jī)32,作為傳輸轉(zhuǎn)譯器(U3TT) 30和主機(jī)32之間的信號(hào)接口。
[0055]傳輸轉(zhuǎn)譯器(U3TT) 30包含二緩沖存儲(chǔ)器(buffer):第一緩沖存儲(chǔ)器305A和第二緩沖存儲(chǔ)器305B,設(shè)置于USB 2.0接口 301和USB 3.0接口 303之間,用以存儲(chǔ)數(shù)據(jù)。本實(shí)施例雖以二緩沖存儲(chǔ)器305A/305B作為例示,然而也可擴(kuò)展至三個(gè)或以上的緩沖存儲(chǔ)器,依相同原則進(jìn)行交替存儲(chǔ)。再者,第一緩沖存儲(chǔ)器305A和第二緩沖存儲(chǔ)器305B的大小不一定要相同,其可根據(jù)實(shí)際應(yīng)用情形作不同的調(diào)整。
[0056]傳輸轉(zhuǎn)譯器(U3TT) 30還包含寄存器(register) 306,用以記錄USB2.0總線302的信息,例如相關(guān)于裝置端點(diǎn)(endpoint)(亦即,裝置的可尋址(addressable)部分)的端點(diǎn)號(hào)碼(endpoint number)或帶寬要求。再者,傳輸轉(zhuǎn)譯器(U3TT)30的控制器307不但用以進(jìn)行轉(zhuǎn)譯,還用來(lái)控制上述其他組成方塊的操作與協(xié)調(diào)。
[0057]根據(jù)本發(fā)明實(shí)施例的特征之一,傳輸轉(zhuǎn)譯器(U3TT) 30包含一幀起始(SOF)計(jì)數(shù)器308,用以計(jì)數(shù)所發(fā)送幀起始(SOF)分組的數(shù)目。幀起始(SOF)計(jì)數(shù)器308的計(jì)數(shù)值將可用來(lái)和一預(yù)設(shè)值作比較,當(dāng)達(dá)到該預(yù)設(shè)值時(shí),傳輸轉(zhuǎn)譯器(U3TT) 30的控制器307即可進(jìn)行幀起始(SOF)分組發(fā)送時(shí)間的重置(reset),使得幀起始(SOF)分組的發(fā)送時(shí)間同于主機(jī)所發(fā)送的同步時(shí)間標(biāo)記分組(ITP)的發(fā)送時(shí)間。藉此,可解決前述時(shí)鐘源差異因累積所造成的問(wèn)題。
[0058]圖4顯示本發(fā)明實(shí)施例的微幀同步方法的流程圖,其適用于輸入請(qǐng)求(IN)同步傳輸(isochronous transaction)。首先,在步驟41,傳輸轉(zhuǎn)譯器(U3TT)30對(duì)巾貞起始(SOF)分組發(fā)送時(shí)間予以重置(reset),使得幀起始(SOF)分組的發(fā)送時(shí)間同于同步時(shí)間標(biāo)記分組(ITP)的發(fā)送時(shí)間。此外,還將幀起始(SOF)計(jì)數(shù)器308的計(jì)數(shù)值予以清除。
[0059]接著,在步驟42,傳輸轉(zhuǎn)譯器(U3TT)30自主機(jī)32接收到同步時(shí)間標(biāo)記分組(ITP)時(shí),控制器307據(jù)以將幀起始(SOF)分組的發(fā)送時(shí)間予以延遲(delay)—段時(shí)間。一般來(lái)說(shuō),延遲時(shí)間需小于微巾貞時(shí)間的一半,亦即62.5微秒,以確保USB2.0總線302的數(shù)據(jù)傳輸可以在一個(gè)微幀中完成。圖5顯示經(jīng)延遲后的主機(jī)側(cè)及裝置側(cè)的微幀時(shí)間時(shí)序圖。如圖所示,傳輸轉(zhuǎn)譯器(U3TT)30的控制器307可控制在每一微幀時(shí)間的前半周期時(shí)間內(nèi)進(jìn)行緩沖存儲(chǔ)器305A/305B的數(shù)據(jù)預(yù)取。由觀察圖5可得知,經(jīng)延遲后的裝置側(cè)微幀時(shí)間不再與主機(jī)側(cè)的前一微幀時(shí)間產(chǎn)生重疊沖突(如圖2所示)。
[0060]在步驟43,累積計(jì)數(shù)所發(fā)送的幀起始(SOF)分組。當(dāng)幀起始(SOF)計(jì)數(shù)器308的計(jì)數(shù)值未達(dá)一預(yù)設(shè)值X (步驟44),則繼續(xù)累積計(jì)數(shù);否則,當(dāng)已達(dá)到該預(yù)設(shè)值時(shí),則執(zhí)行步驟41以重置幀起始(SOF)分組的發(fā)送時(shí)間以及清除幀起始(SOF)計(jì)數(shù)器308的計(jì)數(shù)值。在一極端例子中,幀起始(SOF)計(jì)數(shù)器308的相關(guān)預(yù)設(shè)值設(shè)為”1”,因此,每一次接收到同步時(shí)間標(biāo)記分組(ITP)時(shí),也同時(shí)對(duì)幀起始(SOF)分組發(fā)送時(shí)間予以重置(reset)。
[0061]圖6的方塊圖顯示本發(fā)明另一實(shí)施例的通用串行總線(USB) 3.0傳輸轉(zhuǎn)譯器(U3TT)30A,用以進(jìn)行USB3.0主機(jī)32和USB2.0裝置34之間的轉(zhuǎn)譯。傳輸轉(zhuǎn)譯器(U3TT)30A各組成方塊的連接關(guān)系并不限定于圖6所示者。本實(shí)施例雖以USB3.0傳輸轉(zhuǎn)譯器(U3TT)30A為例,然而本發(fā)明也可適用于將來(lái)通用串行總線(USB)的更高版本。
[0062]在本實(shí)施例中,傳輸轉(zhuǎn)譯器(U3TT ) 30A包含USB2.0接口(“裝置接口 ”)1301,其通過(guò)USB2.0總線(“裝置總線”)1302而連接至裝置34,作為傳輸轉(zhuǎn)譯器(U3TT)30A和裝置34之間的信號(hào)接口。此外,傳輸轉(zhuǎn)譯器(U3TT ) 30A還包含USB3.0接口(“主機(jī)接口 ”)1303,其通過(guò)USB3.0總線(“主機(jī)總線”)1304而連接至主機(jī)32,作為傳輸轉(zhuǎn)譯器(U3TT)30A和主機(jī)32之間的信號(hào)接口。
[0063]傳輸轉(zhuǎn)譯器(U3TT) 30A包含至少一緩沖存儲(chǔ)器(buffer)1305,其可由一或多個(gè)緩沖存儲(chǔ)器所組成,設(shè)置于USB2.0接口 1301和USB3.0接口 1303之間,用以存儲(chǔ)數(shù)據(jù)。傳輸轉(zhuǎn)譯器(U3TT) 30A還包含寄存器(register) 1306,用以記錄USB2.0裝置34的配置信息(configuration),例如描述符(descriptor)或帶寬要求。再者,傳輸轉(zhuǎn)譯器(U3TT)30A的控制器1307不但用以進(jìn)行轉(zhuǎn)譯,還用來(lái)控制上述其他組成方塊的操作與協(xié)調(diào)。
[0064]根據(jù)本發(fā)明實(shí)施例的特征之一,傳輸轉(zhuǎn)譯器(U3TT) 30A包含一幀起始(SOF)定時(shí)器1309A及幀起始(SOF)產(chǎn)生器1309B。其中,幀起始(SOF)定時(shí)器(timer) 1309A自控制器1307接收一動(dòng)態(tài)調(diào)整的幀起始(SOF)分組的發(fā)送周期,以進(jìn)行定時(shí)控制;幀起始(SOF)產(chǎn)生器1309B受控于控制器1307,可動(dòng)態(tài)產(chǎn)生幀起始(SOF)分組。根據(jù)本發(fā)明實(shí)施例的另一特征,USB2.0接口 1301內(nèi)包含一時(shí)鐘產(chǎn)生器1301A,其可動(dòng)態(tài)調(diào)整傳送于USB2.0總線1302的數(shù)據(jù)比特率(bit rate)。
[0065]圖7顯示本發(fā)明實(shí)施例的通用串行總線(USB)3.0傳輸轉(zhuǎn)譯方法的流程圖。在步驟71,控制器1307判定信息傳送(transfer)類型。該判定的根據(jù)可自裝置34取得描述符或自寄存器1306取得相關(guān)配置信息。如果步驟71的判定結(jié)果為大量傳送(bulk transfer)類型,則控制器1307控制幀起始(SOF)定時(shí)器1309A及幀起始(SOF)產(chǎn)生器1309B,使其停止幀起始(S0F)分組的發(fā)送(步驟72 )。在大量傳送時(shí),裝置34 —般并不會(huì)用到幀起始(S0F)分組,因此,在步驟72停止幀起始(SOF)分組的發(fā)送,并不會(huì)影響到數(shù)據(jù)的傳送,但卻能增進(jìn)傳送效能。
[0066]如果步驟71的判定結(jié)果為同步傳送(isochronous transfer)類型,則控制器1307控制幀起始(SOF)定時(shí)器1309A及幀起始(SOF)產(chǎn)生器1309B,使其進(jìn)行幀起始(SOF)分組的發(fā)送。在發(fā)送之前,在步驟73,控制器1307決定是否動(dòng)態(tài)調(diào)整幀起始(SOF)分組的發(fā)送周期,例如微巾貞時(shí)間(micro-frame time)。如果不調(diào)整發(fā)送周期,則在步驟74,依照通用串行總線規(guī)格書所規(guī)范的微幀時(shí)間(其為125微秒),周期地發(fā)送幀起始(SOF)分組。如果要調(diào)整發(fā)送周期(例如調(diào)降發(fā)送周期),則在步驟75,依照調(diào)整后的微幀時(shí)間(例如,125微秒的百分之四十),周期地發(fā)送幀起始(SOF)分組。
[0067]圖8A例示依照規(guī)范的微幀時(shí)間以發(fā)送幀起始(SOF)分組的時(shí)序圖,圖SB例示依照調(diào)整后的微幀時(shí)間以發(fā)送幀起始(SOF)分組的時(shí)序圖。在一般的同步傳送時(shí),每一幀周期時(shí)間僅有一部分(例如百分之四十)時(shí)間是真正用來(lái)進(jìn)行數(shù)據(jù)的同步傳送。如果依據(jù)圖8B所例示方式進(jìn)行同步傳送,則可大量地增進(jìn)傳送效能。也就是說(shuō),圖8A的上述幀起始(SOF)分組的發(fā)送周期為一微巾貞時(shí)間(micro-frame time),圖8B的上述調(diào)整后的發(fā)送周期為該微幀時(shí)間的一部分。
[0068]無(wú)論是進(jìn)行大量傳送(步驟72)、依照所規(guī)范的微幀時(shí)間進(jìn)行同步傳送(步驟74)或依照調(diào)整后的微幀時(shí)間進(jìn)行同步傳送(步驟75),本發(fā)明實(shí)施例還可在步驟76,選擇是否通過(guò)時(shí)鐘產(chǎn)生器1301A以動(dòng)態(tài)調(diào)整傳送于USB2.0總線1302的數(shù)據(jù)比特率(bit rate)。如果選擇不調(diào)整比特率,則依照所規(guī)范的常態(tài)(normal)比特率以進(jìn)行數(shù)據(jù)傳送(步驟77)。如果選擇要調(diào)整比特率,則調(diào)整(調(diào)升)時(shí)鐘產(chǎn)生器1301A的時(shí)鐘頻率,并依照調(diào)整后的比特率進(jìn)行數(shù)據(jù)傳送(步驟78)。
[0069]通用串行總線規(guī)格書所規(guī)范的比特率,一般都會(huì)界定一容許誤差(tolerance),例如10%。鑒于此,本實(shí)施例的時(shí)鐘產(chǎn)生器1301A可將時(shí)鐘頻率加快10%,則可提高數(shù)據(jù)傳送效能,且能符合規(guī)范。在另一實(shí)施例中,時(shí)鐘產(chǎn)生器1301A更可將時(shí)鐘頻率加快而超過(guò)所規(guī)范的容許誤差,雖然減低了裝置的相容性,但可更加提高數(shù)據(jù)傳送效能。
[0070]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并非用以限定本發(fā)明的申請(qǐng)專利范圍;凡其它未脫離發(fā)明所揭示的精神下所完成的等效改變或修飾,均應(yīng)包含在所附權(quán)利要求書要求保護(hù)的范圍內(nèi)。
【權(quán)利要求】
1.一種通用串行總線USB傳輸轉(zhuǎn)譯器,包含: 一控制器,用以決定是否動(dòng)態(tài)調(diào)整一幀起始(SOF)分組的一發(fā)送周期; 一幀起始SOF定時(shí)器,自該控制器接收動(dòng)態(tài)調(diào)整的該幀起始SOF分組的該發(fā)送周期,以進(jìn)行定時(shí)控制 '及 一幀起始SOF產(chǎn)生器,受控于該控制器,以動(dòng)態(tài)產(chǎn)生該幀起始SOF分組。
2.如權(quán)利要求1所述的通用串行總線USB傳輸轉(zhuǎn)譯器,還包含: 一裝置接口,其通過(guò)一裝置總線連接至一裝置 '及 一主機(jī)接口,其通過(guò)一主機(jī)總線連接至一主機(jī),該主機(jī)所規(guī)范的USB版本高于該裝置所規(guī)范的USB版本。
3.如權(quán)利要求1所述的通用串行總線USB傳輸轉(zhuǎn)譯器,還包含至少一緩沖存儲(chǔ)器,其中該控制器在該幀起始(SOF)分組的該發(fā)送周期內(nèi)對(duì)該至少一緩沖存儲(chǔ)器進(jìn)行存取。
4.如權(quán)利要求1所述的通用串行總線USB傳輸轉(zhuǎn)譯器,其中上述的裝置接口包含一時(shí)鐘產(chǎn)生器,其可動(dòng)態(tài)調(diào)整傳送于該裝置總線的數(shù)據(jù)比特率。
5.如權(quán)利要求1所述的通用串行總線USB傳輸轉(zhuǎn)譯器,還包含一寄存器,用以記錄該裝置的配置信息。
6.如權(quán)利要求5所述的通用串行總線USB傳輸轉(zhuǎn)譯器,其中上述的配置信息為一描述符。·
7.如權(quán)利要求1所述的通用串行總線USB傳輸轉(zhuǎn)譯器,當(dāng)進(jìn)行大量傳送時(shí),該控制器控制該幀起始SOF定時(shí)器及該幀起始SOF產(chǎn)生器,使其停止該幀起始SOF分組的發(fā)送。
8.如權(quán)利要求1所述的通用串行總線USB傳輸轉(zhuǎn)譯器,當(dāng)進(jìn)行同步傳送時(shí),該控制器調(diào)降該幀起始(SOF)分組的該發(fā)送周期,其中該幀起始(SOF)分組的該發(fā)送周期為一微幀時(shí)間。
9.如權(quán)利要求2所述的通用串行總線USB傳輸轉(zhuǎn)譯器,其中上述主機(jī)的USB版本為USB3.0,且該裝置的USB版本為USB2.0。
10.一種通用串行總線USB傳輸轉(zhuǎn)譯方法,包含: 判定信息傳送類型; 當(dāng)判定為同步傳送類型,則動(dòng)態(tài)調(diào)整一幀起始SOF分組的發(fā)送周期 '及 依照調(diào)整后的該發(fā)送周期,周期地發(fā)送該幀起始SOF分組至該裝置。
11.如權(quán)利要求10所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,還包含: 以一裝置接口,通過(guò)一裝置總線連接至一裝置;及 以一主機(jī)接口,通過(guò)一主機(jī)總線連接至一主機(jī),該主機(jī)所規(guī)范的USB版本高于該裝置所規(guī)范的USB版本。
12.如權(quán)利要求10所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,其中上述信息傳送類型的判定系自該裝置取得一描述符或自一寄存器取得配置信息。
13.如權(quán)利要求10所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,當(dāng)上述信息傳送類型的判定結(jié)果為大量傳送類型,則停止該幀起始SOF分組的發(fā)送。
14.如權(quán)利要求10所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,其中上述幀起始SOF分組的發(fā)送周期為一微幀時(shí)間。
15.如權(quán)利要求14所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,其中上述調(diào)整后的發(fā)送周期為該微幀時(shí)間的一部分。
16. 如權(quán)利要求10所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,還包含動(dòng)態(tài)調(diào)整傳送于該裝置總線的數(shù)據(jù)比特率。
17.如權(quán)利要求11所述的通用串行總線USB傳輸轉(zhuǎn)譯方法,其中上述主機(jī)的USB版本為USB3.0,且該裝置的USB版本為USB2.0。
【文檔編號(hào)】G06F13/42GK103530269SQ201310520947
【公開(kāi)日】2014年1月22日 申請(qǐng)日期:2011年3月31日 優(yōu)先權(quán)日:2010年9月30日
【發(fā)明者】賴瑾, 許錦松, 施士揚(yáng), 湯金寬, 徐步衡, 江輝 申請(qǐng)人:威盛電子股份有限公司