《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于CPCI的車載多通道調(diào)試系統(tǒng)
基于CPCI的車載多通道調(diào)試系統(tǒng)
來源:電子技術(shù)應(yīng)用2014年第2期
李 震
(中國北車集團(tuán)青島四方車輛研究所, 山東 青島 266031)
摘要: 車載設(shè)備在開發(fā)和調(diào)試過程中需要對(duì)設(shè)備的運(yùn)行狀態(tài)進(jìn)行檢測(cè)。在車運(yùn)行狀態(tài)下實(shí)現(xiàn)設(shè)備內(nèi)部變量的檢測(cè)和調(diào)試信號(hào)的產(chǎn)生往往比較麻煩。文中提出的車載多通道調(diào)試系統(tǒng)是一種基于CPCI總線的嵌入式調(diào)試系統(tǒng),它可以根據(jù)系統(tǒng)需求將設(shè)備內(nèi)部變量的狀態(tài)轉(zhuǎn)換成模擬量信號(hào)實(shí)時(shí)輸出,方便對(duì)設(shè)備工況的檢測(cè)。同時(shí),車載多通道調(diào)試系統(tǒng)可以輸出設(shè)定波形和頻率的調(diào)試波形,方便對(duì)系統(tǒng)的調(diào)試。
中圖分類號(hào): U229
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)02-0071-03
Onboard multichannel debug system based on CPCI
Li Zhen
Qingdao Sifang Rolling Stock Research Institute Co., Ltd, Qingdao 266031, China
Abstract: The status of onboard device needs to be detected during development and debug process. However, it’s hard to detect onboard device’s internal variables during train running. This paper represents an embedded debug system based on PCI bus. It can transfer the onboard device’s internal variables into real-time analog signals, which facilitates the detection of onboard device’s status. It can also output specified waveform that is beneficial to debug process.
Key words : CPCI bus; debug system; embedded; multi-channel

    鐵路電子機(jī)箱設(shè)備內(nèi)部通常有復(fù)雜的內(nèi)部數(shù)據(jù),特別是在實(shí)時(shí)控制領(lǐng)域,往往需要對(duì)內(nèi)部的模擬量計(jì)算值或者檢測(cè)值進(jìn)行快速的檢測(cè),以驗(yàn)證模擬量計(jì)算值或檢測(cè)值的正確性。目前主要的調(diào)試方法有:使用仿真器在線調(diào)試、使用串口調(diào)試、直接使用萬用表和示波器連接接線電纜調(diào)試。
    依靠仿真器對(duì)板卡處理器內(nèi)部變量的運(yùn)行情況進(jìn)行檢測(cè)在現(xiàn)場(chǎng)調(diào)試使用中較為局限。一方面仿真器只能針對(duì)某特定類型處理器,在實(shí)時(shí)性和快速性要求很高的情況下,仿真器的檢測(cè)速度將無法達(dá)到調(diào)試需求,特別在變量較多的情況下,內(nèi)部變量的檢測(cè)具有較大時(shí)滯性。另一方面在很多機(jī)箱應(yīng)用場(chǎng)合仿真器連接很不方便,甚至根本無法連接。
 使用串口調(diào)試的方法較為普遍。通過串口將設(shè)備內(nèi)部信息輸出到PC,通過串口調(diào)試助手或上位機(jī)軟件觀測(cè)變量。這種方法在檢測(cè)單個(gè)變量的情況下十分方便,但在多路變量實(shí)時(shí)檢測(cè)時(shí)具有較大時(shí)滯性。檢測(cè)變量越多,占處理器資源也就越多,會(huì)影響設(shè)備的實(shí)時(shí)性能。
    使用萬用表和示波器連接接線電纜調(diào)試是現(xiàn)場(chǎng)調(diào)試最為常用的方法。這種檢測(cè)方法較為直觀,但其對(duì)應(yīng)用場(chǎng)合的限制較多。一方面受到現(xiàn)場(chǎng)連接器的限制,另一方面對(duì)多路信號(hào)同時(shí)檢測(cè)時(shí)十分不便,而且在一些高壓場(chǎng)合無法進(jìn)行接線。
    PCI總線是一種先進(jìn)的局部總線,CPCI總線在PCI局部總線的基礎(chǔ)上使用標(biāo)準(zhǔn)針孔連接器,更適用于高可靠性應(yīng)用場(chǎng)合[1]。具有高可靠性、高帶寬、高開發(fā)性和可熱插拔的特點(diǎn)[2-3]。支持132 MB/s的峰值速度(32位總線寬度),延時(shí)時(shí)間只需60 ns(33 MHz),并且支持66 MHz的工作頻率。非常適合大容量實(shí)時(shí)系統(tǒng)的數(shù)據(jù)傳輸[4]。
    車載多通道調(diào)試系統(tǒng)內(nèi)嵌于設(shè)備機(jī)箱,對(duì)外有32路調(diào)試接口。可實(shí)現(xiàn)32路調(diào)試接口同時(shí)高速輸出而不影響系統(tǒng)性能。使用示波器連接32路調(diào)試接口就可以實(shí)現(xiàn)觀測(cè)。同時(shí),車載電子設(shè)備在實(shí)際調(diào)試中往往需要調(diào)試信號(hào)的輸入。這種輸入信號(hào)主要通過信號(hào)發(fā)生器提供,信號(hào)發(fā)生器需要交流市電才可工作,在現(xiàn)場(chǎng)調(diào)試中使用十分不便。而使用車載多通道調(diào)試系統(tǒng)可以有效解決此問題。
