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

?

基于總線功能模型的全系統(tǒng)FPGA驗(yàn)證環(huán)境設(shè)計(jì)

2017-11-10 09:22薛利強(qiáng)
航空發(fā)動(dòng)機(jī) 2017年1期
關(guān)鍵詞:測試用例總線組件

薛利強(qiáng),于 真

(中國航發(fā)航空動(dòng)力控制系統(tǒng)研究所,江蘇無錫 214063)

基于總線功能模型的全系統(tǒng)FPGA驗(yàn)證環(huán)境設(shè)計(jì)

薛利強(qiáng),于 真

(中國航發(fā)航空動(dòng)力控制系統(tǒng)研究所,江蘇無錫 214063)

為了解決發(fā)動(dòng)機(jī)控制領(lǐng)域中可編程門陣列設(shè)計(jì)復(fù)雜性日益增長而導(dǎo)致的驗(yàn)證困難問題,提出了1種FPG A的全系統(tǒng)驗(yàn)證方案,用以實(shí)現(xiàn)全面高效的功能驗(yàn)證。根據(jù)控制系統(tǒng)設(shè)計(jì)方案,對照控制器電路結(jié)構(gòu)進(jìn)行驗(yàn)證平臺的搭建,通過基于總線功能模型的方法對系統(tǒng)中FPG A所控制的外設(shè)進(jìn)行建模,并在驗(yàn)證平臺中進(jìn)行與電路完全一致的連接。按照系統(tǒng)測試計(jì)劃編制測試用例對全系統(tǒng)進(jìn)行模擬仿真。測試結(jié)果表明:全系統(tǒng)FPG A的驗(yàn)證能夠模擬控制器實(shí)際運(yùn)行狀態(tài),提升了驗(yàn)證層次與效率,對發(fā)動(dòng)機(jī)數(shù)控系統(tǒng)的設(shè)計(jì)質(zhì)量提升有顯著作用。

可編程門陣列;驗(yàn)證平臺;總線功能模型;全權(quán)限數(shù)字電子控制系統(tǒng);航空發(fā)動(dòng)機(jī)

0 引言

相對基于馮·諾依曼體系架構(gòu)的處理器,具有可重構(gòu)特性的可編程門陣列(Field Programmable Gate Array,FPGA)的最大特點(diǎn)是計(jì)算資源的分布配置和并行處理,使得FPGA特別適合處理并行實(shí)時(shí)任務(wù)[1]。國內(nèi)外FADEC系統(tǒng)中均大量運(yùn)用FPGA,歐洲FADEC國際公司最新型FADEC系統(tǒng)中的數(shù)字邏輯功能均采用FPGA實(shí)現(xiàn)[2];美國NI公司基于FPGA和Power-PC處理器開發(fā)了高性能的控制器快速原型開發(fā)平臺CompactRIO;美國IAC公司基于FPGA設(shè)計(jì)了F117發(fā)動(dòng)機(jī)(C-17動(dòng)力裝置)的PHM單元[3]。

目前某在研數(shù)字控制器中FPGA主要應(yīng)用于外設(shè)管理(AD采集,離散量采集)、數(shù)字邏輯處理以及通訊協(xié)議處理。在這些應(yīng)用場合中,F(xiàn)PGA管理對象復(fù)雜多樣、總線高度復(fù)用、接口繁雜,F(xiàn)PGA的設(shè)計(jì)缺陷不僅會影響正常功能無法實(shí)現(xiàn),甚至?xí)?dǎo)致硬件電路損壞。這就對驗(yàn)證提出了新的要求:不僅要驗(yàn)證子模塊功能的正確性,同時(shí)要對電路系統(tǒng)層面的功能進(jìn)行驗(yàn)證。傳統(tǒng)的通過編寫定向測試激勵(lì)、查看接口波形的方法在目前出現(xiàn)了瓶頸。

本文基于某型燃?xì)廨啓C(jī)控制器的總線架構(gòu),設(shè)計(jì)了基于功能模型的全系統(tǒng)驗(yàn)證環(huán)境,能夠在電路系統(tǒng)層對FPGA功能進(jìn)行驗(yàn)證,并基于設(shè)計(jì)需求通過檢查器和斷言等功能對驗(yàn)證結(jié)果進(jìn)行評價(jià),從而達(dá)到需求、設(shè)計(jì)與驗(yàn)證全流程緊密結(jié)合。

