朱曉輝 呂德東 張閣
(中國空間技術研究院通信衛星事業部,北京 100094)
基于分級處理的星載數據總線綜合測試方法
朱曉輝 呂德東 張閣
(中國空間技術研究院通信衛星事業部,北京 100094)
分析了星載數據總線測試的層次模型,提出了一種基于分級處理的數據總線綜合測試方法,并設計了專用測試設備。該設備以定制的智能PCI板卡為核心,依托工控機平臺,實現了星載數據總線的綜合測試,并成功應用在某航天器測試中。應用結果表明:該方法能夠在實現綜合測試的同時很好地化解數據總線測試的實時性難題,其時序控制精度達到亞微秒級,全面提高了測試精度和測試效率,可為其它航天器數據總線測試提供參考。
星載數據總線;綜合測試;分級數據處理;時序控制;大容量存儲
隨著微電子技術和數字技術的不斷發展完善,星載電子設備之間的通信越來越多地采用星載數據總線完成,其系統功能的實現也越來越依賴于數據總線通信的穩定可靠[1-3]。因此,在航天器系統測試中,對星載數據總線的測試也提出了越來越高的要求。
數據總線測試采用的一般方法,是使用總線仿真設備對數據總線進行采集監視,同時提供數據激勵,以構成數據總線測試回路[4-5]。從設備組成看,按照處理器的不同,可以劃分為基于嵌入式處理器的小型化嵌入式設備和基于PC機或工控機平臺的桌面設備兩類。對采用嵌入式系統平臺的數據總線測試儀,其特點是實時性好,但功能相對單一,不能或僅能提供簡單的激勵源[6]。此外,由于數據存儲容量有限,測試完畢需要導出數據進行事后處理才可供分析判讀,并不直觀[7]。對于采用桌面計算機平臺的總線仿真器,則一般具備友好的圖形化用戶界面和基于PC的強大的數據后處理能力,但由于操作系統的限制,即使采用復雜的多線程操作、數據緩沖等軟件設計方法,仍然無法從根本上克服多通道并發控制、實時響應和高精度時序控制方面的不足[8-9]。綜合來看,高精度時序控制與復雜的系統功能之間的矛盾難以調和。
在現有的星載數據總線測試中,由于上述矛盾的存在,通常將有時序要求的內容列為單獨的測試項目,使用不同的測試設備進行測試,而在整星總裝、測試與試驗(AIT)中則不對通信時序進行檢查,存在測試覆蓋不全面和效率較低的弊端。本文在分析測試需求的基礎上,按照分級處理的思想,提出了統一的綜合測試方法,并設計了專用測試設備,可為航天器數據總線的綜合測試驗證提供全面、高效的測試手段。
2.1 待測系統
待測系統星載數據處理機與傳感器終端之間采用RS-422數據總線的主從通信,其總線連接關系如圖1所示。

圖1 數據總線連接關系圖Fig.1 Data bus connection topology
兩臺數據處理機分別通過總線采集多個傳感器終端的數據,以數據處理機為主動方進行主從通信。每次通信開始,數據處理機向不同的傳感器終端分時發送數據請求字,傳感器收到數據處理機的數據請求后,應在協議規定的響應時間td(td<0.1 ms)內開始返回要求的有效信息;若傳感器終端在td時間內未返回有效信息,則數據處理機判定此情況為一次通信故障,并停止此串口通信,直至下次發送數據請求。
在通信過程中,每個數據采集周期內數據處理機分時與每個傳感器終端各通信一次。終端與處理機的通信時序見圖2,協議對采集周期tp、各傳感器之間的通信間隔ti和傳感器終端響應時間td均提出了明確的要求。

