国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

PIC?。牛穑颍澹螅蠖嗖スδ?/h1>
2009-05-21 04:03:44MattJones
電子產(chǎn)品世界 2009年4期
關(guān)鍵詞:多播通信嵌入式

Matt Jones

摘要:新一代設(shè)計(jì)和產(chǎn)品的更新開始傾向于PCIe,以利用采用PCIe作為本地接口的現(xiàn)成的處理器、外設(shè)和交換解決方案的豐富生態(tài)系統(tǒng)。本文討論表明,嵌入式和通信應(yīng)用市場是PCIe發(fā)明的旁路擴(kuò)展的一部分,而相關(guān)規(guī)范和支持產(chǎn)品的形式必須通過創(chuàng)新來滿足這些市場的需求。

關(guān)鍵詞:PCIe總線;嵌入式;通信;多播

PCIe(PCI Express)的定義是提供增強(qiáng)的、可擴(kuò)展的性能,緩解信號完整性和并行總線歷史擴(kuò)展帶來的電路板布局問題。要求很高的臺(tái)式和企業(yè)計(jì)算及存儲(chǔ)應(yīng)用對這種升級的互連標(biāo)準(zhǔn)的需求非常迫切。而這種需求促使PCI特別興趣小組(PCI-SIG)和元器件供應(yīng)商調(diào)整初始規(guī)范和系統(tǒng)解決方案,以滿足新出現(xiàn)的這些應(yīng)用需求。憑借基于充分滿足上述需求規(guī)范的目標(biāo)產(chǎn)品形式,高量產(chǎn)服務(wù)器和存儲(chǔ)市場的早期采用者將PCIe作為芯片與芯片之間互連事實(shí)上的標(biāo)準(zhǔn),以加速和拓寬應(yīng)用。

盡管PCIe具有強(qiáng)勢的動(dòng)力并普遍存在于計(jì)算與存儲(chǔ)應(yīng)用當(dāng)中,PCIe在嵌入式和通信應(yīng)用方面卻一直受到極大限制。

PCIe規(guī)范是一個(gè)樹狀拓?fù)浣Y(jié)構(gòu),由一個(gè)單主干和眾多分支組成,非常適合在單一計(jì)算復(fù)合體及其相關(guān)本地I/O之間的有效連接。這一非常適用于服務(wù)器和存儲(chǔ)應(yīng)用的結(jié)構(gòu)無法在多主系統(tǒng)中輕松實(shí)現(xiàn)系統(tǒng)互連。先進(jìn)通信和嵌入式系統(tǒng)常常具備分布式計(jì)算和智能的特點(diǎn),隨著時(shí)間的推移還可適合PCI和PCI-X結(jié)構(gòu),以支持這種架構(gòu)。采用PCIe作為主系統(tǒng)互連需要規(guī)范的擴(kuò)展,以支持優(yōu)化的資源利用率、有效的數(shù)據(jù)傳輸和共享,以及多主系統(tǒng)中點(diǎn)與點(diǎn)之間系統(tǒng)一致性方面的構(gòu)建。

PCIe生態(tài)系統(tǒng)中的PCIe規(guī)范擴(kuò)展正在進(jìn)行,以滿足嵌入式和通信應(yīng)用的需求。這項(xiàng)工作正在挑剔的眼光下取得進(jìn)展,確保在不給廣大用戶群增加任何負(fù)擔(dān)或?qū)ΜF(xiàn)有生態(tài)系統(tǒng)或使用模式做出任何改變的情況下,獲得所需的功能擴(kuò)展。2008年5月,基于對PCIe基本規(guī)范2.0版的工程變更通知(ECN),PCI-SIG為PCIe標(biāo)準(zhǔn)加入了多播功能。這一新增的功能為分布式系統(tǒng)單元間數(shù)據(jù)的移動(dòng)和共享提供了強(qiáng)大的功能,同時(shí)為PCIe在要求很高的嵌入式和通信應(yīng)用中的主系統(tǒng)互連的應(yīng)用掃除了一大障礙。PCIe多播可優(yōu)化系統(tǒng)資源,有助于實(shí)現(xiàn)多個(gè)系統(tǒng)單元的有效數(shù)據(jù)傳輸,縮短延遲并提高一致性。重要的是,由于擴(kuò)展了現(xiàn)有的PCIe規(guī)范,而且不增加負(fù)擔(dān),不需要修改現(xiàn)有生態(tài)系統(tǒng)或使用模式,PCIe多播方案可以實(shí)現(xiàn)重要的系統(tǒng)優(yōu)勢。

多播的系統(tǒng)優(yōu)勢