1 驗(yàn)證方法概述

在傳統(tǒng)的驗(yàn)證平臺中,激勵(lì)的過程就是把二進(jìn)制序列按照一定時(shí)間順序送入被測設(shè)計(jì)中。傳統(tǒng)驗(yàn)證環(huán)境由3部分組成:激勵(lì)生成(Stimulus Generator)、DUT(Device Under Test)和響應(yīng)檢測(Response Checking),如圖1所示[4]。

DUT是被測的邏輯電路,通常DUT是使用硬件描述語言編寫的可綜合的設(shè)計(jì)。DUT接收驗(yàn)證平臺的激勵(lì),按照設(shè)計(jì)的邏輯功能對輸入數(shù)據(jù)進(jìn)行處理后輸出相應(yīng)結(jié)果。

激勵(lì)生成模塊主要功能是根據(jù)DUT的輸入接口的信號時(shí)序,對DUT產(chǎn)生信號激勵(lì),將測試信號向量輸入到DUT中。在傳統(tǒng)的驗(yàn)證環(huán)境中,激勵(lì)通常由驗(yàn)證工程師制定,在驗(yàn)證時(shí)是固定不變的,同時(shí)激勵(lì)與DUT的連接方式一般采用ping2ping(引腳對引腳)。響應(yīng)檢測模塊也通過ping2ping的接口獲取被測設(shè)計(jì)的輸出,由驗(yàn)證工程師人工判斷結(jié)果是否正確。

從驗(yàn)證思想和結(jié)構(gòu)上來看,傳統(tǒng)的驗(yàn)證環(huán)境的構(gòu)造和使用都處于信號級層面,在面對大規(guī)模系統(tǒng)設(shè)計(jì)的驗(yàn)證時(shí)存在以下不足:

(1)傳統(tǒng)驗(yàn)證方法只適用于簡單的設(shè)計(jì)。當(dāng)設(shè)計(jì)復(fù)雜后,很可能會出現(xiàn)人為錯(cuò)誤并且結(jié)果不精確;

(2)傳統(tǒng)驗(yàn)證方法效率低。驗(yàn)證人員的很大一部分精力投入到信號驅(qū)動(dòng)以及觀察波形正確性上,驗(yàn)證層次低。

為了改善傳統(tǒng)驗(yàn)證方法,業(yè)界推出一些改進(jìn)方法,目前較為成熟的有斷言和基于總線功能模型的驗(yàn)證?;跀嘌缘尿?yàn)證 (ABV,Assertion Based Verification)是1種能夠增加設(shè)計(jì)可觀察性,使設(shè)計(jì)缺陷更易于發(fā)現(xiàn)和診斷的方法,把斷言、仿真以及形式技術(shù)結(jié)合到傳統(tǒng)的驗(yàn)證過程中[5-9]。

Systemverilog于2005年11月成為電子設(shè)計(jì)的1種新標(biāo)準(zhǔn)語言(SystemVerilog,IEEE std 1800-2005),SystemVerilog Assertion(SVA)是標(biāo)準(zhǔn)的重要組成部分。

總線功能模型是1種有效的抽象驗(yàn)證方法,其作用是把底層總線的時(shí)序封裝起來,向上層提供1個(gè)統(tǒng)一的任務(wù)接口,使上層不用關(guān)心底層的實(shí)現(xiàn)細(xì)節(jié)而專注于測試用例的設(shè)計(jì)。BFM與DUT之間的連接如圖2 所示[10-15]。

2 某型燃?xì)廨啓C(jī)數(shù)字電子控制器電路架構(gòu)

隨著發(fā)動(dòng)機(jī)控制技術(shù)的發(fā)展,電子控制器的控制對象包含轉(zhuǎn)速控制、防喘、限溫、限轉(zhuǎn)控制等??刂茖ο蠓倍鄬?dǎo)致FADEC電路規(guī)模極大增長,為了減輕CPU的負(fù)擔(dān),提升控制效率,目前大量采用基于總線的CPU+FPGA架構(gòu)電路設(shè)計(jì)。某型燃?xì)廨啓C(jī)控制器的電路架構(gòu)如圖3所示。

從圖中可見,與CPU運(yùn)行密切相關(guān)的設(shè)備掛接在第1級總線上,如SRAM等。FPGA掛接在第2級總線上,此總線是CPU和FPGA之間通信的途徑,同時(shí)FLASH、NVRAM以及其他高速器件也掛接在第2級總線上。第3級總線,通常又稱為板外總線,主要掛接一些低速外設(shè),如AD、開關(guān)量輸入的驅(qū)動(dòng)器、開關(guān)量輸出的鎖存器等。FPGA通過時(shí)分復(fù)用技術(shù),合理分配時(shí)間片對板外總線上的外設(shè)進(jìn)行管理,如圖4所示。

通過第3級總線的合理劃分,將CPU和FPGA各自的任務(wù)進(jìn)行了明確劃分。由于FPGA并行運(yùn)行的特性,能夠同時(shí)進(jìn)行多任務(wù),因此,F(xiàn)PGA主要負(fù)責(zé)對外設(shè)進(jìn)行統(tǒng)一管理,提供簡單的寄存器接口供CPU查詢或設(shè)置;CPU通過總線接口從FPGA獲取數(shù)據(jù)進(jìn)行運(yùn)算和控制,并將命令通過接口下發(fā)至FPGA。

板外總線在簡化電路設(shè)計(jì)的同時(shí)也給FPGA驗(yàn)證(單模塊驗(yàn)證)帶來了新的挑戰(zhàn),由于對外接口種類繁多且時(shí)序復(fù)雜,驗(yàn)證人員很難從波形看出其是否符合設(shè)計(jì)要求。

對于驗(yàn)證層次較高的系統(tǒng)驗(yàn)證人員而言,其主要工作應(yīng)當(dāng)根據(jù)驗(yàn)證需求開發(fā)測試用例,通過斷言或其他方式對結(jié)果進(jìn)行判斷而不是依賴于時(shí)序波形。下文將通過1個(gè)實(shí)例論述如何通過搭建系統(tǒng)驗(yàn)證環(huán)境實(shí)現(xiàn)高層次驗(yàn)證。

3 系統(tǒng)驗(yàn)證環(huán)境搭建

某型燃?xì)廨啓C(jī)數(shù)字電子控制器采用3級總線架構(gòu)??刂破髂軌?qū)崿F(xiàn)運(yùn)算、存儲、模擬量采集、開關(guān)量采集與輸出等功能。系統(tǒng)級驗(yàn)證首先需要根據(jù)電路搭建測試平臺,測試平臺如圖5所示。

測試平臺主要有以下幾部分:

(1)測試用例。測試用例是驗(yàn)證人員按照測試計(jì)劃中羅列的測試點(diǎn)所編寫的測試代碼,體現(xiàn)一定的測試方案、方法、測試技術(shù)和策略。

(2)總線功能模型。案例中的總線功能模型是1個(gè)CPU_ACESS的模塊,提供了CPU讀(CPU_READ),CPU寫(CPU_WRITE)、總線初始化(BUS_INIT)以及總線監(jiān)控(BUS_MONITOR)4個(gè)任務(wù)接口,驗(yàn)證人員編寫測試用例時(shí)可按需調(diào)用來實(shí)現(xiàn)預(yù)期的測試功能。

(3)測試設(shè)計(jì)DUT。一般情況下DUT是FPGA設(shè)計(jì)的頂層代碼。在某些測試需求下,如通道切換測試時(shí),需例化多個(gè)相同的頂層設(shè)計(jì),以實(shí)現(xiàn)對應(yīng)功能的測試。

(4)驗(yàn)證組件。驗(yàn)證組件是驗(yàn)證平臺的重要部分,組件和實(shí)際電路中的外設(shè)應(yīng)一一對應(yīng),案例中主要有以下驗(yàn)證組件:

a.模擬量輸入驗(yàn)證組件。某型控制器中采用多路開關(guān)+單AD芯片完成多路模擬量的采集。CPU按照“多路開關(guān)切換-啟動(dòng)采集-數(shù)據(jù)讀取-數(shù)據(jù)保存”的順序?qū)δM量進(jìn)行采集,在驗(yàn)證中需關(guān)注多路開關(guān)切換是否符合設(shè)計(jì)預(yù)期、AD操作時(shí)序是否滿足芯片要求等。

