擴(kuò)展主機(jī)控制器和其操作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種擴(kuò)展主機(jī)控制器和其操作方法,尤其涉及一種可使一通用串行總線主機(jī)通過(guò)傳統(tǒng)通用串行總線傳輸線與另一通用串行總線主機(jī)溝通的擴(kuò)展主機(jī)控制器和其操作方法。
【背景技術(shù)】
[0002]通用串行總線(universal serial bus, USB)技術(shù)是在上世紀(jì)90年代中期所發(fā)展的一個(gè)工業(yè)標(biāo)準(zhǔn),其定義了一個(gè)可使計(jì)算機(jī)外圍裝置便利地連接至一主機(jī)(例如個(gè)人計(jì)算機(jī))的外部擴(kuò)充總線。因?yàn)橥ㄓ么锌偩€技術(shù)利用了主/從結(jié)構(gòu)(master/slavearchitecture),所以所述主機(jī)內(nèi)的通用串行總線主機(jī)控制器可作為一主機(jī)角色(masterrole)以發(fā)出請(qǐng)求至所述通用串行總線外圍裝置(也就是計(jì)算機(jī)外設(shè)裝置),以及所述通用串行總線外圍裝置可作為一從動(dòng)角色(slave role)以響應(yīng)來(lái)自所述主機(jī)的請(qǐng)求。然而上述主/從結(jié)構(gòu)在標(biāo)準(zhǔn)通用串行總線環(huán)境中是不對(duì)稱且不可逆的。
[0003]也就是說(shuō)在上述主/從結(jié)構(gòu)下,除了使用兩端具有從動(dòng)接口(slave interface)的中間橋裝置(intermediate bridge device)外,兩主機(jī)是不可能直接溝通。然而,所述中間橋裝置是較傳統(tǒng)的通用串行總線,傳輸線貴,以及在所述兩主機(jī)之間的數(shù)據(jù)傳輸效能是受限于所述中間橋裝置的非直接數(shù)據(jù)傳輸。因此,所述中間橋裝置并不適合作為在所述兩主機(jī)之間的溝通角色。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的一實(shí)施例公開一種擴(kuò)展主機(jī)控制器(extensible hostcontroller, xHC),其中所述擴(kuò)展主機(jī)控制器是應(yīng)用于一主機(jī),所述擴(kuò)展主機(jī)控制器包含一通用串行總線(universal serial bus, USB)模塊、一控制單元和一外圍組件快速互連(peripheral component interconnect express, PCIE)總線;所述通用串行總線模塊包含一通用串行總線單元和一預(yù)定單元;所述外圍組件快速互連總線耦接于所述控制單元,其中所述外圍組件快速互連總線支持一通用串行總線模式和一預(yù)定模式;當(dāng)具有一第一擴(kuò)展主機(jī)控制器的第一主機(jī)連接至所述通用串行總線模塊時(shí),所述控制單元根據(jù)一判斷方法讓所述主機(jī)利用所述通用串行總線模式和所述通用串行總線單元,或所述預(yù)定模式和所述預(yù)定單元與所述第一主機(jī)溝通。
[0005]本發(fā)明的另一實(shí)施例公開一種擴(kuò)展主機(jī)控制器的操作方法,其中所述擴(kuò)展主機(jī)控制器是應(yīng)用于一主機(jī)包含一通用串行總線模塊、一控制單元以及一外圍組件快速互連總線,其中所述通用串行總線模塊包含一通用串行總線單元和一預(yù)定單元,以及所述外圍組件快速互連總線支持一通用串行總線模式和一預(yù)定模式;所述操作方法包含當(dāng)一通用串行總線設(shè)備連接至所述通用串行總線模塊時(shí),所述擴(kuò)展主機(jī)控制器是否收到來(lái)自所述通用串行總線設(shè)備發(fā)出的一第一請(qǐng)求;當(dāng)所述擴(kuò)展主機(jī)控制器收到所述第一請(qǐng)求時(shí),所述擴(kuò)展主機(jī)控制器判斷所述通用串行總線設(shè)備為一通用串行總線主機(jī),且所述主機(jī)利用所述預(yù)定模式和所述預(yù)定單元與所述通用串行總線設(shè)備溝通;當(dāng)所述擴(kuò)展主機(jī)控制器未收到所述第一請(qǐng)求時(shí),所述擴(kuò)展主機(jī)控制器發(fā)出一第二請(qǐng)求至所述通用串行總線設(shè)備;當(dāng)所述通用串行總線設(shè)備回應(yīng)所述第二請(qǐng)求時(shí),所述擴(kuò)展主機(jī)控制器判斷所述通用串行總線設(shè)備為一通用串行總線外圍裝置,且所述主機(jī)利用所述通用串行總線模式和所述通用串行總線單元與所述通用串行總線設(shè)備溝通;及當(dāng)所述通用串行總線設(shè)備未回應(yīng)所述第二請(qǐng)求時(shí),所述控制單元根據(jù)一判斷方法讓所述主機(jī)利用所述通用串行總線模式和所述通用串行總線單元,或所述預(yù)定模式和所述預(yù)定單元與所述通用串行總線設(shè)備溝通。
[0006]本發(fā)明的另一實(shí)施例公開一種擴(kuò)展主機(jī)控制器,其中所述擴(kuò)展主機(jī)控制器是應(yīng)用于一主機(jī)。所述擴(kuò)展主機(jī)控制器包含一通用串行總線模塊、一控制單元和一高外圍組件快速互連總線。所述通用串行總線模塊包含一通用串行總線單元和一預(yù)定單元;所述高外圍組件快速互連總線耦接于所述控制單元,其中所述高外圍組件快速互連總線支持一通用串行總線模式和一預(yù)定模式。當(dāng)具有一第一擴(kuò)展主機(jī)控制器的第一主機(jī)、一通用串行總線外圍裝置或一通用串行總線主機(jī)的一者連接至所述通用串行總線模塊時(shí),所述控制單元讓所述主機(jī)利用所述通用串行總線模式和所述通用串行總線單元,或所述預(yù)定模式和所述預(yù)定單元與所述者溝通。
[0007]本發(fā)明的另一實(shí)施例公開一種應(yīng)用于一主機(jī)的擴(kuò)展主機(jī)控制器,所述擴(kuò)展主機(jī)控制器依據(jù)一第一擴(kuò)展主機(jī)控制器的第一主機(jī)、一通用串行總線外圍裝置或一通用串行總線主機(jī)的一者連接至所述主機(jī)時(shí),選擇性地控制所述主機(jī)變成一目標(biāo)端(target side)或一主機(jī)端(host side)與所述者溝通。
[0008]本發(fā)明公開一種擴(kuò)展主機(jī)控制器和其操作方法。因?yàn)樗鰯U(kuò)展主機(jī)控制器和所述操作方法可在其他通用串行總線主機(jī)連接至所述擴(kuò)展主機(jī)控制器時(shí),利用一除錯(cuò)功能單元響應(yīng)產(chǎn)生自其他通用串行總線主機(jī)的請(qǐng)求,所以所述擴(kuò)展主機(jī)控制器和所述操作方法可直接利用一傳統(tǒng)通用串行總線傳輸線在所述擴(kuò)展主機(jī)控制器和其他通用串行總線主機(jī)之間執(zhí)行數(shù)據(jù)傳輸。因此,相較于現(xiàn)有技術(shù),本發(fā)明可直接利用所述傳統(tǒng)通用串行總線傳輸線在擴(kuò)展主機(jī)控制器和其他通用串行總線主機(jī)之間執(zhí)行數(shù)據(jù)傳輸,所以本發(fā)明并不需要一個(gè)昂貴的中間橋裝置以在所述擴(kuò)展主機(jī)控制器和其他通用串行總線主機(jī)之間執(zhí)行數(shù)據(jù)傳輸。另外,本發(fā)明由于是直接在所述擴(kuò)展主機(jī)控制器和其他通用串行總線主機(jī)之間執(zhí)行數(shù)據(jù)傳輸,所以本發(fā)明的數(shù)據(jù)傳輸效能較現(xiàn)有技術(shù)佳。
【附圖說(shuō)明】
[0009]圖1是本發(fā)明的第一實(shí)施例公開的一擴(kuò)展主機(jī)控制器的示意圖。
[0010]圖2是說(shuō)明通用串行總線外圍裝置通過(guò)擴(kuò)展主機(jī)控制器和傳統(tǒng)通用串行總線傳輸線連接至主機(jī)的示意圖。
[0011]圖3是說(shuō)明第一主機(jī)通過(guò)擴(kuò)展主機(jī)控制器和傳統(tǒng)通用串行總線傳輸線連接至主機(jī)的示意圖。
[0012]圖4是說(shuō)明擴(kuò)展主機(jī)控制器通過(guò)擴(kuò)展主機(jī)控制器和傳統(tǒng)通用串行總線傳輸線連接至主機(jī)的示意圖。
[0013]圖5、6是說(shuō)明擴(kuò)展主機(jī)控制器檢測(cè)擴(kuò)展主機(jī)控制器的時(shí)序示意圖。
[0014]圖7是說(shuō)明決勝值大于第一決勝值的示意圖。
[0015]圖8是說(shuō)明決勝值小于第一決勝值的示意圖。
[0016]圖9是說(shuō)明內(nèi)建于控制單元內(nèi)有關(guān)于應(yīng)用在擴(kuò)展主機(jī)控制器的通用串行總線裝置驅(qū)動(dòng)程序、擴(kuò)展主機(jī)控制器接口驅(qū)動(dòng)程序、預(yù)定驅(qū)動(dòng)程序和虛擬網(wǎng)絡(luò)適配器的數(shù)據(jù)結(jié)構(gòu)的示意圖。
[0017]圖10是本發(fā)明的第二實(shí)施例公開的一擴(kuò)展主機(jī)控制器的示意圖。
[0018]圖11是說(shuō)明內(nèi)建于控制單元內(nèi)有關(guān)于應(yīng)用在擴(kuò)展主機(jī)控制器的通用串行總線裝置驅(qū)動(dòng)程序、擴(kuò)展主機(jī)控制器接口驅(qū)動(dòng)程序、預(yù)定驅(qū)動(dòng)程序和虛擬網(wǎng)絡(luò)適配器的數(shù)據(jù)結(jié)構(gòu)的示意圖。
[0019]圖12是為本發(fā)明的第三實(shí)施例公開的一種擴(kuò)展主機(jī)控制器的操作方法的流程圖。
[0020]其中,附圖標(biāo)記說(shuō)明如下:
[0021]100、250、500 擴(kuò)展主機(jī)控制器
[0022]101通用串行總線物理層
[0023]102通用串行總線模塊
[0024]104控制單元
[0025]106擴(kuò)展主機(jī)控制器接口
[0026]108外圍組件快速互連總線
[0027]1022通用串行總線單元
[0028]1024^5024預(yù)定單元
[0029]200主機(jī)
[0030]202、402內(nèi)存
[0031]220通用串行總線外圍裝置
[0032]230通用串行總線傳輸線
[0033]240第一主機(jī)
[0034]260第二主機(jī)
[0035]300第三主機(jī)
[0036]A、B、C、D、E圓圈
[0037]D-、D+數(shù)據(jù)傳輸線路
[0038]DS信號(hào)
[0039]FR第一請(qǐng)求
[0040]FTB第一決勝值
[0041]PT預(yù)定時(shí)間
[0042]PCLMP, PCLMP1 端口能力連接管理協(xié)議
[0043]SR第二請(qǐng)求
[0044]TP1、TP2、TP3 時(shí)間點(diǎn)
[0045]Τ1時(shí)間
[0046]TR第三請(qǐng)求
[0047]ΤΒ決勝值
[0048]700-712步驟
【具體實(shí)施方式】
[0049]請(qǐng)參照?qǐng)D1。圖1是本發(fā)明的第一實(shí)施例公開的一擴(kuò)展主機(jī)控制器(extensiblehost controller, xHC) 100的示意圖,其中擴(kuò)展主機(jī)控制器100是應(yīng)用于一主機(jī)200,以