国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SystemVerilog的機載應(yīng)答機驗證技術(shù)的研究*

2013-12-30 09:48:48馬騰達(dá)薛茜男
電子器件 2013年4期
關(guān)鍵詞:應(yīng)答機旁瓣正態(tài)分布

田 毅,李 宏,馬騰達(dá),薛茜男

(1.中國民航大學(xué),適航審定技術(shù)與管理研究中心,民用航空器適航與維修重點實驗室,天津300300;2.民用飛機模擬飛行國家重點實驗室,上海200232;3.中國民航大學(xué)航空自動化學(xué)院,天津300300)

機載應(yīng)答機對飛機的安全有著重大影響,其作用是接收和識別其他TCAS或者二次雷達(dá)地面站的詢問,再按照相應(yīng)的技術(shù)要求做出應(yīng)答[1]。目前,民航機載應(yīng)答機有3種模式:A模式、C模式、S模式,其中A模式和C模式的脈沖形式完全相同[2]。應(yīng)答機作為研制保證等級為C級的機載電子設(shè)備,會使飛機的性能顯著下降,顯著地增加機組工作量或降低其工作效率,對飛機安全有重大的影響。所以按照民航適航要求需要對設(shè)備中的機載復(fù)雜電子硬件(如FPGA)進(jìn)行嚴(yán)格驗證[3]。比如,在功能仿真階段需要模擬真實信號的脈沖寬度(含閾值),在測試平臺(TestBench)中模擬生成含有恰當(dāng)變化的測試激勵。按照RTCA DO-181的規(guī)定,A模式、C模式、S模式的各個詢問脈沖都含有特殊的脈寬限制,因此如果采用傳統(tǒng)的直接驗證方式,驗證工程師需要耗費大量的時間和精力來搭建測試平臺。SystemVerilog是一種標(biāo)準(zhǔn)化的硬件描述和驗證語言,集成了來自SUPERLOG、VERA、C、C++和 VHDL語言的特點,提供了包括帶約束的隨機激勵產(chǎn)生、覆蓋率驅(qū)動驗證、斷言等功能,適于對于復(fù)雜信號的功能仿真驗證[4-5]。

1 A/C/S模式工作原理

A/C/S模式詢問信號主要由4種脈沖構(gòu)成,按照順序分別為 P1、P2、P3、P4,其中 P1、P3 脈沖起到詢問信號的作用,P2用于抑制應(yīng)答機對旁波瓣詢問信號的應(yīng)答,P4是用來區(qū)分A/C模式和S模式。通過4種脈沖的有無、寬度和間隔的組合構(gòu)成詢問信號,主要有普通詢問信號、全呼叫詢問信號、僅呼叫詢問信號。在實際中受到天氣、收發(fā)機功率、電磁干擾等影響,接收到的詢問信號脈沖不能夠很好的保證在標(biāo)準(zhǔn)要求的范圍內(nèi),故驗證收發(fā)機對于接收脈沖信號是否能夠準(zhǔn)確識別是收發(fā)機研制的關(guān)鍵點。

對每種詢問信號,脈沖寬度并非只是一個固定值,而是允許在一定范圍內(nèi)的,而脈沖之間的間隔也是如此。綜合上述介紹,每種詢問信號有2~4個脈沖(一定有P1、P3),去掉各種詢問信號不應(yīng)有的脈沖,各種詢問信號均可歸結(jié)為圖1所示波形,其中A0、A1、A2、A3 分別為脈沖寬度,B0、B1、B2、B3 分別為脈沖間隔(B中的最后一個非零值為兩個詢問信號間隔)。

圖1 詢問信號波形圖

各種詢問信號的脈沖寬度、間隔如表1。

表1 各種詢問信號的脈沖寬度、間隔表 單位:μs

1.1 普通詢問信號

普通詢問信號只有P1、P2和P3,按照模式分成A模式和C模式,這兩種模式均有P1和P3,且脈沖寬度均為0.8 μs,只是P1和P3的間隔不同,A模式為8 μs,C 模式為21 μs。還可按照對 A 模式詢問信號是否抑制、A模式抑制旁瓣詢問信號、C模式詢問信號、C模式抑制旁瓣詢問信號,記為CALL_A、CALL_A2、CALL_C、CALL_C2。

1.2 全呼叫詢問信號