多播是將量化數(shù)據(jù)包同時(shí)傳輸?shù)揭唤M目的地,同時(shí)通過防止任何不必要的數(shù)據(jù)復(fù)制,有效管理資源和系統(tǒng)帶寬的方法。在應(yīng)用于嵌入式和通信應(yīng)用的分布式或復(fù)制智能系統(tǒng)中,多播功能為發(fā)送同時(shí)引導(dǎo)時(shí)間或復(fù)位命令等任務(wù)和圖像提供了一個(gè)有效的一對多的數(shù)據(jù)分配機(jī)制,從而縮短復(fù)位排序和系統(tǒng)宕機(jī),以及關(guān)鍵路由和政策控制信息的同步更新時(shí)間,確保系統(tǒng)數(shù)據(jù)的一致性。

如圖1所示,通過多播將相同的數(shù)據(jù)傳輸給多個(gè)接收人,能夠降低開銷,實(shí)現(xiàn)系統(tǒng)資源的優(yōu)化。在這個(gè)非常簡單的模型中,對比不支持多播的PCIe交換器與支持多播的PCIe交換器。支持多播功能的系統(tǒng)或交換器可以利用一個(gè)由交換器管理的一個(gè)多播處理替代4個(gè)順序環(huán)路處理,從而使發(fā)起的CPU更方便地繼續(xù)其他任務(wù),實(shí)現(xiàn)更有效的資源利用率。這種效率可以使系統(tǒng)計(jì)算資源承擔(dān)額外任務(wù)而充分提升性能,或者憑借所需的較低性能或較少的計(jì)算資源而節(jié)省系統(tǒng)成本和功耗。

除了系統(tǒng)資源優(yōu)化外,將環(huán)路單播處理轉(zhuǎn)換成一個(gè)多播處理器,可以縮短傳輸延遲,提高系統(tǒng)點(diǎn)與點(diǎn)之間的一致性。參照圖1中簡單的模型,假設(shè)數(shù)據(jù)的順序傳輸按編號發(fā)生,那么相對第一個(gè)端點(diǎn)而言,第四個(gè)端點(diǎn)是過時(shí)的,直到所有過程完成。在單主系統(tǒng)中,這樣的差距相對較小,因?yàn)榇蟛糠謹(jǐn)?shù)據(jù)由一個(gè)主機(jī)傳輸,在進(jìn)一步動(dòng)作之前,將會(huì)完成四個(gè)處理描述。然而,在分布式智能和點(diǎn)對點(diǎn)流量系統(tǒng)中,這種由重復(fù)單播處理帶來的差距會(huì)產(chǎn)生潛在的數(shù)據(jù)排序問題,因?yàn)榘赡茉谙鄬Σ煌臅r(shí)間傳輸?shù)矫總€(gè)端點(diǎn),而非環(huán)路單播包的每個(gè)端點(diǎn)。假設(shè)通過環(huán)路發(fā)送至端點(diǎn)的信息是將路由表更新到通信系統(tǒng)包處理線卡的每四個(gè)網(wǎng)絡(luò)處理單元(NPU),那么每個(gè)端點(diǎn)路由表的更新都會(huì)基于順序傳輸和完成來增加延遲,隨之產(chǎn)生的差距允許線卡等待更新,路由根據(jù)此刻過時(shí)的表繼續(xù)接收包。

另外,多播數(shù)據(jù)可帶來整個(gè)系統(tǒng)較好的鏈路利用率,通??梢韵鰪?qiáng)的性能所帶來的瓶頸,或?qū)崿F(xiàn)配置更小、更有效使用的鏈路,以節(jié)省功耗,降低電路板設(shè)計(jì)的復(fù)雜性?;谏鲜龆x的PCIe多播協(xié)議只有在分支被占用才會(huì)進(jìn)行數(shù)據(jù)備份。圖2描述了通過一對PCIe交換器可能擁有多個(gè)層級PCIe互連結(jié)構(gòu)。如圖左側(cè)所示,將相同的環(huán)路單播數(shù)據(jù)發(fā)送到端點(diǎn)1、2、3和4,會(huì)導(dǎo)致同一數(shù)據(jù)多次通過鏈路1和4。圖右側(cè)的系統(tǒng)利用PCIe多播功能,只需為每個(gè)需要邏輯復(fù)制數(shù)據(jù)的鏈路傳輸一次數(shù)據(jù)即可。

PCIe多播方案

