Verilog HDL语言中共有以下一些系统函数和任务:
$bitstoreal, $rtoi, $display, $setup, $finish, $skew, $hold,
$setuphold, $itor, $strobe, $period, $time, $printtimescale,
$timefoemat, $realtime, $width, $real tobits, $write, $recovery,
在Verilog HDL语言中每个系统函数和任务前面都用一个标识符$来加以确认。这些系统函数和任务提供了非常强大的功能。
目录
1.$display和$write任务
格式
$display(p1,p2,....pn);
$write(p1,p2,....pn);
这两个函数和系统任务的作用是用来输出信息,即将参数p2到pn按参数p1给定的格式输出。参数p1通常称为“格式控制”,参数p2至pn通常称为“输出表列”。这两个任务的作用基本相同。$display自动地在输出后进行换行,$write则不是这样。如果想在一行里输出多个信息,可以使用$write。在$display和$write中,其输出格式控制是用双引号括起来的字符串,它包括两种信息:
格式说明,由"%"和格式字符组成。它的作用是将输出的数据转换成指定的格式输出。格式说明总是由“%”字符开始的。对于不同类型的数据用不同的格式输出。表一中给出了常用的几种输出格式。
输出格式 |
说明 |
%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 |
以指数或十进制数的形式输出实型数 无论何种格式都以较短的结果输出 |
普通字符,即需要原样输出的字符。其中一些特殊的字符可以通过表二中的转换序列来输出。下面表中的字符形式用于格式字符串参数中,用来显示特殊的字符。
换码序列 |
功能 |
\n |
换行 |
\t |
横向跳格(即跳到下一个输出区) |
\\ |
反斜杠字符\ |
\" |
双引号字符" |