圖2 數據處理機與傳感器終端通信時序示意圖Fig.2 Time sequence of the bus communications between processor and sensors
2.2 層次化的測試需求
對上述星載數據總線的測試需求可以劃分為4個層次,如圖3所示。
1)物理層——接口電氣特性測試
對通信接口電氣特性進行測試,包括輸出端的信號電平、上升沿、下降沿以及接口阻抗特性等。通常使用示波器等通用儀器,無需專用測試設備。
2)鏈路層——字節包結構測試
對通信接口的鏈路層協議的正確性進行驗證,包括字節分包、起始位、停止位、校驗位、碼速率和編碼方式等。即通過總線仿真設備向被測設備(目的端口)發送激勵信號,采集被測總線設備(源端口)發出的信號并進行解析,檢查鏈路層接口協議的匹配性。

圖3 數據總線接口測試層次Fig.3 Layers of data bus interface testing
3)傳輸層——幀結構及通信時序測試
(1)對通信接口的傳輸層協議的正確性進行驗證,包括請求字、幀頭字節、數據字節的位置和順序、校驗字節等;
(2)通信時序測試:包括數據處理機的數據請求間隔ti和請求周期tp的測試,傳感器終端對請求字的應答響應時間td的測試。
該測試在鏈路層測試的基礎上將激勵源、被測設備和數據采集終端構成閉合回路,對被測設備施加符合傳輸層協議的特定激勵,可以更加充分地對被測設備在不同激勵下的響應進行測試。對有時序要求的測試項目,則還需要總線仿真設備具有較高的實時性和時間分辨率。
4)應用層——系統功能測試
(1)總線偵聽:被測對象屬復雜系統,總線通信鏈路也可能受到熱環境、電磁環境等的影響,故有必要對數據總線進行實時偵聽和記錄,以便在偶發異常時,能夠為異常分析提供第一手資料,準確定位故障;
(2)功能測試:參與通信的各方均接入系統后,需要對基于總線的系統整體功能進行測試,具體測試項目根據系統功能設計確定,例如數據處理機根據傳感器終端采集的信息,實時計算并向執行機構輸出不同的控制信號,要求測試設備能記錄不同工作模式下的測試數據并繪制曲線,最終通過統計數據得出是否符合要求的測試結論。
可見,應用層的系統功能測試通常需要測試設備具有遙控指令發送和遙測數據處理、大容量數據存儲、較復雜的數據分析以及圖形化顯示等功能。
綜上,在圖3所示層次化測試需求中,下層為上層提供支持和服務,上層測試的前提是下層驗證正確。因此測試宜采用自下而上的順序,逐級驗證。
2.3 傳統測試方法的不足
根據圖3所示層次化測試需求,不同層次有不同的測試要求,因此傳統的數據總線測試需要在不同的測試階段設計不同的測試項目。通常,先在單機設備測試階段使用示波器完成物理層測試,再使用總線仿真設備驗證鏈路層和通信協議;對于有時序要求的內容,列為單獨的測試項目,使用專用測試設備進行測試;應用層的系統功能測試則在分系統或整星AIT階段進行,通過指令-遙測回路間接驗證總線通信的正確性,不再對通信時序進行檢查。雖然各階段獨立的測試項目共同覆蓋了所有的測試需求,但由于被測設備所處的環境不同,每個測試項目僅針對特定激勵下的響應進行檢查,所有單項測試結果均正常,并不等價于被測設備在復合激勵下的響應正確。因此,傳統測試方法的弊端集中體現在無法實現從接口協議、通信時序到系統功能的綜合測試,存在測試覆蓋不全面和測試效率較低的不足。
此外,傳統測試方法的測試有效性也受到總線仿真設備自身性能的制約。對功能復雜又有實時性或嚴格時序要求的總線環境進行仿真,要求總線仿真設備既有較高的實時性,又有強大的仿真計算和存儲能力。現有的總線仿真設備多基于PC平臺和Windows操作系統實現,憑借較高的仿真計算和存儲能力,可以實現仿真數據激勵和響應數據記錄,還可以完成曲線繪制和數據分析比對等輔助功能。但由于PC平臺的非實時性,對有實時性或有嚴格時序要求的測試項目往往難以勝任。具有實時性的總線仿真設備一般使用嵌入式系統平臺,由于功能相對單一,難以適應綜合測試的需要,而且需要為航天器定制開發,價格昂貴、通用性差。
2.4 基于分級處理的綜合測試方法
為解決以上問題,本文提出了基于分級處理的綜合測試方法。首先,為實現綜合測試,必須同時構建如圖4所示的“總線激勵-響應”和“遙控-遙測”兩個測試回路,兩個測試回路均由專用測試設備集中控制,統一調度。其次,為兼顧復雜的功能測試和高精度的總線時序測試,必須對不同的測試數據加以區別,分級處理:其中有實時性和時序要求的數據來自“總線激勵-響應”回路,對該回路的數據必須及時處理,并保證響應內容和通信時序符合要求,故列為一級處理;而對于“遙控-遙測”回路,則數據率較低,沒有實時性要求,可以列為二級處理,同時為了保證兩個測試回路的一致性,二級處理還應包括對一級處理的處理模式、方法和判據條件進行設定;最后,兩級處理的結果必須進行匯總,以便綜合比對兩個回路數據的匹配性,對測試數據進行歸檔存儲和統計分析,完成合格判定及曲線圖形繪制等工作,可列為三級處理。

