專利名稱::動(dòng)態(tài)分配豎卡鏈路寬度的方法
技術(shù)領(lǐng)域:
:本發(fā)明是有關(guān)于一種邏輯線路的分配方法,且特別是有關(guān)于一種動(dòng)態(tài)分配豎卡鏈路寬度的方法。
背景技術(shù):
:豎卡(risercard)是一種接口擴(kuò)充卡,常用在機(jī)殼空間較小的電腦系統(tǒng)上,如迷你準(zhǔn)系統(tǒng)或平躺式服務(wù)器。這些電腦系統(tǒng)由于空間設(shè)計(jì)的問(wèn)題,其主板上能用來(lái)配置PCI插槽的空間有限,若使用者需要使用較多的PCI接口卡,就必需使用到豎卡,通過(guò)一接多的方式,將PCI插槽從一個(gè)擴(kuò)充至兩個(gè)以上。值得注意的是,主板上的每一個(gè)插槽都需要設(shè)定其中斷要求(Interr叩tRequest,IRQ),而豎卡上配置的插槽數(shù)目也必需視芯片組(chipset)所能支持的鏈路寬度(linkwidth)而定,以一顆能夠支持16鏈路寬度的芯片組來(lái)說(shuō),其豎卡的設(shè)計(jì)方式包括豎卡0:配置4個(gè)4鏈路寬度(x4)的周邊零件連接高速(PeripheralComponentInterconnectExpress,PCI-插槽;豎卡l:配置兩個(gè)4鏈路寬度(x4)及一個(gè)8鏈路寬度(x8)的PCI-E插槽;豎卡2:配置兩個(gè)8鏈路寬度(x8)的PCI-E插槽;豎卡3:配置一個(gè)16鏈路寬度(xl6)的PCI-E插槽。圖1所繪示為傳統(tǒng)配置有兩個(gè)PCI-E插槽的豎卡的系統(tǒng)方塊圖。請(qǐng)參照?qǐng)D1,系統(tǒng)100上包括配置有控制芯片110、豎卡120及南橋芯片130。其中,控制芯片110可以是一顆能夠支持16鏈路寬度的北橋芯片,其包括將此16鏈路寬度切分為4個(gè)4鏈路寬度(x4),而分別由PCI-E橋接器0、PCI-E橋接器1、PCI-E橋接器2及PCI-E橋接器3控制。在豎卡120插入系統(tǒng)100后,由于豎卡120上僅配置有PCI-E插槽0及PCI-E插槽1,因此,控制芯片110亦將其PCI-E橋接器平均分配至PCI-E插槽0及PCI-E插槽1這兩個(gè)插槽上,而讓PCI-E插槽0及PCI-E插槽1所能使用到的鏈路寬度皆為8鏈路寬度(x8)。值得注意的是,豎卡120上還配置有一個(gè)總線控制器123(Buscontroller),其透過(guò)內(nèi)部集成電路(InterIntegratedCircuit,I2C)協(xié)定與南橋芯片130上的總線控制器131溝通,而將豎卡的識(shí)別碼(Identification,ID)透過(guò)南橋芯片130傳送至控制芯片110,而讓控制芯片110能夠識(shí)別豎卡120的種類而安排橋接器給豎卡120上的對(duì)應(yīng)的PCI-E插槽使用,此處的識(shí)別碼是透過(guò)3個(gè)通用輸入(GeneralPurposeIntput,GPI)針腳(GPIO、GPI1及GPI2)來(lái)提供,而豎卡120的識(shí)別碼例如是0、1、0。承上述,使用者可根據(jù)其使用需求,選擇不同種類的豎卡來(lái)裝配PCI-E接口卡。舉例來(lái)說(shuō),若使用者只有一張xl6的PCI-E接口卡,則必需選用豎卡3才能有足夠的鏈路寬度(xl6)來(lái)使用,此時(shí)若選用豎卡2,則會(huì)因?yàn)樨Q卡2支持之鏈路寬度(x8)較低,而限制了PCI-E接口卡所能運(yùn)用的鏈路寬度,甚至無(wú)法使用。因此,系統(tǒng)的設(shè)計(jì)者必須提供各式各樣不同的豎卡給使用者使用,而造成豎卡管理上的不便,也會(huì)增加豎卡設(shè)計(jì)上的成本。
發(fā)明內(nèi)容有鑒于此,本發(fā)明提供一種動(dòng)態(tài)分配豎卡鏈路寬度的方法,通過(guò)檢測(cè)插入豎卡上插槽的插卡種類及數(shù)量,分配各張插卡可使用的鏈路寬度,以一張豎卡即可適用不同種類及數(shù)量的插卡,能夠節(jié)省設(shè)計(jì)成本。為達(dá)上述或其他目的,本發(fā)明提出一種動(dòng)態(tài)分配豎卡鏈路寬度的方法,適用于包括一張豎卡(risercard)系統(tǒng),其中此豎卡包括多個(gè)插槽,而適于插入多張插卡,此方法包括下列步驟a.檢測(cè)插入插槽且功能正常之插卡的數(shù)量及位置;b.根據(jù)這些插卡的數(shù)量及位置,設(shè)定系統(tǒng)的控制芯片的組態(tài);c.根據(jù)控制芯片的組態(tài),設(shè)定分配給各張插卡使用的鏈路寬度;d.執(zhí)行鏈路寬度重新調(diào)校(retrain),以分配鏈路寬度給各張插卡使用。在本發(fā)明一實(shí)施例中,系統(tǒng)控制芯片的組態(tài)包括一張插卡、兩張插卡、三張插卡及四張插卡其中之一,而分配給各張插卡使用的鏈路寬度包括1鏈路寬度(xl)、4鏈路寬度(x4)、8鏈路寬度(x8)及16鏈路寬度(xl6)其中之一。在本發(fā)明一實(shí)施例中,上述步驟a.包括預(yù)先將組態(tài)設(shè)定為四張插卡,并將分配給各張插卡使用的鏈路寬度設(shè)定為4鏈路寬度(x4),然后執(zhí)行鏈路寬度重新調(diào)校,最后則根據(jù)鏈路寬度重新調(diào)校的調(diào)校結(jié)果,取得插入各個(gè)插槽且功能正常的插卡的數(shù)量及位置。在本發(fā)明一實(shí)施例中,上述調(diào)校結(jié)果包括記錄于控制芯片的多個(gè)橋接器的狀態(tài)寄存器,而調(diào)校結(jié)果包括各個(gè)橋接器連接的插槽是否插入插卡、插卡的功能是否正常,以及插卡的鏈路寬度。在本發(fā)明一實(shí)施例中,在步驟C.中,若設(shè)定的組態(tài)為一張插卡,則設(shè)定分配給此插卡使用的鏈路寬度為一個(gè)16鏈路寬度(Xl6);若設(shè)定的組態(tài)為兩張插卡,則設(shè)定分配給各張插卡使用的鏈路寬度為兩個(gè)8鏈路寬度(x8);若設(shè)定的組態(tài)為三張插卡,則設(shè)定分配給各張插卡使用的鏈路寬度為兩個(gè)4鏈路寬度(x4)及一個(gè)8鏈路寬度(x8)。在本發(fā)明一實(shí)施例中,若設(shè)定的組態(tài)為三張插卡,則在步驟d.之后,還包括判斷鏈路寬度重新調(diào)校的調(diào)校結(jié)果是否為最佳,若調(diào)校結(jié)果不是最佳,則更改分配各張插卡使用的鏈路寬度,并重復(fù)執(zhí)行鏈路寬度重新調(diào)校,直到調(diào)校結(jié)果是最佳為止。在本發(fā)明一實(shí)施例中,若設(shè)定的組態(tài)為三張插卡,則在步驟d.之后,還包括記錄鏈路寬度重新調(diào)校的調(diào)校結(jié)果,更改分配給各張插卡使用的鏈路寬度,并重復(fù)執(zhí)行鏈路寬度重新調(diào)校。最后則選擇最佳的調(diào)校結(jié)果,并執(zhí)行鏈路寬度重新調(diào)校,以分配鏈路寬度給各張插卡使用。在本發(fā)明一實(shí)施例中,設(shè)定系統(tǒng)的控制芯片的組態(tài)的方式包括設(shè)定控制芯片的重新調(diào)校寄存器,以決定組態(tài),而執(zhí)行該鏈路寬度重新調(diào)校的方式則包括設(shè)定此重新調(diào)校寄存器,以啟動(dòng)鏈路寬度重新調(diào)校。此外,在鏈路寬度重新調(diào)校啟動(dòng)之后,還包括延遲一段預(yù)設(shè)時(shí)間,以等待鏈路寬度重新調(diào)校完成。在本發(fā)明一實(shí)施例中,根據(jù)控制芯片的組態(tài),設(shè)定分配給各張插卡使用的鏈路寬度的方式包括設(shè)定一個(gè)邏輯線路的多根針腳,而透過(guò)此邏輯線路,將控制芯片的多個(gè)橋接器連接至各個(gè)插槽,以提供鏈路寬度給各張插卡使用。在本發(fā)明一實(shí)施例中,上述控制芯片為北橋芯片,而上述插卡則包括周邊零件連接高速(PeripheralComponentInterconnectExpress,PCI-E)接口卡。本發(fā)明因采用動(dòng)態(tài)分配豎卡鏈路寬度的結(jié)構(gòu),依據(jù)安裝在豎卡上的插卡種類及數(shù)量,提供適當(dāng)?shù)逆溌穼挾冉o其使用,以使鏈路寬度的分配達(dá)到最佳化。據(jù)此,本發(fā)明即可以單一張豎卡滿足各種不同的鏈路寬度使用需求,達(dá)到節(jié)省設(shè)計(jì)成本的目的。為讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合附圖作詳細(xì)說(shuō)明如下。圖1所繪示為傳統(tǒng)配置有兩個(gè)PCI-E插槽的豎卡的系統(tǒng)方塊圖。圖2是依照本發(fā)明第一實(shí)施例所繪示的動(dòng)態(tài)分配豎卡鏈路寬度的系統(tǒng)方塊圖圖3是依照本發(fā)明第二實(shí)施例所繪示的動(dòng)態(tài)分配豎卡鏈路寬度的方法流程圖。圖4是依照本發(fā)明第三實(shí)施例所繪示的鏈路寬度最佳化的方法流程圖。具體實(shí)施例方式一般豎卡上配置的插槽數(shù)目及各個(gè)插槽所分配到的鏈路寬度(linkwidth)皆為固定,這種作法雖然可提供特定的系統(tǒng)擴(kuò)充功能,但也限制了系統(tǒng)擴(kuò)充的彈性。而在實(shí)際的應(yīng)用上,根據(jù)每個(gè)使用者的不同需求,豎卡上可能會(huì)插上一張、兩張以至于數(shù)張不等的插卡,因此鏈路寬度分配的最佳作法應(yīng)該參考安裝在豎卡上的插卡的種類及數(shù)目,再?zèng)Q定分配給各個(gè)插槽的鏈路寬度大小,才能夠兼具系統(tǒng)的擴(kuò)充性及使用上的彈性。本發(fā)明即是基于上述概念所發(fā)展出來(lái)的一套動(dòng)態(tài)分配豎卡鏈路寬度的方法,為了使本發(fā)明的內(nèi)容更為明了,以下特舉實(shí)施例作為本發(fā)明確實(shí)能夠據(jù)以實(shí)施的范例。第一實(shí)施例圖2是依照本發(fā)明第一實(shí)施例所繪示的動(dòng)態(tài)分配豎卡鏈路寬度的系統(tǒng)方塊圖。請(qǐng)參照?qǐng)D2,本實(shí)施例將一張豎卡220插入系統(tǒng)200的主板的插槽(未繪示)上,而用以提供系統(tǒng)200擴(kuò)充的功能。此豎卡220上配置有4個(gè)插槽(包括插槽0、插槽1、插槽2、插槽3),而提供插入14張插卡,這些插槽例如是周邊零件連接高速(PeripheralComponentInterconnectExpress,PCI-E)插槽,而插卡則例如是PCI-E接口卡,本發(fā)明不限制其范圍。在將豎卡220安裝至系統(tǒng)200上后,系統(tǒng)200即會(huì)設(shè)定其控制芯片210的組態(tài),而在此控制芯片210的重新調(diào)校寄存器寫入對(duì)應(yīng)此組態(tài)的設(shè)定值。其中,上述組態(tài)包括一張插卡、兩張插卡、三張插卡或是四張插卡,而不限制其范圍。舉例來(lái)說(shuō),若要將控制芯片210的組態(tài)規(guī)劃為4張插卡,則需要在重新調(diào)校寄存器寫入04。而控制芯片210在接收到此設(shè)定值后,此時(shí)就會(huì)配置4個(gè)橋接器以將鏈路寬度分配給豎卡220上的插槽使用。此外,系統(tǒng)200也包括將多工器230的硬件邏輯線路規(guī)劃為支持4個(gè)4鏈路寬度(x4)的插槽,其作法例如是在系統(tǒng)200的輸入輸出控制(SuperInput/Output,SIO)芯片或南橋芯片的硬件寄存器的通用輸出(GeneralPurposeOutput,GPO.,對(duì)多工器230而言其是通用輸入(GeneralPurposeI叩ut,GPI)針腳GPI4、GPI3、GPI2、GPIl、GPIO上分別寫入0、1、1、1、1之值,以控制多工器230調(diào)整硬件的邏輯線路,意即將控制芯片210的4個(gè)橋接器對(duì)應(yīng)連接至豎卡220上的4個(gè)插槽。最后,透過(guò)設(shè)定控制芯片210的重新調(diào)校寄存器(例如在其第4位元寫入1之值),而啟動(dòng)鏈路寬度重新調(diào)校,以分配鏈路寬度給各張插卡使用,并即可得知豎卡220上插入的插卡的數(shù)量及位置。由上述可知,在本實(shí)施例中,控制芯片210的組態(tài)系規(guī)劃為4張插卡,因此在鏈路寬度重新調(diào)校之后,每個(gè)插槽即可分配到4鏈路寬度(x4)。搭配上述系統(tǒng),本發(fā)明也提供一套動(dòng)態(tài)分配豎卡鏈路寬度的方法,據(jù)以運(yùn)作此系統(tǒng)。以下則舉一實(shí)施例介紹此方法的詳細(xì)步驟。第二實(shí)施例圖3是依照本發(fā)明第二實(shí)施例所繪示的動(dòng)態(tài)分配豎卡鏈路寬度的方法流程圖。請(qǐng)參照?qǐng)D3,本實(shí)施例適用于包括一張豎卡系統(tǒng),此豎卡包括多個(gè)插槽,而適于插入多張插卡。其中,上述插槽例如是PCI-E插槽,插卡則例如是PCI-E接口卡,并不限制其范圍。在使用者將豎卡插入系統(tǒng)的主板,在豎卡的插槽上插入插卡,并啟動(dòng)系統(tǒng)后,系統(tǒng)即會(huì)檢測(cè)已插在插槽上且功能正常的插卡的數(shù)量及位置(步驟S310)。其中,本實(shí)施例并不限定豎卡上的插槽數(shù)目,也不限制每個(gè)插槽均要插入插卡(即可插可不插)。接著,根據(jù)所檢測(cè)到的插卡的數(shù)量及位置,即可設(shè)定系統(tǒng)的控制芯片的組態(tài)(步驟S320)。其中,此控制芯片的組態(tài)可區(qū)分為一張插卡、兩張插卡、三張插卡或四張插卡,而此組態(tài)的設(shè)定則例如是在控制芯片的重新調(diào)校寄存器中寫入對(duì)應(yīng)的設(shè)定值。下一步則可根據(jù)所設(shè)定的組態(tài),設(shè)定多工器中的硬件邏輯線路,而將控制芯片的橋接器的線路分別連接至各張插卡(步驟S330)。此處分配給各張插卡使用的鏈路寬度例如是1鏈路寬度(xl)、4鏈路寬度(x4)、8鏈路寬度(x8)或是16鏈路寬度(xl6),其大小端視所檢測(cè)到的插卡的數(shù)量而定,并不限制其范圍。最后,則在控制芯片的鏈路寬度重新調(diào)校中寫入l之值,而執(zhí)行鏈路寬度重新調(diào)校(步驟S340)。在延遲一段預(yù)設(shè)時(shí)間后,即完成鏈路寬度重新調(diào)校,此時(shí)各張插卡就可獲得所需使用的鏈路寬度。為了使本發(fā)明的鏈路寬度的規(guī)劃為最佳,以下則再舉一實(shí)施例說(shuō)明本發(fā)明的鏈路寬度最佳化的方法。第三實(shí)施例圖4是依照本發(fā)明第三實(shí)施例所繪示的鏈路寬度最佳化的方法流程圖。請(qǐng)參照?qǐng)D4,首先由系統(tǒng)將控制芯片的組態(tài)預(yù)先設(shè)為4張插卡,并將分配給各張插卡使用的鏈路寬度設(shè)定為4鏈路寬度(x4)。然后,對(duì)控制芯片的鏈路寬度重新調(diào)校寄存器寫入l之值,以執(zhí)行鏈路寬度重新調(diào)校。待鏈路寬度重新調(diào)校完成后,即可從控制芯片的橋接器的狀態(tài)寄存器中得知鏈路寬度重新調(diào)校的結(jié)果,而取得已插入插槽且功能正常的插卡的數(shù)量及位置(步驟S410)。詳細(xì)地說(shuō),對(duì)應(yīng)于豎卡上的4個(gè)插槽,控制芯片也配置有4個(gè)橋接器以提供適當(dāng)?shù)逆溌穼挾冉o這些插槽上的插卡使用,而這些橋接器上的狀態(tài)寄存器則會(huì)依據(jù)鏈路寬度重新調(diào)校的結(jié)果,記錄不同的值。舉例來(lái)說(shuō),此記錄值例如是NULL、L5、L6、L7、L8等。其中,NULL即代表此插槽沒(méi)有"好的"插卡插入,而L5、L6、L7、L8則分別代表此插槽的位置中有插入插卡,且插卡的功能正常。值得一提的是,上述調(diào)校結(jié)果包括記錄各個(gè)橋接器連接的插槽是否插入插卡、插卡的功能是否正常,以及插卡的鏈路寬度等信息。待取得調(diào)校結(jié)果之后,即可獲知"好的"插卡的數(shù)目及位置,假設(shè)此"好的"插卡的數(shù)目為n,n為05的整數(shù)。接著則可根據(jù)此n值的大小,設(shè)定控制芯片的組態(tài),并重新執(zhí)行鏈路寬度重新調(diào)校程序,以下則針對(duì)各個(gè)不同的n值,介紹本發(fā)明的鏈路寬度最佳化的流程在步驟S420中,當(dāng)判斷n值為0或4時(shí),則代表4個(gè)插槽上皆沒(méi)有插入"好的"插卡,抑或是皆有插入"好的"插卡,而由于本實(shí)施例先前執(zhí)行的鏈路寬度重新調(diào)校也是將控制芯片的組態(tài)設(shè)為4張插卡,且分配給各張插卡使用的鏈路寬度也是設(shè)定為4鏈路寬度(x4),因此只需采用原有的調(diào)校結(jié)果即可,而無(wú)需再度執(zhí)行鏈路寬度重新調(diào)校程序。在步驟S430中,當(dāng)n值為l時(shí),則代表4個(gè)插槽中僅有一個(gè)插槽上有"好的"插卡插入,此時(shí)即可將控制芯片的組態(tài)設(shè)為使用狀態(tài)1。同時(shí)也依照調(diào)校結(jié)果,將多工器的硬件邏輯線路規(guī)劃為支持l個(gè)16鏈路寬度(xl6)的插槽,并重新執(zhí)行鏈路寬度重新調(diào)校程序,待延遲一段預(yù)設(shè)時(shí)間后,即完成鏈路寬度重新調(diào)校,此時(shí)這張"好的"插卡即可獲得并使用16鏈路寬度(xl6)(步驟S440)。在步驟S450中,當(dāng)n值為2時(shí),則代表4個(gè)插槽中僅有兩個(gè)插槽上有"好的"插卡插入,此時(shí)即可將控制芯片的組態(tài)設(shè)為使用狀態(tài)2。同時(shí)也依照調(diào)校結(jié)果,將多工器的硬件邏輯線路規(guī)劃為支持2個(gè)8鏈路寬度(x8)的插槽,并重新執(zhí)行鏈路寬度重新調(diào)校程序,待延遲一段預(yù)設(shè)時(shí)間后,即完成鏈路寬度重新調(diào)校,此時(shí)這兩張"好的"插卡即可獲得并使用8鏈路寬度(x8)(步驟S460)。在步驟S450中,當(dāng)n值為3時(shí),則代表4個(gè)插槽中有三個(gè)插槽上有"好的"插卡插入,此時(shí)即可將控制芯片的組態(tài)設(shè)為使用狀態(tài)3。同時(shí)也依照調(diào)校結(jié)果,將多工器的硬件邏輯線路規(guī)劃為支持2個(gè)4鏈路寬度(x4)及1個(gè)8鏈路寬度(x8)的插槽,并重新執(zhí)行鏈路寬度重新調(diào)校程序,待延遲一段預(yù)設(shè)時(shí)間后,即完成鏈路寬度重新調(diào)校,此時(shí)這三張"好的"插卡即可獲得并使用2個(gè)4鏈路寬度(x4)及1個(gè)8鏈路寬度(x8)(步驟S470)。值得注意的是,在n值為3的情況中,有一張插卡將會(huì)被分配到8鏈路寬度(x8),而為了使鏈路寬度的分配為最佳,因此本發(fā)明還包括調(diào)整多工器的硬件邏輯線路,并重復(fù)鏈路寬度重新調(diào)校的步驟,直到獲得最佳的調(diào)校結(jié)果,以下則提供兩種做法。一種做法是在每次執(zhí)行鏈路寬度重新調(diào)校之后,即判斷此鏈路寬度重新調(diào)校的調(diào)校結(jié)果是否為最佳,若仍非最佳,則再更改分配給各張插卡使用的鏈路寬度,并重復(fù)執(zhí)行鏈路寬度重新調(diào)校,直到調(diào)校結(jié)果是最佳為止。其中,判斷調(diào)校結(jié)果是否為最佳的方式例如可檢測(cè)分配到8鏈路寬度(X8)的插卡是否也支持8鏈路寬度,若是,則可確定目前的調(diào)校結(jié)果為最佳。另一種做法則是在每次執(zhí)行鏈路寬度重新調(diào)校之后,即記錄此調(diào)校結(jié)果,然后再逐一更改分配給各張插卡使用的鏈路寬度,并重復(fù)執(zhí)行鏈路寬度重新調(diào)校,直到所有鏈路寬度的分配皆測(cè)試完畢后,再選擇一個(gè)最佳的調(diào)校結(jié)果來(lái)分配鏈路寬度給各張插卡使用。下表1為依據(jù)本發(fā)明第三實(shí)施例所繪示的邏輯線路的定義表。<table>tableseeoriginaldocumentpage12</column></row><table><table>tableseeoriginaldocumentpage13</column></row><table>表l通過(guò)表1中對(duì)于通用輸入針腳的設(shè)定,即可更改多工器的硬件邏輯線路,而提供不同的鏈路寬度給各張插卡使用。待執(zhí)行鏈路寬度重新調(diào)校之后,再選擇一個(gè)最佳的調(diào)校結(jié)果來(lái)分配鏈路寬度,最終則達(dá)到本發(fā)明動(dòng)態(tài)分配豎卡鏈路寬度的目的。綜上所述,本發(fā)明的動(dòng)態(tài)分配豎卡鏈路寬度的方法至少具有下列優(yōu)點(diǎn)1.采用動(dòng)態(tài)分配鏈路寬度的方式,而不限制豎卡的插槽數(shù)目與插入之插卡的種類及數(shù)目,具有使用上的彈性。2.根據(jù)插卡數(shù)目及位置,適當(dāng)調(diào)配鏈路寬度給各個(gè)插卡使用,而達(dá)到鏈路寬度的最佳化,讓系統(tǒng)的效能得以被有效地運(yùn)用。3.以一張豎卡取代各種種類的豎卡,可節(jié)省豎卡的設(shè)計(jì)成本,也增加豎卡管理上的方便性。雖然本發(fā)明已以較佳實(shí)施例揭示如上,然其并非用以限定本發(fā)明,任何熟習(xí)此技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許更動(dòng)與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍當(dāng)以權(quán)利要求所界定的為準(zhǔn)。權(quán)利要求1.一種動(dòng)態(tài)分配豎卡鏈路寬度的方法,適用于包括一豎卡的一系統(tǒng),其中該豎卡包括多個(gè)插槽,而適于插入多張插卡,該方法包括下列步驟a.檢測(cè)插入該些插槽且功能正常的至少一插卡的數(shù)量及位置;b.根據(jù)該些插卡的數(shù)量及位置,設(shè)定該系統(tǒng)的一控制芯片的一組態(tài);c.根據(jù)該控制芯片的該組態(tài),設(shè)定分配給各該些插卡使用的一鏈路寬度;以及d.執(zhí)行一鏈路寬度重新調(diào)校,以分配該鏈路寬度給各該些插卡使用。2.如權(quán)利要求1所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該系統(tǒng)的該控制芯片的該組態(tài)包括一張插卡、兩張插卡、三張插卡及四張插卡其中之一。3.如權(quán)利要求2所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,分配給各該些插卡使用的該鏈路寬度包括1鏈路寬度、4鏈路寬度、8鏈路寬度及16鏈路寬度其中之一。4.如權(quán)利要求3所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該步驟a.包括預(yù)設(shè)該組態(tài)為四張插卡;設(shè)定分配給各該些插卡使用的該鏈路寬度為4鏈路寬度;執(zhí)行該鏈路寬度重新調(diào)校;以及根據(jù)該鏈路寬度重新調(diào)校的一調(diào)校結(jié)果,取得插入該些插槽且功能正常的該些插卡的數(shù)量及位置。5.如權(quán)利要求4所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該調(diào)校結(jié)果包括記錄于該控制芯片的多個(gè)橋接器的一狀態(tài)寄存器。6.如權(quán)利要求5所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該調(diào)校結(jié)果包括各該橋接器連接的該插槽是否插入該插卡、該插卡的功能是否正常,以及該插卡的該鏈路寬度。7.如權(quán)利要求3所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該步驟c.包括若該組態(tài)為一張插卡,則設(shè)定分配給該插卡使用的該鏈路寬度為一個(gè)16鏈路寬度。8.如權(quán)利要求3所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該步驟C.包括若該組態(tài)為兩張插卡,則設(shè)定分配給各該些插卡使用的該鏈路寬度為兩個(gè)8鏈路寬度。9.如權(quán)利要求3所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該步驟C.包括若該組態(tài)為三張插卡,則設(shè)定分配給各該些插卡使用的該鏈路寬度為兩個(gè)4鏈路寬度及一個(gè)8鏈路寬度。10.如權(quán)利要求9所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,在該步驟d.之后,還包括判斷該鏈路寬度重新調(diào)校的一調(diào)校結(jié)果是否為最佳;若該調(diào)校結(jié)果不是最佳,則更改分配給各該些插卡使用的該鏈路寬度,并重復(fù)執(zhí)行該鏈路寬度重新調(diào)校,直到該調(diào)校結(jié)果是最佳為止。11.如權(quán)利要求9所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,在該步驟d.之后,還包括記錄該鏈路寬度重新調(diào)校的一調(diào)校結(jié)果;更改分配給各該些插卡使用的該鏈路寬度,并重復(fù)執(zhí)行該鏈路寬度重新調(diào)校;以及選擇最佳的該調(diào)校結(jié)果,并執(zhí)行該鏈路寬度重新調(diào)校,以分配該鏈路寬度給各該些插卡使用。12.如權(quán)利要求1所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,設(shè)定該系統(tǒng)的該控制芯片的該組態(tài)的方式包括設(shè)定該控制芯片的一重新調(diào)校寄存器,以決定該組態(tài)。13.如權(quán)利要求12所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,執(zhí)行該鏈路寬度重新調(diào)校的方式包括設(shè)定該控制芯片的該重新調(diào)校寄存器,以啟動(dòng)該鏈路寬度重新調(diào)校。14.如權(quán)利要求13所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,在啟動(dòng)該鏈路寬度重新調(diào)校之后,還包括延遲一預(yù)設(shè)時(shí)間,以等待該鏈路寬度重新調(diào)校完成。15.如權(quán)利要求1所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,根據(jù)該控制芯片的該組態(tài),設(shè)定分配給各該些插卡使用的該鏈路寬度的方式包括根據(jù)該控制芯片的該組態(tài),設(shè)定一邏輯線路的多根針腳;透過(guò)該邏輯線路,將該控制芯片的多個(gè)橋接器連接至該些插槽,以提供該鏈路寬度給該些插卡使用。16.如權(quán)利要求15所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該些針腳包括通用輸入針腳。17.如權(quán)利要求1所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該控制芯片為北橋芯片。18.如權(quán)利要求1所述的動(dòng)態(tài)分配豎卡鏈路寬度的方法,其特征在于,該些插卡包括周邊零件連接高速接口卡。全文摘要本發(fā)明公開(kāi)了一種動(dòng)態(tài)分配豎卡鏈路寬度的方法,此方法適用于包括豎卡的系統(tǒng)。此方法首先檢測(cè)豎卡插槽上插入的插卡的數(shù)量及位置,以決定分配給各張插卡的鏈路寬度,而依據(jù)各個(gè)插槽所分配到的鏈路寬度,執(zhí)行鏈路寬度重新調(diào)校動(dòng)作,以提供適當(dāng)?shù)逆溌穼挾冉o各張插卡使用。據(jù)此,本發(fā)明既可達(dá)到鏈路寬度分配的最佳化,而不受限于配置在豎卡上插卡的種類及數(shù)目,除了可以節(jié)省豎卡的設(shè)計(jì)成本外,也可增加豎卡使用及管理上的方便性。文檔編號(hào)G06F13/38GK101382925SQ20071014699公開(kāi)日2009年3月11日申請(qǐng)日期2007年9月3日優(yōu)先權(quán)日2007年9月3日發(fā)明者盧盈志申請(qǐng)人:英業(yè)達(dá)股份有限公司