文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2014)02-0071-03
鐵路電子機(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.