PCI總線的熱插拔技術及實現
摘要:具有熱插拔PCI槽現已成為許多需要長時間不間斷工作和能夠在線維修的計算機系統的必備功能。文中介紹了熱插拔的基本技術問題,給出了利用Linear Technology公司的熱插拔電源控制芯片LTC1421來實現PCI總線熱插拔的具體電路以及工作過程。
??? 關鍵詞:PCI總線 熱插拔 LTC1421
PCI總線已經廣泛使用在高性能個人計算機和單板計算機中,由于具有32/64位的數據寬度和最高達133Mbps的帶寬,因而PCI可滿足絕大多數I/O設置的要求。但是原始的PCI規范并沒有熱插拔功能,這樣當外設插入或拔出時必須關閉系統電源。
在PCI總線應用到服務器、生命監護系統、工業控制計算機、電話交換系統的重要場合時,由于需要長時間的不間斷工作和在線維修,PCI槽的外設熱插拔能力成了必備的功能。本文給出了一個通過使用熱插拔電源控制芯片LTC1421來控制外設電源的具體方法,它是用專用雙向總線開關來緩沖數據總線的,這樣外設就可以實現熱插拔而不必關閉主電源。
1 熱插拔的基本技術問題
當外設插入時,外設上的電源旁路電容在充電時會從PCI電源上吸收很大的瞬態電流,這個瞬態電流取決于電源電壓和電源內阻以及旁路電容的容量,這樣的瞬態電流有時可以達到數安培,因而會引起接插件和電路板線條的永久損壞。該瞬態電流同時也會引起尖峰干擾,使系統中的其它外設被強制進入復位狀態。
第二個問題涉及到大多數邏輯元件系列中的輸入和輸出電路內接以電源端VCC的二極管,當外設初始未加電時,VCC輸入端到邏輯門往往位于地電位。當數據總線引腳開始接觸時,到VCC的二極管可能會將總線拉到地電位,這樣就破壞了數據線上的狀態。另外,由于電流泫經二極管會使邏輯門被鎖定,從而當電路加電時會產生輸出邏輯沖突,從而對電路造成損壞。
PCI總線熱插拔的PCI槽在主板上的電路如圖1所示。
??? 在該電路中,每個PCI槽的電源都將受LTC1421以及附加的場效應管的控制。數據總線則由幾個QS3384緩沖。由ASIC、FPGA或微處理器構成的電源控制器可以控制所有的外設電源。
電路中的12V、5V、3.3V和-12V電源由外置串聯N-FEF功率管Q1~Q4來控制。它可將串聯三極管的門極電壓控制在一定的速率上,并將從PCI電源上吸收的瞬態浪涌電流(I=C·dV/dt)控制在個安全的數值。正電源的上升速率被設定在dV/dt=20μA/C2,-12V電源由R7和C3設置,R5和Q5用于幫助更快地關閉Q2.電路R9,R11,R12用來防止潛在的高頻FET振蕩。上拉電阻R13和R14可把PWRGD和FAULT信號拉到適當的邏輯電平,其另一端所拉的電源取決于控制器所用的電源。
電壓檢測電路R1,R2和R3用來提供電流出錯保護。當R1和R2上的電壓大于50mV并超過10μs后,TLC1421電路關斷器被觸發而立即關斷所有FET,并鈄FAULT拉為低電平。電路關斷器的狀態可通過POR引腳復位。對3.3V電源的保護是通過電阻R6與R8的分壓提供的。由于-12電源的電流較低,因而未加過流保護。
串聯在數據總線內的總線開關上包含一個N溝道低電阻開關。當外設電路板插入時,該開關是斷開的,直到電源穩定后才接通。開關的輸入和輸出腳都沒有接VCC的二極管,且輸入電容也很小。
2 熱插拔PCI電路的工作過程
PCI功率控制器可以通過功率選擇位感應到電路板的插入。另外,用戶也能夠通過面板開關或鍵盤來使系統感知到控制電路板的插入。在有電路板插入時,PCI控制器保扶持RST#腳為低電位以關閉數據總線開關,然后打開POR腳,使電源以控制的速率慢慢打開。當12V電源上升到最終值的10%以內時,PWRGD信號拉高有鏟。PCI電源控制器在等待一個復位時間后拉高RST#信號,并打開總線開關。
當電路板拔出時,RST#被拉低,總線開關隨之關閉。LTC1421也通過拉低POR而關閉,經過20ms延時后外部FET關閉,電源電壓消失。
3 結束語
通過使用LTC1421和總線開關可使PCI槽實現熱插拔。這樣當外設插入或拔掉時就不用關閉系統電源,從而使得系統能夠不間斷的長時間連續工作。在這之前,許多熱插拔技術還需要模擬電路的技巧,而使用LTC1421可安全可靠的實現熱插拔,用戶所需做的僅僅是附加幾個場效應管電阻電容而已。
本文僅介紹了PCI總線熱插拔的基本電路構成,但在實際應用時還需要系統軟件的支持,包括電路故障的自動檢測和診斷、容錯系統的設計、系統的自動重構等功能。
評論
查看更多