以太網(wǎng)(Ethernet)作為應(yīng)用最廣泛的局域網(wǎng)技術(shù)異軍突起,,已經(jīng)迅速走向工業(yè)自動化控制領(lǐng)域的前臺,。CPCI總線系統(tǒng)插槽有限,設(shè)計基于CPCI總線的多網(wǎng)口卡可節(jié)省空間,,又可以滿足狀態(tài)監(jiān)測及故障診斷系統(tǒng)要求的實時和大數(shù)據(jù)量傳輸,。
1 模塊總體設(shè)計
該模塊采用CPCI并行總線進行設(shè)計。圖1給出該模塊總體設(shè)計框圖,,其中,,通過PCI橋擴展總線分別連接4片INTEL82551,由于INTEL82551內(nèi)部已集成PCI接口,,PCI橋可實現(xiàn)與INTEL82551之間的無縫連接,。J1和J2為CPCI的接口插件。
2 CPCI總線結(jié)構(gòu)模塊
2.1 原理和結(jié)構(gòu)
在1條PCI總線上如果連接過多的電氣負載或設(shè)備,,總線不能正常工作,。通過在系統(tǒng)內(nèi)另外增加1條或多條PCI總線,問題可以得到解決,。在系統(tǒng)內(nèi)擴展另1條PCI總線,,唯一的方法是使用PCI-PCI(即P2P)橋進行系統(tǒng)擴展。P2P橋是特殊的PCI設(shè)備,,可把系統(tǒng)中的PCI總線粘合在一起,。P2P橋在系統(tǒng)中連接主從兩條PCI總線,,它作為上一級總線的一個負載,通過對PCI信號的重新驅(qū)動和仲裁,,而向下可以驅(qū)動一個總線段,。
其作用是協(xié)調(diào)2條PCI總線之間的數(shù)據(jù)傳輸,監(jiān)視在這兩條PCI總線上啟動的所有交易,,并決定是否將交易傳送通過另一條PCI總線,。當橋確定將一條總線上的交易傳送到另一條總線時,橋必須充當交易總線的總線目標,,以及交易的目的總線的主設(shè)備,。系統(tǒng)設(shè)計者也可以安裝多個P2P橋。
2.2 PCI2050B簡介
根據(jù)系統(tǒng)集成的特性,,這里選擇TI公司的PCI2050B橋接器來實現(xiàn)P2P橋,。PCI2050B屬于透明的PCI-PCI橋,在2個32位最高工作頻率66 MHz的PCI總線之間提供橋連接,。該橋支持突發(fā)模式(burstmode transfers),極大增加了數(shù)據(jù)的吞吐量,,橋的總線數(shù)據(jù)路徑(tmstraffic paths)獨立工作,。橋的主、從總線分別可以工作在3.3 V或者5 V的環(huán)境下,,而橋的核心邏輯工作在3.3 V,,以減少功耗。主機軟件通過內(nèi)部寄存器對橋進行操作,。通過內(nèi)部寄存器既可以得到標準PCI的狀態(tài),,也可以對主、從總線進行控制,。橋的PCI配置頭只能通過主PCI接口來操作,。PC-I2050B帶9個從總線,除了為每個從總線提供內(nèi)部仲裁外,,也可為系統(tǒng)提供外部仲裁,。PCI2050B提供10個從側(cè)時鐘輸出。
2.3 PCI橋的設(shè)計
根據(jù)該模塊總體設(shè)計框圖,,系統(tǒng)設(shè)計需要注意以下幾個方面,。
2.3.1 時鐘設(shè)計
圖2為PCI2050B的時鐘設(shè)計框圖。
該時鐘設(shè)計要點如下:
1)PCI2050B有2個獨立的時鐘域,,主接口受主側(cè)輸入時鐘P_CLK的控制,,從接口受從側(cè)輸入時鐘S_CLK的控制。這2個時鐘相互獨立,,但保持同步,,而且從側(cè)的時鐘頻率不能高于主側(cè)的時鐘頻率,。P_CLK與S_CLK最大延時不得超過7ns,S_CLK不能超前P_CLK,。
2)PCI2050B的從側(cè)有10個時鐘輸出S-clkout[9:0],,其中9個時鐘輸出可以供給擴展的PCI槽,為保證時鐘輸出同步,,另1個必須反饋給從側(cè)的輸入時鐘S_CLK,,每一個時鐘只能驅(qū)動一個負載。
3)為了減小時鐘的信號反射,,輸出到擴展槽的9個時鐘輸出必須在起始端加串聯(lián)電阻匹配,,匹配電阻阻值與電路板特征阻抗大小有關(guān),對65 Ω的傳輸線,,選用50 Ω串聯(lián)匹配電阻,。
4)為了減小這些時鐘之間的抖動(skew),供給擴展槽(或擴展設(shè)備)的9根時鐘線(9個S_clkout)與S_CLK必須等長,。所以,,從S_clkout[9]輸出反饋至S_CLK的時鐘線長度應(yīng)等于從PCI2050B的時鐘輸出引腳到擴展設(shè)備的時鐘線的總長。本模塊擴展4個網(wǎng)口,,使用PCI2050B從側(cè)的4個輸出時鐘,,在PCB布線中這4根時鐘線與反饋時鐘線必須等長。
2.3.2 中斷設(shè)計和IDSEL映射
PCI2050B支持9個從設(shè)備,,在初始化配置空間讀寫時,,PCI2050B作為上一級PCI總線的操作對象,提供了IDSEL引腳進行器件選擇,,該引腳可以連接到高24位PCI總線中的任意一根,。同時,為了減少地址線的容性負載,,需要在該信號連線上串接一只1 kΩ的電阻,。本模塊僅擴展一級總線,PCI2050B主側(cè)的IDSEL引腳直接連接到CPCI插座J1的IDSEL,。對于二級總線側(cè)的PCI器件(本模塊為INTEL82551),,其IDSEL引腳經(jīng)過1 kΩ的電阻連接到PCI2050B的S_AD31S_ADl6引腳的任意一根。來自從側(cè)上的設(shè)備的INT線不通過橋,。如果橋位于一個插入卡上,,從側(cè)設(shè)備的中斷線直接接到連接器的中斷引腳(INTA#~INTD#)。本模塊中,,PCI2050B是一個橋設(shè)備,,INTEL82551的中斷引腳直接連接到J1的中斷引腳。所有從設(shè)備的中斷線的連接與設(shè)備編號(即IDSEL線的連接)有綁定關(guān)系,對應(yīng)關(guān)系如表1所示,。4片INTEL8255l的IDSEL引腳分別連接到S_AD28,、S-AD29、S_AD30和S_AD31,,對應(yīng)的設(shè)備編號為12,、13、14,、15,,則器件的中斷引腳INT#對應(yīng)連接到J1的INTA#、INTB#,、INTC#,、INTD#。
2.3.3 PCI2050B工作模式的選擇
PCI2050B有3種工作模式可供選擇:TI CPCI熱插拔模式,、電源管理模式和INTEL 21150兼容模式,。選擇引腳分別為MSO,MSl,,模式選擇定義如表2所示,。
根據(jù)CPCI總線應(yīng)用設(shè)計的需要,筆者選擇了TI CPCI熱插拔工作模式,。當PCI2050B選擇TI CPCI熱插拔工作模式時,,為了確保熱插拔邏輯的正常工作,要求必須將HS_SWICH/GPI03引腳和HSENUM引腳上拉,,同時,由于沒有使用PCI2050B的關(guān)于GPI0引腳,,且因為這些引腳在缺省條件下定義為輸入腳,,為了避免誤觸發(fā),將這些引腳全部上拉,。
3 以太網(wǎng)接口
本網(wǎng)卡使用4片INTEL82551,、4片EEPROM 93C46和4片PE68515實現(xiàn)4路以太網(wǎng)網(wǎng)絡(luò)接口。INTEL82551是Intel公司的一款高集成的以太網(wǎng)控制器,,其主要功能是實現(xiàn)以太網(wǎng)幀的收發(fā),。它集成了10Base-T/lOOBase-T MAC控制器和10Base-T/100Base-T PHY控制器,支持數(shù)據(jù)的全雙工或半雙工傳輸,,支持自動協(xié)商,,支持10/100 Mb/s傳輸速率,支持流控機制,。
3.1 INTEL82551與PCI橋的接口設(shè)計
每片INTEL82551的CPCI總線信號連接到PCI2050B的從側(cè),,應(yīng)特別注意的是信號IDSEL和INT#根據(jù)表1一一對應(yīng),否則模塊插到系統(tǒng)槽上,,系統(tǒng)不能正確驅(qū)動模塊,。其中1路器件的電路連接,,如圖3所示。器件的IDSEL連接到S_AD31上,,則器件的中斷INT#連接到J1的INTD#上,。
3.2 Intel82551與傳輸介質(zhì)接口
使用4片PE68515和4個RJ-45實現(xiàn)傳輸介質(zhì)接口。每一路接口電路連接,,如圖4所示,。
3.3 網(wǎng)卡調(diào)試
PCB電裝完后,檢查各器件及其他電路是否有虛焊,,網(wǎng)卡插于CPCI機箱插槽,,在系統(tǒng)設(shè)備管理器中可看到模塊屬性,如IDSEL連接AD31,,則屬性為PCI SLOTl(PCI總線N,,設(shè)備15,功能O)(N為總線編號),。用EEUPDATE對網(wǎng)卡配置后,,模塊可正常收發(fā)數(shù)據(jù)。
4 結(jié)束語
本四網(wǎng)口模塊符合PCI2.2規(guī)范,,已成功應(yīng)用于3U CPCI機箱的Windows平臺,。根據(jù)需要可擴展為八網(wǎng)口的CPCI卡,此系列基于CPCI多網(wǎng)口卡,,可廣泛用于各類測試設(shè)備,、有線通信等領(lǐng)域。