CompactPCI Hot Swap技術(shù)簡(jiǎn)析
2003/11/10
在PICMG組織的推廣下,擁有模塊化、易使用以及易維護(hù)等優(yōu)點(diǎn)的CompactPCI產(chǎn)品已經(jīng)廣泛應(yīng)用于軍事武器系統(tǒng)、航天工業(yè)、電信網(wǎng)絡(luò)、CTI等多個(gè)領(lǐng)域,而在CompactPCI的各種技術(shù)規(guī)格中,尤以熱插拔(Hot Swap)技術(shù)為最突出,也最容易吸引業(yè)界關(guān)注。
有關(guān)Hot Swap的目的及應(yīng)用,PICMG 2.1中已經(jīng)給出了詳細(xì)定義,Hot Swap最主要的目的在于,提供一種平臺(tái),使得系統(tǒng)不斷電前提下,周邊卡甚至于系統(tǒng)卡可拔出或插入,而不破壞整個(gè)系統(tǒng)的正常工作。這將有利于維修或系統(tǒng)重新組態(tài)。
Hot Swap平臺(tái)架構(gòu)
PICMG 2.1所描述的Hot Swap系統(tǒng)架構(gòu)分為Basic Hot Swap、Full Hot Swap和High Availability三類。最底層的部份是可熱插拔卡片所應(yīng)支持的硬件設(shè)計(jì),它必須有一個(gè)可以掌控卡片插拔狀態(tài)及控制Hot Swap LED芯片,在卡片熱插拔時(shí)能夠發(fā)出ENUM#訊號(hào)告知系統(tǒng)CPU卡。
中間部份為CompactPCI的背板設(shè)計(jì)。CompactPCI Bus的獨(dú)特硬件接觸界面有長(zhǎng)短針的分別,在熱插拔卡片時(shí)可以避免因?yàn)殡娫吹牟划?dāng)輸入而造成卡片損害。此外,CompactPCI背板還提供了ENUM#信號(hào)的傳遞界面,以便可使熱插拔卡和系統(tǒng)CPU卡進(jìn)行溝通。
最上層為系統(tǒng)CPU卡所必須支持的部份,它必須具有一個(gè)可以知道卡片熱插拔的界面(ENUM#或PCI Bus),并且還必須有Hot Swap Driver負(fù)責(zé)卡片熱插拔時(shí)的資源分配及卸載,否則即使CPU卡可以確定任何的卡片插拔,操作者也無(wú)法正常使用該平臺(tái)。
Hot Swap流程
在Full Hot Swap的平臺(tái)上,只有卡片的插拔需要操作員手動(dòng)操作,其余的例如信號(hào)連結(jié)、資源分配及卸載等工作,都通過(guò)硬件及軟件完成。
當(dāng)操作員插入并扣上卡片后,可熱插拔卡上的電源開(kāi)始供電并發(fā)出ENUM#信號(hào),CPU卡接收到ENUM#信號(hào)后,會(huì)先確認(rèn)PCI總線上哪張卡片剛被安插,然后將與此卡相關(guān)的資源需求安排好并加載相應(yīng)的驅(qū)動(dòng)程序,之后便可以進(jìn)入正常使用狀態(tài)。
外圍卡的拔出則剛好采取相反動(dòng)作。操作員打開(kāi)外圍卡把手,卡片會(huì)送出ENUM#信號(hào)告知系統(tǒng)CPU卡,CPU卡在接收到信號(hào)之后掃描總線上的卡,以確認(rèn)哪張卡將被拆除,并卸載此卡的驅(qū)動(dòng)程序以及相關(guān)的資源要求,最后Hot Swap Driver會(huì)再把卡片的Hot Swap LED點(diǎn)亮,告知操作員可以拔掉該外圍卡。
由插入及拔出過(guò)程,可以知道,支持熱插拔需要特殊的硬件及軟件設(shè)計(jì)。
Hot Swap的特殊硬件設(shè)計(jì)
要支持熱插拔,硬件設(shè)計(jì)上首先具有支持熱插拔的芯片,此芯片須記錄插拔的狀態(tài)、控制Hot Swap LED、反應(yīng)從卡片把手獲得的狀態(tài)改變,進(jìn)而發(fā)送ENUM#信號(hào)。這部份應(yīng)用在通常的I/O界面卡中會(huì)使用PLX芯片,而CPU外圍卡則必須依靠非透明橋(Non-Transparent Bridge)的支持,例如凌華科技的cPCI-6765就使用Intel 21555橋接器、cPCI-6810/20使用HiNT HB6橋接器。這一類型的橋接器在未來(lái)的Hot Swap平臺(tái)上會(huì)占據(jù)越來(lái)越多的比重。
另外,外圍卡的電源供應(yīng)設(shè)計(jì)必須保證卡片在插入或拔除時(shí)板卡上的所有組件不被破壞,而且PCI總線上的信號(hào)能夠同步,這些要求可通過(guò)利用背板上的長(zhǎng)短針設(shè)計(jì)完成。
與系統(tǒng)CPU卡設(shè)計(jì)的硬件最相關(guān)的是ENUM#信號(hào)的接收。不同廠商在這類設(shè)計(jì)上大多不相同,凌華科技在這方面的設(shè)計(jì)利用了GPI或中斷甚至是GPI和中斷并存的方式,
Hot Swap的特殊軟件需求
在軟件的需求上,不外乎是能夠反應(yīng)外圍卡所送來(lái)的信號(hào),并分配或移除資源給外圍卡,以及加載或卸載外圍卡驅(qū)動(dòng)程序。根據(jù)接收信號(hào)的機(jī)制,即GPI或中斷甚至于PCI總線掃描的形式,可將軟件分為輪詢(polling)以及中斷服務(wù)程序(Interrupt service routine)兩類。
Hot Swap服務(wù)程序包含了外圍卡的資源分配及卸載、驅(qū)動(dòng)程序的加載及拆除,以及Hot Swap指示燈的智能,是最復(fù)雜的功能,必須考慮到所有可能的資源分配,包含I/O端口、內(nèi)存以及中斷等。而且不同的操作系統(tǒng)有各自的處理模式,如果這一方面沒(méi)有處理好,就無(wú)法達(dá)到真正的Hot Swap目的,目前已有軟件廠商針對(duì)Hot Swap開(kāi)發(fā)出相應(yīng)的模塊套件,凌華科技也陸續(xù)開(kāi)發(fā)出基于Windows以及Linux的Hot Swap服務(wù)程序。
計(jì)算機(jī)世界網(wǎng)(www.ccw.com.cn)
相關(guān)鏈接: