楊彬彬,曾壘,章寧
(1.國營蕪湖機械廠;2.安徽省航空設備測控與逆向工程實驗室,安徽 蕪湖 241007)
某型監控處理機是某型飛機綜合航電系統的一個分系統,是非航空電子系統的故障檢測中心,主要實現非航空電子系統的集中式監控管理以及非航空電子系統與綜合航電系統之間的接口。某型監控處理機主要監控管理電子系統的若干子系統設備,同時將這些設備的各種工作狀態信息通過數據總線多路傳輸數據總線報給飛行員或維修人員。通信控制器作為監控處理機與外界通訊媒介,傳遞非航空電子系統各設備的工作狀態。通信控制器的故障將直接影響監控處理機乃至整個非航空電子系統的安全性和穩定性。外場測試主要依靠自身的BIT來完成故障的診斷和測試,該測試可以將故障定位到SRU級。內場測試主要依靠通用自動測試設備來幫助完成內場級的故障診斷和測試,測試可以將故障定位到SRU級,且測試只針對整機測試,無法實現針對通信控制器的測試和故障診斷。因此,亟需設計并研制一套針對通信控制器的功能測試與診斷系統,對通信控制器的功能、性能參數以及故障情況等進行檢查。本文設計和研制的通信控制器的自動測試與診斷系統能夠完成系統的初始化設置、正常通信、BIT自檢等功能測試,并具備數據采集分析功能,實現了對被測對象的自動測試。
通信控制器是監控處理機的通訊組件,用于完成8路RS-422異步串行數據通信(全雙工4路、半雙工4路),保證電子系統內子設備與內部LBE總線可以有效交互信息。該通信控制器結構框圖如圖1所示。時鐘電路、串行通信控制電路、收發電路共同保證串行通信收發功能,所以整個通信控制器按功能劃分成4個部分:串行通信收發電路,緩沖驅動電路,譯碼控制電路,以及自測試BIT電路。串行通信收發電路主要完成數據通信過程中,信息的編碼格式及數據串并轉換等。緩沖驅動電路由3片總線驅動器構成,用于完成地址鎖存和控制信號、數據總線預處理。譯碼控制電路由2片可編程門陣列芯片構成,用于串行通信的通道選擇和自測試控制等。自測試BIT電路的主要功能是將所有的通道的接收發送端構成回路,進行串行通信電路的回繞自測試,實現對串行控制器和發送接收驅動器的檢測。

圖1 通信控制器結構框圖
通信控制器自動測試系統是以LBE總線控制模塊為中心,模擬機上總線交互場景,支持對通信控制器性能參數的自動檢測,并支持通信控制器BIT檢測以及故障診斷。
檢測設備主要需求是:(1)對測試電路提供供電電源;(2)多串口通信模塊,模擬子設備通訊模塊,與內部總線交互信息;(3)模擬LBE總線工作模式,與內部總線交互信息。
測試軟件的主要任務是:(1)提供人機交互操作界面;(2)實現手動/自動測試流程控制、測試結果顯示功能;(3)實現本地回繞/外部回繞/收發功能3種模式切換、測試等。
電源采用多路隔離電源提供,共需提供三路電源,分別為+15V、-15V、+5V,總功率≤60W。
多串口通訊模塊是基于PXI總線的多協議通用異步串行通訊產品。該模塊具有4個獨立的RS-232/RS-422/RS-485的串口通訊端口,每個端口的最大數據通訊速率為921.6Kbps,4個端口之間采用光電隔離,端口具有±15kV的靜電放電保護能力。
LBE總線控制模塊用以模擬機上LBE總線控制模式,總線信號主要包括:地址總線(address):三態信號,由主設備發出,為訪問存儲器或I/O提供地址;數據總線(data):提供主設備與從設備之間的數據通路;字節使能信號(XBE):三態信號,為從設備字節使能信號,由主設備發出;總線請求信號:該信號由第二主設備發出,用于向第一主設備申請占用總線;總線允許信號:該信號由第一主設備發出,表示允許第二主設備占用總線。該信號低電平有效;16位設備標識信號:三態保持信號,由從設備發出,表示該設備為16位設備,低電平有效;總線命令信號:由主設備發出,定義當前總線周期的操作類型;總線設備選擇信號,由主設備發出,表示總線上的控制信號、地址信號和數據信號可以用于尋址總線上256M內從存儲器,低電平有效;系統控制信號:用于系統控制,包括訪問請求信號、等待信號、中斷信號、總線時鐘信號以及復位信號等;測試及系統狀態指示信號:用于指示系統的工作狀態或者在測試時使用,包括禁止存儲器信號,外部時鐘信號,禁止時鐘信號,體質計數器信號以及禁止DMA信號等。
在本文設計的測試系統中,LBE總線控制模塊為主設備,通信控制器為從設備。主從設備間需交互控制命令及狀態信息,接口需滿足雙向數據傳輸功能。
LBE總線控制模塊采用XC3S200AN-4TQ144為控制器,XCF04為配置存儲器,模擬LBE計算機內總線時序進行讀寫操作,FPGA讀寫的數據通過串口與上位機通訊,所有的數據控制及數據處理均由上位機程序完成。如圖2所示,該控制模塊主要包括供電電路、串口電平轉換電路、FPGA控制器電路以及總線輸入輸出驅動電路。