全呼叫詢問信號和普通詢問信號類似,只是在P3后面加入了脈沖寬度為1.6 μs的P4,其分類方法也和普通詢問信號一樣,分為4種詢問信號:A模式全呼叫詢問信號、A模式全呼叫抑制旁瓣詢問信號、C模式全呼叫詢問信號、C模式全呼叫抑制旁瓣詢問信號,記為 ALLCALL_A、ALLCALL_A2、ALLCALL_C、ALLCALL_C2。

1.3 僅呼叫詢問信號

僅呼叫詢問信號和全呼叫詢問信號類似,只是在P3后面加入了脈沖寬度為0.8 μs的P4,其分類方法也和普通詢問信號一樣,分為4種詢問信號:A模式全呼叫詢問信號、A模式全呼叫抑制旁瓣詢問信號、C模式全呼叫詢問信號、C模式全呼叫抑制旁瓣詢問信號,記為 ONLYCALL_A、ONLYCALL_A2、ONLYCALL_C、ONLYCALL_C2。

2 測試激勵

從表1中可以看出,大部分?jǐn)?shù)據(jù)都是μ±σ型,其中μ為理想值,σ為容差,所以可以用正態(tài)分布來描述此類數(shù)據(jù)。然而,例如CALL_A2的A1,其理想值為0.8 μs,容差上限為1.2 μs,下限為0.3 μs。容差的上限和下限并不相等,且下限較為接近0,使用正態(tài)分布容易產(chǎn)生負(fù)值等錯誤,故需要對正態(tài)分布進(jìn)行改進(jìn)[6]。

2.1 基于正態(tài)分布的脈沖寬度、間隔

由于脈沖寬度和間隔均有一定的容限,所以采用正態(tài)分布來產(chǎn)生測試激勵,能夠更精確的描述實際情況,通過改變標(biāo)準(zhǔn)差來調(diào)整注入錯誤的概率。這樣既能很好的描述脈沖的寬度,又能很方便的注入錯誤。采用系統(tǒng)函數(shù)$dist_normal()生成測試向量,即

隨機生成正確激勵的概率為:

式中seed為隨機種子,max為容差上限,min為容差下限,mean為平均值,dev為標(biāo)準(zhǔn)差。其中max、min、mean為已知值,可通過調(diào)整標(biāo)準(zhǔn)差值,使P(rignt)=90%。

2.2 改進(jìn)正態(tài)分布

表1中的多數(shù)情況均可用正態(tài)分布來實現(xiàn),但是 CALL2 的 A1 值為 0.3 μs~1.2 μs,其期望值為0.8 μs,其值并非對稱,且單純使用正態(tài)分布會出現(xiàn)錯誤,即有一定概率產(chǎn)生負(fù)值,或產(chǎn)生一個很大的時間。所以要設(shè)定一個故障范圍,將故障值約束在一定范圍之內(nèi)。300 ns~1 200 ns為正常值,設(shè)定2 00ns~300 ns和1 200 ns~1 400 ns為故障值,當(dāng)隨機出的數(shù)值不在正常值的區(qū)間內(nèi)時,則歸結(jié)到該故障值內(nèi),故障值采用平均分布。改進(jìn)正態(tài)分布概率如圖2所示。

圖2 改進(jìn)正態(tài)分布概率圖

為保證隨機生成正確激勵的概率約等于90%,將標(biāo)準(zhǔn)差設(shè)為268,則

則隨機生成錯誤激勵的概率為

由于將所有的錯誤情況都?xì)w結(jié)到[200:299]和[1201:1400]這個區(qū)間內(nèi)的平均分布,此平均分布的區(qū)間長度為400,則此平均分布的概率為

2.3 脈沖生成

應(yīng)答機12種詢問信號都可歸結(jié)成圖1所示波形,依據(jù)表1的數(shù)據(jù),來生成相應(yīng)的詢問信號。對于每個脈沖,只需保證脈沖寬度和間隔符合要求即可,由于這兩者均為隨機數(shù),所以采用并行語句來描述。

詢問信號最多有4個脈沖,每個脈沖的形式相同,所以通過for循環(huán)來逐個生成,即通過for循環(huán)來不斷的調(diào)用gen_forkwave任務(wù)。

2.4 詢問信號生成

