色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是數字仿真?

汽車電子技術 ? 來源:OpenFPGA ? 作者:碎碎思 ? 2023-02-09 14:27 ? 次閱讀

數字硬件建模SystemVerilog(三)-仿真

圖片

數字仿真是一種軟件程序,它將邏輯值變化(稱為激勵)應用于數字電路模型的輸入,以實際硅傳播這些邏輯值變化的相同方式通過模型傳播該激勵,并提供觀察和驗證該激勵結果的機制。

SystemVerilog是一種使用0和1的數字仿真語言。該語言不表示仿真電壓、電容電阻。SystemVerilog提供的編程結構,用于對數字電路建模、對激勵發生器建模以及對驗證檢查器建模。

示例1.4說明了一個可以仿真的簡單數字電路模型。這與前面示例1.3所示的電路相同。

圖片

示例1-4:帶有輸入和輸出端口的設計模型(32位加法器/減法器)在本例中,請注意模型具有輸入端口和輸出端口。為了仿真該模型,必須提供將邏輯值應用于輸入端口的激勵,并且必須提供響應檢查器以觀察輸出端口。

使用testbench封裝激勵生成和響應驗證。在SystemVerilog中有許多方法可以對測試臺進行建模,測試臺中的代碼可以是簡單的編程語句,也可以是復雜的面向對象、事務級編程,示例1-5說明了32位加法器/減法器設計的簡單testbench。

圖片

圖片

示例1-5:32位加法器/減法器模型的testbench例1-5中的主要代碼塊是一個初始化過程,它是一種過程塊,過程塊包含編程語句和時序信息,用于指示仿真器做什么以及什么時候做。SystemVerilog有兩種主要類型的程序塊:initial procedures and always procedures。

初始過程是用關鍵字initial定義的。初始過程,不管其名稱如何,都不用于初始化設計。相反,初始過程只執行一次編程語句。當到達最后一條語句時,對于給定的仿真運行,不會再次執行初始過程。初始過程不可綜合,也不用于RTL建模。本系列著重于編寫用于仿真和合成的RTL模型,因此不再深入討論初始過程。

Always過程是用關鍵字always、always_comb、always_ff和always_latch定義的,Always過程是一個無限循環,當過程完成過程中最后一條語句的執行時,過程自動返回到開頭,并再次啟動過程。對于RTL建模,Always程序必須以靈敏度列表開始;例如示例1-4)中所示的@(posedge clk)定義。后面將更詳細地討論各種形式的always程序。

過程塊可以包含一條語句,也可以包含一組語句。過程塊中的多個語句在關鍵字begin和end之間分組(驗證代碼還可以在關鍵字fork和join、join_any或join_none之間分組語句)。begin和end之間的語句按其列出的順序執行,即:從第一條語句開始,到最后一條語句結束。

示例1-5中的初始過程包含一個重復循環。這個循環被定義為執行10次。循環的每個過程:

  • l、 延遲到c1k信號的下降沿。
    1. 為設計的a、b和mode輸入生成隨機值。
    1. 延遲到clk的下一個下降沿,然后調用檢查結果任務(子例程)以驗證設計輸出是否與計算的預期結果匹配。

該設計在其時鐘輸入的上升沿工作。測試臺使用同一時鐘的相對邊緣,以避免在設計使用的時鐘邊緣上驅動輸入和讀取設計的輸出。如果測試臺在時鐘的下降沿驅動值,則在設計使用輸入之前,這些輸入的穩定設置時間為零。同樣,如果測試臺在時鐘的下降沿驗證設計結果,那么這些設計輸出穩定的時間將為零。

在同一時刻修改和讀取值被稱為simulation競爭條件。使用設計時鐘的相對邊緣來驅動激勵是測試臺避免設計仿真競爭條件的一種簡單方法,例如滿足設計設置和保持時間要求。

測試臺被建模為具有輸入和輸出端口的模塊,類似于正在驗證的設計。最后一步是將測試臺端口連接到設計端口,并生成時鐘。這是在頂級模塊中完成的。示例1-6顯示了這方面的代碼。

圖片

示例1-6:將測試臺連接到設計的頂層模塊# 系統Verilog仿真器

所有SystemVerilog仿真器都有很多共同點,這對于理解如何編寫能夠正確仿真的SystemVerilog RTL模型至關重要。這些功能包括:編譯、精化、仿真時間和仿真事件調度(compilation elaboration simulation time and simulation event scheduling),下面將討論仿真的這些方面。

編譯和精化Compilation and elaboration

SystemVerilog源代碼需要編譯和詳細說明才能進行仿真。編譯包括根據IEEE SystemVerilog標準中定義的規則檢查SystemVerilog源代碼,以確保其語法和語義正確。精化將構成設計和測試臺的模塊和組件綁定在一起。精化還解析可配置代碼,例如常量的最終值、向量大小和仿真時間縮放。

