【FPGA篇章七】FPGA系统任务:详述常用的一些系统函数以及使用方法
欢迎大家关注我的微信公众账号,支持程序媛写出更多优秀的文章 系统任务和系统函数是Verilog标准的一部分,都以字符"$"为开头。系统任务可划分为六类,下面分别给出一些常用任务的用法。 1 显示任务 1.1 display和write任务 向终端或文件写入值时,系统会自动决定表达式参数值的位置大小。 比如一个16bit大小的数,用十六进制需要4个字符宽度(最大FFFF),用十进制需要5个字符宽度(最大65535)。 如果在%和radix间加一个0,可以取消这种自动决定的机制,看下面的示例: 1 reg [ 15 : 0 ] data = 200 ; 2 initial $display( " data: %d. " , data); // data: 200. 数据占5个字符 3 initial $display( " data: %0d. " , data); // data: 200. 数据占3个字符 1.2 strobe监控 $strobe使用的参数(包括所有转义字符、格式控制)和$display完全相同。 这组系统任务$strobe、$strobeb、$strobeo、$strobeh可以在选择的时间点处显示仿真数据。 当前仿真时刻的其它所有语句、事件执行完后,$strobe系统任务才会执行,以确保显示的是正确的数据。示例如下: 1