王怡蘋,汪定國,吳忠德
(海軍航空工程學(xué)院科研部,山東煙臺264001)
面向信號的自動測試是通用自動測試系統(tǒng)(Automatic Test System,ATS)的發(fā)展趨勢[1],其優(yōu)點是在測試程序中只包含針對被測對象端口的信號描述,而無須進(jìn)行通道的轉(zhuǎn)接和儀器的指定。它真正實現(xiàn)了測試程序與儀器的無關(guān)性,解決了測試程序的跨平臺可移植問題[2-3]。
規(guī)模和復(fù)雜程度已成為制約自動測試系統(tǒng)軟件開發(fā)的突出問題。實現(xiàn)測試軟件的規(guī)范化描述,并在此基礎(chǔ)上實現(xiàn)軟件模型的無縫集成,是解決該問題的關(guān)鍵。在面向信號的自動測試軟件平臺中,信號是其組成的基本組件。采用以信號模型為基礎(chǔ),建立統(tǒng)一的儀器模型和測試任務(wù)模型,可解決測試軟件平臺中各層間的標(biāo)準(zhǔn)化集成問題,并能充分發(fā)揮面向信號的測試軟件平臺的優(yōu)勢。
面向信號的測試軟件平臺采用分層化的模型設(shè)計,各層次間的接口遵循通用的標(biāo)準(zhǔn)和規(guī)范。各層次間、模塊間以及與外部之間的接口都按照一定的通用標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)交換和信息共享,以保證測試程序與測試系統(tǒng)軟、硬件平臺的無關(guān)性,滿足測試程序可移植和可重用的要求[4]。
系統(tǒng)的各功能模塊具有良好的可重用性,有利于系統(tǒng)將來的裁減和擴(kuò)充。IEEE 1641 標(biāo)準(zhǔn)[5-6],將測試軟件平臺分為4個層次,建立了平臺的總體模型,如圖1所示。
信號建模語言層(Signal Modeling Language,SML)為基本信號組件層提供數(shù)學(xué)定義。這些數(shù)學(xué)基礎(chǔ)使得用基本信號組件層定義的信號能夠在功能上進(jìn)行比較和仿真。SML 層信號定義是信號重用的基礎(chǔ),而信號重用正是IEEE 1641標(biāo)準(zhǔn)擴(kuò)展的實質(zhì)。
圖1 面向信號的測試軟件分層模型
基本信號組件層(Basic Signal Component,BSC)提供可重用的、形式化描述的基本信號類。BSC類是IEEE 1641標(biāo)準(zhǔn)中信號構(gòu)成的最小單元。每個BSC都有它的類名稱、類類型、特性和默認(rèn)值、XML模板定義(XSDs)、接口定義語言(IDL)描述和SML 信號定義。每個BSC既可作為信號接口提供給測試需求層使用,也可作為基本信號,將多個BSC 信號進(jìn)行組合,構(gòu)建成復(fù)雜信號,滿足測試需求層的要求[7]。
測試信號框架層(Test Signal Framework,TSF)確定了可重用的、格式化描述的信號類庫是如何定義的。TSF 庫的內(nèi)容是某一領(lǐng)域信號定義的集合,這些信號定義是由其他TSF 信號和BSC 信號組合而成的。TSF 層提供TSF 庫,這些信號類庫形成了信號接口的擴(kuò)展機(jī)制,即允許創(chuàng)建其他的信號類定義。一個TSF庫中的每一個TSF類都用它的類名、類類型、特性和默認(rèn)值、XML 描述(包括XML 形式的接口定義、靜態(tài)信號模型定義,以及能夠得到的IDL接口和XSD的文本化描述)來定義。TSF 信號類的制定必須建立在SML和BSC層的基礎(chǔ)之上。
測試需求層(Test Requirement Layer,TRL)是用結(jié)合信號特征,且滿足載體語言要求的描述方式來形式化地描述測試需求(例如測試需求、測試過程和測試程序)。在測試需求層中可直接調(diào)用IEEE 1641 標(biāo)準(zhǔn)特有的測試過程語言(Test Procedure Language,TPL)。TPL語言是為在面向信號機(jī)制下,采用文本化方式編寫測試程序提供的一種語言規(guī)范[8]。IEEE 1641 標(biāo)準(zhǔn)為TPL 語言定義了10 個表征測試行為的動詞,用于描述面向信號的機(jī)制下信號測試和控制過程,但它沒有像C/ATLAS語言那般提供了全部的編程語言定義。因此,在編寫實際可執(zhí)行的測試程序時,需要將TPL語句嵌套在其他標(biāo)準(zhǔn)編程語言(即載體語言)之中,比如C 語言等,以混合編程的方式來實現(xiàn)。具體嵌套在何種標(biāo)準(zhǔn)編程語言之中,并沒有限制,允許用戶選擇自己熟悉的編程語言。
面向信號的測試,就是將測試需求中所需的虛擬信號與組成測試系統(tǒng)硬件平臺的儀器所具有的真實信號間建立連接,并使儀器產(chǎn)生控制、激勵或測量信號,完成被測對象的測試。因此,信號是面向信號軟件平臺的基本組件。研究面向信號的軟件平臺,首先必須對信號的模型進(jìn)行分析與研究,在此基礎(chǔ)上再進(jìn)行儀器模型和測試任務(wù)模型的研究。
本文以IEEE 1641標(biāo)準(zhǔn)中BSC層和TSF層信號為基礎(chǔ),給出了信號模型,如圖2所示。
由圖2可看出,無論是基本信號還是擴(kuò)展信號,其描述都應(yīng)包含信號類型、角色、名稱、屬性(含屬性名稱、范圍、誤差范圍和精度)、同步信號和門信號等。其中,輸出測量值表示指定的測量屬性所對應(yīng)的測量值。若該信號沒有測量屬性,則該信號也不具有輸出測量值。
圖2 信號模型
信號的描述方式有SML 定義、IDL 描述和XML描述等[9]。不同的信號描述方式有不同的側(cè)重點和應(yīng)用目的,如SML定義主要從數(shù)學(xué)模型的角度描述基本信號類的行為,對其參數(shù)進(jìn)行定義,它位于層狀信號模型的最底層,同時也是信號模型定義、仿真和驗證的根基;IDL描述主要針對信號類的接口進(jìn)行定義,規(guī)范化地描述信號類的屬性和方法,是信號組件開發(fā)的基礎(chǔ);XML 對信號模型進(jìn)行描述,主要用于ATS 軟件模塊之間規(guī)范化的信息描述和傳遞。
儀器是構(gòu)成測試系統(tǒng)硬件的一個重要組成部分。面向信號的自動測試系統(tǒng)中所包含的信號都來源于構(gòu)成這個自動測試系統(tǒng)的儀器。因此,分析一個自動測試系統(tǒng)所具有的信號能力,就需對組成系統(tǒng)的每臺儀器進(jìn)行分析。在對每臺儀器進(jìn)行分析之前,首先需建立一個儀器模型,以保證對儀器的描述有統(tǒng)一的規(guī)范,見圖3。從信號的角度講,儀器就是由若干不同類型的信號組成,這些信號分別流經(jīng)儀器的輸入或輸出端口。它包含了每個儀器的基本信息、功能信號和端口信息等內(nèi)容。
圖3 儀器模型
儀器的基本信息是每個儀器的固有信息,它包含儀器的名稱、總線控制方式(如PXI、VXI、PCI、PCIe、GPIB、LAN等)、總線地址和驅(qū)動程序名稱等信息。
端口信息中列出了儀器的所有端口,每個端口對應(yīng)于一個接線類型(Connection),也稱為線型,如TwoWire(雙線)、TwoWireComp(雙線差分)和Three-WireComp(三線差分)等。有關(guān)Connection 中的連接類型詳見文獻(xiàn)[5]。
功能信息列出了儀器所有的功能,每個信號模型代表一個功能,每個功能與一個端口相對應(yīng)。每個功能中又包含了信號的類型、角色、屬性、同步信號、門信號和測量屬性(只有當(dāng)角色類型為sensor時,才具有測量屬性)等。
測試需求層是將測試任務(wù)形式化地描述為結(jié)合信號特征且滿足載體語言要求的測試需求[10]。因此,結(jié)合IEEE 1641 標(biāo)準(zhǔn)中列出的測試行為動詞,給出被測對象的測試任務(wù)描述模型,對于實現(xiàn)被測對象的面向信號測試具有重大指導(dǎo)意義。本文結(jié)合IEEE 1641標(biāo)準(zhǔn)列出的10個表征測試行為的動詞,給出了測試任務(wù)模型。IEEE 1641 標(biāo)準(zhǔn)為測試需求層所使用的TPL語言定義了10 個表征測試行為的動詞,如表1 所示。使用這10個TPL測試行為動詞,可對被測對象完成測試任務(wù)的實施。
表1 TPL語言中表征測試行為的動詞
本節(jié)給出的面向信號的測試任務(wù)模型如圖4 所示。在一個測試任務(wù)中,實線框表示的模塊可出現(xiàn)n次(n≥1),虛線框表示的模塊可出現(xiàn)m次(m≥0)。每個模塊對應(yīng)于一個或多個TPL測試行為動詞。
申請?zhí)摂M信號表示申請完成一個測試任務(wù)所需的信號,由行為動詞Setup完成的。
信號連接是建立已申請的虛擬信號與被測對象的某一個或多個針腳間的連接,由Connection完成。
圖4 測試任務(wù)模型
使能事件是指若申請的信號與某個事件相關(guān),則需要調(diào)用行為動詞Enable,激活該事件。
等待是指等候某固定時間,使信號的輸出穩(wěn)定或達(dá)到被測對象的工作狀態(tài),由行為動詞Waitfor完成。
信號狀態(tài)改變是指更改某個已申請信號的屬性值,由行為動詞Change完成。
禁止事件是指停止已激活事件,由Disable完成。
結(jié)果判斷是指獲取被測對象的當(dāng)前狀態(tài)值,并與期望值相比較,從而判斷被測對象當(dāng)前的工作狀態(tài)。獲取測試結(jié)果和結(jié)果判斷分別由行為動詞Read 和Compare完成。
信號復(fù)位是指在完成測試任務(wù)的情況下,將已建立起的通路連接斷開,已申請的信號釋放,保證后續(xù)測試任務(wù)的正常進(jìn)行。由行為動詞Disconnection 和Reset完成。
本文的開始給出了測試軟件的分層模型,接著給出了信號模型,并在此基礎(chǔ)上創(chuàng)建了儀器模型和測試任務(wù)模型。這4 個模型都是建立在信號的基礎(chǔ)之上的,圖5 給出了這4 個模型之間的關(guān)聯(lián)關(guān)系。測試軟件分為4 層:SML 層、BSC 層、TSF 層和TRL 層,TRL層可調(diào)用TSF 層的信號,也可直接調(diào)用BSC 層的信息。信號模型是在BSC層和TSF的基礎(chǔ)上,歸納出的模型。儀器模型是在信號模型的基礎(chǔ)之上,再結(jié)合儀器的基本信息和端口信息等內(nèi)容構(gòu)成的。測試任務(wù)模型也是建立在信號模型的基礎(chǔ)之上的,但其是針對軟件平臺的TRL層制定的,用于描述被測對象的測試需求或測試過程。
圖5 模型間關(guān)系
本文首先對測試軟件平臺的各層功能進(jìn)行了說明;在BSC 層和TSF 層信號的基礎(chǔ)上,給出了信號模型;在這信號模型的基礎(chǔ)上,又給出了儀器模型和測試任務(wù)模型;最后給出了各模型間的關(guān)系。這些模型結(jié)合在一起,實現(xiàn)了面向信號的ATS測試軟件的規(guī)范化描述,保證了面向信號軟件平臺與儀器的無關(guān)性,以及測試程序跨平臺移植的實現(xiàn)。
[1] 杜里,張其善.電子裝備自動測試系統(tǒng)發(fā)展綜述[J].計算機(jī)測量與控制,2009,17(6):1019-1021.
DU LI,ZHANG QISHAN. Development review of automatic test system of electronic equipment[J]. Computer Measurement & Control,2009,17(6):1019-1021.(in Chinese)
[2] 路輝,李小白.自動測試系統(tǒng)資源模型化設(shè)計[J].測試技術(shù)學(xué)報,2007,21(1):53-57.
LU HUI,LI XIAOBAI. The modeling strategies of automatic test system[J]. Journal of Test and Measurement Technology,2007,21(1):53-57.(in Chinese)
[3] 于勁松.通用自動測試系統(tǒng)關(guān)鍵技術(shù)研究[D].北京:北京航空航天大學(xué),2004:20-42.
YU JINSONG.Research on key techniques of general purpose of automatic test system[D].Beijing:Beijing University of Aeronautics and Astronautics,2004:20-42.(in Chinese)
[4] 于勁松,鮑小明,趙泉.面向信號的通用自動測試系統(tǒng)建模與設(shè)計[J].兵工學(xué)報,2009,30(4):471-475.
YU JINSONG,BAO XIAOMING,ZHAO QUAN. Modeling and design of signal-oriented general purpose automatic test system[J]. Introducing Journal of China Ordnance,2009,30(4):471-475.(in Chinese)
[5] IEEE Std 1641 IEEE standard for signal and test definition[S].2010.
[6] IEEE Std 1641.1 IEEE guide for the use of IEEE Std 1641,standard for signal and test definition[S].2006.
[7] 王成.面向信號的ATS軟件平臺關(guān)鍵技術(shù)研究[D].石家莊:軍械工程學(xué)院,2008:38-63.
WANG CHEN. Research on key technologies of signal oriented ATS software platform[D]. Shijiazhuang:Ordnance Engineering College,2008:38-63.(in Chinese)
[8] 鐘建林,何友,齊玉東.基于IEEE1641 標(biāo)準(zhǔn)的自動測試系統(tǒng)體系結(jié)構(gòu)[J].計算機(jī)測量與控制,2009,17(5):854-856.
ZHONG JIANLIN,HE YOU,QI YUDONG. ATS architecture implementing IEEE 1641[J]. Computer Measurement&Control,2009,17(5):854-856.(in Chinese)
[9] 楊森,孟晨.基于STD標(biāo)準(zhǔn)的ATS信號組件模型研究與實現(xiàn)[J].電子測量技術(shù),2009,32(12):21-24.
YANG SEN,MENG CHEN. Research and realization of ATS signal component model based on STD standard[J].Electronic Measurement Technology,2009,32(12):21-24.(in Chinese)
[10] WANG YIPING,WEN TIANZHU,SHANG YONGSHUANG. Research on development and test of signaloriented driver[J].Journal of Software,2012,7(8):1807-1815.