專利名稱:用于導(dǎo)出多個唯一節(jié)點標(biāo)識符的裝置、系統(tǒng)和芯片組的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及支持傳送基于鏈路的系統(tǒng)的初始化值的有效利用的系統(tǒng)。
背景技術(shù):
基于前端總線(FSB)的現(xiàn)有系統(tǒng)不允許個人總線元件的熱插撥。 同樣,現(xiàn)有系統(tǒng)由于傳送初始化值而苦于引腳限制,并且由于初始POC 值不正確而苦于執(zhí)行多次熱復(fù)位。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的第一方面,提供了一種在點到點(pTp)體系結(jié)構(gòu)中 上電清除(POC)值的裝置,包含從多個母線(stop)中導(dǎo)出所述POC
值的I/O代理;以及將所述POC值經(jīng)由多個點到點鏈路轉(zhuǎn)發(fā)給遵循所述
pTp體系結(jié)構(gòu)的多個處理器的I/O代理。
根據(jù)本發(fā)明的第二方面,提供了一種在點到點(pTp)體系結(jié)構(gòu)中 建立上電清除(POC)值的方法,包含從多個母線中導(dǎo)出所述POC 值;以及向多個處理器發(fā)送所述POC值。
根據(jù)本發(fā)明的第三方面,提供了一種在點到點(pTp)體系結(jié)構(gòu)中 建立上電清除(POC)值的方法,包含輸入輸出(IO)代理從本地非 易失性存儲器(NVM)或者固件空間之一中獲得所述POC值;以及向 多個處理器轉(zhuǎn)發(fā)所述POC值。
根據(jù)本發(fā)明的第四方面,提供了一種在點到點(pTp)體系結(jié)構(gòu)中 建立上電清除(POC)值的方法,包含輸入輸出(IO)代理利用協(xié)議
從下行芯片組中獲得所述POC值;以及所述10代理在點到點鏈路初始 化之前獲得所述POC值。
根據(jù)本發(fā)明的第五方面,提供了一種用于元件或系統(tǒng)的鏈路層初始 化的方法,包含初始化物理層以允許第一和第二代理之間信息的電傳 送;通過交換鏈路層控制消息和初始化的多個控制遷移而執(zhí)行第一和第 二代理的鏈路層初始化;以及發(fā)送一個或多個控制遷移以初始化遵循pTp 體系結(jié)構(gòu)的元件。
根據(jù)本發(fā)明的第六方面,提供了 一種用于元件或系統(tǒng)的鏈路層初始 化的方法,包含初始化物理層以允許在第一和第二代理之間電傳送信 息;通過交換鏈路層控制消息和初始化的多個控制遷移而執(zhí)行第一和第
二代理的鏈路層初始化;以及從10代理向CPU發(fā)送一個或多個控制遷 移以初始化遵循pTp體系結(jié)構(gòu)的元件。
根據(jù)本發(fā)明的第七方面,提供了一種用于元件或系統(tǒng)初始化的鏈路 層的方法,包含初始化物理層以允許第一和第二代理之間的信息的電 傳送;通過交換鏈路層控制消息和初始化的多個控制遷移而執(zhí)行第一和 第二代理的鏈路層初始化;以及從10代理向CPU發(fā)送一個或多個控制 遷移以初始化遵循pTp體系結(jié)構(gòu)的元件。
根據(jù)本發(fā)明的第八方面,提供了一種遵循pTp體系結(jié)構(gòu)并且便于初 始化的系統(tǒng),包含耦合到網(wǎng)絡(luò)結(jié)構(gòu)的多個處理器代理和存儲器代理; 物理層,初始化所述物理層以允許在耦合到所述網(wǎng)絡(luò)結(jié)構(gòu)上的多個處理 器代理或存儲器代理的第一和第二代理之間信息的電傳送;鏈路層初始 化,它被通過交換鏈路層控制消息和初始化的多個控制遷移而為第一和 第二代理初始化;以及所述物理層發(fā)送一個或多個控制遷移以初始化遵 循所述pTp體系結(jié)構(gòu)的元件。
根據(jù)本發(fā)明的第九方面,提供了一種在點到點體系結(jié)構(gòu)中導(dǎo)出多個 唯一節(jié)點標(biāo)識符(NodeID)的裝置,包含經(jīng)由遵循所述pTp體系結(jié)構(gòu) 的網(wǎng)絡(luò)結(jié)構(gòu)而耦合到單處理器上的芯片組;以及利用芯片組和單處理器 的默認(rèn)NodeID值的單處理器。
根據(jù)本發(fā)明的第十方面,提供了一種在點到點體系結(jié)構(gòu)中導(dǎo)出多個
唯一節(jié)點標(biāo)識符(NodeID)的系統(tǒng),包含多個硬件母線,定義由遵循 所述pTp體系結(jié)構(gòu)的元件讀取的NodeID以及初始化代表所述NodeID 的內(nèi)部寄存器;多個位,如果所述元件將支持多個代理,則將所述多個 位附加到所述內(nèi)部寄存器中的值上作為后綴,并且例示所需的唯一 NodeID值。
根據(jù)本發(fā)明的第十一方面,提供了一種在點到點體系結(jié)構(gòu)中導(dǎo)出多 個唯一節(jié)點標(biāo)識符(NodeID)的裝置,包含遵循所述pTp體系結(jié)構(gòu)的 元件;以及利用服務(wù)器管理信道設(shè)置具有唯一 NodeID值的元件的多個 寄存器的服務(wù)處理器。
根據(jù)本發(fā)明的第十二方面,提供了一種在點到點體系結(jié)構(gòu)中導(dǎo)出多 個唯一節(jié)點標(biāo)識符(NodeID)的芯片組,包含利用鏈路層參數(shù)交換協(xié) 議為多個處理器代理分配NodeID的芯片組;多個點到點鏈路,完成它 們的物理層初始化并向相關(guān)代理發(fā)送鏈路層控制遷移;所述多個處理器 代理經(jīng)由它們的相應(yīng)點到點鏈路向彼此并向所述芯片組發(fā)送空控制遷 移;芯片組,該芯片組發(fā)送指定芯片組的NodeID的預(yù)定交換參數(shù)控制 遷移以及其連接到所述處理器代理所通過的芯片組上的鏈路端口號;以 及所述處理器代理采用所述鏈路端口號作為其自身的NodeID。
根據(jù)本發(fā)明的第十三方面,提供了一種用于向點到點體系結(jié)構(gòu)系統(tǒng) 增加獨立資源的方法,包含無需重新引導(dǎo)即可向所述系統(tǒng)增加所述獨 立資源;以及通過利用鏈路層參數(shù)交換中的代理類型字段來識別所增加 的獨立資源的多個特性。
在說明書的結(jié)論部分中詳細(xì)地指出并且清楚地請求了主題。然而, 在閱讀附圖時,通過參考以下詳細(xì)說明可以更好地理解所請求的主題及
其目的、特征和優(yōu)點,該主題既關(guān)于結(jié)構(gòu)又關(guān)于操作方法,其中 圖1是由一個實施例所利用的協(xié)議體系結(jié)構(gòu)。 圖2是根據(jù)所請求主題所利用的物理互連的裝置方框圖。
圖3示出一個實施例所利用的用于鏈路層初始化的方法的流程圖。
圖4示出了由一個實施例所利用的POC值的方框圖。
圖5是由多個實施例所利用的系統(tǒng)的多個實施例。
圖6示出了由一個實施例所利用的用于節(jié)點標(biāo)識符分配的方框圖。
具體實施例方式
在下面的描述中描述了用于高速點到點網(wǎng)絡(luò)(pTp)的系統(tǒng)級初始 化的方法、裝置以及系統(tǒng),為了說明的目的,闡明了許多的細(xì)節(jié)以便提 供對本發(fā)明的徹底了解。然而,對所屬領(lǐng)域技術(shù)人員來說顯而易見的是, 為了實施本發(fā)明,這些細(xì)節(jié)不是必需的。當(dāng)前技術(shù)發(fā)展的一個領(lǐng)域涉及 可靠性、可用性以及可維護(hù)性(RAS)。如前面描述的,基于前端總線 (FSB)的現(xiàn)有系統(tǒng)不允許單獨總線元件的熱插撥。同樣,現(xiàn)有系統(tǒng)由 于傳送初始化值而苦于引腳限制,并且由于初始POC值不正確而苦于 執(zhí)行多次熱復(fù)位。
相反,所請求的主題通過利用鏈路層控制遷移來傳送初始化值而克 服了引腳限制,并且簡化了硬件。同樣,它考慮了靈活的系統(tǒng)/插槽 (socket)層參數(shù)以適合于諸如臺式機、便攜式設(shè)備、小型服務(wù)器、大 型服務(wù)器等之類的平臺以及諸如IA32/IPF處理器、存儲器控制器、10 集線器之類的元件類型的需要。所請求的主題還用正確的POC值集合 簡化了上電;因此,它避免了多次熱復(fù)位,并且改善了引導(dǎo)時間。在一 個實施例中,可消除用來保持新值的寄存器,該新值諸如復(fù)位期間驅(qū)動 的配置值(CVDR)以及復(fù)位期間獲取的配置值(CVCR)。
在一個實施例中,POC值包含以下內(nèi)容:平臺輸入時鐘對核心時鐘 比、啟動/禁用LT、可配置重新啟動、燒入初始化模式、禁用超線程、 系統(tǒng)BSP插槽指示以及平臺拓?fù)渲笖?shù)。
在一個實施例中,pTp體系結(jié)構(gòu)由Intel的公用系統(tǒng)接口 (CSI)定 義,并且支持分層協(xié)議方案,下一段中將詳細(xì)討論這個體系結(jié)構(gòu)。圖1 示出了基本網(wǎng)絡(luò)的高速緩存相關(guān)性協(xié)議的簡要視圖的一個例子。在2004 年提交的未決申請P18890中描述了高速緩存相關(guān)性協(xié)議的一個例子。
圖1是由一個實施例所利用的協(xié)議體系結(jié)構(gòu)。該體系結(jié)構(gòu)描述了耦
合到網(wǎng)絡(luò)結(jié)構(gòu)上的多個高速緩存代理以及本地代理。例如,該網(wǎng)絡(luò)結(jié)構(gòu) 遵循分層協(xié)議方案,并且可包含以下之一或所有鏈路層、物理層、協(xié) 議層、路由層、傳輸層。該結(jié)構(gòu)便于從一個協(xié)議(本地或高速緩存代理) 向點到點網(wǎng)絡(luò)的另一個協(xié)議傳送消息。在一個方面,這幅圖描述了一個 基本網(wǎng)絡(luò)的高速緩存相關(guān)性協(xié)議的簡要視圖。
圖2是根據(jù)請求的主題所利用的物理互連的裝置方框圖。在一個方 面,該裝置描述了用于高速緩存相關(guān)性的物理層、處理器的基于鏈路的 互連方案、芯片組和/或10橋接元件。例如,可由集成設(shè)備的每個物 理層來執(zhí)行物理互連。具體地說,物理層經(jīng)由包含兩個單向鏈路的物理
互連而提供兩個端口之間的通信。具體地說, 一個單向鏈路304從第一 集成設(shè)備的第一發(fā)送端口 350到第二集成設(shè)備的第一接收器端口 350。 同樣,第二個單向鏈路306從第二集成設(shè)備的第一發(fā)送端口 350到第一 集成設(shè)備的第一接收器端口 350。然而,所請求的主題不局限于兩個單 向鏈路。所屬領(lǐng)域技術(shù)人員應(yīng)當(dāng)明白,所請求的主題支持諸如雙向鏈路 等等之類的任何己知的信令技術(shù)。
圖3示出了由一個實施例所利用的鏈路層初始化的方法的流程圖。 為了開始物理層初始化,聲明(assert) 了一個信號,例如PWRGOOD 信號。接著,允許兩個相鄰元件之間的信息電傳送。接著,執(zhí)行CSI鏈 路層初始化,在鏈路的任一端傳送元件的性能和標(biāo)識符。由交換鏈路層 控制消息(也稱為控制遷移(flit))的元件來實現(xiàn)鏈路層初始化。利用 控制遷移所傳送的信息包括鏈路層、協(xié)議層的參數(shù)以及插槽和系統(tǒng)上的 CSI元件的初始化值。因而,關(guān)于鏈路層的參數(shù)包括遷移結(jié)構(gòu)(framing) 的值、錯誤檢測和恢復(fù)策略、交叉策略、虛通道、流控制能力等等。關(guān) 于協(xié)議層的參數(shù)包括相鄰的節(jié)點標(biāo)識符、代理類型、遠(yuǎn)程端口號、簡檔 從屬域等等。關(guān)于插槽/系統(tǒng)層的參數(shù)包括POC值、測試和調(diào)試參數(shù)、 系統(tǒng)配置和初始化參數(shù)等等。在一個實施例中, 一些交換的參數(shù)可由多 于一個邏輯層來使用。 一些參數(shù)可由系統(tǒng)初始化的稍后階段中的固件所 使用。
如前面所論述的,控制遷移簡化了元件和系統(tǒng)初始化。與鏈路初始
化相關(guān)的控制遷移之后是一個或多個用于CSI元件或系統(tǒng)的初始化的控
制遷移。這個交換不必在所有鏈路上發(fā)生。預(yù)期的流是從IO代理向CPU 的,但是CPU向10代理的流也是可能的,例如,為10代理所使用的 CPU插槽上的南橋存在指示器。本發(fā)明論述了 CSI插槽/系統(tǒng)參數(shù)的初
始化,其對于以下方面是有用的
處理器固件(處理器抽象層(PAL)或微代碼)以及系統(tǒng)固件(系 統(tǒng)抽象層(SAL)或基本輸入輸出系統(tǒng)(BIOS))。 所交換參數(shù)的下列例子包含
i) 利用引腳硬件典型地在基于FSB的系統(tǒng)上傳送的SBSP指示器、 內(nèi)置自測試(BIST)、處理器對平臺時鐘比、外部固件認(rèn)證、燒入測試、 幫助系統(tǒng)測試及調(diào)試的參數(shù)等等。
ii) 核心的指示,應(yīng)該保持待用以便避免損壞核心或?qū)崿F(xiàn)特許限制、 按需容量的特征等等。
iii) 平臺拓?fù)渲笖?shù),其可由固件來使用以便利用來自該固件、非易 失性存儲器(NVM)或其他平臺資源的數(shù)據(jù)而獲得用于對路由選擇表及 其他互連結(jié)構(gòu)編程的值。
iv) 向存儲器控制器的保存存儲器內(nèi)容的指示。
v) 向IO代理的指示,該指示是處理器插槽包括橋、集線器以及自 IO代理邏輯下行的設(shè)備。
圖4示出了由一個實施例使用的POC值的方框圖。圖4描述了一 個基于系統(tǒng)簡檔類型值的值來定義POC值的例子。
在現(xiàn)有技術(shù)的系統(tǒng)中,由于引腳的缺乏,元件從一個值集開始,固 件從平臺資源中讀取適當(dāng)?shù)闹?,用所希望的值重新編程,然后?zhí)行熱復(fù) 位以激活新的值集。
相反,如前面所論述的,所請求的主題便于利用正確的POC值來 最小化熱復(fù)位。在一個實施例中,以一種實現(xiàn)相關(guān)方式來得出該POC 值。 一種可能的機制是10代理從母線(strap)中導(dǎo)出值然后將它們傳 送給處理器。也可能是10代理從其本地NVM或固件空間中獲得值, 或者利用CSI鏈路初始化之前存在的單獨協(xié)議從下行芯片組中獲得值。
在一個實施例中,POC值包含以下內(nèi)容:平臺輸入時鐘對核心時鐘 比、啟動/禁用LT、可配置重新啟動、燒入初始化模式、禁用超線程、 系統(tǒng)BSP插槽指示以及平臺拓?fù)渲笖?shù)。
圖5描述了具有一個或多個處理器的點到點系統(tǒng)。所請求的主題包 含幾個實施例, 一個實施例具有一個處理器506, 一個實施例具有兩個 處理器(P) 502,以及一個實施例具有四個處理器(P) 504。在實施例 502和504中,每個處理器耦合到存儲器(M),并且經(jīng)由網(wǎng)絡(luò)結(jié)構(gòu)連接 到每個處理器,該網(wǎng)絡(luò)結(jié)構(gòu)包含以下之一或所有鏈路層、協(xié)議層、路 由層、傳輸層以及物理層。該結(jié)構(gòu)便于從一個協(xié)議(本地或高速緩存代 理)向點到點網(wǎng)絡(luò)的另一個協(xié)議傳送消息。如前面所述的,網(wǎng)絡(luò)結(jié)構(gòu)的 系統(tǒng)支持關(guān)于圖1—4所描述的任意實施例。
對于實施例506,單處理器P經(jīng)由對應(yīng)于分層協(xié)議方案的網(wǎng)絡(luò)結(jié)構(gòu) 鏈路而耦合到圖形及存儲控制,描述成IO+M+F。圖形及存儲控制耦合 到存儲器,并且能夠經(jīng)由PCI Express鏈路接收和發(fā)送。同樣,圖形及 存儲控制耦合到ICH。此外,ICH經(jīng)由LPC總線耦合到固件集線器 (FWH)。同樣,對于不同的單處理器實施例,該處理器將具有外部網(wǎng) 絡(luò)結(jié)構(gòu)鏈路。該處理器可以擁有具有分離或共享高速緩沖存儲器的多個 核心,每個核心耦合到Xbar路由器和非路由全局鏈路接口。從而,外 部網(wǎng)絡(luò)結(jié)構(gòu)鏈路耦合到Xbar路由器和非路由全局鏈路接口 。
圖6示出了由一個實施例所使用的用于節(jié)點標(biāo)識符分配的方框圖。 在一個實施例中,需要唯一的NodeID以便在系統(tǒng)中的CSI代理之間進(jìn) 行通信。存在幾個實施例,用于在基于CSI的系統(tǒng)中用于導(dǎo)出唯一的 NodeID,比如
i) 單處理器系統(tǒng)配置可采用芯片組和處理器元件的默認(rèn)NodeID值。
ii) 平臺可為由CSI元件硬件所讀取的并接著用于初始化表示NodeID 的內(nèi)部寄存器的NodeID值提供硬件母線。如果CSI元件擁有多個代理, 比如處理器、存儲器、配置代理,則它可以在硬件母線值上后綴一些位, 并且用具體例證說明所需的唯一 NodeID值。
iii) 服務(wù)處理器可利用比如JTAG或SMBUS之類的服務(wù)器管理信
道用唯一 NodeID值來設(shè)置元件的寄存器。
iv)芯片組可利用鏈路層參數(shù)交換協(xié)議來為處理器代理分配 NodeID,如圖6所示。所有鏈路完成它們的物理層初始化,并且將 i^^^F^/""鏈路層控制遷移發(fā)送給它們的鄰居。然后CSI處理器代理 602和604保持經(jīng)由它們相應(yīng)的CSI鏈路向彼此以及向芯片組606發(fā)送 空控制遷移(M///Control flits)。負(fù)責(zé)給處理器代理分配NodeID的芯片 組發(fā)送參數(shù)交換參數(shù)0控制遷移,該參數(shù)交換參數(shù)0控制遷移指定了芯 片組的NodeID,并且指定了其連接到處理器代理所通過的芯片組上的 鏈路端口號。處理器采用所提供的端口號作為其自身的NodeID。例如, 如果芯片組具有兩個端口號0和1,則處理器代理之一將得出一個為0 的NodeID和另一個為1的NodeID。芯片組同樣可默認(rèn)這個范圍之外的 —個NodeID值,例如8。 一旦處理器得出它們的NodeID,它們就可 在鏈路初始化中進(jìn)一步進(jìn)行。它們可用它們的得出的NodeID來響應(yīng)芯 片組,并繼續(xù)處理器到處理器鏈路的初始化。無須任何用于指定NodeID 值的硬件母線即可實現(xiàn)圖2所示的系統(tǒng)配置。
雖然已經(jīng)參考具體實施例描述了所請求的主題,但是這個描述不意 味著解釋成限制的意義。根據(jù)參考所請求的主題的描述,對于所屬領(lǐng)域 技術(shù)人員來說,所公開實施例的各種修改以及所請求主題的替換實施例 都是顯而易見的。因此,可預(yù)料到,在不脫離所附權(quán)利要求書中定義的 所請求主題的精神或范圍時可作出這樣的修改。
權(quán)利要求
1.一種在點到點體系結(jié)構(gòu)中導(dǎo)出多個唯一節(jié)點標(biāo)識符(NodeID)的裝置,包含經(jīng)由遵循所述pTp體系結(jié)構(gòu)的網(wǎng)絡(luò)結(jié)構(gòu)而耦合到單處理器上的芯片組;以及利用芯片組和單處理器的默認(rèn)NodeID值的單處理器。
2. —種在點到點體系結(jié)構(gòu)中導(dǎo)出多個唯一節(jié)點標(biāo)識符(NodeID) 的系統(tǒng),包含多個硬件母線,定義由遵循所述pTp體系結(jié)構(gòu)的元件讀取的NodeID 以及初始化代表所述NodeID的內(nèi)部寄存器;多個位,如果所述元件將支持多個代理,則將所述多個位附加到所 述內(nèi)部寄存器中的值上作為后綴,并且例示所需的唯一NodeID值。
3. —種在點到點體系結(jié)構(gòu)中導(dǎo)出多個唯一節(jié)點標(biāo)識符(NodeID) 的裝置,包含遵循所述pTp體系結(jié)構(gòu)的元件;以及利用服務(wù)器管理信道設(shè)置具有唯一 NodeID值的元件的多個寄存器 的服務(wù)處理器。
4. 根據(jù)權(quán)利要求3所述的裝置,其中所述服務(wù)器管理信道是JTAG 或者SMBUS。
5. —種在點到點體系結(jié)構(gòu)中導(dǎo)出多個唯一節(jié)點標(biāo)識符(NodeID) 的芯片組,包含利用鏈路層參數(shù)交換協(xié)議為多個處理器代理分配NodeID的芯片組;多個點到點鏈路,完成它們的物理層初始化并向相關(guān)代理發(fā)送鏈路 層控制遷移;所述多個處理器代理經(jīng)由它們的相應(yīng)點到點鏈路向彼此并向所述芯 片組發(fā)送空控制遷移; 芯片組,該芯片組發(fā)送指定芯片組的NodeID的預(yù)定交換參數(shù)控制 遷移以及其連接到所述處理器代理所通過的芯片組上的鏈路端口號;以 及所述處理器代理采用所述鏈路端口號作為其自身的NodeID。
全文摘要
本發(fā)明涉及點到點體系結(jié)構(gòu)中的系統(tǒng)和元件的多種初始化技術(shù),該技術(shù)考慮了靈活的系統(tǒng)/插槽層參數(shù)適合于諸如臺式機、便攜式、小型服務(wù)器、大型服務(wù)器的平臺以及諸如IA32/IPF處理器、存儲器控制器、IO集線器的元件類型的需要。該技術(shù)用POC值的正確集合簡化了上電,避免了多次熱復(fù)位和改善了引導(dǎo)時間。可清除寄存器以保持新值,該新值是諸如復(fù)位期間驅(qū)動的配置值(CVDR)以及復(fù)位期間獲取的配置值之類的值。例如,POC值可來自于以下內(nèi)容平臺輸入時鐘與核心時鐘比、啟動/禁用LT、可配置重新啟動、燒入初始化模式、禁用超線程、系統(tǒng)BSP插槽指示以及平臺拓?fù)渲笖?shù)。
文檔編號G06F15/177GK101174255SQ20071018872
公開日2008年5月7日 申請日期2005年12月13日 優(yōu)先權(quán)日2004年12月13日
發(fā)明者A·庫馬, J·亞亞辛哈, M·納奇穆圖, M·阿亞, P·曼納瓦, S·陳努帕蒂 申請人:英特爾公司