1 系統(tǒng)構(gòu)成
    車載多通道調(diào)試系統(tǒng)由調(diào)試板卡和配置軟件構(gòu)成。
    調(diào)試板卡在硬件上由FPGA控制器、電源管理電路、參考源電路、轉(zhuǎn)換電路、調(diào)理電路和時(shí)鐘管理電路構(gòu)成。如圖1所示。

    調(diào)試板卡使用FPGA為核心控制器,負(fù)責(zé)調(diào)試數(shù)據(jù)和調(diào)試指令的接收、調(diào)試數(shù)據(jù)的管理和轉(zhuǎn)換。調(diào)試板卡使用CPCI總線和并行總線對(duì)內(nèi)接口,調(diào)試指令通過CPCI總線進(jìn)行傳輸,調(diào)試數(shù)據(jù)通過CPCI總線和并行總線進(jìn)行傳輸。
    電源管理電路負(fù)責(zé)各芯片和功能電路的供電,參考源電路負(fù)責(zé)提供參考電壓。
    高速模擬量轉(zhuǎn)換電路由轉(zhuǎn)換電路和調(diào)理電路兩個(gè)部分組成,轉(zhuǎn)換電路的作用是將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào),調(diào)理電路的作用是將轉(zhuǎn)換電路輸出的信號(hào)轉(zhuǎn)換成具有較強(qiáng)驅(qū)動(dòng)能力的相應(yīng)幅值模擬量信號(hào)。調(diào)試板卡共有32路模擬輸出,每路分別和FPGA相連,由FPGA提供各個(gè)通道的控制信號(hào)。每個(gè)通道的更新頻率為500 kHz,輸出幅值為-10 V~+10 V。
    時(shí)鐘管理電路提供多路獨(dú)立時(shí)鐘信號(hào),為FPGA內(nèi)部各通信模塊和邏輯單元提供時(shí)鐘。
    配置軟件工作在上位機(jī)板卡,其作用是通過CPCI總線將配置信息發(fā)送給調(diào)試板卡,以實(shí)現(xiàn)對(duì)調(diào)試板卡的控制。上位機(jī)板卡和PC之間可使用以太網(wǎng)或串口進(jìn)行通信,通過PC設(shè)置配置信息,配置軟件將參數(shù)傳遞給調(diào)試板卡并實(shí)現(xiàn)對(duì)調(diào)試板卡的配置。進(jìn)而實(shí)現(xiàn)各個(gè)調(diào)試通道的輸出。配置信息包括:各個(gè)調(diào)試通道的調(diào)試數(shù)據(jù)來自哪一個(gè)功能板卡的哪一個(gè)調(diào)試變量;各個(gè)調(diào)試通道是否輸出三角波、鋸齒波、正弦波、矩形波,輸出這些波形的頻率、幅值、占空比;各個(gè)調(diào)試通道是否輸出;高速并行總線的位寬和通信頻率。
    各個(gè)功能卡和調(diào)試板卡之間使用CPCI總線或高速并行總線進(jìn)行通信。當(dāng)使用CPCI總線時(shí),需要各個(gè)功能卡對(duì)CPCI接口的支持。并行總線的寬度可以配置為1路32 bit或2路16 bit總線,支持1級(jí)流水線寫入模式(需配置)。
    系統(tǒng)運(yùn)行時(shí),各個(gè)功能卡通過CPCI總線或高速并行總線將調(diào)試數(shù)據(jù)實(shí)時(shí)地傳給調(diào)試板卡,并存儲(chǔ)在調(diào)試板卡內(nèi)存單元中。每次各個(gè)功能卡的數(shù)據(jù)傳輸都會(huì)將內(nèi)存單元內(nèi)的數(shù)據(jù)更新為最新。每個(gè)功能卡設(shè)置的調(diào)試數(shù)據(jù)為32路,即針對(duì)某一塊功能卡,同一時(shí)刻最多可輸出32個(gè)變量的實(shí)時(shí)信息。車載多通道調(diào)試系統(tǒng)的信號(hào)流圖如圖2所示。

    車載調(diào)試系統(tǒng)的使用方法大體如下:
    (1)機(jī)箱內(nèi)各功能卡通過高速并行總線或者CPCI總線,將需要調(diào)試輸出的數(shù)據(jù)實(shí)時(shí)發(fā)送到車載多通道調(diào)試板卡。
    (2)車載多通道調(diào)試系統(tǒng)上位機(jī)控制界面配置32路調(diào)試輸出通道的信號(hào)源、高速并行總線設(shè)置。并使能各通道的輸出。如果需要輸出測(cè)試信號(hào),需要配置測(cè)試信號(hào)的類型、頻率、幅值和占空比。
    (3)通過示波器可以觀測(cè)各個(gè)調(diào)試通道的波形。
