任务和函数说明语句-第九单片机论坛.PPT

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
任务和函数说明语句-第九单片机论坛

常用的系统任务 $display和$write 举例说明$display和$write的作用 输出结果 在%和表示进制的字符中间插入0,会自动调整显示的输出宽度,总是用最少的位数来输出当前值。否则,按实际的位数显示。 如果输出列表中表达式的值包含有不确定的值或高阻值,其结果 输出遵循以下规则: (1).在输出格式为十进制的情况下: ? 如果表达式值的所有位均为不定值,则输出结果为小写的x。 ? 为高阻值,则输出结果为小写的z。 ? 为不定值,则输出结果为大写的X。 ? 为高阻值,则输出结果为大写的Z。 (2).在输出格式为十六进制和八进制的情况下: ? 每4位二进制数为一组代表一位十六进制数,每3位二进制数 为一组代表一位八进制数。 ? 如果表达式值相对应的某进制数的所有位均为不定值,则该位 进制数的输出的结果为小写的x。 ? 为高阻值,则该位进制数的输出结果为小写的z。 ? 为不定值,则该位进制数输出结果为大写的X。 ? 为高阻值,则该位进制数输出结果为大写的Z。 常用的系统任务 $display和$write 对于二进制输出格式,表达式值的每一位的输出结果为0、1、x、z.下面就将举例说明。 注意:因为$write在输出时不切换,要注意它的使用。可以在$write中加入\n,以确保明确的输出显示格式。 常用的系统任务 打开文件任务 文件可以用系统任务$fopen打开 多通道描述符的优点在于可以有选择的同时写多个文件。 常用的系统任务 写文件任务 系统任务$fdisplay、$fmonitor 、$fstorbe都用于写文件。 注:这些任务在语法上与常规系统任务$fdisplay、$fmonitor等类似,但是他们提供了额外的写文件功能。 常用的系统任务 写文件任务 系统任务$fdisplay、$fmonitor 、$fstorbe都用于写文件。 3个文件的描述符 按位或;dece1=32h0000_0003 写文件到file1.out和标准输出stdout dece2=32h0000_0006 写文件到file1.out和file2.out dece3=32h0000_0008 只写文件到file3.out 常用的系统任务 关闭文件任务 文件可以用系统任务$fclose来关闭 文件一旦被关闭就不能再写入,多普通描述符中的相应位被设置为0,下一次$fopen的调用可以重用这一位。 常用的系统任务 关闭文件任务 文件可以用系统任务$fclose来关闭 打开文件file.out 把字符串Display 1写到文件file.out中 关闭文件file.out 不能写入数据到文件,因为文件已关闭 常用的系统任务 层次显示任务 通过任何显示任务,如$display、$write、$monitor或者$strobe任务中的%m选择的方式可以显示任何级别的层次,这是非常有用的选项。 这一特征可以显示全层次路径名,包括模块实例、任务、函数和命名块。 常用的系统任务 选通显示任务 选通显示由关键字$strobe的系统任务完成。$strobe提供了一种同步机制,它可以确保所有在同一时钟沿赋值的其他语句在执行完毕之后才显示数据。 常用的系统任务 值变存储文件 值变转换文件(VCD)是一个ASCII文件,它包含仿真时间、范围与信号的定义以及仿真运行过程中信号值的变化等信息。 常用的系统任务 值变存储文件 选择VCD文件的名称:myfile.dump 没有指定变量的范围,转储全部信号 转储模块实例top中的信号, 只转储top下一层信号 转储top.m1模块下两层的信号 转储top.m1模块下的各层的所有信号 启动转储过程 过100000个仿真时间单位,停止转储 选择生成检测点 小 结 Verilog HDL的基本语法 在本节中我们学习了Verilog语法中两种最重要的结构语句initial和always;还学习了如何定义和使用任务与函数,及几个常用的系统函数:$display、$write、$strobe、$fopen、$fclose、$fdisplay、$monitor等的用法。 Verilog HDL的基本语法 需要牢记的是: 一个程序模块可以有多个initial和always过程块。 每个initial和always说明语句在仿真的一开始便 同时立即开始运行。 initial语句在模块中只执行一次。 always语句则是不断地活动着,直到仿真过程结束。 always语句后跟着的过程块是否运行,则要看它的 触发条件是否满足,如果满足则运行过程块一次,再 次满足则再运行一次,循

文档评论(0)

wumanduo11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档