及擴(kuò)展主機(jī)控制器100包含一通用串行總線(universal serial bus, USB)模塊102,一控制單元104,一擴(kuò)展主機(jī)控制器接口 106,以及一外圍組件快速互連(peripheral componentinterconnect express, PCIE)總線108,其中通用串行總線模塊102包含一通用串行總線物理層101、一通用串行總線單元1022和一預(yù)定單元1024,以及通用串行總線模塊102是通用串行總線3.0兼容的通用串行總線模塊,其可支持通用串行總線1.0、通用串行總線
1.1、通用串行總線2.0、通用串行總線3.0和其他可兼容于通用串行總線3.1的標(biāo)準(zhǔn)規(guī)范。在本發(fā)明的一實(shí)施例中,預(yù)定單元1024是一除錯(cuò)功能(debug capability)單元。如圖1所示,通用串行總線單元1022和預(yù)定單元1024是耦接于擴(kuò)展主機(jī)控制器接口 106。但在本發(fā)明的另一實(shí)施例中,擴(kuò)展主機(jī)控制器接口 106可被其他預(yù)定接口取代,其中所述其他預(yù)定接口必須可同時(shí)支持通用串行總線單元1022和預(yù)定單元1024。如圖1所示,外圍組件快速互連總線108是耦接于擴(kuò)展主機(jī)控制器接口 106和控制單元104,其中外圍組件快速互連總線108可同時(shí)支持一通用串行總線模式和一預(yù)定模式,其中所述預(yù)定模式是一區(qū)域網(wǎng)絡(luò)(Local Area Network, LAN)模式。
[0050]請(qǐng)參照?qǐng)D2。圖2是說(shuō)明一通用串行總線外圍裝置220通過(guò)擴(kuò)展主機(jī)控制器100和一傳統(tǒng)通用串行總線傳輸線230(例如,A型通用串行總線傳輸線)連接至主機(jī)200的示意圖,其中通用串行總線外圍裝置220可以是一通用串行總線儲(chǔ)存裝置,一通用串行總線閃存裝置,一通用串行總線個(gè)人計(jì)算機(jī)攝像機(jī)等。如圖2所示,當(dāng)通用串行總線外圍裝置220通過(guò)擴(kuò)展主機(jī)控制器100和傳統(tǒng)通用串行總線傳輸線230連接至主機(jī)200時(shí),因?yàn)橥ㄓ么锌偩€外圍裝置220不會(huì)發(fā)出任何請(qǐng)求至擴(kuò)展主機(jī)控制器100,所以擴(kuò)展主機(jī)控制器100可作為一主機(jī)角色(master role)和通用串行總線外圍裝置220可作為一從動(dòng)角色(slaverole),以及內(nèi)建于控制單元104的通用串行總線裝置驅(qū)動(dòng)程序可要求內(nèi)建于控制單元104的擴(kuò)展主機(jī)控制器接口驅(qū)動(dòng)程序驅(qū)動(dòng)擴(kuò)展主機(jī)控制器接口 106發(fā)出一第一請(qǐng)求FR至通用串行總線外圍裝置220。也就是說(shuō),第一請(qǐng)求FR可通過(guò)擴(kuò)展主機(jī)控制器接口 106、通用串行總線單元1022和通用串行總線物理層101傳送至通用串行總線外圍裝置220。在通用串行總線外圍裝置220接收到第一請(qǐng)求FR后,通用串行總線外圍裝置220可響應(yīng)第一請(qǐng)求FR。因此,在通用串行總線外圍裝置220響應(yīng)第一請(qǐng)求FR后,主機(jī)200可利用通用串行總線模式和通用串行總線外圍裝置220溝通。例如,通用串行總線外圍裝置220可通過(guò)傳統(tǒng)通用串行總線傳輸線230、通用串行總線物理層101、通用串行總線單元1022、擴(kuò)展主機(jī)控制器接口 106和外圍組件快速互連總線108傳送數(shù)據(jù)至主機(jī)200的內(nèi)存202。另外,主機(jī)200也可通過(guò)傳統(tǒng)通用串行總線傳輸線230、通用串行總線物理層101、通用串行總線單元1022、擴(kuò)展主機(jī)控制器接口 106和外圍組件快速互連總線108傳送儲(chǔ)存在內(nèi)存202的數(shù)據(jù)至通用串行總線外圍裝置220。
[0051]請(qǐng)參照?qǐng)D3。圖3是說(shuō)明一第一主機(jī)240通過(guò)擴(kuò)展主機(jī)控制器100和傳統(tǒng)通用串行總線傳輸線230連接至主機(jī)200的示意圖。如圖3所示,當(dāng)?shù)谝恢鳈C(jī)240連接至主機(jī)200時(shí),擴(kuò)展主機(jī)控制器100的控制單元104可判定出第一主機(jī)240是一通用串行總線主機(jī)(因?yàn)榈谝恢鳈C(jī)240會(huì)發(fā)出第二請(qǐng)求SR至擴(kuò)展主機(jī)控制器100)。根據(jù)所述通用串行總線3.0兼容的標(biāo)準(zhǔn)規(guī)范(例如通用串行總線3.0與其他可兼容于通用串行總線3.1的標(biāo)準(zhǔn)規(guī)范),因?yàn)閿U(kuò)展主機(jī)控制器100具有除錯(cuò)功能單元(也就是預(yù)定單元1024),所以當(dāng)?shù)谝恢鳈C(jī)240發(fā)出第二請(qǐng)求SR至擴(kuò)展主機(jī)控制器100時(shí),一內(nèi)建于控制單元104的預(yù)定驅(qū)動(dòng)程序可驅(qū)動(dòng)預(yù)定單元1024響應(yīng)第二請(qǐng)求SR。因此,在預(yù)定單元1024響應(yīng)第二請(qǐng)求SR后,主機(jī)200便可利用所述預(yù)定模式(也就是所述區(qū)域網(wǎng)絡(luò)模式)和第一主機(jī)240溝通。例如,當(dāng)?shù)谝恢鳈C(jī)240連接至主機(jī)200時(shí),控制單元104可利用一虛擬網(wǎng)絡(luò)適配器(virtual network adapter)(例如,內(nèi)建于控制單元104的5Gb以太網(wǎng)驅(qū)動(dòng)程序(5Gb Ethernet network driver))仿真一以太網(wǎng)絡(luò)環(huán)境(Ethernet environment),所以第一主機(jī)240可利用一網(wǎng)絡(luò)封包方式(network package way)通過(guò)傳統(tǒng)通用串行總線傳輸線230、通用串行總線物理層101、預(yù)定單元1024、擴(kuò)展主機(jī)控制器接口 106和外圍組件快速互連總線108傳送數(shù)據(jù)至主機(jī)200的內(nèi)存202。另外,主機(jī)200也可利用所述網(wǎng)絡(luò)封包方式通過(guò)傳統(tǒng)通用串行總線傳輸線230、通用串行總線物理層101、預(yù)定單元1024、擴(kuò)展主機(jī)控制器接口 106和外圍組件快速互連總線108傳送儲(chǔ)存在內(nèi)存202的數(shù)據(jù)至第一主機(jī)240。另外,當(dāng)?shù)谝恢鳈C(jī)240連接至主機(jī)200時(shí),本發(fā)明并不受限于第一主機(jī)240利用網(wǎng)絡(luò)封包方式和主機(jī)200溝通。也就是說(shuō)當(dāng)?shù)谝恢鳈C(jī)240連接至主機(jī)200時(shí),控制單元104可利用其他驅(qū)動(dòng)程序建構(gòu)一數(shù)據(jù)傳輸環(huán)境以讓第一主機(jī)240利用其他數(shù)據(jù)傳輸方式和和主機(jī)200溝通。
[0052]請(qǐng)參照?qǐng)D4-6。圖4是說(shuō)明一擴(kuò)展主機(jī)控制器250通過(guò)擴(kuò)展主機(jī)控制器100和傳統(tǒng)通用串行總線傳輸線230連接至主機(jī)200的示意圖,以及圖5、6是說(shuō)明擴(kuò)展主機(jī)控制器100檢測(cè)擴(kuò)展主機(jī)控制器250的時(shí)序示意圖,其中擴(kuò)展主機(jī)控制器250應(yīng)用于一第二主機(jī)260,以及第二主機(jī)260另包含一內(nèi)存402。如圖5所示,在時(shí)間點(diǎn)TP1時(shí),擴(kuò)展主機(jī)控制器100的控制單元104先關(guān)閉耦接于擴(kuò)展主機(jī)控制器100的數(shù)據(jù)傳輸線路D-的15K下拉電阻(其中數(shù)據(jù)傳輸線路D-和15K下拉電阻并未繪示于圖4,且所述數(shù)據(jù)傳輸線路D-的定義可參照通用串行總線2.0的標(biāo)準(zhǔn)規(guī)范,在此不再贅述)一段時(shí)間T1以檢測(cè)所述數(shù)據(jù)傳輸線路D-的電平是否為一高電平。在時(shí)間T1中,控制單元104會(huì)開(kāi)啟檢測(cè)所述數(shù)據(jù)傳輸線路D-的電平的信號(hào)DS,如果擴(kuò)展主機(jī)控制器250尚未連接至主機(jī)200時(shí),則所述數(shù)據(jù)傳輸線路D-的電平會(huì)為所述高電平(如圖5所示的圓圈A),所以控制單元104會(huì)再次于如圖5所示的時(shí)間點(diǎn)TP2時(shí)關(guān)閉耦接于擴(kuò)展主機(jī)控制器100的數(shù)據(jù)傳輸線路D-的15K下拉電阻以檢測(cè)所述數(shù)據(jù)傳輸線路D-的電平是否為所述高電平。
[0053]在時(shí)間點(diǎn)TP2后,因?yàn)榭刂茊卧?04會(huì)開(kāi)啟檢測(cè)所述數(shù)據(jù)傳輸線路D-的電平的信號(hào)DS,所以如果擴(kuò)展主機(jī)控制器250是一通用串行總線2.0的擴(kuò)展主機(jī)控制器且連接至主機(jī)200時(shí),所述數(shù)據(jù)傳輸線路D-的電平會(huì)為一低電平(如圖5所示的圓圈B),且控制單元104可據(jù)此判定第二主機(jī)260為一通用串行總線主機(jī),也就是主機(jī)200會(huì)作為一目標(biāo)端(target side)以及第二主機(jī)260會(huì)作為一主機(jī)端(host side)。當(dāng)主機(jī)200被決定為所述目標(biāo)端以及第二主機(jī)260被決定為所述主機(jī)端后,控制單元104將于信號(hào)DS去能后的一時(shí)間點(diǎn)TP3開(kāi)啟耦接于擴(kuò)展主機(jī)控制器100的數(shù)據(jù)傳輸線路D+的1.5K上拉電阻(其中數(shù)據(jù)傳輸線路D+和1.5K上拉電阻并未繪示于圖4,且所述數(shù)據(jù)傳輸線路D+的定義也可參照通用串行總線2.0的標(biāo)準(zhǔn)規(guī)范,在此不再贅述)。在耦接于擴(kuò)展主機(jī)控制器100的數(shù)據(jù)傳輸線路D+的1.5K上拉電阻開(kāi)啟后(所述數(shù)據(jù)傳輸線路D+的電平會(huì)為所述高電平(如圖5所示的圓圈C)),第二主機(jī)260即可通過(guò)擴(kuò)展主機(jī)控制器250發(fā)出第三請(qǐng)求TR至擴(kuò)展主機(jī)控制器100。根據(jù)所述通用串行總線3.0兼容的標(biāo)準(zhǔn)規(guī)范(例如通用串行總線3.0與其他可兼容于通用串行總線3.1的標(biāo)準(zhǔn)規(guī)范),因?yàn)閿U(kuò)展主機(jī)控制器100具有除錯(cuò)功能單元(也就是預(yù)定單元1024),所以當(dāng)?shù)诙鳈C(jī)260發(fā)出第三請(qǐng)求TR至擴(kuò)展主機(jī)控制器100時(shí),內(nèi)建于控制單元104的預(yù)定驅(qū)動(dòng)程序可驅(qū)動(dòng)預(yù)定單元1024響應(yīng)第三請(qǐng)求TR。另外,因?yàn)樵陬A(yù)定單元1024響應(yīng)第三請(qǐng)求TR后,主機(jī)200、第二主機(jī)260和控制單元104的其余操作原理都和如圖3所示的主機(jī)200、第一主機(jī)240和控制單元104的操作原理相同,在此不再贅述。
[0054]另外,如圖6所示,如果主機(jī)200和第二主機(jī)260之間沒(méi)有任何數(shù)據(jù)傳輸超過(guò)一預(yù)定時(shí)間PT后,控制單元104將會(huì)使主機(jī)200進(jìn)入一暫停(suspend)模式(也就是控制單元104開(kāi)始開(kāi)啟耦接于擴(kuò)展主機(jī)控制器100的數(shù)據(jù)傳輸線路D+的1.5K上拉電阻,如圖6所示的圓圈D))。在1.5K上拉電阻開(kāi)始被開(kāi)啟后(也就是如圖6所示的