2 FPGA控制器的設(shè)計(jì)
    車載調(diào)試系統(tǒng)使用Xilinx公司的Spartan-6系列的xc6slx100作為核心控制器。使用PCI軟核構(gòu)建標(biāo)準(zhǔn)32位PCI接口,這樣可有效地利用FPGA的內(nèi)部資源,在提高系統(tǒng)的集成度的同時(shí)保證系統(tǒng)的性能[5]。從圖3中可以看出,核心控制器內(nèi)部組成由通信單元、邏輯處理單元、內(nèi)存管理單元、轉(zhuǎn)換電路驅(qū)動(dòng)單元和時(shí)鐘管理單元幾個(gè)部分組成。其中通信單元由PCI總線控制單元、高速并行總線通信單元構(gòu)成,負(fù)責(zé)從CPCI總線和高速并行總線接收數(shù)據(jù)和指令;邏輯單元會(huì)實(shí)時(shí)監(jiān)控CPCI總線上傳輸過來的配置數(shù)據(jù),配置數(shù)據(jù)的地址是固定的。根據(jù)配置數(shù)據(jù)管理內(nèi)存和轉(zhuǎn)換電路驅(qū)動(dòng)。邏輯單元會(huì)根據(jù)配置數(shù)據(jù)配置并行總線,可配置成1路32位并行總線或者2路16位的并行總線。邏輯單元監(jiān)控高速并行總線上傳輸?shù)臄?shù)據(jù)信息,根據(jù)并行總線通訊協(xié)議,判斷調(diào)試變量的來源和存放的位置。

 

 

    時(shí)鐘管理單元負(fù)責(zé)處理外部時(shí)鐘電路輸入的獨(dú)立時(shí)鐘,一方面為高速并行總線提供時(shí)鐘支持,另一方面為其他邏輯單元提供時(shí)鐘來源。高速并行總線的時(shí)鐘頻率由邏輯單元通過配置信息進(jìn)行配置。通信頻率可調(diào)范圍為10 MHz~40 MHz。
    內(nèi)存管理單元負(fù)責(zé)存儲(chǔ)從PCI和高速并行總線接收到的相關(guān)調(diào)試數(shù)據(jù),經(jīng)過邏輯單元處理后存放在內(nèi)存管理單元相應(yīng)的內(nèi)存地址。同時(shí)內(nèi)存管理單元向各個(gè)轉(zhuǎn)換電路驅(qū)動(dòng)單元提供接口,各個(gè)轉(zhuǎn)換電路驅(qū)動(dòng)單元可以在64個(gè)FPGA內(nèi)部時(shí)鐘周期之內(nèi)完成全部的數(shù)據(jù)更新。
 轉(zhuǎn)換電路驅(qū)動(dòng)單元負(fù)責(zé)驅(qū)動(dòng)32路模擬量轉(zhuǎn)換電路。轉(zhuǎn)換電路驅(qū)動(dòng)單元根據(jù)芯片的控制時(shí)序提供調(diào)理板卡32路轉(zhuǎn)換電路芯片的管腳驅(qū)動(dòng)電平,為每一路轉(zhuǎn)換電路提供500 kHz的數(shù)據(jù)更新速度。
 邏輯處理單元連接FPGA內(nèi)部的各個(gè)功能單元,負(fù)責(zé)整個(gè)FPGA的內(nèi)部邏輯和功能管理。