IEEE SystemVerilog標準沒有定義精確的編譯和精化過程。標準允許每個仿真器供應商以供應商認為最適合該產品的方式定義該過程以及編譯和精化之間的劃分。一些仿真器將編譯和精化過程作為單個步驟進行組合,而其他仿真器將這些過程劃分為單獨的步驟。一些仿真器可能在編譯階段捕獲源代碼中某些類型的錯誤,而其他仿真器在精化階段捕獲這些錯誤。這些差異不會影響本系列中討論的RTL編碼風格和指南,但了解所使用的仿真器如何處理RTL源代碼的編譯和精化是有幫助的。請參閱特定仿真器的文檔,了解該產品如何處理編譯和精化。

源代碼順序

SystemVerilog語言,與大多數語言一樣;如果不是所有編程語言在源代碼順序上都有一定的依賴關系,那么在引用這些定義之前,必須編譯用戶定義的類型聲明和聲明包。用戶定義的類型聲明和包通常與使用聲明的RTL代碼位于不同的文件中。這意味著設計者必須注意這些文件是按正確的順序編譯的,因此聲明是common的,在被引用之前堆積起來.

并非所有聲明都是順序相關的,例如,SystemVerilog允許在編譯模塊之前引用模塊名稱。在模塊內,任務和函數可以在定義之前調用,只要定義在模塊內。

全局聲明和$unit聲明空間

SystemVerilog允許在名為unit中的聲明可以由多個文件共享,全局聲明依賴于編譯順序,必須在引用之前編譯,全局unit添加定義,這可能會導致隨意的全局定義,從而難以確保在引用定義之前對其進行編譯.

SystemVerilog編譯器指令,如“定義文本宏和”時間刻度時間縮放,也屬于$unit space,全局聲明必須在受指令影響的代碼之前編譯。

最佳做法準則1-1

將包用于全局聲明,而不是$unit聲明空間。

單文件和多文件編譯

當涉及多個文件時,IEEE SystemVerilog標準定義了兩種編譯/精化范例的規則:多文件編譯和單文件編譯。

多文件編譯范例允許同時編譯多個源代碼文件。一個文件中的全局聲明和編譯器指令對于在聲明和指令之后編譯的其他文件中的源代碼是可見的。

單文件編譯范例允許獨立編譯每個文件。一個文件中的任何全局聲明或編譯器指令僅在該文件中可見。無論文件的編譯順序如何,其他文件都不會看到這些聲明或指令。

所有仿真器和合成編譯器都支持多文件范例,但并非所有工具都支持單文件編譯,但是,默認情況下,支持兩種范例的工具不一定使用相同的范例。默認情況下,某些工具使用單文件編譯,多文件編譯需要特定于工具的調用選項。默認情況下,其他工具使用多文件編譯,并且需要調用選項進行單文件編譯或增量重新編譯。

關于仿真或者驗證方面,還有很多很多內容,但是不是本系列重點,所以這里推薦《systemverilog驗證》了解更多關于SV的仿真和驗證知識。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數字電路
    +關注

    關注

    193

    文章

    1608

    瀏覽量

    80690
  • 模型
    +關注

    關注

    1

    文章

    3268

    瀏覽量

    48925
  • 數字仿真
    +關注

    關注

    0

    文章

    17

    瀏覽量

    8092
