cPCI臺熱切換原理和實(shí)現(xiàn)
發(fā)布時(shí)間:2008/5/27 0:00:00 訪問次數(shù):776
    
    
     摘要:描述了cpci平臺實(shí)現(xiàn)熱切換的動作機(jī)制,引入一種方法將cpci設(shè)備熱插拔動作轉(zhuǎn)為獨(dú)享中斷,用led指示處理進(jìn)程,并給出依此方法實(shí)現(xiàn)無控制臺進(jìn)行全熱切換的軟硬件設(shè)計(jì)方案。 關(guān)鍵詞:cpci 熱切換 即插即用 設(shè)備驅(qū)動中斷服務(wù)程序 cpci(即compact pci)是picmig制定的、更加堅(jiān)固耐用的pci版本,廣泛應(yīng)用于工業(yè)和嵌入式控制系統(tǒng)中。它在電氣、邏輯和軟件功能方面與pci完全兼容。除機(jī)械特性不一致外,cpci與pci最大的差別在于cpci具有支持熱切換(hotswap)的能力。隨著電子產(chǎn)品成本的下降和市場對工業(yè)產(chǎn)品尤其是電信應(yīng)用產(chǎn)品可靠性要求的提高,基于cpci平臺的設(shè)計(jì)逐漸成為電信設(shè)備廠商的首選。1 cpci熱切換原理1.1 熱切換基礎(chǔ) cpci標(biāo)準(zhǔn)定義的機(jī)械、電氣特性是實(shí)現(xiàn)熱切換的基礎(chǔ)。它采用的連接器符合iec917和iec1074-101標(biāo)準(zhǔn),其插針引腳分別有最長、中長、最短三種長度。當(dāng)插入一個(gè)卡到插槽時(shí),首先最長的引腳(電源和地)被連接,卡邏輯將所有pci信號引腳預(yù)設(shè)到一個(gè)固定電平1v;接著是中長度引腳的pci信號連接,這些信號的電平已經(jīng)固定且尚未開始,不會對系統(tǒng)造成干擾;最后才輪到最短的此腳,即bd_sel#信號連接,告知卡邏輯可以開始工作?ò纬龅捻樞蛘孟喾,bd_sel#首先斷開,pci信號被調(diào)整到一固定電平,最后才斷開電源和地信號。在電路方面,cpci增加一個(gè)enum#信號,即系統(tǒng)枚舉信號。當(dāng)一個(gè)cpci設(shè)備卡被插入或拔出時(shí),enum#被激活。 除cpci本身的特性以外,要實(shí)現(xiàn)熱切換,具有支持即插即用(pnp)的操作系統(tǒng)也是必要條件之一,只有支持pnp才能實(shí)現(xiàn)設(shè)備驅(qū)動程序的動態(tài)安裝和卸載。1.2 三種層次熱切換1.2.1 基本熱切換最基本的熱切換方式需要用戶干預(yù)。用戶通過控制臺通知os(操作系統(tǒng))即將進(jìn)行設(shè)備卡插入或拔出。當(dāng)插入一個(gè)卡時(shí),其詳細(xì)流程如下:(a)通過系統(tǒng)界面,用戶通知os即將在一個(gè)槽中插入一個(gè)卡;(b)用戶插入卡,對卡完成上電初始化;(c)用戶通知系統(tǒng),卡已經(jīng)插入,要求os重新枚舉總線;(d)os執(zhí)行總線枚舉,確定新卡需要的資源;(e)os對卡的pci配置寄存器編程,向其分配資源;(f)os裝入適當(dāng)?shù)脑O(shè)備驅(qū)動程序,并調(diào)用其初始化代碼;(g)設(shè)備驅(qū)動程序初始化完成,卡開始工作。 當(dāng)拔出一個(gè)卡時(shí),流程類似,需要用戶預(yù)先通知os將要拔出設(shè)備卡,os卸載設(shè)備驅(qū)動程序并回收設(shè)備資源后,才能拔出設(shè)備。1.2.2 全熱切換 全熱切換是在基本熱切換的基礎(chǔ)上,在卡的插入/拔出機(jī)構(gòu)中添加一個(gè)微開關(guān)裝置。這個(gè)開關(guān)藏在手柄中。當(dāng)cpci卡被插入或拔出時(shí),在卡開始或?üぷ髦,微開關(guān)首先改變狀態(tài),產(chǎn)生enum#信號,該信號通過某種途徑通知os將要插入或拔出一個(gè)卡,os再執(zhí)行總線枚舉、安裝驅(qū)動程序或卸載驅(qū)動程序等動作。1.2.3 高可用性熱切換 高可用性熱切換是在全熱切換的基礎(chǔ)上建立的。它要求在系統(tǒng)卡和每個(gè)設(shè)備卡之間實(shí)現(xiàn)點(diǎn)對點(diǎn)的rst#和信號隔離。這使os可以自動隔離一個(gè)壞卡,然后將一個(gè)替代卡(已經(jīng)安裝)啟動,接著壞卡繼續(xù)工作。所以它通常也稱作無縫切換或無間斷切換,是一種冗余設(shè)計(jì)方案。 三種熱切換的自動化層次不同,實(shí)現(xiàn)的復(fù)雜程度也各有不同。下面介紹一種支持全熱切換的cpci平臺的hotswap子系統(tǒng)實(shí)現(xiàn)方案,對其硬件電路和軟件設(shè)計(jì)分別進(jìn)行介紹。2 cpci熱切換子系統(tǒng)硬件實(shí)現(xiàn)2.1 橋接芯片 在硬件電路上需要一兼容cpci規(guī)范的pci-to-pci的橋接芯片,以便熱插拔卡時(shí)實(shí)現(xiàn)引腳控制邏輯和支持全熱切換功能。以plx pci6150為例,它提供一個(gè)hotswap寄存器,記錄設(shè)備插拔狀態(tài),其定義如表1所示。表1 hotswap寄存器定義dha:device hiding arm,設(shè)備隱藏處理,在設(shè)備卡剛插入尚未正常工作前或被驅(qū)動程序停止之間可隱藏后級總線設(shè)備。eim:enable or disable enum#,使能或禁止enum#輸出。pif:pending insert or extrace act,暫時(shí)掛起插入或者拔出動作。loo:len on or off,led指示控制,與芯片的led引腳相對應(yīng)。pi:programming interface,可編程接口,軟件觸發(fā)插入/拔出等動作。ext:extraction state,拔出狀態(tài)位,當(dāng)微開關(guān)斷開時(shí),此狀態(tài)位為1。ins:insertion state,插入狀態(tài)位,在pci6150上電復(fù)位成功后,此狀態(tài)位為1。2.2 硬件電路邏輯 系統(tǒng)卡電路在邏輯上就是一普遍pc主機(jī)板,它與熱切換相關(guān)的部分集中在對來自cpci連接器的enum#信號的處理。在設(shè)計(jì)時(shí),將它接在系統(tǒng)板super i/o芯片winbond w83627hf的irqin0引腳,以擴(kuò)展中斷輸入的isa中斷方式實(shí)現(xiàn)。這樣設(shè)計(jì)的好處是:可避免與其它pci設(shè)備共享中斷,而獨(dú)點(diǎn)一個(gè)中斷以保證中斷的響應(yīng)速度;該引腳輸入是可編程的,可根據(jù)系統(tǒng)的中斷使用情況分配任意空閑中斷;而且該中斷可以不掛靠任何物理設(shè)備而獨(dú)立存在,這樣驅(qū)動
    
    
     摘要:描述了cpci平臺實(shí)現(xiàn)熱切換的動作機(jī)制,引入一種方法將cpci設(shè)備熱插拔動作轉(zhuǎn)為獨(dú)享中斷,用led指示處理進(jìn)程,并給出依此方法實(shí)現(xiàn)無控制臺進(jìn)行全熱切換的軟硬件設(shè)計(jì)方案。 關(guān)鍵詞:cpci 熱切換 即插即用 設(shè)備驅(qū)動中斷服務(wù)程序 cpci(即compact pci)是picmig制定的、更加堅(jiān)固耐用的pci版本,廣泛應(yīng)用于工業(yè)和嵌入式控制系統(tǒng)中。它在電氣、邏輯和軟件功能方面與pci完全兼容。除機(jī)械特性不一致外,cpci與pci最大的差別在于cpci具有支持熱切換(hotswap)的能力。隨著電子產(chǎn)品成本的下降和市場對工業(yè)產(chǎn)品尤其是電信應(yīng)用產(chǎn)品可靠性要求的提高,基于cpci平臺的設(shè)計(jì)逐漸成為電信設(shè)備廠商的首選。1 cpci熱切換原理1.1 熱切換基礎(chǔ) cpci標(biāo)準(zhǔn)定義的機(jī)械、電氣特性是實(shí)現(xiàn)熱切換的基礎(chǔ)。它采用的連接器符合iec917和iec1074-101標(biāo)準(zhǔn),其插針引腳分別有最長、中長、最短三種長度。當(dāng)插入一個(gè)卡到插槽時(shí),首先最長的引腳(電源和地)被連接,卡邏輯將所有pci信號引腳預(yù)設(shè)到一個(gè)固定電平1v;接著是中長度引腳的pci信號連接,這些信號的電平已經(jīng)固定且尚未開始,不會對系統(tǒng)造成干擾;最后才輪到最短的此腳,即bd_sel#信號連接,告知卡邏輯可以開始工作?ò纬龅捻樞蛘孟喾,bd_sel#首先斷開,pci信號被調(diào)整到一固定電平,最后才斷開電源和地信號。在電路方面,cpci增加一個(gè)enum#信號,即系統(tǒng)枚舉信號。當(dāng)一個(gè)cpci設(shè)備卡被插入或拔出時(shí),enum#被激活。 除cpci本身的特性以外,要實(shí)現(xiàn)熱切換,具有支持即插即用(pnp)的操作系統(tǒng)也是必要條件之一,只有支持pnp才能實(shí)現(xiàn)設(shè)備驅(qū)動程序的動態(tài)安裝和卸載。1.2 三種層次熱切換1.2.1 基本熱切換最基本的熱切換方式需要用戶干預(yù)。用戶通過控制臺通知os(操作系統(tǒng))即將進(jìn)行設(shè)備卡插入或拔出。當(dāng)插入一個(gè)卡時(shí),其詳細(xì)流程如下:(a)通過系統(tǒng)界面,用戶通知os即將在一個(gè)槽中插入一個(gè)卡;(b)用戶插入卡,對卡完成上電初始化;(c)用戶通知系統(tǒng),卡已經(jīng)插入,要求os重新枚舉總線;(d)os執(zhí)行總線枚舉,確定新卡需要的資源;(e)os對卡的pci配置寄存器編程,向其分配資源;(f)os裝入適當(dāng)?shù)脑O(shè)備驅(qū)動程序,并調(diào)用其初始化代碼;(g)設(shè)備驅(qū)動程序初始化完成,卡開始工作。 當(dāng)拔出一個(gè)卡時(shí),流程類似,需要用戶預(yù)先通知os將要拔出設(shè)備卡,os卸載設(shè)備驅(qū)動程序并回收設(shè)備資源后,才能拔出設(shè)備。1.2.2 全熱切換 全熱切換是在基本熱切換的基礎(chǔ)上,在卡的插入/拔出機(jī)構(gòu)中添加一個(gè)微開關(guān)裝置。這個(gè)開關(guān)藏在手柄中。當(dāng)cpci卡被插入或拔出時(shí),在卡開始或?üぷ髦,微開關(guān)首先改變狀態(tài),產(chǎn)生enum#信號,該信號通過某種途徑通知os將要插入或拔出一個(gè)卡,os再執(zhí)行總線枚舉、安裝驅(qū)動程序或卸載驅(qū)動程序等動作。1.2.3 高可用性熱切換 高可用性熱切換是在全熱切換的基礎(chǔ)上建立的。它要求在系統(tǒng)卡和每個(gè)設(shè)備卡之間實(shí)現(xiàn)點(diǎn)對點(diǎn)的rst#和信號隔離。這使os可以自動隔離一個(gè)壞卡,然后將一個(gè)替代卡(已經(jīng)安裝)啟動,接著壞卡繼續(xù)工作。所以它通常也稱作無縫切換或無間斷切換,是一種冗余設(shè)計(jì)方案。 三種熱切換的自動化層次不同,實(shí)現(xiàn)的復(fù)雜程度也各有不同。下面介紹一種支持全熱切換的cpci平臺的hotswap子系統(tǒng)實(shí)現(xiàn)方案,對其硬件電路和軟件設(shè)計(jì)分別進(jìn)行介紹。2 cpci熱切換子系統(tǒng)硬件實(shí)現(xiàn)2.1 橋接芯片 在硬件電路上需要一兼容cpci規(guī)范的pci-to-pci的橋接芯片,以便熱插拔卡時(shí)實(shí)現(xiàn)引腳控制邏輯和支持全熱切換功能。以plx pci6150為例,它提供一個(gè)hotswap寄存器,記錄設(shè)備插拔狀態(tài),其定義如表1所示。表1 hotswap寄存器定義dha:device hiding arm,設(shè)備隱藏處理,在設(shè)備卡剛插入尚未正常工作前或被驅(qū)動程序停止之間可隱藏后級總線設(shè)備。eim:enable or disable enum#,使能或禁止enum#輸出。pif:pending insert or extrace act,暫時(shí)掛起插入或者拔出動作。loo:len on or off,led指示控制,與芯片的led引腳相對應(yīng)。pi:programming interface,可編程接口,軟件觸發(fā)插入/拔出等動作。ext:extraction state,拔出狀態(tài)位,當(dāng)微開關(guān)斷開時(shí),此狀態(tài)位為1。ins:insertion state,插入狀態(tài)位,在pci6150上電復(fù)位成功后,此狀態(tài)位為1。2.2 硬件電路邏輯 系統(tǒng)卡電路在邏輯上就是一普遍pc主機(jī)板,它與熱切換相關(guān)的部分集中在對來自cpci連接器的enum#信號的處理。在設(shè)計(jì)時(shí),將它接在系統(tǒng)板super i/o芯片winbond w83627hf的irqin0引腳,以擴(kuò)展中斷輸入的isa中斷方式實(shí)現(xiàn)。這樣設(shè)計(jì)的好處是:可避免與其它pci設(shè)備共享中斷,而獨(dú)點(diǎn)一個(gè)中斷以保證中斷的響應(yīng)速度;該引腳輸入是可編程的,可根據(jù)系統(tǒng)的中斷使用情況分配任意空閑中斷;而且該中斷可以不掛靠任何物理設(shè)備而獨(dú)立存在,這樣驅(qū)動
熱門點(diǎn)擊
- AMCCS5933在PCI板卡設(shè)計(jì)中的應(yīng)用
- 功率驅(qū)動器件與MCU/DSC的接口電路設(shè)計(jì)技
- USB端口的EMC解決方案
- TMS320F2812擴(kuò)展正交解碼脈沖接口的
- 可編程多協(xié)議收發(fā)器MAX3160的原理與應(yīng)用
- HD7279A的原理與應(yīng)用
- 基于AVR單片機(jī)SPI的串行ADC接口設(shè)計(jì)
- NRZ-HDB3碼制轉(zhuǎn)換器設(shè)計(jì)
- 基于IP核的PCI總線接口設(shè)計(jì)與實(shí)現(xiàn)
- 基于USB接口的同步視頻輸出系統(tǒng)設(shè)計(jì)
推薦技術(shù)資料
- 電磁與聲學(xué)結(jié)合混合濾波技術(shù)(H
- 超高性能芯片式電磁濾波技術(shù)(S
- 紫、藍(lán)、綠光激光二極管工藝封測
- SPICE模型ROHM Lev
- 高性能碳化硅(SiC)MOS功
- 新一代光纖通信的光收發(fā)器接收器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究