由于各種詢問信號都可以歸結(jié)為圖1所示的波形,所以只寫一個task使其能產(chǎn)生各種波形。首先將各種詢問信號進(jìn)行定義,將其定義成枚舉類型wavemode,作為task的輸入變量,以識別所需產(chǎn)生的詢問信號。

task通過輸入的枚舉變量來識別所需生成的詢問信號后,還要從表1中查出對應(yīng)的脈沖寬度和間隔。所以,將各種詢問信號的脈沖寬度和間隔都存入一個4維數(shù)組常量 ALL_WAVE_INFO[12][2][4][6]中。其中第一維用來區(qū)分詢問信號類型,第二維用來區(qū)分脈沖寬度和間隔,第三維用來指示脈沖寬度An和間隔Bn中的n,第四維用來存儲該隨機數(shù)值的信息。

3 驗證

驗證主要提供硬件設(shè)計符合需求的證據(jù)。在驗證過程中采用適宜的方法對硬件進(jìn)行檢驗,并進(jìn)行測量。常用的方法有評審、分析及測試或三者的組合。

待驗應(yīng)答機所選用的是Altera公司的CycloneⅢ系列的某型芯片,并在設(shè)計中調(diào)用了內(nèi)部的IP核資源,包括:加法器、乘法器、PLL、緩存核等。項目組按照適航要求,對待驗證FPGA的原廠提供的質(zhì)量證明、生產(chǎn)記錄及該型元器件成功工作的服務(wù)歷史等相關(guān)信息進(jìn)行了評估,并按照原廠指導(dǎo)對于主要功能IP(如緩存)進(jìn)行了驗證,從而保證這些設(shè)計不可控元素的可靠性。在此基礎(chǔ)上,搭建下述驗證分析平臺[7-8]。

3.1 驗證分析平臺結(jié)構(gòu)

采用分層結(jié)構(gòu)來搭建驗證平臺[9-10],主要由數(shù)據(jù)生成器、驅(qū)動器、記分牌、監(jiān)視器和斷言等組件組成,如圖3所示。

圖3 測試平臺結(jié)構(gòu)圖

數(shù)據(jù)生成器用來生成數(shù)據(jù)模式,具體到本驗證平臺,就是生成一組詢問模式變量,都寫入郵箱傳遞給驅(qū)動器組件。

驅(qū)動器根據(jù)數(shù)據(jù)生成器的數(shù)據(jù),生成相應(yīng)的波形數(shù)據(jù),發(fā)送給待測設(shè)計;在發(fā)送給記分牌時,并將其中的錯誤數(shù)據(jù)過濾掉,只將正確數(shù)據(jù)發(fā)送過去。

監(jiān)視器監(jiān)視待測設(shè)計的輸出,并將其傳給記分牌。記分牌將驅(qū)動器和監(jiān)視器的數(shù)據(jù)作對比,即可判斷待測設(shè)計的正確性。

斷言組件單獨寫成一個module,待測設(shè)計的輸入和輸出都作為斷言模塊的輸入,檢測待測設(shè)計的屬性是否符合設(shè)計需求。在測試平臺中,通過關(guān)鍵字blind與待測設(shè)計綁定[11]。

3.2 組件

除斷言以外的模塊都是通過類(class)來實現(xiàn)的,在類中定義成員變量及函數(shù)、任務(wù),而組件之間的通信都是通過郵箱(mailbox)來實現(xiàn),以數(shù)據(jù)生成器為例,其代碼如下:

在每個類中,首先要定義成員變量,包括用作通信的郵箱以及需要隨機的變量等;由于在實例化時需要給該類加一個郵箱參數(shù),所以還要定義一個帶參數(shù)的new()函數(shù);最后就是任務(wù),通過任務(wù)來執(zhí)行相應(yīng)的動作,包括向郵箱內(nèi)寫數(shù)據(jù)以傳遞給后面的組件等。

圖4 概率分布圖

4 實驗結(jié)果

4.1 改進(jìn)型正態(tài)分布

以CALL2的A1值為例,采用改進(jìn)型正態(tài)分布生成1000次隨機值,各區(qū)間的概率分布如圖4所示,生成結(jié)果符合圖2的預(yù)期結(jié)果。隨機變量被約束在200~1 500的范圍之內(nèi),避免生成負(fù)值造成仿真錯誤,并且避免生成一個極大的正值造成仿真效率下降。

4.2 仿真激勵波形

