- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
資訊監視(Monitoring information) Verilog有提供一個監控訊號變化的任務,只要監控訊號有變化,便會輸出新的值,這一個系統任務便是$monitor。 格式:$monitor(p1,p2,p3,…,pn); 參數p1、p2、p3、…、pn可以是字串、變數、或說明,與$display的參數格式相同,但是$monitor不僅僅是顯示一次而已,而是每一次信號變化都顯示一次,若使用$display的話,便需要寫好幾遍。 每一次僅允許有一個$monitor可以執行,如果有多次$monitor的使用,只有最後一個有效,前面的其他$monitor將不會作用。 不同的$monitor工作可以利用$monitoron與$monitoroff來做切換。 格式: $monitoron ; $monitoroff; * $monitoron會讓最近的$monitor工作開始,而$monitoroff會讓執行中的$monitor工作關閉。一般來說,只要開始執行模擬,系統自動會執行$monitoron,在執行中再利用$monitoron與$monitoroff系統任務來控制。下面的範例可以看到 $monitor的作用,請注意時間與訊號的關係,進一步瞭解 $monitor與$time的用法。 範例3-5 監視敘述(Monitor statement) //監視信號clock與reset的值和時間 //Clock每5時間單位觸發一次而reset在10時間單位轉為 //低電位 initial begin $monitor ($time,”Value of signals clock = %b reset=%b,click,reset); end * Partial output of the monitor statement: -- 0 Value of signals clock = 0 reset = 1 -- 5 Value of signals clock = 1 reset = 1 -- 10 Value of signals clock = 0 reset = 0 中止(Stopping)和 完成(Finishing)模擬 格式:$stop; 可以暫時中止模擬運算的進行,並進入交談模式。設計者可以利用交談模式,來檢驗當時信號的值是否正確。$stop可以用來在設計者任何一個想要停的時刻來做觀察除錯的工作。 格式:$finish; 結束模擬運算。 * //中止模擬在100時間單位並檢驗結果 //在1000時間單位完成模擬 initial // 模擬時間為0 begin clock = 0 ; reset = 1 ; #100 $stop; //中止模擬在100時間單位 #900 $finish;//在1000時間單位完成模擬 end 範例3-6 中止和完成模擬運算 * Verilog一樣也有編譯命令,編譯命令皆以‘ keyword來表示,在這邊只有介紹兩種最常用的語法,一個是‘ define另一個是‘ include。 ‘ define ‘ define 可以用來定義文字巨集(text macro),如同C程式語言中的#define。 每次編輯Verilog檔案的時候,編譯器會針對定義好的文字巨集,搜尋代換使用到的程式片段。 * 3.3.2 編輯命令 (Complier Directives) // 用文字巨集定義字的寬度 // 在程式碼中使用‘ WORD_SIZE ‘ define WORD_SIZE 32 // 定義一個別名,當‘ s出現時用$stop取代 ‘ define s $stop; // 定義一個經常使用的文字字串 ‘ define WORD_REG reg [31:0] // 然後可以用‘ WORD_REG reg32; // 定義一個32-bit 暫存器變數 範例3-7 ‘ define的用法 * ‘ include include可以帶入其他檔案的內容,插入到include使用的位置,與C程式語言中的#include用法相當。通常利用這一個語法,將通用的宣告與程式片段加入目前的檔案中,可以提供一個簡潔的使用方式。 // 包含header.v檔案,其包含一些在主程式design.v檔案// 中之宣告。 ‘ include header.v … … Verilog code in file design.v … … 範例3-8 ‘ include 的用法 * Verilog語法極類似C語言。 說明空白、註解、運算子、數字、字串、定義名稱、語 法協定。 在V
您可能关注的文档
最近下载
- YS∕T 575.23-2021 铝土矿石化学分析方法 第23部分:元素含量的测定 X射线荧光光谱法.pdf
- 2025至2030中国燃料乙醇行业现状调查及投资前景策略分析报告.docx
- 智能网联汽车2025年智能网联汽车测试评价体系报告.docx
- 公司申购单模板.pdf VIP
- 高校电子课件:职业生涯管理(第五版).ppt
- 部编版小学语文六年级上册第八单元作业设计.docx
- 中长导管临床应用.pptx VIP
- 第二类精神药品经营企业监督检查要点.pptx
- 《教育强国建设规划纲要(2024-2035年)》全文解读PPT课件.ppt
- YBT 2206.2-1998耐火浇注料抗热震性试验方法(水急冷法).pdf
文档评论(0)