楊彬彬,曾壘,章寧
(1.國營蕪湖機(jī)械廠;2.安徽省航空設(shè)備測控與逆向工程實驗室,安徽 蕪湖 241007)
某型監(jiān)控處理機(jī)是某型飛機(jī)綜合航電系統(tǒng)的一個分系統(tǒng),是非航空電子系統(tǒng)的故障檢測中心,主要實現(xiàn)非航空電子系統(tǒng)的集中式監(jiān)控管理以及非航空電子系統(tǒng)與綜合航電系統(tǒng)之間的接口。某型監(jiān)控處理機(jī)主要監(jiān)控管理電子系統(tǒng)的若干子系統(tǒng)設(shè)備,同時將這些設(shè)備的各種工作狀態(tài)信息通過數(shù)據(jù)總線多路傳輸數(shù)據(jù)總線報給飛行員或維修人員。通信控制器作為監(jiān)控處理機(jī)與外界通訊媒介,傳遞非航空電子系統(tǒng)各設(shè)備的工作狀態(tài)。通信控制器的故障將直接影響監(jiān)控處理機(jī)乃至整個非航空電子系統(tǒng)的安全性和穩(wěn)定性。外場測試主要依靠自身的BIT來完成故障的診斷和測試,該測試可以將故障定位到SRU級。內(nèi)場測試主要依靠通用自動測試設(shè)備來幫助完成內(nèi)場級的故障診斷和測試,測試可以將故障定位到SRU級,且測試只針對整機(jī)測試,無法實現(xiàn)針對通信控制器的測試和故障診斷。因此,亟需設(shè)計并研制一套針對通信控制器的功能測試與診斷系統(tǒng),對通信控制器的功能、性能參數(shù)以及故障情況等進(jìn)行檢查。本文設(shè)計和研制的通信控制器的自動測試與診斷系統(tǒng)能夠完成系統(tǒng)的初始化設(shè)置、正常通信、BIT自檢等功能測試,并具備數(shù)據(jù)采集分析功能,實現(xiàn)了對被測對象的自動測試。
通信控制器是監(jiān)控處理機(jī)的通訊組件,用于完成8路RS-422異步串行數(shù)據(jù)通信(全雙工4路、半雙工4路),保證電子系統(tǒng)內(nèi)子設(shè)備與內(nèi)部LBE總線可以有效交互信息。該通信控制器結(jié)構(gòu)框圖如圖1所示。時鐘電路、串行通信控制電路、收發(fā)電路共同保證串行通信收發(fā)功能,所以整個通信控制器按功能劃分成4個部分:串行通信收發(fā)電路,緩沖驅(qū)動電路,譯碼控制電路,以及自測試BIT電路。串行通信收發(fā)電路主要完成數(shù)據(jù)通信過程中,信息的編碼格式及數(shù)據(jù)串并轉(zhuǎn)換等。緩沖驅(qū)動電路由3片總線驅(qū)動器構(gòu)成,用于完成地址鎖存和控制信號、數(shù)據(jù)總線預(yù)處理。譯碼控制電路由2片可編程門陣列芯片構(gòu)成,用于串行通信的通道選擇和自測試控制等。自測試BIT電路的主要功能是將所有的通道的接收發(fā)送端構(gòu)成回路,進(jìn)行串行通信電路的回繞自測試,實現(xiàn)對串行控制器和發(fā)送接收驅(qū)動器的檢測。
圖1 通信控制器結(jié)構(gòu)框圖
通信控制器自動測試系統(tǒng)是以LBE總線控制模塊為中心,模擬機(jī)上總線交互場景,支持對通信控制器性能參數(shù)的自動檢測,并支持通信控制器BIT檢測以及故障診斷。
檢測設(shè)備主要需求是:(1)對測試電路提供供電電源;(2)多串口通信模塊,模擬子設(shè)備通訊模塊,與內(nèi)部總線交互信息;(3)模擬LBE總線工作模式,與內(nèi)部總線交互信息。
測試軟件的主要任務(wù)是:(1)提供人機(jī)交互操作界面;(2)實現(xiàn)手動/自動測試流程控制、測試結(jié)果顯示功能;(3)實現(xiàn)本地回繞/外部回繞/收發(fā)功能3種模式切換、測試等。
電源采用多路隔離電源提供,共需提供三路電源,分別為+15V、-15V、+5V,總功率≤60W。
多串口通訊模塊是基于PXI總線的多協(xié)議通用異步串行通訊產(chǎn)品。該模塊具有4個獨立的RS-232/RS-422/RS-485的串口通訊端口,每個端口的最大數(shù)據(jù)通訊速率為921.6Kbps,4個端口之間采用光電隔離,端口具有±15kV的靜電放電保護(hù)能力。
LBE總線控制模塊用以模擬機(jī)上LBE總線控制模式,總線信號主要包括:地址總線(address):三態(tài)信號,由主設(shè)備發(fā)出,為訪問存儲器或I/O提供地址;數(shù)據(jù)總線(data):提供主設(shè)備與從設(shè)備之間的數(shù)據(jù)通路;字節(jié)使能信號(XBE):三態(tài)信號,為從設(shè)備字節(jié)使能信號,由主設(shè)備發(fā)出;總線請求信號:該信號由第二主設(shè)備發(fā)出,用于向第一主設(shè)備申請占用總線;總線允許信號:該信號由第一主設(shè)備發(fā)出,表示允許第二主設(shè)備占用總線。該信號低電平有效;16位設(shè)備標(biāo)識信號:三態(tài)保持信號,由從設(shè)備發(fā)出,表示該設(shè)備為16位設(shè)備,低電平有效;總線命令信號:由主設(shè)備發(fā)出,定義當(dāng)前總線周期的操作類型;總線設(shè)備選擇信號,由主設(shè)備發(fā)出,表示總線上的控制信號、地址信號和數(shù)據(jù)信號可以用于尋址總線上256M內(nèi)從存儲器,低電平有效;系統(tǒng)控制信號:用于系統(tǒng)控制,包括訪問請求信號、等待信號、中斷信號、總線時鐘信號以及復(fù)位信號等;測試及系統(tǒng)狀態(tài)指示信號:用于指示系統(tǒng)的工作狀態(tài)或者在測試時使用,包括禁止存儲器信號,外部時鐘信號,禁止時鐘信號,體質(zhì)計數(shù)器信號以及禁止DMA信號等。
在本文設(shè)計的測試系統(tǒng)中,LBE總線控制模塊為主設(shè)備,通信控制器為從設(shè)備。主從設(shè)備間需交互控制命令及狀態(tài)信息,接口需滿足雙向數(shù)據(jù)傳輸功能。
LBE總線控制模塊采用XC3S200AN-4TQ144為控制器,XCF04為配置存儲器,模擬LBE計算機(jī)內(nèi)總線時序進(jìn)行讀寫操作,F(xiàn)PGA讀寫的數(shù)據(jù)通過串口與上位機(jī)通訊,所有的數(shù)據(jù)控制及數(shù)據(jù)處理均由上位機(jī)程序完成。如圖2所示,該控制模塊主要包括供電電路、串口電平轉(zhuǎn)換電路、FPGA控制器電路以及總線輸入輸出驅(qū)動電路。
圖2 LBE總線控制模塊電路結(jié)構(gòu)
通信控制器由4片88C681/28組成,完成8路RS-422A異步串行數(shù)據(jù)通信(半雙工4路,全雙工4路)。異步串行數(shù)據(jù)通信接口傳輸率:9600bps,通信字長為11位,其中1位啟動位,8位數(shù)據(jù)位,1位奇偶校驗和1位停止位,偶校驗。且上電復(fù)位后,通信控制器處于不工作狀態(tài),需經(jīng)初始化方可進(jìn)行正常通信狀態(tài)或自測試狀態(tài)。串行通信的自測試電路包括內(nèi)部回繞測試和外部回繞測試。
在上位機(jī)的控制下,由LBE總線控制模塊對LBE總線信號進(jìn)行收發(fā)控制以驅(qū)動LBE總線電路,向DUART(88C681/28)的方式寄存器(IMRn)、時鐘選擇寄存器(CSR)、中斷屏蔽寄存器(IMR),中斷矢量寄存器(IVR)等寫命令字,設(shè)置異步通信波特率、協(xié)議參數(shù)、中斷參數(shù)等,實現(xiàn)DUART初始化(圖3)。
圖3 初始化流程圖
當(dāng)設(shè)置MR2n[7:6]=00時,相應(yīng)通道工作于正常通信方式,在這種方式下,接收器和發(fā)送器是獨立工作的。通信控制板有2種通信模式,分別如圖4、5所示。LBE總線控制模塊將上位機(jī)發(fā)送的串行數(shù)據(jù)轉(zhuǎn)化成并行數(shù)據(jù)后發(fā)送給通信控制器,通信控制器將數(shù)據(jù)線上8位數(shù)據(jù)轉(zhuǎn)換成RS-485/422信號發(fā)送給多串口通訊模塊,發(fā)送給上位機(jī)進(jìn)行驗證;另一方面,上位機(jī)通過多串口通訊模塊發(fā)送RS-485/422信號給通信控制器,通信控制器的串行異步通信協(xié)處理器(88C681/28)將其轉(zhuǎn)化成并行數(shù)據(jù),通過LBE總線發(fā)送給LBE總線控制模塊,經(jīng)過LBE總線控制模塊處理后將該信號轉(zhuǎn)換成RS-232信號發(fā)送給上位機(jī)驗證。
圖4 半雙工測試方案
圖5 全雙工測試方案
3.3.1 內(nèi)部回繞測試(圖6)
圖6 內(nèi)部回繞測試方案
當(dāng)設(shè)置方式寄存器MR2n[7:6]=10,可以直接查詢接收保持寄存器(RHR)或發(fā)送保持寄存器(THR),實現(xiàn)本地回繞測試,此時外部通信鏈路都不測試。
內(nèi)部回繞測試過程:設(shè)置DUART工作在本地回送方式(MR2n[7:6]=10),發(fā)送器的輸出在內(nèi)部與接收器輸入相連;LBE總線控制模塊將上位機(jī)發(fā)送的串行數(shù)據(jù)轉(zhuǎn)化成并行數(shù)據(jù)經(jīng)LBE總線發(fā)送給通信控制器;在此基礎(chǔ)上,PC控制LBE總線控制模塊向DUART寫入命令字(讀接收保持寄存器RHR的值),再通過LBE總線讀取RHR的值,以驗證收發(fā)過程的正確性。
3.3.2 外部回繞測試(圖7和圖8)
圖7 外部回繞測試方案
圖8 測試軟件主界面
外部回繞測試是通過向88C681/28的模式寄存器MR寫入控制字07H,同時通過數(shù)據(jù)總線,在相應(yīng)地址寫控制命令字使電子開關(guān)斷開,從而使8路RS-422/485切斷與外部電路的連接,將所有的通道的接收端和發(fā)送端構(gòu)成回路,通過數(shù)據(jù)總線讀取THR的值,實現(xiàn)對串行控制器和發(fā)送接收驅(qū)動器的檢測,從而實現(xiàn)串行通信的外部回繞測試。
本文設(shè)計了一種通信控制器的自動測試與診斷系統(tǒng),介紹了各部分硬件資源及測試軟件邏輯設(shè)計,解決了通信控制器的初始化設(shè)置、正常通信、BIT自檢功能測試問題,該測試系統(tǒng)經(jīng)試驗證明切實可行,效果良好,提高了測試效率和保障能力,具有一定的實用價值。