專利名稱:一種pci雙冗余can總線卡的制作方法
技術(shù)領(lǐng)域:
:本實(shí)用新型涉及一種PCI雙冗余CAN總線卡,屬于CAN總線網(wǎng)絡(luò)控制技術(shù)及雙冗余切換技術(shù)領(lǐng)域。
技術(shù)背景:基于總線網(wǎng)絡(luò)的控制系統(tǒng),系統(tǒng)的檢錯(cuò)能力和可靠性成為了一種關(guān)鍵技術(shù)。國(guó)內(nèi)外對(duì)此進(jìn)行了很多研究,冗余技術(shù)就是其中之一。目前的技術(shù)采用軟件管理冗余,綜合當(dāng)前各種冗余管理方案,概括起來(lái)有三種:第一種是總線驅(qū)動(dòng)器級(jí)冗余,即一個(gè)CPU、一個(gè)CAN控制器和兩個(gè)物理總線驅(qū)動(dòng)器;第二種是CAN總線控制器級(jí)冗余,即一個(gè)CPU、兩個(gè)CAN控制器、兩個(gè)物理總線驅(qū)動(dòng)器;第三種是系統(tǒng)級(jí)冗余,即兩個(gè)CPU、兩個(gè)CAN控制器、兩個(gè)物理總線驅(qū)動(dòng)器。雙冗余CAN總線控制系統(tǒng),一般包括多個(gè)雙冗余CAN總線節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)具有兩個(gè)物理層線路通道。
實(shí)用新型內(nèi)容本實(shí)用新型提出的雙冗余CAN總線切換網(wǎng)絡(luò),填補(bǔ)了硬件冗余管理的空白,實(shí)現(xiàn)了真正的雙冗余切換網(wǎng)絡(luò),無(wú)需軟 件干涉冗余功能管理,只需簡(jiǎn)單的讀寫(xiě)寄存器即可,冗余管理完全由硬件實(shí)現(xiàn)。本實(shí)用新型提出一種基于CAN總線的雙冗余通信系統(tǒng),安裝有本實(shí)用新型的PCI雙冗余CAN總線卡的節(jié)點(diǎn),具有雙冗余通信的功能。本實(shí)用新型提供PCI雙冗余CAN總線卡,是基于背景技術(shù)中的第二種冗余方案即CAN總線控制器級(jí)冗余所提出的冗余解決方案,不同的是本實(shí)用新型中冗余管理由硬件邏輯實(shí)現(xiàn)。將第二種方案中的CAN控制器和CAN物理總線驅(qū)動(dòng)器均由PCI雙冗余CAN總線卡實(shí)現(xiàn),而安裝了 PCI雙冗余CAN總線卡的計(jì)算機(jī)作為第二種方案中的CPU。PCI雙冗余CAN總線卡的核心是用FPGA芯片實(shí)現(xiàn)CAN總線控制器和冗余管理。上述冗余管理的功能特征在于自動(dòng)通道狀態(tài)判斷、自動(dòng)消息發(fā)送通道選擇、自動(dòng)鎖存兩個(gè)發(fā)送通道的發(fā)送狀態(tài)。所述的自動(dòng)通道狀態(tài)判斷是輔助狀態(tài)機(jī)通過(guò)周期發(fā)送心跳消息實(shí)現(xiàn),若發(fā)送心跳消息導(dǎo)致CAN總線節(jié)點(diǎn)錯(cuò)誤被動(dòng)激活時(shí),則判定此通道故障。所述心跳消息的發(fā)送周期和內(nèi)容由寄存器設(shè)定,最大默認(rèn)發(fā)送周期是20ms。所述的自動(dòng)消息發(fā)送通道選擇是主狀態(tài)機(jī)通過(guò)判斷兩個(gè)輔助狀態(tài)機(jī)給出的通道狀態(tài)實(shí)現(xiàn)。一個(gè)消息的發(fā)送是從判斷主通道的狀態(tài)開(kāi)始的,若主通道狀態(tài)正常則從主通道發(fā)送,否則判斷備用通道的狀態(tài),若備用通道狀態(tài)正常則從備用通道發(fā)送,否則發(fā)送失敗。通道切換時(shí)間隨機(jī)分布在幾微秒到周期發(fā)送時(shí)間之間。[0014]所述的自動(dòng)鎖存兩個(gè)發(fā)送通道的發(fā)送狀態(tài)包括發(fā)送成功通道號(hào)、發(fā)送失敗通道號(hào)、消息發(fā)送消耗時(shí)間、消息切換消耗時(shí)間和消息發(fā)送狀態(tài)。本實(shí)用新型一種PCI雙冗余CAN總線卡,其結(jié)構(gòu)如圖1所示,它包含PCI接口芯片、FPGA芯片、隔離電源芯片、隔離芯片、驅(qū)動(dòng)芯片和DB9接頭,它們按序彼此相互連接。所述的PCI接口芯片,一方面通過(guò)PCB板上的布線與板上的金手指相連,另一方面通過(guò)PCB板上的布線連接到FPGA芯片上。該P(yáng)CI接口芯片采用PLX公司的PCI9030芯片,該芯片可以把PCI總線協(xié)議轉(zhuǎn)化成本地地址數(shù)據(jù)總線。PCI9030具有132MB/S的數(shù)據(jù)傳輸量、本地總線最高時(shí)鐘60MHz、支持5個(gè)本地地址范圍、4個(gè)本地總線選通信號(hào)、具有字節(jié)格式大字和小字轉(zhuǎn)換功能、支持中斷產(chǎn)生和3.3V、5V信號(hào)兼容10。使用PCI9030能夠大大減少PCI總線的開(kāi)發(fā)風(fēng)險(xiǎn),縮短產(chǎn)品的研發(fā)周期。所述的FPGA芯片,一方面通過(guò)PCB板上的布線連接到PCI接口芯片上,另一方面通過(guò)PCB板上的布線連接到隔離芯片上。該FPGA芯片采用XILINX公司的SPARTAN3系列的X3C400芯片,完成PCI本地接口和雙冗余CAN總線控制器。X3C400具有40萬(wàn)個(gè)系統(tǒng)門、56K位分布RAM、288K位集成塊RAM、16個(gè)專用乘法器、4個(gè)時(shí)鐘管理單元和141個(gè)最大可用IO數(shù)量,并具有價(jià)格低廉、應(yīng)用廣泛等特點(diǎn),成為本實(shí)用新型的最佳選擇。所述的隔離電源芯片,隔離電源芯片的電源輸入由PCI總線上的5V金手指,通過(guò)布線連接提供,隔離電源芯片的電源輸出提供電源給隔離芯片和驅(qū)動(dòng)芯片。該隔離電源芯片采用TI公司的IW隔離電源芯片DCP010505,具有輸出短路保護(hù)、過(guò)熱保護(hù)、滿負(fù)載最大75%的工作效率、1000V有效值電壓隔離和工業(yè)級(jí)工作溫度范圍等特點(diǎn)。所述的隔離芯片,一方面通過(guò)PCB板上的布線連接到FPGA芯片上,另一方面通過(guò)PCB板上的布線連接到驅(qū)動(dòng)芯片上。該隔離芯片采用Fairchild Semiconductor公司的HCPL0611,其功能是接收FPGA芯片發(fā)出的信號(hào),然后隔離后傳遞給驅(qū)動(dòng)芯片,或者接收驅(qū)動(dòng)芯片發(fā)出的信號(hào),然后隔 離后傳遞給FPGA芯片。HCPL0611是小型8腳表貼封裝,其超高的10Mbit/s傳輸速度和良好的共模抑制比能夠滿足苛刻環(huán)境的抗干擾環(huán)境需要。HCPL0611的超高傳輸速度是提高CAN總線波特率和決定總線布線長(zhǎng)度的關(guān)鍵條件。HCPL0611的工業(yè)級(jí)溫度范圍也能夠滿足工業(yè)現(xiàn)場(chǎng)環(huán)境的需要。所述的驅(qū)動(dòng)芯片,一方面通過(guò)PCB板上的布線連接到隔離芯片上,另一方面通過(guò)PCB板上的布線連接到DB9接頭上。該驅(qū)動(dòng)芯片采用Philips Semiconductors的PCA82C250,轉(zhuǎn)換CAN總線信號(hào)成為TTL信號(hào),或者轉(zhuǎn)換TTL信號(hào)成為CAN總線信號(hào)。PCA82C250具有最高IM波特率信號(hào)傳輸能力、防突變電流的總線保護(hù)措施、為減少射頻干擾的信號(hào)斜率控制、帶有寬共模范圍差分信號(hào)的接收器和過(guò)熱保護(hù),最重要的是價(jià)格低廉、應(yīng)用廣泛,從而成為CAN總線驅(qū)動(dòng)器的最佳選擇。所述的DB9接頭,是CAN總線驅(qū)動(dòng)器芯片輸出信號(hào)經(jīng)過(guò)PCB布線連接到兩個(gè)DB9連接器上。采用標(biāo)準(zhǔn)DB9孔型接插件。優(yōu)點(diǎn)及功效:本實(shí)用新型一種PCI雙冗余CAN總線卡,其優(yōu)點(diǎn)是:(一 )本實(shí)用新型采用通用高速并行PCI總線把計(jì)算機(jī)和雙冗余CAN總線控制器軟核連接起來(lái),有效提高系統(tǒng)穩(wěn)定性,同時(shí)可具有良好的用戶界面。(二)本實(shí)用新型利用FPGA實(shí)現(xiàn)硬件冗余管理,有效減少上層軟件的干預(yù),進(jìn)一步增強(qiáng)系統(tǒng)穩(wěn)定性。[0025](三)本實(shí)用新型中FPGA代碼采用可綜合的、模塊化語(yǔ)言設(shè)計(jì),便于實(shí)現(xiàn)產(chǎn)品化。
圖1本實(shí)用新型實(shí)施例中PCI雙冗余CAN總線卡的結(jié)構(gòu)圖;圖2本實(shí)用新型實(shí)施例中FPGA代碼結(jié)構(gòu)框圖;圖3本實(shí)用新型實(shí)施例中FPGA代碼結(jié)構(gòu)的CAN雙冗余管理控制器對(duì)外接口圖;圖4本實(shí)用新型實(shí)施例中FPGA代碼結(jié)構(gòu)的CAN雙冗余管理控制器數(shù)據(jù)地址總線接口讀時(shí)序圖;圖5本實(shí)用新型實(shí)施例中FPGA代碼結(jié)構(gòu)的CAN雙冗余管理控制器數(shù)據(jù)地址總線接口與時(shí)序具體實(shí)施方式
為使本實(shí)用新型的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,
以下結(jié)合附圖對(duì)本實(shí)用新型實(shí)施例作進(jìn)一步詳細(xì)說(shuō)明。實(shí)施例本實(shí)用新型提出一種PCI雙冗余CAN總線卡,其結(jié)構(gòu)如圖1所示,它包含PCI接口芯片、FPGA芯片、隔離電源芯片、隔離芯片、驅(qū)動(dòng)芯片和DB9接頭。它們按序彼此相互連接。所述的PCI接口芯片,一方面通過(guò)PCB板上的布線與板上的金手指相連,另一方面通過(guò)PCB板上的布線連接到FPGA芯片上。PCI接口芯片采用PLX公司的PCI9030芯片,該芯片可以把PCI總線協(xié)議轉(zhuǎn)化成本地地址數(shù)據(jù)總線。PCI9030具有132MB/S的數(shù)據(jù)傳輸量、本地總線最高時(shí)鐘60MHz、支持5個(gè)本地地址范圍、4個(gè)本地總線選通信號(hào)、具有字節(jié)格式大字和小字轉(zhuǎn)換功能、支持中斷產(chǎn)生和`3.3V、5V信號(hào)兼容10。使用PCI9030能夠大大減少PCI總線的開(kāi)發(fā)風(fēng)險(xiǎn),縮短產(chǎn)品的研發(fā)周期。所述的FPGA芯片,一方面通過(guò)PCB板上的布線連接到PCI接口芯片上,另一方面通過(guò)PCB板上的布線連接到隔離芯片上。該FPGA芯片采用XILINX公司的SPARTAN3系列的X3C400芯片,完成PCI本地接口和雙冗余CAN總線控制器。X3C400具有40萬(wàn)個(gè)系統(tǒng)門、56K位分布RAM、288K位集成塊RAM、16個(gè)專用乘法器、4個(gè)時(shí)鐘管理單元和141個(gè)最大可用IO數(shù)量,并具有價(jià)格低廉、應(yīng)用廣泛等特點(diǎn),成為本實(shí)用新型的最佳選擇。所述的隔離電源芯片,隔離電源芯片的電源輸入由PCI總線上的5V金手指,通過(guò)布線連接提供,隔離電源芯片的電源輸出提供電源給隔離芯片和驅(qū)動(dòng)芯片。該隔離電源芯片采用TI公司的IW隔離電源芯片DCP010505,具有輸出短路保護(hù)、過(guò)熱保護(hù)、滿負(fù)載最大75%的工作效率、1000V有效值電壓隔離和工業(yè)級(jí)工作溫度范圍等特點(diǎn)。所述的隔離芯片,一方面通過(guò)PCB板上的布線連接到FPGA芯片上,另一方面通過(guò)PCB板上的布線連接到驅(qū)動(dòng)芯片上。該隔離芯片采用Fairchild Semiconductor公司的HCPL0611,其功能是接收FPGA芯片發(fā)出的信號(hào),然后隔離后傳遞給驅(qū)動(dòng)芯片,或者接收驅(qū)動(dòng)芯片發(fā)出的信號(hào),然后隔離后傳遞給FPGA芯片。HCPL0611是小型8腳表貼封裝,其超高的10Mbit/s傳輸速度和良好的共模抑制比能夠滿足苛刻環(huán)境的抗干擾環(huán)境需要。HCPL0611的超高傳輸速度是提高CAN總線波特率和決定總線布線長(zhǎng)度的關(guān)鍵條件。HCPL0611的工業(yè)級(jí)溫度范圍也能夠滿足工業(yè)現(xiàn)場(chǎng)環(huán)境的需要。[0038]所述的驅(qū)動(dòng)芯片,一方面通過(guò)PCB板上的布線連接到隔離芯片上,另一方面通過(guò)PCB板上的布線連接到DB9接頭上。該驅(qū)動(dòng)芯片采用Philips Semiconductors的PCA82C250,轉(zhuǎn)換CAN總線信號(hào)成為TTL信號(hào),或者轉(zhuǎn)換TTL信號(hào)成為CAN總線信號(hào)。PCA82C250具有最高IM波特率信號(hào)傳輸能力、防突變電流的總線保護(hù)措施、為減少射頻干擾的信號(hào)斜率控制、帶有寬共模范圍差分信號(hào)的接收器和過(guò)熱保護(hù),最重要的是價(jià)格低廉、應(yīng)用廣泛,從而成為CAN總線驅(qū)動(dòng)器的最佳選擇。所述的DB9接頭,是CAN總線驅(qū)動(dòng)器芯片輸出信號(hào)經(jīng)過(guò)PCB布線連接到兩個(gè)DB9連接器上。采用標(biāo)準(zhǔn)DB9孔型接插件。本實(shí)用新型提出一種PCI雙冗余CAN總線卡,其FPGA代碼的CAN雙冗余管理控制器能夠作為獨(dú)立功能模塊應(yīng)用在大型FPGA代碼設(shè)計(jì)當(dāng)中,即圖2虛線部分。其包含寄存器I模塊,連接PCI接口到冗余管理模塊。設(shè)置冗余管理模塊的工作狀態(tài)、設(shè)置CAN總線通 道I的工作狀態(tài)、記錄CAN總線通道I的運(yùn)行狀態(tài)。其包含寄存器2模塊,連接PCI接口到冗余管理模塊。設(shè)置CAN總線通道2的工作狀態(tài)、記錄CAN總線通道2的運(yùn)行狀態(tài)。其包含冗余管理模塊,連接PCI接口模塊、寄存器I模塊和寄存器2模塊到兩個(gè)CAN總線位流處理器。冗余管理模塊包括3個(gè)狀態(tài)機(jī)和一些其他組合邏輯。其包含冗余管理模塊中的主狀態(tài)機(jī)功能包括:通道切換、鎖存通道切換時(shí)間、鎖存數(shù)據(jù)發(fā)送時(shí)間、鎖存消息發(fā)送狀態(tài)、鎖存發(fā)送失敗的通道號(hào)、鎖存發(fā)送成功的通道號(hào)。其包含冗余管理模塊中的輔助狀態(tài)機(jī)功能包括:消息的發(fā)送、心跳消息的發(fā)送、監(jiān)視通道狀態(tài)及與主狀態(tài)機(jī)進(jìn)行控制交換。其包含位流處理器模塊,連接冗余管理模塊和寄存器模塊到FPGA串行輸入輸出。管理CAN總線協(xié)議,例如消息發(fā)送、消息接收、錯(cuò)誤處理、消息格式產(chǎn)生與識(shí)別、消息濾除和消息存儲(chǔ)管理等。所述的CAN雙冗余管理控制器的對(duì)外接口如圖3所示,在本實(shí)施例中,對(duì)外接口分為5大部分,分別是:全局信號(hào)、數(shù)據(jù)地址總線、第一通道信號(hào)、第二通道信號(hào)和測(cè)試信號(hào)。所述的全局信號(hào)包括全局復(fù)位信號(hào),高電平輸入復(fù)位,和時(shí)鐘信號(hào),16MHz標(biāo)準(zhǔn)時(shí)鐘信號(hào)輸入。所述的數(shù)據(jù)地址總線包括讀輸入信號(hào)、寫(xiě)輸入信號(hào)、總線開(kāi)始輸入信號(hào)、總線應(yīng)答輸出信號(hào)、數(shù)據(jù)總線輸入信號(hào)、數(shù)據(jù)總線輸出信號(hào)和地址總線輸入信號(hào)。所述的FPGA內(nèi)部結(jié)構(gòu)的CAN雙冗余管理控制器數(shù)據(jù)地址總線接口讀時(shí)序圖如圖4所示,每個(gè)總線讀周期,由ads開(kāi)始,ack結(jié)束。所述的FPGA內(nèi)部結(jié)構(gòu)的CAN雙冗余管理控制器數(shù)據(jù)地址總線接口寫(xiě)時(shí)序圖如圖5所示,每個(gè)總線寫(xiě)周期,由ads開(kāi)始,ack結(jié)束。所述的第一通道信號(hào)包括:通道選擇信號(hào)chan_a_cs,CAN總線物理層信號(hào)輸入chan_a_rx_i, CAN總線物理層信號(hào)輸出chan_a_tx_o,中斷信號(hào)輸出chan_a_irq_on,時(shí)鐘信號(hào)輸出chan_a_clkout_o,狀態(tài)信號(hào)輸出chan_a_status。所述的第二通道信號(hào)包括:通道選擇信號(hào)chan_b_cs,CAN總線物理層信號(hào)輸入chan_b_rx_i, CAN總線物理層信號(hào)輸出chan_b_tx_o,中斷信號(hào)輸出chan_b_irq_on,時(shí)鐘信號(hào)輸出chan_b_clkout_o,狀態(tài)信號(hào)輸出chan_b_status。[0054]測(cè)試信號(hào),系統(tǒng)實(shí)時(shí)時(shí)鐘信號(hào)輸入sysrtc,寬度32位,最小分辨率50 y S,測(cè)試信號(hào)組I輸出testl, 寬度32位,測(cè)試信號(hào)組2輸出test2,寬度32位。
權(quán)利要求1.一種PCI雙冗余CAN總線卡,其特征在于:它包含PCI接口芯片、FPGA芯片、隔離電源芯片、隔離芯片、驅(qū)動(dòng)芯片和DB9接頭,它們按序彼此相互連接; 所述PCI接口芯片,一方面通過(guò)PCB板上的布線與板上的金手指相連,另一方面通過(guò)PCB板上的布線連接到FPGA芯片上;該P(yáng)CI接口芯片是PCI9030芯片,它把PCI總線協(xié)議轉(zhuǎn)化成本地地址數(shù)據(jù)總線; 所述FPGA芯片,一方面通過(guò)PCB板上的布線連接到PCI接口芯片上,另一方面通過(guò)PCB板上的布線連接到隔離芯片上;該FPGA芯片是X3C400芯片,完成PCI本地接口和雙冗余CAN總線控制器; 所述隔離電源芯片,是DCP010505芯片,其電源輸入由PCI總線上的5V金手指,通過(guò)布線連接提供,其電源輸出提供電源給隔離芯片和驅(qū)動(dòng)芯片; 所述隔離芯片,一方面通過(guò)PCB板上的布線連接到FPGA芯片上,另一方面通過(guò)PCB板上的布線連接到驅(qū)動(dòng)芯片上;該隔離芯片是HCPL0611芯片,它接收FPGA芯片發(fā)出的信號(hào),然后隔離后傳遞給驅(qū)動(dòng)芯片,或者接收驅(qū)動(dòng)芯片發(fā)出的信號(hào),然后隔離后傳遞給FPGA芯片; 所述驅(qū)動(dòng)芯片,一方面通過(guò)PCB板上的布線連接到隔離芯片上,另一方面通過(guò)PCB板上的布線連接到DB9接頭上;該驅(qū)動(dòng)芯片是PCA82C250芯片,它轉(zhuǎn)換CAN總線信號(hào)成為TTL信號(hào),或者轉(zhuǎn)換TTL信號(hào)成為CAN總線信號(hào); 所述DB9接頭,是CAN總線驅(qū)動(dòng)器芯片輸出信號(hào)經(jīng)過(guò)PCB布線連接到兩個(gè)DB9連接器上,采用標(biāo)準(zhǔn)DB9孔 型接插件。
專利摘要一種PCI雙冗余CAN總線卡,它包含PCI接口芯片、FPGA芯片、隔離電源芯片、隔離芯片、驅(qū)動(dòng)芯片和DB9接頭,它們按序彼此相互連接;所述PCI接口芯片是PCI9030芯片,所述FPGA芯片是X3C400芯片,所述隔離電源芯片是DCP010505芯片,所述隔離芯片是HCPL0611芯片,所述驅(qū)動(dòng)芯片是PCA82C250芯片,所述DB9接頭是采用標(biāo)準(zhǔn)DB9孔型接插件。本實(shí)用新型設(shè)計(jì)的PCI雙冗余CAN總線卡,實(shí)現(xiàn)了真正的雙冗余切換網(wǎng)絡(luò),無(wú)需軟件干涉冗余功能管理,只需簡(jiǎn)單的讀寫(xiě)寄存器即可,冗余管理完全由硬件實(shí)現(xiàn),它填補(bǔ)了硬件冗余管理的空白。
文檔編號(hào)G06F13/40GK203102275SQ20132011053
公開(kāi)日2013年7月31日 申請(qǐng)日期2013年3月12日 優(yōu)先權(quán)日2013年3月12日
發(fā)明者袁慧梅, 韓相東 申請(qǐng)人:首都師范大學(xué)