sRIO 2.0中虛擬通道的優(yōu)勢(shì)和加速其采用的技術(shù)
Serial RapidIO(sRIO)是一種高性能、基于包的技術(shù),可以用于越來越多的應(yīng)用,包括無線基礎(chǔ)設(shè)施、存儲(chǔ)、醫(yī)學(xué)成像和軍工領(lǐng)域。
本文引用地址:http://butianyuan.cn/article/87839.htm利用sRIO 2.0標(biāo)準(zhǔn),系統(tǒng)設(shè)計(jì)師能夠選擇從1.25Gbps到6.25Gbps的鏈路速率,以及1x到16x的端口寬度,提供高粒度來選擇最適合具體應(yīng)用的端口數(shù)據(jù)速率。在sRIO 2.0的物理層增強(qiáng)以外,還有一系列更高級(jí)別的功能,是專門為提供空前的交換器結(jié)構(gòu)流量控制而設(shè)計(jì)的。
虛擬通道(Virtual channel,VC)可提供控制系統(tǒng)的不同類型流量的能力。VC通過將鏈路劃分為幾個(gè)獨(dú)立的通道,將包分配給一個(gè)特定通道,有助于系統(tǒng)設(shè)計(jì)師控制包流量。第一個(gè)VC叫VC0,它是一個(gè)采用sRIO 2.0標(biāo)準(zhǔn)的向后兼容VC,與sRIO 1.3規(guī)范鏈路的運(yùn)行一樣。此外,sRIO 2.0還支持多達(dá)8個(gè)以上的VC(VC1-VC8)。
圖1虛擬通道帶寬預(yù)約
VC增強(qiáng)了對(duì)結(jié)構(gòu)中的數(shù)據(jù)流量的控制。每個(gè)VC能保證占到鏈路帶寬的一部分。系統(tǒng)設(shè)計(jì)師能控制多個(gè)流量類型的互動(dòng),事實(shí)上能通過分配帶寬,將它們相互隔離。對(duì)延遲敏感的流量(如流視頻)能夠在整個(gè)交換器結(jié)構(gòu)中保證分配到一部分帶寬。
由于所有VC可用的帶寬都比保證的要少,所以為了最大限度地利用鏈路,使sRIO 2.0可用于任何可用帶寬。實(shí)質(zhì)上,帶寬的分配是智能的,同時(shí)可確保急需比其分配到的帶寬更多的貪婪的VC不能從其他VC搶占帶寬,同時(shí)確保只要有包發(fā)送的時(shí)候,沒有任何帶寬閑置。
圖2sRIO 1.3系統(tǒng)中的sRIO 2.0交換器操作
圖1顯示VC帶寬預(yù)約的優(yōu)勢(shì)。三個(gè)包流共享一個(gè)鏈路,帶寬的10%分配給VC_A,60%分配給VC_B,30%分配給VC_C。在仿真的第一部分中,只有VC_A和VC_C有包要傳送,因此它們的帶寬增長(zhǎng)超出了其各自的分配值,以利用分配給VC_B未使用的部分。如圖所示,VC_C能夠占據(jù)可用鏈路帶寬的75%,而VC_A占有其余的25%。sRIO 2.0允許VC使用未被使用的鏈路,包分別按照其相應(yīng)的帶寬分配出現(xiàn)。在仿真的后半部分,VC_B出現(xiàn)通過共享鏈路傳送的流量。sRIO 2.0允許交換器迅速響應(yīng)流量的變化,并在需要匹配已編程分配時(shí)改變帶寬利用率。在這種情況下,一個(gè)間斷但對(duì)延遲敏感的流,如VC_B,可快速獲得其 60%的分配。一旦傳送了來自VC_B的包,鏈路使用再一次重新分配給其余有包要傳送的VC。
sRIO 2.0通過提供一個(gè)對(duì)VC0唯一的功能,可以提供一層額外的鏈路劃分控制。VC0可以進(jìn)行配置,以服從帶寬預(yù)約,就像其他所有VC一樣;或者可配置為能夠自動(dòng)獲得任何所需的帶寬,而所有剩下的帶寬都分配給所有其他有包要傳送的VC。這有助于控制通過VC0傳送的平面流量,使操作完全獨(dú)立于數(shù)據(jù)平面流量,而且只受sRIO 1.3規(guī)范的優(yōu)先權(quán)規(guī)則的約束。
VC提供兩種包傳輸模式——連續(xù)傳輸(CT)和可靠傳輸(RT)。RT操作與sRIO規(guī)范較早的版本相似,當(dāng)包無法接收時(shí)重新發(fā)包,確保包傳輸無損。CT是為降低延遲流量而優(yōu)化的,該流量可通過不重新發(fā)包而接受丟包。VC0支持所有定義的優(yōu)先權(quán),只以RT模式操作。
圖3sRIO 1.3和sRIO 2.0系統(tǒng)的結(jié)合
更高的VC(1~8)能夠以CT和RT模式運(yùn)行,有助于客戶優(yōu)化不同類型數(shù)據(jù)的傳輸方法。例如,鑒于控制平面流量可能需要RT提供的響應(yīng)和保證的發(fā)送,數(shù)據(jù)平面流量(如來自音頻流的)可能從減少的CT延遲獲益,而且如果執(zhí)行重發(fā)的話,就可能受到損失。
交換器供應(yīng)商面臨的挑戰(zhàn)
在一項(xiàng)規(guī)范中增加功能的挑戰(zhàn)之一是將新的功能集成到現(xiàn)有和下一代系統(tǒng)中。向后兼容性是sRIO規(guī)范開發(fā)流程的基石,但是新標(biāo)準(zhǔn)的推廣過程也同樣重要。系統(tǒng)開發(fā)商將在不久的未來看到越來越多的sRIO 2.0兼容的產(chǎn)品。
交換器供應(yīng)商很有可能是第一批采用sRIO 2.0的對(duì)象。交換器是嵌入式結(jié)構(gòu)生態(tài)系統(tǒng)的基礎(chǔ),實(shí)質(zhì)上在于新規(guī)范的驗(yàn)證。如數(shù)字信號(hào)處理器和現(xiàn)場(chǎng)可編程門陣列等處理端點(diǎn),可能會(huì)在生產(chǎn)符合最新修訂規(guī)范的新器件方面滯后。因此,交換器供應(yīng)商在生產(chǎn)下一代解決方案時(shí)面臨一個(gè)嚴(yán)峻的挑戰(zhàn),最初至少是將這些解決方案推向基于現(xiàn)有端點(diǎn)的采用當(dāng)前技術(shù)的系統(tǒng)當(dāng)中。隨著支持sRIO 2.0的端點(diǎn)的面市,在現(xiàn)有系統(tǒng)進(jìn)化或新的系統(tǒng)推出時(shí),設(shè)計(jì)師將向它們過渡。不可避免的是,會(huì)有一段sRIO 1.3和sRIO 2.0交迭的延長(zhǎng)期。另外,許多系統(tǒng)可能將存在更長(zhǎng)的一段時(shí)間,需要現(xiàn)有sRIO 1.3子系統(tǒng)與sRIO 2.0兼容子系統(tǒng)進(jìn)行通信。
不過,不需要現(xiàn)有端點(diǎn)的支持,交換器供應(yīng)商就能利用sRIO 2.0的很多優(yōu)勢(shì),因?yàn)檫@些優(yōu)點(diǎn)主要集中在交換結(jié)構(gòu)。VC的優(yōu)勢(shì)非常具有競(jìng)爭(zhēng)力,對(duì)逐漸采用該技術(shù)的支持可能證明對(duì)系統(tǒng)設(shè)計(jì)師有高度的吸引力。因此,交換器供應(yīng)商的挑戰(zhàn)是在可能由sRIO 1.3兼容端點(diǎn)主導(dǎo)的系統(tǒng)的sRIO結(jié)構(gòu)中,實(shí)現(xiàn)對(duì)VC功能的過渡支持。此外,交換器供應(yīng)商必須提供一種簡(jiǎn)單的過渡機(jī)制,這樣隨著系統(tǒng)進(jìn)化到只容納 sRIO 2.0器件,結(jié)構(gòu)及其VC的使用也將進(jìn)化。
用于sRIO 1.3系統(tǒng)的虛擬通道
支持VC的交換器必須提供專門發(fā)送VC包并支持sRIO 2.0帶寬分配需求的內(nèi)部電路。如果交換器是智能的,能夠?qū)⒁粋€(gè)進(jìn)來的sRIO 1.3包當(dāng)作具有更高VC值的sRIO 2.0包發(fā)送的話,這些路徑可被sRIO 1.3兼容包利用。交換器供應(yīng)商可以為客戶提供編程一個(gè)映射協(xié)議的能力,對(duì)進(jìn)入的sRIO 1.3包在緩沖器利用、交換算法決定、負(fù)載平衡和帶寬預(yù)約方面作為sRIO 2.0包進(jìn)行處理。這樣就可以為系統(tǒng)設(shè)計(jì)師提供對(duì)sRIO 2.0中定義的結(jié)構(gòu)的控制,即使生成更高VC包的能力是不可用的。這種能力有助于系統(tǒng)設(shè)計(jì)師支配系統(tǒng)中不同數(shù)據(jù)流的處理,就像整個(gè)系統(tǒng)是在以sRIO 2.0器件運(yùn)行。
圖2描述的就是這個(gè)概念。盡管器件只生成sRIO 1.3兼容的流量,交換器可以進(jìn)行配置來處理某些進(jìn)來的流量,就像它有更高VC一樣,主要是將sRIO 1.3包映射到編程VC值的sRIO 2.0包。一種可以用來向交換器傳達(dá)如何處理一個(gè)特定包的方法是使用唯一的目標(biāo)標(biāo)識(shí)符。這種增強(qiáng)有助于交換器將包發(fā)送到正確的端點(diǎn),同時(shí)基于給被映射的 VC的帶寬分配限制包的流出流量。如圖所示,通過這種特點(diǎn),交換器可以將三個(gè)不同的端點(diǎn)作為VC_A、VC_B和VC_C的發(fā)生器進(jìn)行處理,到達(dá)目標(biāo)的預(yù)期流量可以模仿圖1中顯示的靈活性和響應(yīng),這些都不需要使用sRIO 2.0端點(diǎn)。雖然可能限制基于發(fā)送器的流量控制的使用,這種VC映射能力的確有助于系統(tǒng)設(shè)計(jì)師更精確地接近系統(tǒng)中預(yù)期的流量,而不是限制用戶只能遵循 sRIO 1.3包排序規(guī)則。
sRIO 2.0中VC的另外一個(gè)關(guān)鍵因素是在CT模式運(yùn)行的能力,這有助于在需要減少延遲的情況下丟下包。任何向采用VC過渡的努力,都要面對(duì)這個(gè)關(guān)鍵的特點(diǎn)。不像sRIO 2.0,如果沒有緩沖空間的話,sRIO 1.3器件不會(huì)接受包。交換器供應(yīng)商可以通過提供一種偽CT模式選項(xiàng),用sRIO 1.3端點(diǎn)接近sRIO 2.0 CT模式操作,在這種模式中,要重新發(fā)送的包實(shí)際上是被一個(gè)新的包代替了。這種模式有助于客戶在sRIO 1.3系統(tǒng)中利用在CT模式下運(yùn)行的VC的延遲優(yōu)勢(shì)。
sRIO 1.3和sRIO 2.0系統(tǒng)間的通信
隨著新的sRIO 2.0端點(diǎn)進(jìn)入市場(chǎng),很有必要提供一種能夠?qū)煞N規(guī)范連接起來的解決方案,這樣,為sRIO 2.0設(shè)計(jì)的子系統(tǒng)就能利用它們所有的優(yōu)勢(shì),同時(shí)繼續(xù)與現(xiàn)有sRIO 1.3子系統(tǒng)通信。
一個(gè)強(qiáng)大的功能就是提供一個(gè)作為sRIO 1.3現(xiàn)有流量和sRIO 2.0 VC流量之間的轉(zhuǎn)換器運(yùn)行的交換器。sRIO提供內(nèi)置的向后VC值轉(zhuǎn)換,因?yàn)橐?guī)定VC值的包頭部分重新使用了優(yōu)先權(quán)和關(guān)鍵請(qǐng)求流量區(qū)域。雖然這確實(shí)有助于 sRIO 1.3器件轉(zhuǎn)送規(guī)定VC值的sRIO 2.0包,但這是靜態(tài)的轉(zhuǎn)換,可能滿足不了必須在同一系統(tǒng)中同時(shí)支持兩種sRIO版本的系統(tǒng)設(shè)計(jì)師的需求。
然而,交換器可以作為兩個(gè)子系統(tǒng)間的智能互連運(yùn)行,通過提供一個(gè)可編程的轉(zhuǎn)換功能,每個(gè)子系統(tǒng)分別以不同的sRIO版本運(yùn)行。假設(shè)一個(gè)系統(tǒng)包括一個(gè)現(xiàn)有sRIO 1.3系統(tǒng)板、一個(gè)sRIO 2.0系統(tǒng)板和一個(gè)具有轉(zhuǎn)換功能的交換板,如圖3所示,交換器就可以具有一個(gè)可編程的轉(zhuǎn)換功能,在兩個(gè)系統(tǒng)之間隨意進(jìn)行包轉(zhuǎn)換。這有助于系統(tǒng)設(shè)計(jì)師在修改子系統(tǒng)時(shí)向新的規(guī)范過渡,推出新的子系統(tǒng),使整個(gè)sRIO 2.0生態(tài)系統(tǒng)采用所有必要的元件。這個(gè)解決方案不是簡(jiǎn)單地將包映射到VC并改變交換器處理每個(gè)包的方式,而是改變進(jìn)入包的包頭,重新計(jì)算循環(huán)冗余碼校驗(yàn) (CRC),并最終生成新的包。系統(tǒng)設(shè)計(jì)師能夠以最小的影響和巨大的優(yōu)勢(shì)利用這種解決方案。
加速sRIO 2.0的成功
sRIO 2.0將是具有強(qiáng)大功能的嵌入式結(jié)構(gòu),支持各種數(shù)據(jù)流量。VC是將改變系統(tǒng)設(shè)計(jì)師能夠定義和控制通過其結(jié)構(gòu)的數(shù)據(jù)流的主要元件。交換器供應(yīng)商的挑戰(zhàn)是為他們的客戶提供能夠迅速利用VC卓越功能的強(qiáng)大sRIO 2.0解決方案,同時(shí)隨著生態(tài)系統(tǒng)繼續(xù)發(fā)展,提供一條簡(jiǎn)單的途徑使其進(jìn)化成完整的sRIO 2.0解決方案。
評(píng)論