b.開關(guān)量輸入驗(yàn)證組件。與模擬量相同,案例中采用多路開關(guān)+單處理電路完成對多路開關(guān)量的采集。開關(guān)量驗(yàn)證組件需例化多路開關(guān)模型及比較器電路模型。

c.開關(guān)量輸出驗(yàn)證組件。開關(guān)量輸出采用總線對鎖存器操作完成,而開出BIT也通過總線進(jìn)行采集。開關(guān)量輸出驗(yàn)證組件需例化鎖存器。

d.UART驗(yàn)證組件。UART協(xié)議是業(yè)界標(biāo)準(zhǔn)協(xié)議,其驗(yàn)證組件根據(jù)協(xié)議檢查波形時(shí)序、奇偶校驗(yàn)以及數(shù)據(jù)正確性。同時(shí)可通過配置實(shí)現(xiàn)特定通訊協(xié)議的檢查。

e.CCDL(通道間通訊)驗(yàn)證組件。由于CCDL是內(nèi)部協(xié)議,需進(jìn)行回繞測試。通過本通道自收自發(fā)或者雙通道間互發(fā)互收實(shí)現(xiàn)CCDL的驗(yàn)證。

測試用例應(yīng)按照測試計(jì)劃逐條編寫并最終獲得100%的功能覆蓋率,列舉內(nèi)部看門狗測試計(jì)劃及用例如下:

(1)正常喂狗時(shí)看門狗不應(yīng)復(fù)位。用例:每40 ms向看門狗喂狗寄存器中寫入0x0000,使用檢查器檢測復(fù)位CPU信號,檢測到下降沿時(shí)打印“WatchDog reset err”信息。

(2)長時(shí)間不喂狗看門狗應(yīng)復(fù)位。用例:復(fù)位結(jié)束后喂1次狗,之后停止喂狗,使用檢查器檢測喂狗后45 ms±2 ms內(nèi)是否產(chǎn)生復(fù)位CPU信號,若無打印“WatchDog cannot reset”信息。

(3)當(dāng)看門狗出現(xiàn)復(fù)位時(shí),復(fù)位寬度應(yīng)為60±2 ms。用例:同步驟b.,使用檢查器檢查復(fù)位寬度,復(fù)位寬度不在范圍內(nèi)打印“WatchDog Reset-Pulse err”。

4 結(jié)束語

FPGA開發(fā)作為數(shù)字控制器中的重要部分應(yīng)當(dāng)給予高度重視,通過全系統(tǒng)FPGA的驗(yàn)證能夠最大程度模擬實(shí)際運(yùn)行狀態(tài),提前發(fā)現(xiàn)低級錯(cuò)誤和潛在隱患,避免實(shí)際調(diào)試時(shí)出現(xiàn)電路損壞等情況。某型燃?xì)廨啓C(jī)數(shù)字電子控制器使用該驗(yàn)證方法,在實(shí)際調(diào)試中基本功能一次通過,極大地提高了效率。

[1]Vahid F,Givargis T D.Embedded system design:a unified hardware/software introduction[M].USA:John Wiley&Sons Press Inc,2001:232-302.

[2]Tulpule B,Behbahani A,Millar R.Vision for next generation Modular Adaptive Generic Integrated Controls(MAGIC)for military/commercial turbine engines[R].AIAA-2007-5710.

[3]Behbahani A,Adibhatla S,Rauche C.Integrated model-based controls and PHM for improving turbine engine performance,reliability,and cost[R].AIAA-2009-5534.

[4]褚曉濱,陸鐵軍,宗宇.結(jié)合斷言與覆蓋率為導(dǎo)向的驗(yàn)證方法 [J].微電子學(xué)與計(jì)算機(jī),2008,25(11):139-142.CHU Xiaobin,LU Tiejun,ZONG Yu.Combination of assertion and coverage-driven verification methodology[J].Microelectronics&Computer,2008,25(11):139-142.(in Chinese)

[5]Lahti G D,Wilson T L.Designing procedural-based behavioral functional models for high performance verification [J].SNUG,1999:128-150.

[6]ZENG Hai,Siedlarczyk I,MAO Huan.Reactor protection system of nuclear power plant based on NuPAC[J].Atomic Energy Science and Technology,2014,48(4):692-697.

[7]Chan W,Anderson R J,Beame P,et al.Model checking large software specifications[J].IEEE Transactions on Software Engineering,1998,24(7):498-520.

