習(xí)建博+潘浩+鄧慶勇
摘 要:本文介紹一種基于UVM驗證方法的相控陣雷達數(shù)字波束形成模塊(DBF)的驗證平臺及其實現(xiàn)方法。該方法利用DPI接口在激勵產(chǎn)生器模塊(sequence)中構(gòu)建c函數(shù)模型,實現(xiàn)通道數(shù)據(jù),加權(quán)系數(shù),校正系數(shù)以及波束指向系數(shù)的復(fù)數(shù)運算,并完成浮點數(shù)到定點數(shù)的轉(zhuǎn)換,激勵到DBF模塊中。同時,平臺會自動采集經(jīng)DBF模塊運算后的波束信息,并與參考模型進行自動化的結(jié)果比對,比對正確的結(jié)果會由定點數(shù)轉(zhuǎn)換為浮點數(shù)后寫入文件以供后續(xù)處理。
關(guān)鍵詞: 數(shù)字波束形成;UVM;仿真驗證;驗證方法學(xué)
DOI:10.16640/j.cnki.37-1222/t.2017.14.264
1 引言
數(shù)字波束形成(DBF) 一直是相控陣雷達的關(guān)鍵技術(shù),傳統(tǒng)的數(shù)字波束形成器設(shè)計流程在選定FPGA 器件后,先進行硬件描述語言的設(shè)計輸入,簡單仿真后就綜合出網(wǎng)表并下載到目標板進行調(diào)試。仿真驗證一般不會作為主要的保證設(shè)計質(zhì)量的手段,也不會使用任何驗證方法學(xué)。但是伴隨DBF系統(tǒng)規(guī)模以及設(shè)計復(fù)雜度的提高,僅靠后期板上調(diào)試會浪費大量時間,并且難于定位邏輯錯誤,所以仿真驗證在數(shù)字波束形成器模塊的設(shè)計流程中的重要性逐漸提高,并且傾向使用芯片驗證中用到的方法學(xué)。
2 DBF基本原理
DBF采用數(shù)字處理方法,對于某一方向入射信號,補償由于傳感器在空間位置不同而引起的傳播路程差導(dǎo)致的相位差,實現(xiàn)同相疊加,從而實現(xiàn)該方向的最大能量接收,完成該方向上波束形成,主要完成下列運算:
(1)
式中,f (t) 為目標接收信息;k為波束號;d為陣元間距;為發(fā)射載波波長;為目標信號相對天線陣面法線的入射角;n為第n通道;N 為天線陣面上垂直向排列的陣元數(shù);W 為加權(quán)系數(shù);C為校正參數(shù);反映波束指向。
(2)
顯然,當波束指向滿足式(2)時, 該波束接收到的信號最大,其他方向的波束信號幅度下降。可以將式(1)簡化為
式中, X (n) 為第n通道來的輸入復(fù)信號;為波束指向參數(shù)。
由以上公式可以看出,波束形成器實質(zhì)是完成輸入信號和對應(yīng)的權(quán)系數(shù)復(fù)數(shù)乘法累加的功能,在工程上一般采用FPGA實現(xiàn)。
3 基于UVM的數(shù)字波束形成器模塊級驗證方法
為解決FPGA在仿真驗證階段由于需要產(chǎn)生的測試激勵信號較為復(fù)雜,且其激勵數(shù)據(jù)源多為由浮點復(fù)數(shù)經(jīng)過轉(zhuǎn)換而形成的二進制或十六制的定點矢量化數(shù)據(jù),利用傳統(tǒng)的Verilog或VHDL等硬件描述語言很難將其實現(xiàn)的技術(shù)問題,我們采用如下的技術(shù)方案實現(xiàn):使用UVM驗證平臺結(jié)構(gòu)和驗證思想完成數(shù)字波束合成驗證的整體框架,使用C模型完成測試激勵數(shù)據(jù)的復(fù)數(shù)運算及浮點數(shù)到定點數(shù)的轉(zhuǎn)換,使用DPI接口完成C模型與UVM序列發(fā)生器模塊的無縫對接。
圖1為基于UVM的數(shù)字波束形成器模塊驗證平臺,該平臺采用系統(tǒng)級硬件描述語言System Verilog完成。主要包括以下10個組件:測試用例庫)、驗證環(huán)境、代理器、數(shù)據(jù)-系數(shù)生成器、波束數(shù)據(jù)轉(zhuǎn)換器、監(jiān)視器、激勵產(chǎn)生器、驅(qū)動器、記分板、參考模型、比較器。
與傳統(tǒng)的UVM驗證平臺相比較,為了適配數(shù)字波束形成器模塊的復(fù)數(shù)乘累加運算,本方法在激勵產(chǎn)生器中調(diào)用DPI接口,利用C模型進行浮點數(shù)運算,并完成浮點數(shù)到定點數(shù)的轉(zhuǎn)換,以實現(xiàn)可重用、易維護、高效、方便的測試激勵信號建立方法。
首先,在激勵產(chǎn)生器中聲明DPI接口,以及需要調(diào)用的通道復(fù)信號產(chǎn)生c函數(shù):
Import "DPI-C" function void dbf_data_build();
import "DPI-C" function void dbf_coef_build();
然后,由C語言實現(xiàn)的數(shù)據(jù)-系數(shù)生成器,對通道數(shù)據(jù),加權(quán)系數(shù),校正系數(shù)以及波束指向系數(shù)進行復(fù)數(shù)運算,并完成浮點數(shù)到定點數(shù)的轉(zhuǎn)換。激勵產(chǎn)生器通過DPI接口調(diào)用數(shù)據(jù)-系數(shù)生成器中產(chǎn)生的激勵數(shù)據(jù)包,并將其按照一定的順序及數(shù)量,發(fā)送給驅(qū)動器。驅(qū)動器將獲得的激勵數(shù)據(jù)包,通過接口將其驅(qū)動到待測試模塊上。監(jiān)視器收集DUT的端口數(shù)據(jù),并同樣通過DPI接口將采樣到的數(shù)據(jù)通過由C語言實現(xiàn)的波束數(shù)據(jù)轉(zhuǎn)換器轉(zhuǎn)換為復(fù)數(shù)域信號,并寫入文件。記分板通過比較待測設(shè)計與參考模型的輸出是否一致,來驗證待測設(shè)計是否正常運行,并給出驗證結(jié)果。
最后,通過覆蓋率的統(tǒng)計分析檢測功能是否遍歷,以保證設(shè)計在實際運用環(huán)境中的功能正確。
4 結(jié)語
本文基于UVM 驗證方法學(xué)實現(xiàn)了數(shù)字波束形成器模塊級驗證,該方法利用DPI接口在激勵產(chǎn)生器模塊中構(gòu)建c函數(shù)模型,實現(xiàn)通道數(shù)據(jù),加權(quán)系數(shù),校正系數(shù)以及波束指向系數(shù)的復(fù)數(shù)運算,并完成浮點數(shù)到定點數(shù)的轉(zhuǎn)換,激勵到DBF模塊中。有效解決了傳統(tǒng)功能仿真驗證中存在的通用性差,效率低等問題。
參考文獻:
[1]呂欣欣,劉淑芬.FPGA通用驗證平臺建立方法研究[J].微電子學(xué)與計算機,2010,27(05):46-49.
[2]Accellera.Universal verification methodology(uvm)1.0 users guide.February,2011.
[3]Tashan S.Coverage metrics for functional validation of hardware designs[J].IEEE Design& Test of Computers,2001,18(04):36-45.