<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          PCI Express 多播功能

          作者:Matt Jones IDT 產(chǎn)品營銷經(jīng)理 時間:2009-04-15 來源:電子產(chǎn)品世界 收藏

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

          本文引用地址:http://www.ex-cimer.com/article/93477.htm

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

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

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


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

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();