Kwok Kong在IDT白皮書中描述了使用基于標準的PCI Express多端口作為系統互連的多對等系統。該白皮書描述了根處理器和端點處理器中存在的不同地址域,內存映射管理,枚舉和初始化,對等通信機制,中斷和錯誤報告以及可能的冗余拓撲。
系統架構
圖1顯示了使用PCIe作為系統互連的多對等系統拓撲。RP連接到PCIe交換機的單個上游端口(UP)。RP與其他任何PCI系統一樣,負責系統的初始化和枚舉過程。多端口PCIe交換機用于連接系統中的多個端點處理器(EP)。EP是一種處理器,其PCIe接口之一配置為PCIe端點。
使用PCIe作為系統互連的多對等系統拓撲
根處理器
一個標準的基于x86的PC用作RP。RP使用帶有nVidia nForce4 SLIchipset的AMD Athlon64 CPU來支持PCIe接口。一個PCIe插槽用于連接多端口PCIe交換器。RP的系統框圖如圖2所示。
RP系統框圖PCIe交換機
IDT89EBHPES64H16評估板(以下稱為EB64H16)用作多端口PCIe交換機模塊。EB64H16的系統框圖如圖3所示。評估板上有一個IDtT89HPES64H16PCIe開關(以下稱為PES64H16)。EB64H16板上有16個PCIe連接器。端口可以??配置為x4或x8端口。當所有端口都配置為x8時,只有78個PCIe連接器用于支持x8配置中的8個端口。上游端口通過兩根x4 infiniband電纜連接到RP。RP直接插入PCIe連接器。
多端口PCIe交換模塊
端點處理器
基于x86的EP處理器是AMD Athlon64 CPU,具有nVidia nForce4 SLI芯片組來支持PCIe接口。每臺基于x86的PC通過IDT PES24NT3 PCIe域間交換機的非透明橋(NTB)端口連接到多端口PCIe交換機的一個下游端口。EP處理器系統如圖4所示。請注意,NTB的內部端點連接到端點處理器,而外部端點連接到上述多端口PCIe交換機。
EP處理器框圖
本文檔介紹了支持PCIe系統互連的軟件體系結構。該軟件已實現,并且在Linux下使用x86 CPU作為根處理器,在x86 CPU和IDT PES24NT3域內交換機作為端點處理器的情況下運行??蓮腎DT獲得軟件源代碼。
該軟件被實現為在Linux內核空間中運行的設備驅動程序和模塊。該軟件分為三層,以分隔不同的軟件功能并最大程度地重用該軟件。功能服務層是上層。它提供了對操作系統和上層應用程序可見的功能服務。當前版本的軟件中已實現了多種功能服務:以太網功能服務為系統提供了虛擬以太網接口,原始數據功能服務提供了EP和RPm之間的用戶數據傳輸,而統計功能服務提供了以下功能:收集流量統計信息以進行管理和診斷。消息幀層包含消息幀服務,該消息幀服務為所有功能服務提供了公共消息封裝和解封裝層。每當發現新的端點處理器時,它還會通知所有其他端點處理器。傳輸服務層使用PCIe接口處理端點處理器和根處理器之間的實際數據傳輸。傳輸服務是特定于Endpoint Processor的。此版本的系統互連軟件支持基于x86的根處理器和端點處理器。傳輸服務是特定于Endpoint Processor的。此版本的系統互連軟件支持基于x86的根處理器和端點處理器。傳輸服務是特定于Endpoint Processor的。此版本的系統互連軟件支持基于x86的根處理器和端點處理器。
除了處理器間通信應用程序之外,該軟件還演示了現在可以使用標準PCIe交換機實現I / O共享。多個端點處理器和根處理器共享單個以太網接口已實現并正常運行。
地址轉換單元用于隔離不同的PCIe地址域并在其之間提供橋梁。freeQ和post Q結構用作消息傳輸協議的一部分。
該軟件版本奠定了使用PCIe接口作為系統互連來構建更復雜的系統的基礎。該軟件采用模塊化設計,可在不更改現有軟件模塊的情況下添加功能服務和其他Endpoint Processor支持。如今,可以使用PCIe作為系統互連來構建復雜的系統,例如嵌入式計算,支持I / O共享的刀片服務器以及通信和存儲系統。
編輯:hfy
-
Linux
+關注
關注
87文章
11292瀏覽量
209332 -
PCI
+關注
關注
4文章
663瀏覽量
130251 -
交換機
+關注
關注
21文章
2637瀏覽量
99535 -
PCIe
+關注
關注
15文章
1234瀏覽量
82584
發布評論請先 登錄
相關推薦
評論