3 應(yīng)用實(shí)例
    車載多通道調(diào)試系統(tǒng)目前已經(jīng)應(yīng)用于CRH5型動(dòng)車組國產(chǎn)化牽引控制單元,在國產(chǎn)化牽引控制單元的研發(fā)調(diào)試過程中表現(xiàn)出優(yōu)良的性能和較高的可靠性。通過上位機(jī)配置軟件可以方便地輸出響應(yīng)測(cè)試變量的波形,同時(shí)還可以輸出測(cè)試波形,為系統(tǒng)調(diào)試服務(wù)。在車載環(huán)境中,使用車載多通道調(diào)試系統(tǒng),極大地方便了調(diào)試人員對(duì)測(cè)試設(shè)備的檢測(cè)。圖4為在現(xiàn)場(chǎng)環(huán)境使用示波器連接17個(gè)調(diào)試通道的顯示波形。從圖中可以方便地分析系統(tǒng)各個(gè)變量的運(yùn)行情況。

    車載多通道調(diào)試系統(tǒng)和系統(tǒng)CPCI總線相連,可根據(jù)系統(tǒng)配置快速輸出相應(yīng)的模擬量信號(hào)。此系統(tǒng)可以同時(shí)輸出32路16位高精度模擬量信號(hào),每一路信號(hào)的輸出刷新頻率為500 kHz,每一路輸出的內(nèi)容通過高速并口和CPCI總線獲得,此系統(tǒng)不會(huì)因輸出通道的增加而降低輸出頻率。此系統(tǒng)可以通過設(shè)置輸出正弦、矩形波、三角波、鋸齒波等測(cè)試信號(hào),各種信號(hào)的頻率、幅值、占空比、斜率等參數(shù)可以通過CPCI總線進(jìn)行配置。車載多通道調(diào)試系統(tǒng)為車輛運(yùn)行環(huán)境下的設(shè)備測(cè)試提供了極大的便利,降低了系統(tǒng)開發(fā)的難度。
參考文獻(xiàn)
[1] 袁菁. 一種基于CPCI總線A/D模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與數(shù)字工程,2005,33(7):129-130.
[2] 蔣留兵,車?yán)? 基于TS201和CPCI總線實(shí)現(xiàn)的新一代信號(hào)處理機(jī)[J]. 火力與指揮控制,2010,35(z1):84-85.
[3] 鄧鳳軍,張龍,王益忠. 基于PCI總線的HDLC通信卡的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子技術(shù)應(yīng)用,2012,38(8):30-31.
[4] 鮑偉,張崇巍. PCI總線技術(shù)在運(yùn)動(dòng)控制卡中的應(yīng)用[J].儀器儀表學(xué)報(bào),2005,26(z2):334-335.
[5] 宋克柱,楊小軍,王硯方.基于FPGA的PCI接口設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2001,27(9):74-75.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。