收藏 人收藏

    評論

    相關推薦

    基于VHDL語言含秒表數字仿真和引腳設置

    基于VHDL語言含秒表數字仿真和引腳設置
    發表于 05-22 23:13

    使用ADS和VSA(89600)進行數字仿真錯誤怎么辦?

    使用ADS,ADS和VSA(89600)進行數字仿真,連接到運行時錯誤。無法找到“ADStoVSA.dll”。我怎樣才能解決這個問題?謝謝 以上來自于谷歌翻譯 以下為原文Do digital
    發表于 07-24 10:05

    什么是全數字仿真平臺

    數字仿真平臺作為工業領域不可缺少的重要軟件之一,除了可以與MATLAB或者Simulink集成外,還支持哪些優秀的功能?在了解新一代全數字仿真平臺SkyEye之前,先來學習一下什么是
    發表于 12-17 07:48

    什么是全數字仿真平臺

    數字仿真平臺作為工業領域不可缺少的重要軟件之一,除了可以與MATLAB或者Simulink集成外,還支持哪些優秀的功能?在了解新一代全數字仿真平臺SkyEye之前,先來學習一下什么是
    發表于 12-21 06:42

    使用Pulseview***數字設計仿真協議解碼

    1、使用Pulseview***數字設計仿真協議解碼  經常使用RTL例如verilog進行數字邏輯設計的朋友,仿真一定是一個繞不開的話題。在一些標準的
    發表于 10-20 11:30

    高精度游移方位捷聯慣導系統的數字仿真

    高精度游移方位捷聯慣導系統的數字仿真::捷聯慣導系統的數字仿真對于系統設計、方案論證和算法研究有著重要的意義,特別是游移方位捷聯慣導系統. 因此通過完成軌跡發生
    發表于 06-21 22:37 ?19次下載

    基于LabVIEW的數字仿真實驗平臺的設計

    基于LabVIEW的數字仿真實驗平臺的設計 利用虛擬儀器軟件開發平臺,在計算機上通過對前面板和后面板的編寫來完成實驗室及電子課程實驗教學中所涉及的數字
    發表于 03-30 16:06 ?111次下載

    基于實時數字仿真的保護校驗與評估系統

    本文介紹了建立在 實時仿真 系統基礎上的保護校驗與評估系統,系統采用面向對象編程技術,基于模塊化的思想構造軟保護來模擬實際保護裝置的工作原理,可以實現在實時數字仿真
    發表于 06-30 17:50 ?32次下載
    基于實時<b class='flag-5'>數字</b><b class='flag-5'>仿真</b>的保護校驗與評估系統

    異步電動機直接轉矩控制及其數字仿真

    異步電動機直接轉矩控制及其數字仿真
    發表于 01-21 11:54 ?4次下載

    異步電動機直接轉矩控制及其數字仿真(本科畢業設計)

    異步電動機直接轉矩控制及其數字仿真(本科畢業設計)
    發表于 01-21 11:54 ?4次下載

    數字鐘的設計與仿真課程設計說明書

    數字鐘設計與仿真
    發表于 06-26 09:28 ?79次下載

    簡單數字仿真電路圖大全(五款數字仿真電路圖)

     本文詳細介紹了五款數字仿真電路圖。數字鐘實際上是一個對標準頻率(1HZ)進行計數的計數電路。由于計數的起始時間不可能與標準時間(如北京時間)一致,故需要在電路上加一個校時電路,同時標準的1HZ時間信號必須做到準確穩定。通常使
    發表于 01-26 10:44 ?11w次閱讀
    簡單<b class='flag-5'>數字</b>鐘<b class='flag-5'>仿真</b>電路圖大全(五款<b class='flag-5'>數字</b>鐘<b class='flag-5'>仿真</b>電路圖)

    HLA雷達對抗數字仿真系統的應用

    隨著計算機和仿真技術的發展, 建立信號級的雷達對抗數字仿真系統來研究不同干擾樣式的效果,從而遴選有效的干擾樣式作為武器系統對抗裝備,節約了人力、 物力, 縮短了干擾樣式和設備的研制周期。
    發表于 04-23 09:36 ?2842次閱讀
    HLA雷達對抗<b class='flag-5'>數字</b><b class='flag-5'>仿真</b>系統的應用

    MATLAB教程之控制系統數字仿真的實現詳細資料說明

    本文檔的主要內容詳細介紹的是MATLAB教程之控制系統數字仿真的實現詳細資料說明
    發表于 07-25 16:46 ?10次下載
    MATLAB教程之控制系統<b class='flag-5'>數字</b><b class='flag-5'>仿真</b>的實現詳細資料說明

    BCD譯碼數碼管顯示數字仿真電路圖免費下載

    本文檔的主要內容詳細介紹的是BCD譯碼數碼管顯示數字仿真電路圖免費下載。
    發表于 01-16 09:42 ?28次下載
    BCD譯碼數碼管顯示<b class='flag-5'>數字</b>的<b class='flag-5'>仿真</b>電路圖免費下載
    主站蜘蛛池模板: 在线视频久久只有精品第一日韩| 3DNagoonimation动漫| 日本枯瘦娇小| 青柠在线观看视频在线| 秋霞电影院兔费理论观频84mb| 欧洲最大无人区免费高清完整版| 热巴两次用约老师屁股发底线球| 日韩精品一区二区亚洲AV观看| 手机观看毛片| 小SB几天没做SAO死了H| 亚洲一区二区女搞男| 中文无码第3页不卡av| 99热视频这里只有久久精品| 成年美女黄网站色app| 国产精品视频人人做人人爽| 精品性影院一区二区三区内射| 乱码国产丰满人妻WWW| 青柠在线观看视频在线高清| 无码欧美毛片一区二区三在线视频| 亚洲免费高清视频| 99久久99| 国产精品私人玩物在线观看| 精品一成人岛国片在线观看| 男总裁憋尿PLAY灌尿BL| 色尼玛亚洲| 亚洲偷自拍精品视频在线观看| 99久久精品国产高清一区二区| 国产成人小视频在线观看| 好看AV中文字幕在线观看| 免费一级特黄欧美大片久久网| 涩涩电影网| 孕交videosgratis乌克兰| 扒开胸罩揉她的乳尖视频| 国产亚洲精品a在线观看app| 老师掀开短裙让我挺进动态| 日韩欧美一区二区三区在线| 亚洲精品无码专区在线播放| av色天堂2018在线观看| 国产亚洲精品字幕在线观看| 男女牲交全过程免费播放| 午夜影院美女|