概念:緩存
一種高速串行計算機擴展總線標準。架構
物理:優化
PCIExpress卡適合其物理尺寸或更大的插槽(使用×16做爲最大的)。實際鏈接到插槽的通道數量也可能少於物理槽大小所支持的數量。一個例子是一個×16插槽能夠運行×一、×二、×四、×八、×16的卡,當運行×4卡時只提供4條通道。其規格能夠讀爲「×16(×4模式)」,而「×size @×速度」符號(「×16 @×4」)也是常見的。spa
標準:操作系統
總線架構:blog
分層結構:接口
它共分爲四層,從下到上分別爲:物理層(Physical Layer)、數據鏈路層(Link Layer)、處理層(Transaction Layer)和軟件層(Software Layer)。圖中並木有顯示出軟件層。內存
一、物理層資源
物理層是最底層,它負責接口或者設備之間的鏈接。物理層決定了PCIe總線接口的物理特性,如點對點串行鏈接、微差分信號驅動、熱撥插、可配置帶寬等,決定了其四根線全雙工的串行數據傳輸方式。io
在物理層的另外一處重要方面就是中斷。PCIe總線支持兩個類型的中斷,現行的PCI INTx (x= A, B, C, or D) 中斷(即PCI總線的中斷)被保留下來了,仍可在PCIe總線中應用。還有一個新的中斷類型,那就是MSI (Message Signaled Interrupt,信息信號中斷),INTx中斷方式能夠用信號方式中斷主機芯片請求,它能夠與現行的PCI總線的驅動程序和操做系統兼容。PCIe設備必須支持INTx和MSI兩種中斷模式,原有設備將壓縮INTx中斷信息在PCIe處理信息中。MSI中斷是經過內存寫處理操做邊沿觸發和發送的。從新編寫驅動程序對於MSI邊沿觸發中斷是很是有利的,MSI方案在使用數據包協議經過串行鏈接中是一種行之有效的本地中斷方式。MSI在多處理器系統中任何設備均可以發送中斷,比起主機直接發送中斷更加有效,因此如今許多多處理器系統和I/O架構都對MSI中斷技術提供支持。
二、數據鏈路層
數據鏈路層的主要職責就是確保數據包可靠、正確的傳輸。確保數據包的完整性,並在數據包中添加序列號和發送冗餘校驗碼處處理層。大多數數據包是由處理層發起的,基於信任的原則,數據流控制協議確保數據包只在終端緩存空閒時進行傳輸。排隊了全部數據的重試,使得信道帶寬浪費現象獲得有效地約束。但數據鏈路層在信號中斷時自動從新傳輸數據包。
三、處理層
處理層的做用主要是接受從軟件層送來的讀、寫請求,而且創建一個請求包傳輸到數據鏈路層。全部請求都是分離執行的。處理層同時接受從鏈路層傳來的響應包,並與原始的軟件請求關聯。處理層還整合或者拆分處理級數據包來發送請求,如數據讀、寫請求,而且操縱連接配置和信號控制。以確保端到端鏈接通訊正確,沒有無效數據經過整個組織(包括源設備和目標設備,甚至包括可能經過的多個橋接器和交換器)。處理層包括4個地址空間,其中3個是PCI接口原有的,如內存、I/O和配置地址空間,加上一個PCie新增的「信息空間」。
四、軟件層
軟件層是保持與PCI總線兼容的關鍵。其目的在於使系統在使用PCIe啓動時,像在PCI下的初始化和運行那樣,不管是在系統中發現的硬件設備,仍是在系統中的資源,如內存、I/O空間和中斷等,它能夠建立很是優化的系統環境,而不須要進行任何改動。在PCIe體系結構中保持這些配置空間和I/O設備鏈接的規範穩定是很是關鍵的。事實上,在PCIe平臺中,全部操做系統在引導時都不須要進行任何編輯,也就是說在軟件方面徹底能夠實現從PCI總線平穩過渡。
在軟件響應時間模式方面,PCIe體系結構支持PCI的本地存儲、共享內存模式,這樣全部PCI軟件在PCIe體系中運行都不需任何改變。固然新的軟件可能包括新的特性。