圖4 數據總線測試回路Fig.4 Loops in data bus test
要實現基于分級處理的綜合測試方法有兩個關鍵步驟:一是如何整合測試回路,實現綜合測試;二是如何實現分級處理。
1)整合測試回路,實現綜合測試
在傳統的衛星測試方法中,“遙控-遙測”回路采用遙測前端設備和遙控前端設備實現,而“總線激勵-響應”回路則由總線測試設備實現。要將兩個測試回路加以整合,可以定制專用設備,將總線測試和遙控、遙測的功能集成為一臺單機,以此實現用同一個CPU同時控制兩個測試回路,實現綜合測試的目的。但此法必然導致設備復雜度高、研制難度加大、成本增加等弊端,而且使原有遙控、遙測前端設備閑置,造成浪費。
經過分析不難發現,相比總線數據,衛星的遙控、遙測數據量相對較小,且實時性要求較低。因此,可以考慮以實時性相對較高的總線測試回路為重點,以松耦合的方式實現與原有遙控、遙測前端設備連接,用系統化的解決方案實現綜合測試的功能。如圖4所示,專用測試設備的核心功能是實現“總線激勵-響應”測試回路,同時,通過以太網絡接口與原有的遙控、遙測前端設備連接,可以接管“遙控-遙測”測試回路,實現兩個測試回路的整合,在避免研制過于復雜的專用測試設備的同時,實現綜合測試。
2)分級處理的實現
實現分級處理有兩種方法:一是使用不同的處理器完成不同層級的處理任務;二是通過軟件的線程調度和優先級設置,實現CPU時間片在不同處理任務之間的合理分配。前者實現成本高、難度較大,但可以實現更好的實時性和并發處理;后者實現起來相對簡單、靈活,但其實時性受操作系統的局限較大。因此,為實現總線測試的多通道并發控制,滿足較高的實時性要求,可采用現場可編程門陣列(FPGA)作為實時協處理器完成一級處理;而二級處理和三級處理則可以采用桌面計算機配合多線程軟件的方法實現,兼顧性能與成本。
要實現綜合測試,各級處理之間必須有數據交互。二級處理和三級處理通過同一個軟件中的不同線程實現,通過軟件進程通信機制即可解決數據交互的問題;而一級處理則由于采用了FPGA作為協處理器,其與桌面計算機的CPU之間還需要一個高效的通信接口,成熟的外部器件互聯(PCI)總線無疑是較好的選擇。協處理器控制下的數據總線通信有很好的實時性,但要完成與CPU之間的數據交互,還必須解決處理器速率匹配的問題。一個較好的方法是通過存儲器構建數據緩沖池,使兩個不同速率的處理器能夠以異步讀寫的方式對存儲器進行讀寫操作,從而實現速率匹配。
綜上,按照上述方法,可以較好地化解實時性和復雜功能之間的矛盾,整合兩個測試回路,實現對被測總線設備或總線系統的綜合測試。
3.1 需求分析
專用測試設備是實現前述測試方法的關鍵。綜合起來,對專用測試設備需求可歸納為以下幾項:
(1)總線數據采集和存儲功能;
(2)實時數據解析功能;
(3)模擬數據源激勵功能;
(4)動態激勵計算功能;
(5)遙測接收及遙控指令發送功能;
(6)高精度時序控制能力;
(7)多通道并行處理能力。
3.2 總體設計
為滿足以上需求,本文提出了智能數據總線接口卡配合PC系統平臺的設計架構,如圖5所示。
設備采用通用的桌面計算機平臺,通過PCI總線智能接口卡擴展出8路獨立的數據總線接口。利用PC強大的系統功能,可以完成仿真模型調用、數據庫存取和數據統計分析工作,同時提供本地用戶操作界面和與綜合測試網的程控接口;作為設備核心的智能接口卡則通過板載大規模FPGA和同步動態隨機存儲器(SDRAM)實現實時數據處理和存儲、多通道并發控制以及亞微秒級的高精度時序控制,滿足測試系統的實時性要求。
3.3 關鍵設計環節
3.3.1 硬件電路設計
硬件設計工作主要是智能板卡的設計。為降低技術風險、提高設備可靠性,設計中選用了有較多應用的成熟技術。如選用美國PLX公司的PCI9054橋芯片實現PCI總線接口;選用美國XILINX公司的SPARTAN 6系列FPGA實現板載協議處理器;選用韓國Hynix公司的SDRAM實現32 Mbyte內存擴展等,其外圍電路均有的成熟設計可供參考。
在數據總線接口部分,選用美國ADI公司的高速數字隔離器件對數據通道進行電氣隔離;采用具備限壓限流保護功能的第二級隔離DC/DC,單獨為隔離后端的接口電路供電;嚴格按照規范的要求進行數據總線接口電路設計和阻抗匹配,同時滿足電氣特性和可靠性、安全性方面的要求。
3.3.2 FPGA設計
FPGA為8路數據總線配置了獨立的先入先出存儲器(FIFO),每路均包含接收FIFO、發送FIFO和已發送FIFO。其中,發送FIFO用于緩存待發送的數據,以保證總線數據發送的連續性;已發送FIFO用于緩存通過數據總線實際發出的數據內容及其發送時刻,為實際的數據激勵留下準確記錄;接收FIFO用于無損記錄數據總線收到的數據內容及其到達的準確時刻。片內FIFO構成數據的一級緩存,當片內FIFO容量不能滿足要求時,則通過片外SDRAM進行二級緩存。經過前兩級緩存,可以有效降低上位機軟件數據存取的實時性要求,從而能夠將多次讀寫操作整合為塊操作,提高了數據傳輸效率。
FPGA中的數據處理模塊完成接收數據包的傳輸層協議解包、校驗和發送數據的打包,一旦檢測到錯誤的數據包將觸發異常事件,通過狀態寄存器上報上位機。
對有實時性要求的數據處理,均由PC系統前移至FPGA中的實時響應模塊完成。該模塊在數據處理模塊的基礎上,實現應用層的數據解析、邏輯判斷和響應計算,上位機軟件只需通過控制寄存器將響應事件、處理方法和相關參數等信息置入FPGA即可。當預定義的事件發生時,FPGA能夠在微秒級時間內完成邏輯判斷和數據處理,及時發出激勵響應,并在事后通過狀態寄存器和已發送FIFO向上位機報告事件和具體的響應內容及發出時刻。
3.3.3 上位機軟件設計
上位機軟件即圖5中運行于PC平臺的計算機系統應用軟件,在接口卡FPGA和SDRAM的幫助下,上位機軟件僅需在0.5~1 s的時間周期內完成與板卡的數據交互即可。其核心任務是將數據總線測試回路與指令/遙測測試回路統合在一起,綜合判斷,完成仿真模型的調用及測試數據的分析判讀。除此之外,上位機軟件還完成數據庫存取操作,提供圖形化用戶界面,以列表和曲線的形式直觀地顯示數據分析的結果。
上述專用測試設備通過智能板卡與PC平臺配合,可實現基于分級處理的綜合測試方法,目前已成功應用于星載數據總線測試中。現將測試實施情況簡述如下。
4.1 測試回路構建
專用測試設備通過智能板卡實現8路獨立的RS-422總線接口,具備多通道并發處理能力和高精度時序控制及測量能力,與被測總線設備相連即可構成“總線激勵-響應”測試回路;另一方面,專用測試設備通過PC平臺的網絡接口和應用軟件的指令/遙測數據處理模塊,與遙測前端、遙控前端建立網絡連接,可以實現遙控指令發送和遙測數據的接收處理,即“遙控-遙測”測試回路。兩個回路均由運行于PC平臺的應用軟件統一控制、協同工作,測試數據也由應用軟件進行匯總分析和統計,實現綜合判讀。
4.2 基于分級處理的綜合測試實施
一級處理由智能板卡完成。在測試過程中,智能板卡有以下3種處理模式,分別完成不同的測試內容。
1)數據處理機仿真模式
該模式下,“總線激勵-響應”回路模擬2臺數據處理機,以便對傳感器終端進行綜合測試。測試過程中,智能板卡借助FPGA的數據處理能力不僅能完成總線鏈路層的協議分析和校驗,還可以在傳輸層精確的模擬星上數據處理機的采集周期tp,測量各傳感器終端的響應時間td,或縮短采集周期以進行壓力測試。
2)傳感器終端仿真模式
“總線激勵-響應”回路可最多同時模擬8個傳感器終端,以便對數據處理機進行綜合測試。測試時,智能板卡除能對各層次的協議的正確性進行驗證外,還能根據事先由上位機載入的判據條件和響應規則,實時判別來自總線的數據處理機指令,按照響應規則計算響應數據并發送給數據處理機。
3)偵聽模式
“總線激勵-響應”回路將不發送任何激勵信號,僅對總線通信各方進行無損偵聽,記錄總線上各設備的通信數據內容和時間標簽(精確到微秒),也可完成總線通信時序測試。
一級處理產生的測試數據全部暫存于智能板卡的板載緩存中,由上位機軟件讀取。二級和三級處理均由專用測試設備中的PC平臺實現。其中二級處理的主要任務是集中控制“遙控-遙測”回路和“總線激勵-響應”回路,按照測試流程發送遙控指令,采集遙測參數,同時通過PCI總線與智能板卡通信,同步控制“總線激勵-響應”回路,設定一級處理的處理模式、響應規則和判據條件、模擬數據源等。三級處理負責定時讀取前兩級處理產生的輸出數據,完成數據記錄和圖形繪制、數據比對和統計分析,最后綜合得出判定結果。
4.3 應用效果
(1)通過一級處理實現了總線的實時響應和高精度時序控制。經實測,從收到滿足判據條件的總線指令到返回仿真響應數據的時間,最快可在80μs內完成,完全滿足不大于0.1 ms的設計指標;在時序控制方面,智能板卡的數據總線接口采用2.88 MHz的時鐘驅動,理論上可以獲得優于0.35μs的時間分辨率,考慮到時鐘頻率準確度和穩定性的影響,實測時序控制精度優于±1μs。
(2)通過二級處理實現了兩個測試回路的統一控制,通過三級處理實現了測試數據的綜合判讀,使星載數據總線測試從若干獨立的專項測試過渡到綜合測試,且全過程測試數據可完整記錄,測試效率和測試覆蓋性顯著提高。
面對星載數據總線復雜的測試需求,傳統的測試方法和測試設備存在測試覆蓋不充分、效率較低、功能性能不夠完備等諸多不足。本文在對測試需求充分剖析的基礎上,提出了一種基于分級處理的數據總線綜合測試方法,并據此設計了專用測試設備。該設備已成功應用于某衛星整星AIT測試中,不僅圓滿完成測試任務,更使測試覆蓋性、測試精度和測試效率得以全面提高,同時也驗證了文中測試方法的有效性。本文主要結論可歸納如下。
(1)基于分級處理的數據總線綜合測試方法滿足了從鏈路層、傳輸層到應用層系統功能測試的多重要求,且能夠實現測試數據的全程記錄和統計分析,可為類似的星載數據總線測試提供借鑒。
(2)按照分級處理這一思路構建的基于智能板卡和PC平臺的專用測試設備,能夠很好地化解高精度時序控制與復雜的系統功能之間的矛盾,可為有類似要求的測試設備研制提供參考。
(References)
[1]Mughal M Rizwan,Roascio Danilo,Reyneri Leonardo M.Data communication bus interface for modular architecture of small satellites[C]//Proceedings of 2012 IEEE First AESS European Conference on Satellite Telecommunications.New York:IEEE,2012:1-6
[2]T Pittera,M D Errico.Multi-purpose modular plug and play architecture for space systems:design,integration and testing[J].Acta Astronautica,2011,69:629-643
[3]Bai Haowei,Pavan Allalaghatta,Brian Van Voorst,et al.Design of anext generation high-speed data bus[C]//Proceedings of the 1st Space Exploration Conference:Continuing the Voyage of Discovery.Washington D.C.:AIAA,2005:1-7
[4]王慶成.航天器電測技術[M].北京:中國科學技術出版社,2007 Wang Qingcheng.Electrical test technology of spacecraft[M].Beijing:China Sience and Technology Press,2007(in Chinese)
[5]張翰英.衛星電測技術[M].北京:宇航出版社,1999 Zhang Hanying.Satellite electrical test technology[M]. Beijing:China Astronautics Press,1999(in Chinese)
[6]黃以鋒,景博,謝紅星.基于AVR單片機的429總線測試儀的設計[J].微計算機信息,2008 24(26):42-43,5 Huang Yifeng,Jing Bo,Xie Hongxing.Design of 429 data bus analyzer based on AVR MCU[J].Microcomputer Information,2008 24(26):42-43,5(in Chinese)
[7]儲成群,焦新泉,于君.一種大容量固態飛行數據記錄器設計[J].計算機測量與控制,2011,19(1):227-229,239 Chu Chengqun,Jiao Xinquan,Yu Jun.A design of large-capacity solid-state flight data recorder[J].Computer Measurement&Control,2011,19(1):227-229,239(in Chinese)
[8]任立軍,劉威.RS-422數據處理軟件設計[J].測控技術,2012,31(4):90-92 Ren Lijun,Liu Wei.Design of RS-422 bus data processing software[J].Measurement&Control Technology,2012,31(4):90-92(in Chinese)
[9]龔健,華更新,孫越,等.基于多種并發機制的衛星電子設備地面測試軟件設計方法[J].空間控制技術與應用,2012,38(3):47-51,57 Gong Jian,Hua Gengxin,Sun Yue,et al.A multi-concurrence mechanism based design method of ground testing software for satellite electronic devices[J].Aerospace Control and Application,2012,38(3):47-51,57(in Chinese)
(編輯:李多)
A Method of Integrated Test for On-board Data Bus Based on Leveled Data Processing
ZHU Xiaohui LYU Dedong ZHANG Ge
(Institute of Telecommunication Satellite,China Academy of Space Technology,Beijing 100094,China)
According to the layered model of on-board data bus testing,an integrated test method based on leveled data processing is proposed,and special check-out equipment is designed.A customized smart PCI board is the core module of the equipment.By installing this board in an industrial PC platform,an integrated test system for on-board data bus is established and applied to the test program of a certain satellite successfully.Application results show that besides performing the integrated test,the real-time processing can be realized.By applying the method proposed in this paper,a timing precision of sub-microsecond is achieved,hence both accuracy and efficiency of the test are improved.The test method and equipment design proposed in this paper provides a reference for data bus testing of other spacecraft.
on-board data bus;integrated test;leveled data processing;timing control;largecapacity storage
V554
:ADOI:10.3969/j.issn.1673-8748.2015.05.021
2015-05-11;
:2015-08-20
朱曉輝,男,工程師,研究方向為航天器測試技術與測試方法。Email:crown_zxh@163.com。