高速串行總線技術(shù)發(fā)展與應(yīng)用分析
流量控制
流量控制貫穿互連規(guī)范的物理、傳輸和邏輯層。流量控制功能非常重要,可確保系統(tǒng)在各種條件下都能正確和魯棒性地操作,這些條件包括部分故障和過載。流量控制機(jī)制允許盡可能高效和完整地使用可用帶寬。為了盡量減少由于超配高頻串行鏈路而浪費(fèi)的帶寬和功率,流量控制策略正變得越來越重要。
目前還不可能討論統(tǒng)一的以太網(wǎng)流量控制策略,因?yàn)樵S多不相干的以太網(wǎng)消息處理標(biāo)準(zhǔn)都有特殊協(xié)議流量控制策略來避免丟包。一般來說,這些標(biāo)準(zhǔn)的流量控制策略基于的是檢測(cè)到丟包時(shí)降低傳送速率。流量控制策略一般用軟件實(shí)現(xiàn),并且要求很強(qiáng)的緩存能力來實(shí)現(xiàn)重傳。
PCIe流量控制僅限于物理層。PCIe流量控制機(jī)制基礎(chǔ)是跟蹤數(shù)據(jù)包頭和數(shù)據(jù)塊的信用,并且對(duì)投遞、非投遞和完整事務(wù)的跟蹤是分開的。
RapidIO 規(guī)定了物理層和邏輯層的流量控制機(jī)制。物理層流量控制機(jī)制設(shè)計(jì)用于處理幾個(gè)毫秒周期的擁塞。在物理層,RapidIO提供PCIe風(fēng)格的流量控制,并輔之以簡(jiǎn)單的重傳機(jī)制。簡(jiǎn)單的重傳機(jī)制能很高效地實(shí)現(xiàn),與PCIe風(fēng)格的流量控制相比性能損失最少。RapidIO物理層流量控制還包括基于虛擬輸出隊(duì)列的反壓機(jī)制。這種在RapidIO 2.0中引入的機(jī)制允許交換機(jī)和端點(diǎn)了解哪些目的地是擁塞的,并將業(yè)務(wù)發(fā)送到未擁塞的目的地。這種特性可以實(shí)現(xiàn)分布式?jīng)Q策制定,確保可用的網(wǎng)絡(luò)帶寬得到最大化的利用。決策制定的時(shí)延很低,因?yàn)閾砣畔⑹褂每刂品M(jìn)行交換,而這些控制符如前所述可以被嵌入RapidIO包。
虛擬的輸出隊(duì)列反壓機(jī)制如圖4所示。
圖4:RapidIO虛擬輸出隊(duì)列反壓機(jī)制。
在圖的上面部分,數(shù)據(jù)源發(fā)送數(shù)據(jù)的速率比端點(diǎn)(EP)1接收數(shù)據(jù)包的速率快得多,這將導(dǎo)致一個(gè)擁塞狀態(tài)控制符由EP1發(fā)送到交換機(jī)2,它級(jí)聯(lián)在消息后面返回給源端。當(dāng)交換機(jī)2在與EP1連接的端口上檢測(cè)到擁塞時(shí),交換機(jī)2也能產(chǎn)生擁塞狀態(tài)控制符。一旦源接收到擁塞狀態(tài)控制符,它就開始將數(shù)據(jù)包發(fā)送給EP2,并降低到達(dá)EP1的數(shù)據(jù)包發(fā)送速率。
RapidIO的邏輯層流量控制機(jī)制設(shè)計(jì)用于避免網(wǎng)絡(luò)中的擁塞,方法是計(jì)量發(fā)到網(wǎng)絡(luò)的確認(rèn)數(shù)據(jù)包數(shù)量,從而在網(wǎng)絡(luò)級(jí)管理擁塞。這種方法與基于以太網(wǎng)的軟件協(xié)議非常相似。針對(duì)特殊流程的數(shù)據(jù)包接納可以通過XON/XOFF類協(xié)議,以及基于速率和信用的流量控制進(jìn)行管理。也許最重要的是,這些流量控制機(jī)制也能用于應(yīng)用層來提高軟件應(yīng)用性能。最好的一點(diǎn)是,這些流量控制機(jī)制可用硬件實(shí)現(xiàn),從而釋放寶貴的CPU資源,為用戶提供更高的價(jià)值。RapidIO流量控制機(jī)制可以確保基于RapidIO的系統(tǒng)能以高效、可預(yù)測(cè)的方式使用可用帶寬。
本文小結(jié)
以太網(wǎng)、PCIe和RapidIO都是基于相似的SerDes技術(shù),因此SerDes技術(shù)不再是這些技術(shù)的差異點(diǎn),而是它們使用可用帶寬的方式。每種技術(shù)都有最適合的專門應(yīng)用領(lǐng)域。
以太網(wǎng)最適合地理上分散的、具有長(zhǎng)時(shí)延并且??絡(luò)配置的網(wǎng)絡(luò)。PCIe則能對(duì)單板上的分層總線結(jié)構(gòu)提供最理想的支持。這兩種技術(shù)都可用于板上、板間和設(shè)備間通信,而且在許多應(yīng)用場(chǎng)合被同時(shí)用于同一系統(tǒng)。RapidIO能將這兩種互連的優(yōu)勢(shì)結(jié)合到單個(gè)互連中,并可顯著節(jié)省功率和成本。
RapidIO 是嵌入式系統(tǒng)的最佳互連選擇。RapidIO具有與PCIe和以太網(wǎng)相似的功能,并具有其它互連技術(shù)無法復(fù)制的功能,如:低時(shí)延、低抖動(dòng)的系統(tǒng)事件分發(fā);組合式鏈路層和網(wǎng)絡(luò)層流量控制機(jī)制;可配置的誤碼檢測(cè)和模糊拓?fù)渎酚煽蓪?shí)現(xiàn)高效的備份、高可靠性和可用性;讀/寫和進(jìn)程間通信消息語義的硬件實(shí)現(xiàn)。這些功能允許系統(tǒng)架構(gòu)師創(chuàng)建性能更高、功耗更低并且更容易擴(kuò)展的系統(tǒng)。
評(píng)論