[8]CHEN Li,GAO Weiwei.The formal verification method review[J].VIEW,2008,7-125.

[9]Harry Foster.Applied assertion-based verification:an industry perspective[J].Foundations and Trends in Electronic Design Automation,2007(3):1-95.

[10]陳輝,申敏,劉樹軍.結(jié)合覆蓋率驅(qū)動(dòng)技術(shù)的RVM驗(yàn)證方法學(xué)在SOC驗(yàn)證中的應(yīng)用[J].微計(jì)算機(jī)信息,2006(26):113-115.CHEN Hui,SHEN Min,LIU Shujun.The application of Reference Verification Methodology combined coverage-driven technology in SOC verification[J].Microcomputer Information,2006(26):113-115.(in Chinese)

[11]Tong J G ,Boulé M,Zilic Z.Defining and providing coverage for assertion-based dynamic verification[J].Journal of Electronic Testing:Theory and Applications,2010,26(2):211-225

[12]LU Fang,BAI Na.Software/hardware co-verification based on SystemC and Verilog[J].Modern Electronics Technique,2008(4):9-12.

[13]Abdi S,Gajski D.Verification of system level model transformations[J].International Journal of Parallel Programming,2006,34(1):29-59.

[14]李樹杰,張志敏.一種可重用于不同總線的驗(yàn)證IP的方法[J].山東科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2005(2):70-73.LI Shujie,ZHANG Zhimin.A method for verifying SoC bus with reused verification IP[J].Journal of Shandong Inst of Min&Tech,2005(2):70-73.(in Chinese)

[15]Bergeron J.Writing test benches.funtional verification of HDL models[M].Boston:Kluwer Academic Publishers,2000:11-22.

Design of FPGA Full-System Verification Environment Based on Bus Functional Model

XUE Li-qiang,YU Zhen
(AECC Aeroengine Control System Institute,Wuxi Jiangsu 214063,China)

In order to deal with the growing difficulty in verification caused by the increasing complexity of Field Programmable Gate Array(FPGA)design in the field of engine control,a system-wide FPGA verification scheme to achieve comprehensive and efficient functional verification was presented.According to the design of the control system,the verification platform was built in accordance with the circuit structure of the controller.Based on the bus function model,the peripherals controlled by FPGA in the system were modeled,and connected with the circuit in full accord in the verification platform.Based on the system test plan,test cases were developed for the whole system simulation.The test results show that the system-wide FPGA verification can simulate the actual running state of the controller,enhance the level and efficiency of verification,and have significant effect on improving the design quality of the engine control systems

FPGA;verification platform;bus functional model;FADEC;aeroengine

V 216.7

A

10.13477/j.cnki.aeroengine.2017.01.003

2016-03-08 基金項(xiàng)目:國家重大基礎(chǔ)研究項(xiàng)目資助

薛利強(qiáng),(1985),男,碩士,工程師,從事航空發(fā)動(dòng)機(jī)數(shù)控系統(tǒng)硬件研制工作;E-mail:xue.v@163.com。

薛利強(qiáng),于真.基于總線功能模型的全系統(tǒng)FPGA驗(yàn)證環(huán)境設(shè)計(jì)[J].航空發(fā)動(dòng)機(jī),2017,43(1):13-16.XUE Liqiang,YUZhen.Design ofFPGA full-systemverificationenvironmentbasedonbusfunctionalmodel[J].Aeroengine,2017,43(1):13-16.

(編輯:張寶玲)

猜你喜歡
測試用例總線組件
無人機(jī)智能巡檢在光伏電站組件診斷中的應(yīng)用
時(shí)間觸發(fā)通信總線監(jiān)控技術(shù)研究
Kistler全新的Kitimer2.0系統(tǒng)組件:使安全氣囊和安全帶測試更加可靠和高效
關(guān)于CAN總線的地鐵屏蔽門控制思路論述
基于LDA模型的測試用例復(fù)用方法*
3月光伏組件出口量增長164.6%至7.49GW!單價(jià)創(chuàng)新低
一種嵌入式軟件組件更新方法的研究與實(shí)現(xiàn)
基于CAN/LIN總線的LED車燈控制研究
軟件測試中的測試用例及復(fù)用研究
測試工時(shí)受限的測試策略研究