最初討論的那樣,PCIe標(biāo)準(zhǔn)快速和廣泛的采用帶來了一個(gè)豐富的生態(tài)系統(tǒng)和曾依賴以前規(guī)范版本的巨大用戶群。因此,正如其他提議的擴(kuò)展一樣,PCIe多播絕不能給現(xiàn)有生態(tài)系統(tǒng)或使用模式造成負(fù)面影響或增加負(fù)擔(dān)。尤其是,PCIe多播不需要對現(xiàn)有主聯(lián)合體、端點(diǎn)或新處理層數(shù)據(jù)包(TLP)格式進(jìn)行硬件修改。功能性的優(yōu)化取決于這些限制條件。PCIe多播是一個(gè)基于地址的多播功能,利用了一部分通用PCIe存儲(chǔ)空間和一個(gè)簡單的編程模型,可以將存儲(chǔ)器滯后寫入TLP的標(biāo)準(zhǔn)PCIe發(fā)送至多達(dá)64個(gè)多播組(MCG)中的多個(gè)接收者。雖然一個(gè)MCG可以包括0或1個(gè)成員,然而只有當(dāng)MCG數(shù)大干2時(shí)系統(tǒng)才能獲益。因此,PCIe交換器(或系列交換器)必須用于提供發(fā)起者和MCG成員間的互連。多播流量可以由PCIe層級的任何器件發(fā)起,并傳輸給連接具有多播能力結(jié)構(gòu)的交換器端口的許多參與者。每個(gè)端口具有多播能力結(jié)構(gòu)的交換器可以在其任何端口之間傳輸多播包。主聯(lián)合體和端點(diǎn)可以從多播能力結(jié)構(gòu)中獲益,但如上所述,這是這些器件的可選功能。

如圖3所示,下列系統(tǒng)列舉不會(huì)受多播功能影響。從多播窗口基址開始,系統(tǒng)軟件通過在PCIe存儲(chǔ)空間打開一個(gè)多播窗口來設(shè)置多播地址空間。利用該基址,多播窗口可以設(shè)置成相鄰的地址范圍。這些地址范圍可能將多達(dá)64個(gè)支持MCG的每個(gè)端口劃分成大小相同的子區(qū)間。多播窗口的大小沒有實(shí)際限制(即多播窗口可達(dá)263個(gè)字節(jié))。多播窗口組的數(shù)目可以設(shè)置在1-64之間。

系統(tǒng)中支持多播的PCIe器件必須具有多播能力結(jié)構(gòu),使每個(gè)PCIe功能實(shí)現(xiàn)多播。在PCIe交換器中,要求每個(gè)傳輸或接收多

播數(shù)據(jù)的交換器端口都必須在共相應(yīng)的虛擬PCI至PCI橋內(nèi)支持多播能力結(jié)構(gòu)。在每個(gè)多播能力結(jié)構(gòu)內(nèi),同等配置的控制寄存器可以保持如下信息:多播窗口基址、MCG數(shù)目和MCG窗口大小。另外,每個(gè)能力結(jié)構(gòu)都保持一個(gè)獨(dú)立配置,并維持64位控制矢量。這些控制位可以激活或禁用來自MCG的0~63的TLP接收,因而支配了每個(gè)MCG中每個(gè)PCIe功能的關(guān)系。在器件工作過程中,寄存器和控制位可以隨時(shí)讀寫。

多播PCIe TLP的傳輸和路由與單播TLP相比略有變化。圖4為PCIe交換器基本功能圖,充分描述了這些差別。接收主發(fā)送的TLP時(shí),入站端口的地址解碼決定TLP是一個(gè)多播TLP(從邏輯上講,這是初始處理成為多重處理的地方)。沒有錯(cuò)誤的解碼多播TLP轉(zhuǎn)發(fā)到交換器的虛擬PCI總線。單播流量有不同的路由規(guī)則,取決于TLP是在P2P橋的初級還是次級接收的。與單播流量不同,多播TLP是對稱轉(zhuǎn)發(fā),而不必考慮P2P橋是否連了上行或下行端口。

所有連接到虛擬PCI總線的端口(即P2P橋功能)都可以接收多播TLP,檢查地址中MCG的ID,防止多播接收矢量的位狀態(tài)?;诿總€(gè)MCG,多播接收矢量顯示是否允許P2P橋功能向其目的地轉(zhuǎn)發(fā)TLP。這將有助于交換器上每個(gè)P2P橋功能以每組為基礎(chǔ)對多播TLP接收者進(jìn)行寄存。