圖2 LBE總線控制模塊電路結構
通信控制器由4片88C681/28組成,完成8路RS-422A異步串行數據通信(半雙工4路,全雙工4路)。異步串行數據通信接口傳輸率:9600bps,通信字長為11位,其中1位啟動位,8位數據位,1位奇偶校驗和1位停止位,偶校驗。且上電復位后,通信控制器處于不工作狀態,需經初始化方可進行正常通信狀態或自測試狀態。串行通信的自測試電路包括內部回繞測試和外部回繞測試。
在上位機的控制下,由LBE總線控制模塊對LBE總線信號進行收發控制以驅動LBE總線電路,向DUART(88C681/28)的方式寄存器(IMRn)、時鐘選擇寄存器(CSR)、中斷屏蔽寄存器(IMR),中斷矢量寄存器(IVR)等寫命令字,設置異步通信波特率、協議參數、中斷參數等,實現DUART初始化(圖3)。

圖3 初始化流程圖
當設置MR2n[7:6]=00時,相應通道工作于正常通信方式,在這種方式下,接收器和發送器是獨立工作的。通信控制板有2種通信模式,分別如圖4、5所示。LBE總線控制模塊將上位機發送的串行數據轉化成并行數據后發送給通信控制器,通信控制器將數據線上8位數據轉換成RS-485/422信號發送給多串口通訊模塊,發送給上位機進行驗證;另一方面,上位機通過多串口通訊模塊發送RS-485/422信號給通信控制器,通信控制器的串行異步通信協處理器(88C681/28)將其轉化成并行數據,通過LBE總線發送給LBE總線控制模塊,經過LBE總線控制模塊處理后將該信號轉換成RS-232信號發送給上位機驗證。

圖4 半雙工測試方案

圖5 全雙工測試方案
3.3.1 內部回繞測試(圖6)

圖6 內部回繞測試方案
當設置方式寄存器MR2n[7:6]=10,可以直接查詢接收保持寄存器(RHR)或發送保持寄存器(THR),實現本地回繞測試,此時外部通信鏈路都不測試。
內部回繞測試過程:設置DUART工作在本地回送方式(MR2n[7:6]=10),發送器的輸出在內部與接收器輸入相連;LBE總線控制模塊將上位機發送的串行數據轉化成并行數據經LBE總線發送給通信控制器;在此基礎上,PC控制LBE總線控制模塊向DUART寫入命令字(讀接收保持寄存器RHR的值),再通過LBE總線讀取RHR的值,以驗證收發過程的正確性。
3.3.2 外部回繞測試(圖7和圖8)

圖7 外部回繞測試方案

圖8 測試軟件主界面
外部回繞測試是通過向88C681/28的模式寄存器MR寫入控制字07H,同時通過數據總線,在相應地址寫控制命令字使電子開關斷開,從而使8路RS-422/485切斷與外部電路的連接,將所有的通道的接收端和發送端構成回路,通過數據總線讀取THR的值,實現對串行控制器和發送接收驅動器的檢測,從而實現串行通信的外部回繞測試。
本文設計了一種通信控制器的自動測試與診斷系統,介紹了各部分硬件資源及測試軟件邏輯設計,解決了通信控制器的初始化設置、正常通信、BIT自檢功能測試問題,該測試系統經試驗證明切實可行,效果良好,提高了測試效率和保障能力,具有一定的實用價值。