verilog之display
1、函数简介
$display是用于显示不同格式的变量的函数,用于测试过程中观察数据数据的特点。该观测不如波形图直观,但是如果可以详细的设置好观测点,有时可以达到事半功倍的效果。
2、实际测试
module display; /* 数据类型简写 %h或%H 以十六进制数的形式输出 %d或%D 以十进制数的形式输出 %o或%O 以八进制数的形式输出 %b或%B 以二进制数的形式输出 %c或%C 以ASCII码字符的形式输出 %v或%V 输出网络型数据信号强度 %m或%M 输出等级层次的名字 %s或%S 以字符串的形式输出 %t或%T 以当前的时间格式输出 %e或%E 以指数的形式输出实型数 %f或%F 以十进制数的形式输出实型数 %g或%G 以指数或十进制数的形式输出实型数,无论何种格式都以较短的结果输出 */ /*转义字符 换行 横向跳格(即跳到下一个输出区) \ 反斜杠字符 " 双引号字符" o 1到3位八进制数代表的字符 %% 百分符号% */ /*功能区分 $display自动地在输出后进行换行, $write则不是这样。如果想在一行里输出多个信息,可以使用$write */ /*具体例子 */ reg [3:0] a; initial begin a=1'b1; $display("\ " o %d %% ",a); $display("a= %d",a); $display("a= %d",a); $write("a= %d",a); $write("a= %d",a); end endmodule
3、测试结果
run -all # " o 1 % # # a= 1 # a= 1 a= 1a= 1
可以看到display显示分行,而write只是在同一行工作。一个成段,一个成句,基本功能还是一致的。