一旦交換器內(nèi)的P2P橋功能接收了多播TLP,就會(huì)在TLP上執(zhí)行出站處理。多播TLP的出站處理將取決于連接在P2P橋的交換器端口上的鏈路組件能力。圖5顯示了PCIe交換器到PCIe交換器傳輸?shù)亩嗖ツ芰Y(jié)構(gòu)的鏈路組件的情況。TLP是在沒有修改的情況下由遠(yuǎn)程路由轉(zhuǎn)發(fā)的。不過,如上文所述,PCIe端點(diǎn)不需要實(shí)現(xiàn)多播能力結(jié)構(gòu)來接收多播TLP。為了支持不具有多播功能的端點(diǎn),系統(tǒng)軟件必須保證端點(diǎn)的基址寄存器覆蓋一部分多播地址范圍,或者PCIe交換器必須使用隨意指定的多播覆蓋機(jī)制。

由于確保端點(diǎn)功能地址范圍覆蓋的工作和多播地址范圍給系統(tǒng)設(shè)計(jì)者造成的負(fù)擔(dān),以及每個(gè)產(chǎn)品SKU可能需要一個(gè)唯一的代碼庫,定義明確的交換器方案需要在每個(gè)交換端口的多播能力結(jié)構(gòu)實(shí)現(xiàn)多播覆蓋功能,以優(yōu)化靈活性并利用現(xiàn)有的可用端點(diǎn)。如圖6所示,地址覆蓋功能機(jī)制可以用于重映射來自多播窗口到端點(diǎn)基址寄存器(BAR)窗口接收的多播TLP地址。地址覆蓋是由交換器端口執(zhí)行的。每個(gè)交換器端口可以配置不同的地址覆蓋值,從而獨(dú)立映射到伴隨每個(gè)端點(diǎn)的BAR窗口。支持32位和64位地址之間的轉(zhuǎn)換(例如,多播區(qū)域可以位于4GB邊界以上,而端點(diǎn)BAR可以在4GB邊界以下,反之亦然。)

結(jié)論

為了滿足要求很高的臺(tái)式、企業(yè)及存儲(chǔ)應(yīng)用的需求,PCIe標(biāo)準(zhǔn)已成為芯片與芯片之間互連事實(shí)上的接口,具有豐富的生態(tài)系統(tǒng)和高量產(chǎn)基礎(chǔ)的終端應(yīng)用。為滿足這些早期高量產(chǎn)應(yīng)用的需求,該規(guī)范和早期產(chǎn)品形式已進(jìn)行了調(diào)整來滿足其核心需求。隨著其他終端應(yīng)用和使用模式的出現(xiàn),該規(guī)范和生態(tài)系統(tǒng)正擴(kuò)展其應(yīng)用的服務(wù)寬度。PCIe多播功能的最新進(jìn)展為多主嵌入式和通信系統(tǒng)實(shí)現(xiàn)了必要的擴(kuò)展,優(yōu)化的資源利用率,通過降低系統(tǒng)延遲提高了性能,完成了點(diǎn)與點(diǎn)之間的有效和一致的數(shù)據(jù)傳輸。以挑剔的眼光看,為了不給現(xiàn)有PCIe生態(tài)系統(tǒng)或用戶群增加負(fù)擔(dān),擴(kuò)展的功能要求不對主或端點(diǎn)硬件,以及TLP格式做任何改變?;诘刂返腜CIe多播方案具有簡單的編程模型,能夠以PCIe交換器激活,提供比之前的雙播等專有方案更加優(yōu)越的功能和靈活性。

猜你喜歡
多播通信嵌入式
胖樹拓?fù)渲懈咝?shí)用的定制多播路由算法
用于超大Infiniband網(wǎng)絡(luò)的負(fù)載均衡多播路由
InfiniBand中面向有限多播表?xiàng)l目數(shù)的多播路由算法
搭建基于Qt的嵌入式開發(fā)平臺(tái)
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
簡述計(jì)算機(jī)通信網(wǎng)絡(luò)安全與防護(hù)策略
Android環(huán)境下主UI線程與子線程通信機(jī)制研究
無線自組網(wǎng)在野戰(zhàn)防空通信系統(tǒng)中的應(yīng)用
對數(shù)字微波通信技術(shù)的研究
Altera加入嵌入式視覺聯(lián)盟

抚远县| 岑巩县| 合阳县| 汤原县| 庆阳市| 黑龙江省| 威宁| 鸡东县| 荃湾区| 奉贤区| 东城区| 仁怀市| 霍邱县| 九寨沟县| 金平| 新沂市| 马山县| 台州市| 宁南县| 岑溪市| 竹山县| 巴青县| 泌阳县| 定兴县| 南宫市| 瑞丽市| 靖江市| 囊谦县| 阳信县| SHOW| 永泰县| 临桂县| 介休市| 昌邑市| 滦平县| 扬中市| 大英县| 永靖县| 青铜峡市| 江达县| 新密市|