Kwok Kong在IDT白皮書中描述了使用基于標(biāo)準(zhǔn)的PCI Express多端口作為系統(tǒng)互連的多對(duì)等系統(tǒng)。該白皮書描述了根處理器和端點(diǎn)處理器中存在的不同地址域,內(nèi)存映射管理,枚舉和初始化,對(duì)等通信機(jī)制,中斷和錯(cuò)誤報(bào)告以及可能的冗余拓?fù)洹?/p>
系統(tǒng)架構(gòu)
圖1顯示了使用PCIe作為系統(tǒng)互連的多對(duì)等系統(tǒng)拓?fù)洹P連接到PCIe交換機(jī)的單個(gè)上游端口(UP)。RP與其他任何PCI系統(tǒng)一樣,負(fù)責(zé)系統(tǒng)的初始化和枚舉過(guò)程。多端口PCIe交換機(jī)用于連接系統(tǒng)中的多個(gè)端點(diǎn)處理器(EP)。EP是一種處理器,其PCIe接口之一配置為PCIe端點(diǎn)。
使用PCIe作為系統(tǒng)互連的多對(duì)等系統(tǒng)拓?fù)?/p>
根處理器
一個(gè)標(biāo)準(zhǔn)的基于x86的PC用作RP。RP使用帶有nVidia nForce4 SLIchipset的AMD Athlon64 CPU來(lái)支持PCIe接口。一個(gè)PCIe插槽用于連接多端口PCIe交換器。RP的系統(tǒng)框圖如圖2所示。
RP系統(tǒng)框圖PCIe交換機(jī)
IDT89EBHPES64H16評(píng)估板(以下稱為EB64H16)用作多端口PCIe交換機(jī)模塊。EB64H16的系統(tǒng)框圖如圖3所示。評(píng)估板上有一個(gè)IDtT89HPES64H16PCIe開(kāi)關(guān)(以下稱為PES64H16)。EB64H16板上有16個(gè)PCIe連接器。端口可以??配置為x4或x8端口。當(dāng)所有端口都配置為x8時(shí),只有78個(gè)PCIe連接器用于支持x8配置中的8個(gè)端口。上游端口通過(guò)兩根x4 infiniband電纜連接到RP。RP直接插入PCIe連接器。
多端口PCIe交換模塊
端點(diǎn)處理器
基于x86的EP處理器是AMD Athlon64 CPU,具有nVidia nForce4 SLI芯片組來(lái)支持PCIe接口。每臺(tái)基于x86的PC通過(guò)IDT PES24NT3 PCIe域間交換機(jī)的非透明橋(NTB)端口連接到多端口PCIe交換機(jī)的一個(gè)下游端口。EP處理器系統(tǒng)如圖4所示。請(qǐng)注意,NTB的內(nèi)部端點(diǎn)連接到端點(diǎn)處理器,而外部端點(diǎn)連接到上述多端口PCIe交換機(jī)。
EP處理器框圖
本文檔介紹了支持PCIe系統(tǒng)互連的軟件體系結(jié)構(gòu)。該軟件已實(shí)現(xiàn),并且在Linux下使用x86 CPU作為根處理器,在x86 CPU和IDT PES24NT3域內(nèi)交換機(jī)作為端點(diǎn)處理器的情況下運(yùn)行。可從IDT獲得軟件源代碼。
該軟件被實(shí)現(xiàn)為在Linux內(nèi)核空間中運(yùn)行的設(shè)備驅(qū)動(dòng)程序和模塊。該軟件分為三層,以分隔不同的軟件功能并最大程度地重用該軟件。功能服務(wù)層是上層。它提供了對(duì)操作系統(tǒng)和上層應(yīng)用程序可見(jiàn)的功能服務(wù)。當(dāng)前版本的軟件中已實(shí)現(xiàn)了多種功能服務(wù):以太網(wǎng)功能服務(wù)為系統(tǒng)提供了虛擬以太網(wǎng)接口,原始數(shù)據(jù)功能服務(wù)提供了EP和RPm之間的用戶數(shù)據(jù)傳輸,而統(tǒng)計(jì)功能服務(wù)提供了以下功能:收集流量統(tǒng)計(jì)信息以進(jìn)行管理和診斷。消息幀層包含消息幀服務(wù),該消息幀服務(wù)為所有功能服務(wù)提供了公共消息封裝和解封裝層。每當(dāng)發(fā)現(xiàn)新的端點(diǎn)處理器時(shí),它還會(huì)通知所有其他端點(diǎn)處理器。傳輸服務(wù)層使用PCIe接口處理端點(diǎn)處理器和根處理器之間的實(shí)際數(shù)據(jù)傳輸。傳輸服務(wù)是特定于Endpoint Processor的。此版本的系統(tǒng)互連軟件支持基于x86的根處理器和端點(diǎn)處理器。傳輸服務(wù)是特定于Endpoint Processor的。此版本的系統(tǒng)互連軟件支持基于x86的根處理器和端點(diǎn)處理器。傳輸服務(wù)是特定于Endpoint Processor的。此版本的系統(tǒng)互連軟件支持基于x86的根處理器和端點(diǎn)處理器。
除了處理器間通信應(yīng)用程序之外,該軟件還演示了現(xiàn)在可以使用標(biāo)準(zhǔn)PCIe交換機(jī)實(shí)現(xiàn)I / O共享。多個(gè)端點(diǎn)處理器和根處理器共享單個(gè)以太網(wǎng)接口已實(shí)現(xiàn)并正常運(yùn)行。
地址轉(zhuǎn)換單元用于隔離不同的PCIe地址域并在其之間提供橋梁。freeQ和post Q結(jié)構(gòu)用作消息傳輸協(xié)議的一部分。
該軟件版本奠定了使用PCIe接口作為系統(tǒng)互連來(lái)構(gòu)建更復(fù)雜的系統(tǒng)的基礎(chǔ)。該軟件采用模塊化設(shè)計(jì),可在不更改現(xiàn)有軟件模塊的情況下添加功能服務(wù)和其他Endpoint Processor支持。如今,可以使用PCIe作為系統(tǒng)互連來(lái)構(gòu)建復(fù)雜的系統(tǒng),例如嵌入式計(jì)算,支持I / O共享的刀片服務(wù)器以及通信和存儲(chǔ)系統(tǒng)。
編輯:hfy
-
Linux
+關(guān)注
關(guān)注
87文章
11454瀏覽量
212718 -
PCI
+關(guān)注
關(guān)注
5文章
678瀏覽量
131401 -
交換機(jī)
+關(guān)注
關(guān)注
21文章
2719瀏覽量
101319 -
PCIe
+關(guān)注
關(guān)注
16文章
1320瀏覽量
84634
發(fā)布評(píng)論請(qǐng)先 登錄
PCI Express標(biāo)準(zhǔn)技術(shù)性概述
CPU如何通過(guò)PCI Express訪問(wèn)板上的系統(tǒng)?
PCI Express在嵌入式系統(tǒng)中有哪些應(yīng)用?
如何利用多端口存儲(chǔ)器設(shè)計(jì)多機(jī)系統(tǒng)?
PCI Express的基本工作原理
IDT推出新系列PCI Express (PCIe) 系統(tǒng)互
PCI Express插槽,什么是PCI Express插槽
采用中檔FPGA設(shè)計(jì)面向PCI Express系統(tǒng)的解決方案
PCI Express總線
IDT宣布推出PCI Express Gen2 系統(tǒng)互連交換
嵌入式系統(tǒng)的PCI Express時(shí)鐘分配

基于PCI Express非透明橋?qū)崿F(xiàn)多主機(jī)系統(tǒng)的設(shè)計(jì)方案研究

PCI Express系統(tǒng)中DMA的基本功能介紹
PCI Express交換機(jī)實(shí)測(cè)系統(tǒng)數(shù)據(jù)傳輸性能

PCI Express接口標(biāo)準(zhǔn)的特點(diǎn)及在FPGA中的應(yīng)用

評(píng)論