依據(jù)機載應(yīng)答機各種模式詢問信號要求,應(yīng)用改進(jìn)的正態(tài)分布算法產(chǎn)生脈沖寬度和間隔,生成的各種模式仿真激勵波形如圖5所示。

圖5 仿真激勵波形圖

4.3 仿真結(jié)果

在驗證平臺中將上述仿真激勵注入到待測設(shè)計中,得到的仿真結(jié)果如圖6所示。

圖6 仿真波形圖

5 結(jié)論

本研究采用改進(jìn)型正態(tài)分布生成測試向量,通過SystemVerilog驗證語言搭建驗證平臺實現(xiàn)了對應(yīng)答機可編程邏輯器件的驗證。改進(jìn)后的測試激勵生成算法既避免了產(chǎn)生負(fù)值的錯誤,又模擬了真實情況,在對機載應(yīng)答機的驗證中取得了良好的效果,達(dá)到了高效、精確驗證的目的。該方法有望應(yīng)用于其他機載電子設(shè)備可編程邏輯器件的設(shè)計驗證中。

[1]馬進(jìn).基于FPGA和TCAS與S模式應(yīng)答機綜合化數(shù)字中頻接收系統(tǒng)的設(shè)計與仿真[D].上海:上海交通大學(xué),2011.

[2]MH/T 4010—2006,空中交通管制二次雷達(dá)設(shè)備技術(shù)規(guī)范[S].

[3]王鵬,田毅.DO-254標(biāo)準(zhǔn)在機載電子硬件審定中的應(yīng)用[J].中國民航大學(xué)學(xué)報,2010,5(28):17-24.

[4]Mark Zwolinski.Digital System Design with SystemVerilog[M].Pearson,2009,24-78.

[5]Christian B Spear.SystemVerilog for Verification:A Guide to Learning the Testbench Language Features[M].Springer,2008,44-125.

[6]張建平,王睿韜.對數(shù)正態(tài)分布下基于MAM的VFD加速壽命試驗研究[J].電子器件,2008,31(6):1735-1738,1742.

[7]周德新,金志威,王鵬,等.基于SystemVerilog的SRAM控制器IP 核驗證[J].電子器件,2012,35(5):619-622.

[8]劉萌,馮海洲,李康,等.基于SystemVerilog的網(wǎng)絡(luò)處理器驗證平臺設(shè)計[J].電子器件,2011,34(3):320-323.

[9]Janick Bergeron,Eduard Cerny,Alan Hunter,et al.Verification Methodology Manual for SystemVerilog[M].Springer,2005,23-145.

[10]Mark Glasser.Open Verification Methodology Cookbook[M].Springer-Verlag,2009,47-129.

[11]Srikanth Vijayaraghavan,Meyyappan Ramanthan.A Practical Guide for SystemVerilog Assertions[M].Springer,2005,21-59.

猜你喜歡
應(yīng)答機旁瓣正態(tài)分布
基于圓柱陣通信系統(tǒng)的廣義旁瓣對消算法
衛(wèi)星測控應(yīng)答機的接收機在軌性能評估方法
航天器工程(2021年2期)2021-04-28 08:41:48
一種基于線性規(guī)劃的頻率編碼旁瓣抑制方法
飛機應(yīng)答機的奧秘
基于加權(quán)積分旁瓣最小化的隨機多相碼設(shè)計
基于對數(shù)正態(tài)分布的出行時長可靠性計算
航管應(yīng)答機退敏和恢復(fù)的設(shè)計研究
電子制作(2017年23期)2017-02-02 07:16:51
正態(tài)分布及其應(yīng)用
基于四項最低旁瓣Nuttall窗的插值FFT諧波分析
正態(tài)分布題型剖析
赤峰市| 乌审旗| 丰城市| 通许县| 浮梁县| 沂南县| 扎鲁特旗| 凭祥市| 牡丹江市| 灵丘县| 成武县| 昌吉市| 鄂州市| 静宁县| 芦溪县| 民权县| 驻马店市| 平远县| 余干县| 西林县| 龙海市| 武平县| 永吉县| 中西区| 布拖县| 阜阳市| 社会| 武汉市| 东海县| 白朗县| 三门峡市| 睢宁县| 舟曲县| 会昌县| 贡觉县| 东台市| 南丹县| 德保县| 安仁县| 娄底市| 南澳县|