999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于UVM 的節能化電梯運行控制系統設計和驗證

2023-04-13 02:02:30梁光勝李朝洋楊松梁兆楷
電子制作 2023年4期
關鍵詞:電梯信號功能

梁光勝,李朝洋,楊松,梁兆楷

(華北電力大學 電氣與電子工程學院,北京,102206)

0 引言

隨著集成電路復雜度增長,驗證工作成為制約集成電路發展的瓶頸,高效的驗證方法不僅能確保設計功能正常,還可以提高設計效率[1~2]。隨著城市化進程日益加快,電梯使用量增加,電梯能耗在建筑總能耗中占比較大,節能化電梯日益受到重視[3~4]。本文從提升驗證效率和可靠性角度,以SystemVerilog 為驗證語言,以電梯運行控制系統為DUT,搭建了基于UVM 的驗證平臺,采用受約束的隨機測試用例,通過收集覆蓋率完成對測試進展的度量,根據仿真結果優化驗證環境,提高UVM 驗證平臺的高重用性、可移植性、可靠性和可擴展性。

1 節能化電梯運行控制系統的設計

1.1 節能化電梯運行控制系統的功能規劃

電梯運行控制系統以FPGA 作為核心控制芯片,通過按鍵模擬外部各種信號的輸入,借助LED 亮滅和數碼管顯示模擬真實電梯的運行過程,系統可實現對電梯多種運行模式的轉換與控制。

節能化電梯運行控制系統的主要功能如下:①響應電梯轎廂內外的按鍵請求指令,按方向優先原則依次響應;②當電梯運行到各個樓層時,相應樓層指示燈亮起,數碼管顯示樓層數;③外部控制開關,一層只有向上按鈕,頂層只有向下按鈕,其余樓層有上下行按鈕;④具有超載報警、預超載和故障報警功能,此時電梯門處于打開狀態,直至故障解除;⑤同一時間既有上行又有下行指令時,電梯會在響應完同一方向指令后再響應另一方向指令;⑥電梯在高峰時段自動切換到分層模式,電梯只響應奇數層呼梯信號;⑦當沒有呼梯指令時,電梯會在指定時間后自行關閉電梯門和轎廂照明,進入低功耗等待狀態。

1.2 FPGA 控制模塊的頂層設計

采用自頂向下的設計方法,電梯運行控制系統中FPGA控制模塊頂層架構設計如圖1 所示,由信號控制、運動判斷、運動狀態機和輸出控制模塊組成。

圖1 FPGA 控制模塊的頂層架構

1.3 運動判斷模塊的設計

運動判斷模塊是電梯運行的主要控制模塊。根據電梯運行方向優先原則和運行警示原則對輸入信號賦予不同的優先級,其中轎廂所處樓層優先級最低。超重信號和預超重信號優先級最高,處于第一優先級,其有效時整個電梯進入等待狀態。上下行脈沖處于第二優先級,在上行脈沖有效時,上行信號優先級高于下行信號;在下行脈沖有效時,下行信號優先級高于上行信號。

1.4 運動狀態機的設計

電梯按照方向優先和就近原則運行,相同用戶指令在不同運行狀態時會執行不同的運行程序。運行狀態有上行態、下行態、空閑態。當處于上行態時,上行指令比下行指令優先級高;當電梯處于空閑態時,與電梯停靠樓層鄰近的用戶指令優先級高。

判斷模塊輸出為狀態機輸入,主要信號包括上行、下行、到達相應樓層、開門、關門、啟動、結束。狀態機有空閑、等待、上行、下行、開關門5 種狀態,如圖2 所示。

圖2 電梯運行控制系統的狀態機

2 UVM 驗證平臺的構建

采用SystemVerilog 構建層次化和模塊化的UVM 驗證平臺,主要目的是確保待測模塊的正確性與完備性,主要任務是模擬待測模塊可能出現的情況,產生相應隨機化激勵信號,驅動待測模塊運行[5~8]。

2.1 UVM 驗證平臺的架構

UVM 驗證平臺的架構如圖3 所示,包括待測模塊DUT、驅動模塊Driver、監測模塊Monitor、激勵產生模塊Sequence、激勵仲裁模塊Sequencer、參考模型Reference Model、比較器Scoreboard、驗證環境Agent和Env、測試頂層Top 等組件。

圖3 UVM 驗證平臺的架構

sequence 產生待測模塊的所有激勵信號,并包裝成transaction 事務包,發送給sequencer,sequencer 進行內部檢查確認后再發送給driver,driver 用這些激勵信號驅動DUT 和參考模型,monitor 對DUT 輸入輸出結果監測,計分板將收集并比對DUT 的輸出和參考模型的結果。

由于driver、sequencer 和monitor 使用同一通信協議且結構相似,因此可集成在一個agent 中。而agent、scoreboard 和參考模型屬于同一層次的模塊,將其集成在一起構成了整個驗證平臺的基本框架,同時也構建了UVM驗證平臺的樹形結構。

2.2 UVM 驗證平臺的通信傳輸機制

