某些特殊的應用場合可能要求PCIe設備能夠以高可靠性持續不間斷運行,為此,PCIe總線采用熱插拔(Hot Plug)和熱切換(Hot Swap)技術,來實現不關閉系統電源的情況下更換PCIe卡設備。
注:本文將簡單地介紹一下PCIe總線的熱插拔機制,關于熱切換(Hot Swap),請參考PCIe Spec的相關章節。
PCIe總線的熱插拔主要指的是PCIe卡設備的熱插拔,以及相關的實現機制等。PCIe卡有兩個用于熱插拔機制的邊帶信號——PRSNT1#和PRSNT2#。PCIe卡設備上的這兩個信號之間是短路的,PCIe插槽的PRSNT1#被固定地連接到地,PRSNT2#則被上拉。且這兩個信號的金手指長度要比其他的信號的金手指長度要短一點。如下圖所示,當PCIe卡設備未被完全插入插槽時,插槽的PRSNT2#信號由于上拉的作用,將一直處于高點平狀態。當PCIe卡設備被完全插入插槽后,插槽上的PRSNT2#信號則會被PCIe卡設備的短路線連接到地,從而使得其變為低電平。換句話說,從插槽的角度看,當PRSNT2#位高電平時,則認為PCIe卡設備未能正確插入或者無PCIe卡設備;當PRSNT2#位低電平時,表明PCIe卡設備被正確地插入插槽中。
注:PCIe總線除了有一個Base Spec之外,還有一個關于PCIe卡設備的Spec——PCIe Card ElectroMechanical Spec(CEM)。
與PCI總線不同,PCIe總線采用的是點到點的連接(Point-to-Point Connections),因此其并不像PCI總線那樣需要用于卡設備的隔離邏輯(Isolation Logic),但是每個端口(橋設備中的,如Root和Switch)都必須包含一個獨立的熱插拔控制器(Hot Plug Controller),如下圖所示:
當然,熱插拔不僅僅是硬件的事,其需要軟硬件協同實現。要想實現熱插拔功能,操作系統、主板熱插拔驅動器、PCIe卡設備驅動以及PCIe卡硬件功能都必須支持熱插拔,缺一不可。從PCIe卡設備硬件功能的角度來看,其需要支持Quiesce命令、Pause命令(可選)、Start命令和Resume命令。
橋設備(Switch等)中還需要支持熱插拔控制器(Hot Plug Controller),如下圖所示,這里就不詳細介紹了。具體請參考PCIe Spec相關章節內容。
配置空間中,與熱插拔相關的寄存器如下圖所示:
-
總線
+關注
關注
10文章
2881瀏覽量
88090 -
PCIe
+關注
關注
15文章
1239瀏覽量
82658
原文標題:【博文連載】PCIe掃盲——熱插拔簡要介紹
文章出處:【微信號:ChinaAET,微信公眾號:電子技術應用ChinaAET】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論