PCIe總線 - - -
PCIe總線的提出可以算是代表著傳統并行總線向高速串行總線發展的時代的到來。實際上,不僅是PCI總線到PCIe總線,高速串行總線取代傳統并行總線是一個大的趨勢。如ATA到SATA,SCSI到USB等……
不過,為了兼容之前的PCI總線設備,雖然PCIe是一種串行總線,無法再物理層上兼容PCI總線,但是在軟件層上面卻是兼容PCI總線的。
和很多的串行總線一樣,PCIe采用了全雙工的傳輸設計,即允許在同一時刻,同時進行發送和接收數據。如下圖所示,設備A和設備B之間通過雙向的Link相連接,每個Link支持1到32個通道(Lane)。由于是串行總線,因此所有的數據(包括配置信息等)都是以數據包為單位進行發送的。
與絕大部分的高速連接一樣,PCIe采用了差分對進行收發,以提高總線的性能。一個PCIe Lane的例子如下圖所示:
除了差分總線,PCIe還引入了嵌入式時鐘的技術(Embedded Clock),即發送端不再向接收端發送時鐘,但是接收端可以通過8b/10b的編碼從數據Lane中恢復出時鐘。一個簡單的時鐘恢復電路模型如下圖所示:
注:PCie Gen3以及之后的版本采用了128b/130b的編碼方式。
PCIe相對于PCI總線的另一個大的優勢是其的Scalable Performance,即可以根據應用的需要來調整PCIe設備的帶寬。如需要很高的帶寬,則采用多個Lane(比如顯卡);如果并不需要特別高的帶寬,則只需要一個Lane就可以了(比如說網卡等)。
和PCI-X總線一樣,由于非常高的傳輸速度,PCIe是一種點對點連接的總線,而不像PCI那樣的共享總線。但是PCIe總線系統可以通過Switch連接多個PCIe設備,也可以通過PCIe橋連接傳統的PCI和PCI-X設備。一個簡單的PCIe總線系統的拓撲結構圖如下所示:
注:這里的Switch實際上包含了多個類似于PCI總線中橋的概念。
圖中的Root Complex經常被稱為RC或者Root。在PCIe的Spec中,并沒有特別詳細的關于Root Complex的定義,從實際的角度來講,可以把Root Complex理解為CPU與PCIe總線系統通信的媒介。Endpoint處于PCIe總線系統拓撲結構中的最末端,一般作為總線操作的發起者(initiator,類似于PCI總線中的主機)或者終結者(Completers,類似于PCI總線中的從機)。顯然,Endpoint只能接受來自上級拓撲的數據包或者想上級拓撲發送數據包。
所謂Lagacy PCIe Endpoint是指那些原本準備設計為PCI-X總線接口的設備,但是卻被改為PCIe接口的設備。而Native PCIe Endpoint則是標準的PCIe設備。其中,Lagacy PCIe Endpoint可以使用一些在Native PCIe Endpoint禁止使用的操作,如IO Space和Locked Request等。Native PCIe Endpoint則全部通過Memory Map來進行操作,因此,Native PCIe Endpoint也被稱為Memory Mapped Devices(MMIO Devices)。
-
串行
+關注
關注
0文章
237瀏覽量
34404 -
總線
+關注
關注
10文章
2958瀏覽量
89515 -
PCIe
+關注
關注
16文章
1331瀏覽量
84877
原文標題:【博文連載】PCIe掃盲——PCIe總線基本概念
文章出處:【微信號:ChinaAET,微信公眾號:電子技術應用ChinaAET】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄


PCIE總線
CAN總線的發送基本概念
基于PCIE/104總線的高速數據接口設計

評論