UVM 驗證平臺各組件采用TLM 通信方式,成功地將模塊內的計算和模塊之間的通信從時間跨度方面剝離開,通過事務級端口將各組件通信時所需變量和約束條件打包傳輸,采用虛擬接口完成DUT與驗證組件之間的通信和時序同步。

針對DUT 設置虛擬接口信號,通過config_db 實現驗證平臺與DUT 交互;Driver 組件通過模擬傳輸協議驅動DUT 和參考模型;參考模型以新編程語言編寫待測模塊代碼并將運行結果傳給計分板;比較器將待測模塊和參考模型的輸出結果比對分析。

2.3 電梯運行控制系統UVM 驗證平臺實現

按照層次化和模塊化原則構建UVM 驗證平臺,在頂層實例化電梯控制系統,使用config_db 機制通信,首先在頂層完成set 操作:

uvm_config_db#(virtual ele_if)::set(null, "uvm_test_top.env.i_agt.drv", "vif", m_ahb_if);

uvm_config_db#(virtual ele_if)::set(null, "uvm_test_top.env.i_agt.mon", "vif", m_ahb_if);

其中第一個和第二個參數聯合起來組成目標路徑,與此路徑符合的目標才能收信。第一個參數必須是一個uvm_component 實例的指針,第二個參數是相對此實例的路徑。第三個參數表示一個記號,用以說明這個值是傳給目標中的哪個成員,第四個參數是要設置的值。然后利用TLM 通信中get 操作完成對虛擬接口數據的獲取,在底層driver 組件和monitor 組件中完成get 操作,同時判斷底層組件是否接收到虛擬接口中的數據:

