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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > PCI Express體系結(jié)構(gòu)概述

          PCI Express體系結(jié)構(gòu)概述

          作者: 時間:2016-12-15 來源:網(wǎng)絡(luò) 收藏
          雖然PCI總線取得了巨大的成功,但是隨著處理器主頻的不斷提高,PCI總線提供的帶寬愈發(fā)顯得捉襟見肘。PCI總線也在不斷地進(jìn)行升級,其位寬和頻率從最初的32位/33MHz擴(kuò)展到64位/66MHz,而PCI-X總線更是將總線頻率提高到533MHz,能夠提供的最大理論帶寬為4263MB。但是PCI總線仍無法解決其體系結(jié)構(gòu)中存在的一些缺陷。PCI總線面臨著一系列挑戰(zhàn),包括帶寬、流量控制和數(shù)據(jù)傳送質(zhì)量等。

          PCI總線的最高工作頻率為66M,最大位寬為64b,從理論上講,PCI總線可以提供的最大傳輸帶寬為532MB。然而PCI總線作為一個共享總線,在其上的所有PCI設(shè)備必須要共享PCI總線的帶寬。同時由于PCI總線的協(xié)議開銷,導(dǎo)致PCI總線可以實際利用的數(shù)據(jù)帶寬遠(yuǎn)小于其峰值帶寬。

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

          PCI總線采用提高總線位寬和頻率的方法增加其傳輸帶寬。但是這種方法從性能價格比的角度上看,并不是最優(yōu)的。數(shù)據(jù)總線位寬的提高將直接影響芯片的生產(chǎn)成本,64位的PCI總線接口需要設(shè)計者使用更多的芯片引腳,從而導(dǎo)致64位的PCI總線接口芯片的價格遠(yuǎn)高于32位的PCI總線接口芯片。與32位PCI總線接口相比,設(shè)計者還需要使用更多的印制板層數(shù)來實現(xiàn)64位PCI總線接口。

          而提高總線頻率,除了給硬件工程師帶來了一系列信號完整性的問題之外,更直接影響PCI總線的負(fù)載能力。一條33MHz的PCI總線最多可以驅(qū)動10個負(fù)載,而66Mhz的PCI總線最多只能驅(qū)動4個負(fù)載。因此片面提高PCI總線的頻率和位寬,并不能有效地提高PCI總線的帶寬。

          除此之外PCI總線在設(shè)計之初并沒有考慮服務(wù)質(zhì)量的問題。有些實時數(shù)據(jù)采集卡,音頻或者視頻的多媒體應(yīng)用需要PCI總線提供額定帶寬,而PCI總線上的設(shè)備只能輪流使用PCI總線,當(dāng)一個設(shè)備長期占用PCI總線時,將阻止其他PCI設(shè)備使用PCI總線,從而影響了PCI總線的傳送質(zhì)量。

          基于以上幾個原因,PCI總線在某種程度上說并不能完全適應(yīng)現(xiàn)代處理器系統(tǒng)的需要,而使用PCIe總線可以有效解決PCI總線存在的一些問題。首先PCIe總線可以提供更大的總線帶寬,PCIe V3.0支持的最高總線頻率為4GHz,遠(yuǎn)高于PCI-X總線提供的最高總線頻率。

          其次PCIe總線支持虛通路VC(Virtual Channel)技術(shù),優(yōu)先級不同的數(shù)據(jù)報文可以使用不同的虛通路,而每一路虛通路可以獨(dú)立設(shè)置緩沖,從而相對合理地解決了數(shù)據(jù)傳送過程中存在的服務(wù)質(zhì)量問題。

          PCIe總線由若干層次組成,包括事務(wù)層、數(shù)據(jù)鏈路層和物理層。PCIe總線使用數(shù)據(jù)報文進(jìn)行數(shù)據(jù)傳遞,這些數(shù)據(jù)報文需要通過PCIe總線的這些層次。PCIe總線的這種數(shù)據(jù)傳遞方式與互聯(lián)網(wǎng)使用TCP/IP協(xié)議進(jìn)行數(shù)據(jù)傳遞有類似之處。

          實際上在互聯(lián)網(wǎng)中存在的許多概念也存在于PCIe總線中,如交換、路由和仲裁機(jī)制等,不過這兩者之間在實現(xiàn)上的最大不同在于前者主要使用軟件程序?qū)崿F(xiàn)其協(xié)議棧,而后者使用硬件邏輯實現(xiàn)。

          半導(dǎo)體工藝的逐步提高,使得更多的軟件算法可以使用硬件邏輯來實現(xiàn),這給從事IC Design的工程師帶來了巨大的挑戰(zhàn),因為他們使用Verilog/VHDL程序書寫的算法,之前是使用C或者是C++這樣的高別語言實現(xiàn)的。

          PCIe總線在系統(tǒng)軟件級與PCI總線兼容,基于PCI總線的系統(tǒng)軟件幾乎可以不經(jīng)修改直接移植到PCIe總線中。絕大多數(shù)PCI/PCI-X總線使用的總線事務(wù)都被PCIe總線保留,而PCI設(shè)備使用的配置空間也被PCIe總線繼承。基于PCI體系結(jié)構(gòu)的系統(tǒng)編程模型,幾乎可以在沒有本質(zhì)變化的前提下,直接在PCIe體系結(jié)構(gòu)中使用。

          但是從體系系統(tǒng)的角度上看,PCIe總線還是增加了一些新的特性,其中一些特性不僅僅是稱呼上的變化,而且在功能上也得到了增強(qiáng)。如在PCIe體系結(jié)構(gòu)中出現(xiàn)的RC(Root Complex)。RC的主要功能與PCI總線中的HOST主橋類似,但是在HOST主橋的基礎(chǔ)上增加了許多功能。

          在不同處理器系統(tǒng)中,RC的實現(xiàn)方式不同,因此僅僅用PCIe總線控制器稱呼RC是不夠的,實際上PCIe總線規(guī)范對RC并沒有一個合適的解釋。RC本身也是隨處理器系統(tǒng)的不同而不同,是一個很模糊的概念。

          Intel并沒有使用PCIe總線控制器,而是使用RC管理PCIe總線,基于深層次的考慮。在x86處理器體系結(jié)構(gòu)中,RC并不僅僅管理PCIe設(shè)備的數(shù)據(jù)訪問,而且還包含訪問控制、錯誤處理和虛擬化技術(shù)等一系列內(nèi)容。因此使用PCIe總線控制器統(tǒng)稱RC,在x86處理器體系結(jié)構(gòu)中,并不合適。

          在PCIe總線中,還有一些特性與PCIe總線協(xié)議的實現(xiàn)相關(guān)。與PCI總線相比,PCIe總線使用端到端的連接方式,添加流量控制機(jī)制,并對“訪問序”做出了進(jìn)一步優(yōu)化。雖然從系統(tǒng)軟件的角度上看,PCI總線與PCIe總線基本一致。但是從硬件設(shè)計的角度上看PCIe總線完全不同于PCI總線,基于PCIe總線各類設(shè)備的硬件設(shè)計難度遠(yuǎn)大于基于PCI總線的對應(yīng)設(shè)備的設(shè)計難度。

          目前PCIe總線規(guī)范,依然在迅猛發(fā)展,但并不是所有PCIe設(shè)備都支持這些在PCIe總線的最新規(guī)范中提及的概念。一般說來,PCIe總線規(guī)范提出的新的概念,最先在x86處理器系統(tǒng)的Chipset和Intel設(shè)計的EP中出現(xià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); })();