高速串行總線技術(shù)發(fā)展與應(yīng)用分析
除了更有效的流量控制外,將控制符嵌入進(jìn)數(shù)據(jù)包使得RapidIO具有PCIe和以太網(wǎng)目前無(wú)法提供的能力??刂品梢杂脕?lái)低時(shí)延和低抖動(dòng)地在整個(gè)RapidIO系統(tǒng)中分配事件,如圖2所示。
圖2:RapidIO組播事件控制符和PCIe DLLP。
這一功能可以支持將公共實(shí)時(shí)時(shí)鐘信號(hào)分配到多個(gè)端點(diǎn)或?yàn)樘炀€系統(tǒng)分配幀信號(hào)等應(yīng)用,還可以用于發(fā)送其它系統(tǒng)事件信息,以及實(shí)現(xiàn)多處理器系統(tǒng)中的調(diào)試。如圖2 所示,PCIe的DLLP在每次通過(guò)交換機(jī)傳送時(shí)都會(huì)引入很大的時(shí)延和抖動(dòng)。相反,RapidIO協(xié)議允許在整個(gè)RapidIO架構(gòu)中分配信號(hào)時(shí)具有低于 10個(gè)單位間隔(UI)的抖動(dòng)性能和每次交換低于50ns的時(shí)延性能,并且與數(shù)據(jù)包業(yè)務(wù)無(wú)關(guān)。
PCIe和以太網(wǎng)可以選擇擴(kuò)展各自的規(guī)范以允許事件獲得低時(shí)延的分配。引入類(lèi)似控制符的概念對(duì)以太網(wǎng)來(lái)說(shuō)是很大的進(jìn)步。以太網(wǎng)生態(tài)系統(tǒng)下已有幾家組織正在改進(jìn)存儲(chǔ)應(yīng)用中的以太網(wǎng)能力,其中就可能需要用到類(lèi)似控制符的概念。以太網(wǎng)還準(zhǔn)備采用簡(jiǎn)單的XON/XOFF流量控制來(lái)進(jìn)一步增強(qiáng)性能。
PCIe目前不允許將DLLP嵌入進(jìn)TLP,因?yàn)檫@一概念不能兼容傳統(tǒng)的PCI/X總線操作。嵌入TLP的DLLP會(huì)產(chǎn)生沒(méi)有數(shù)據(jù)可以放置到傳統(tǒng)總線上的周期。PCIe端點(diǎn)可以工作在存儲(chǔ)-轉(zhuǎn)發(fā)模式,確保數(shù)據(jù)包在轉(zhuǎn)發(fā)給總線之前全部接收到,代價(jià)是時(shí)延的顯著增加和吞吐量的降低。由于PCIe主要用于單處理器系統(tǒng)的板上互連,并且一直需要保持與傳統(tǒng)總線標(biāo)準(zhǔn)的兼容,PCIe陣營(yíng)不太可能允許DLLP被嵌入進(jìn)TLP。
帶寬選項(xiàng)
除了流量控制和鏈路維護(hù)外,以太網(wǎng)、PCIe和RapidIO在物理/鏈路層方面的最顯著區(qū)別是所能支持的帶寬選項(xiàng)。以太網(wǎng)帶寬具有一代增加10倍的悠久歷史。以太網(wǎng)目前工作在 10Mbps、100Mbps、1Gbps和10Gbps。一些專(zhuān)用器件甚至支持2Gbps(2.5GBaud)。下一代以太網(wǎng)將能工作在40Gbps和 /或100Gbps。
PCIe和RapidIO采用了不同的方法,因?yàn)榘迳?、板間和設(shè)備間互連要求功率與數(shù)據(jù)流匹配。因此與以太網(wǎng)相比, PCIe和RapidIO支持更多的通道速率和通道帶寬組合。PCIe 2.0允許通道工作在2Gbps或4Gbps(2.5和5Gbaud),而RapidIO支持1、2、2.5、4和5Gbps(1.25、2.5、 3.125、5和6.25Gbaud)的通道速率。PCIe和RapidIO都支持從單個(gè)通道到16個(gè)通道的通道帶寬組合。PCIe規(guī)范中還支持32通道端口。對(duì)于給定的通道帶寬,RapidIO端口可以提供多于或少于PCIe的帶寬,因此允許系統(tǒng)設(shè)計(jì)人員調(diào)整系統(tǒng)中用于數(shù)據(jù)流的功率大小。
傳輸層
RapidIO和以太網(wǎng)標(biāo)準(zhǔn)都是模糊拓?fù)浣Y(jié)構(gòu)。任何端點(diǎn)組都可以用任何拓?fù)浣Y(jié)構(gòu)連接,包括環(huán)形、樹(shù)形、網(wǎng)狀、超立方體以及超復(fù)雜網(wǎng)絡(luò)等更深?yuàn)W的幾何圖形。數(shù)據(jù)包則根據(jù)它們的網(wǎng)絡(luò)地址在這些拓?fù)渲型瓿陕酚?。互?lián)網(wǎng)協(xié)議(IP)地址就是一種以太網(wǎng)網(wǎng)絡(luò)地址。 RapidIO網(wǎng)絡(luò)地址被稱(chēng)為目的識(shí)別符,簡(jiǎn)稱(chēng)destID。
與拓?fù)錈o(wú)關(guān)的(Topology-agnostic)協(xié)議可實(shí)現(xiàn)各種資源備份和冗余功能。例如,一些系統(tǒng)使用N+1備份策略來(lái)確保高可用性和可靠性,而不用顯著增加硬件數(shù)量。(備份功能將未使用的設(shè)備作為在用設(shè)備的備份。在N+1 備份機(jī)制時(shí),N個(gè)元件有一個(gè)共同的備份,因此當(dāng)N個(gè)元件中的一個(gè)發(fā)生故障時(shí)系統(tǒng)可以繼續(xù)工作。這個(gè)策略也被稱(chēng)為1:N備份)。支持不同拓?fù)溥x項(xiàng)還允許系統(tǒng)設(shè)計(jì)人員通過(guò)匹配數(shù)據(jù)路徑和數(shù)據(jù)流程消除系統(tǒng)中的性能瓶頸。系統(tǒng)擴(kuò)展和演變?cè)赗apidIO和以太網(wǎng)絡(luò)中是不受約束的。
相反,PCIe在頂層支持帶單個(gè)根聯(lián)合體(Root Complex)的樹(shù)狀結(jié)構(gòu)。PCIe還使用了多種路由算法,具體取決于TLP類(lèi)型。PCIe支持的單路拓?fù)涫莻鹘y(tǒng)PCI/X總線支持的一部分。PCIe 標(biāo)準(zhǔn)已經(jīng)用多根I/O虛擬化(MRIOV)進(jìn)行了擴(kuò)展,進(jìn)一步增加了PCIe可以支持的物理拓?fù)鋽?shù)量。然而,由于MRIOV實(shí)現(xiàn)代價(jià)高,是否能被PCIe 生態(tài)系統(tǒng)采納還是未知數(shù)。PCIe元件還支持非透明橋接(NTB)功能,因此一個(gè)PCIe層可以訪問(wèn)另一個(gè)PCIe層中的確定存儲(chǔ)范圍。這種方法的系統(tǒng)可靠性和可用性將在后文作進(jìn)一步闡述。
許多基于以太網(wǎng)的系統(tǒng)功能也受限于樹(shù)形結(jié)構(gòu)。例如,許多以太網(wǎng)實(shí)現(xiàn)使用不同生成樹(shù)協(xié)議(STP)將可用鏈路組減少到樹(shù)形使用鏈路。作為將以太網(wǎng)擴(kuò)展到存儲(chǔ)網(wǎng)絡(luò)的一部分努力,協(xié)議中規(guī)定可以為以太網(wǎng)支持的4096個(gè)虛擬通道中的每個(gè)通道創(chuàng)建生成樹(shù),這樣可以允許同時(shí)使用更多的鏈路。然而,支持4096個(gè)虛擬通道會(huì)增加交換的復(fù)雜性,可能需要更多的緩存,并增加通過(guò)交換機(jī)的時(shí)延。
邏輯層
RapidIO、PCIe和以太網(wǎng)在邏輯層方面也有多個(gè)差異較大的地方。最明顯的區(qū)別是所支持的語(yǔ)義
評(píng)論