if(!uvm_config_db#(virtual ele_if)::get(this, "", "vif", vif))

‘uvm_error("NOVIF",{"virtual interface must be set for: ",get_full_name(),".vif"});

以此完成driver、monitor 與電梯控制系統的互聯通信。

驗證平臺組件和待測模塊通過虛擬接口互聯,避免使用絕對路徑,增強組件的可移植性和可重用性。虛擬接口的主要信號通過rand 語句將所要定義的信號變量設為隨機變量,完成對接口信號字段的定義和隨機化,使信號能取所定義范圍中任何一個隨機數。通過關鍵字constraint 約束隨機信號,從而產生出有效的激勵供測試平臺調用。這種隨機化激勵完善了激勵的完備性,可測試出DUT 更多的邊界條件。虛擬接口主要信號包括各樓層按鍵信號rand bit [16:0] key、電梯使能信號rand bit key_en、電梯超載和預超載以及故障報警信號rand bit key_weight、電梯運行模式控制信號rand bit [1:0] key_ctl、電梯運行顯示信號rand bit [5:0] led、電梯樓層顯示信號rand bit [7:0] seven_tube。

Driver 和Monitor 是驗證平臺與DUT 交互的組件,其功能是收集事務級數據,根據待測模塊功能和時序要求將其轉換成DUT 各輸端口信號。Driver 繼承uvm_component的uvm_driver 類,首先通過宏完成driver 的工廠注冊,將其登記在UVM 內部網表;其次端口例化,build_phase完成與DUT 互聯;最后run_phase 完成所有信號時序描述,將事務級端口數據轉換成信號級驅動DUT。run_phase 包含reset_phase 和do_drive 等任務,reset_phase 完成復位工作,do_drive 完成節能化電梯運行控制系統端口的時序描述和事務級端口數據的轉換。

參考模型繼承uvm_component 類,是針對DUT 的驗證基準,通過算法模仿DUT 的功能需求,并認定所實現的功能是完全正確的。參考模型接入與DUT 相同的激勵,其輸出與DUT 輸出自動比對,結果一致時認為DUT 符合設計需求,不一致時判定DUT 存在錯誤或缺陷。創建參考模型時,需要完成組件繼承、宏的工廠注冊,并定義與DUT 對應的功能模塊;然后定義兩個端口,其中一個端口接受Driver發來的事務級信號作為輸入,另一端口則把輸出的事務級信號發送到Scoreboard 進行數據的自動比對。參考模型在build_phase 中完成初始化。當輸入端口接收到Driver的信號時,判斷電梯控制系統的運行模式,將結果發送到Scoreboard 進行比對。

在底層組件定義完畢后,創建驗證環境Agent 和Env。每個測試的功能點可以使用不同的Agent 進行打包,所有的Agent 統一在Env 中實例化,根據不同的需求調用不同的Agent。所有的env 都派生自uvm_env,與底層組件一樣使用uvm_component_utils宏來實現工廠注冊。在build_phase中使用new 函數完成i_agent、o_agent、參考模型和比較器等底層組件的實例化,并指定各個agent 的工作模式;在connect_phase 中使用uvm_tlm_analysis_fifo 完成各個組件的事務級通信。

3 節能化電梯運行控制系統的驗證

3.1 功能驗證點提取

運行UVM 驗證平臺,檢驗電梯控制系統能否根據外界輸入正常工作,能否完成預期的各項功能,其功能驗證點和方案如表1 所示。

表1 電梯運行控制系統的功能驗證點和驗證方案

3.2 驗證過程數據報告

編寫多個測試用例來驗證不同測試點的完備性,利用VCS 編譯仿真并產生編譯報告、覆蓋率結果。通過make命令對各驗證組件和DUT 編譯,若編譯成功則生成可執行文件和編譯結果信息。通過運行可執行文件,選擇不同的測試項testcase 仿真,利用“'uvm_info”宏打印當前比對的事務信息,比對成功時打印“Compare successfully”等信息,比對失敗則報錯。電梯運行控制系統的部分數據報告如圖4 所示。

圖4 電梯運行控制系統的部分數據報告

3.3 DVE 界面波形

驗證平臺通過虛擬接口與DUT 連接,將ele_slv_if.sv中虛擬接口信號導入DVE 波形分析器,選用不同測試用例就可得到DUT 不同的輸入輸出波形,如圖5 所示。

圖5 電梯運行控制系統的部分運行波形

3.4 覆蓋率

覆蓋率是評估驗證工作進度與驗證是否完備的指標,包括代碼覆蓋率和功能覆蓋率。代碼覆蓋率分為語句覆蓋率、條件覆蓋率、決策覆蓋率、跳轉覆蓋率和狀態機覆蓋率,是衡量待測模塊運行情況的標準。在仿真過程中EDA 軟件自動收集代碼覆蓋率,當參數NUMBER_PACKETS 為5000、TEST_MODE 為1、+ntb_random_SEED 為1651198619 時,其覆蓋率報告如圖6 所示。

圖6 電梯運行控制系統的覆蓋率報告

完成驗證后再下載到FPGA 芯片中,應用開發板中,可觀察到節能化電梯運行控制系統功能已全部實現,UVM 驗證平臺的重用性和完備性良好。

4 結論

本文以電梯運行系統為待測對象,搭建了UVM 通用驗證平臺,以覆蓋率為驗證指標,檢測了UVM 驗證平臺的高重用性、可移植性、可靠性和可擴展性。

猜你喜歡
電梯信號功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
被困電梯以后
關于非首都功能疏解的幾點思考
電梯不吃人
基于LabVIEW的力加載信號采集與PID控制
乘電梯
小說月刊(2015年4期)2015-04-18 13:55:18
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 精品国产成人a在线观看| 日韩天堂视频| 国产黄网永久免费| julia中文字幕久久亚洲| 久久精品人人做人人| 美女无遮挡拍拍拍免费视频| 粗大猛烈进出高潮视频无码| 综合社区亚洲熟妇p| 伦伦影院精品一区| 国产主播在线一区| 九九热视频精品在线| 最新国产精品第1页| 色悠久久综合| 亚洲欧洲日韩综合色天使| 国产精品午夜福利麻豆| 国产嫩草在线观看| 国产玖玖视频| 91在线播放国产| 国产呦精品一区二区三区网站| 免费毛片a| 亚洲中文久久精品无玛| 激情乱人伦| 亚洲黄色高清| 人妻丰满熟妇αv无码| 国产在线自揄拍揄视频网站| 国产丰满大乳无码免费播放| 亚洲福利一区二区三区| 日韩一区二区在线电影| 免费一级毛片在线观看| 国产麻豆精品手机在线观看| 久草视频精品| 免费中文字幕一级毛片| 国产制服丝袜91在线| 亚洲国产精品成人久久综合影院| 日韩精品视频久久| 亚洲国产成人精品青青草原| 在线欧美日韩| 国产v欧美v日韩v综合精品| h网址在线观看| 国产精品自在在线午夜区app| 国产福利在线观看精品| 亚洲日韩久久综合中文字幕| 日本伊人色综合网| 国产精品无码久久久久久| 国产麻豆精品久久一二三| 精品欧美日韩国产日漫一区不卡| 毛片网站在线播放| 国产精品主播| 九色综合视频网| 国产精品一区二区久久精品无码| 久久永久免费人妻精品| 一级毛片网| 欧美a级在线| 19国产精品麻豆免费观看| 亚洲天堂啪啪| 日韩欧美国产另类| 亚洲无码日韩一区| 亚洲中文制服丝袜欧美精品| 亚洲天堂啪啪| 三级欧美在线| 99在线观看国产| 欧美精品综合视频一区二区| 欧美区一区二区三| 国产精品久久自在自线观看| 最新国产成人剧情在线播放| 中文字幕 91| 日本精品中文字幕在线不卡| 麻豆精品在线| 婷婷六月激情综合一区| 色久综合在线| 日韩美毛片| 无套av在线| 欧美a在线视频| 538精品在线观看| 无码av免费不卡在线观看| 国产成人综合久久精品下载| 国产中文一区a级毛片视频 | 巨熟乳波霸若妻中文观看免费| 国产一级小视频| 国产成人精品2021欧美日韩| 日韩小视频在线观看| 亚洲成A人V欧美综合天堂|