在verilog 仿真中,有时我们得到的是字符串,而且想把字符串转换为16进制数据。同理,有时,我们需要包16进制数据转换为字符串格式。比如我们读取一个文本文件,得到的数据为字符数据。而仿真中,却需要使用的是16进制数据,当然如果能得到16进制数据,相应的10进制,2进制数据也是同样可以得到的。这时,我们就会需要使用verilog的系统函数$swrite, $sformat 来进行转换了,这一点好像c语言中的itoa, atoi 等函数的操作了。
$swrite 使用
$swrite(<reg>, <format_str>, <arg>); 没有返回值 file_desc:为打开的文件句柄 operation_number:定位文件指针的位置。 0,文件的起始位置;1,文件的当前位置; 2 文件结束的位置。
按顺序将字符串写入到reg中。
fsafas
$sformat 使用
<len> = $sformat(<reg>, <format_str>, <arg>); integer:定义整型变量,用于$fseek的返回值。如果$fseek成功执行,返回0; $fseek执行失败,返回-1。 file_desc:为打开的文件句柄 file_desc:为打开的文件句柄 operation_number:定位文件指针的位置。 0,文件的起始位置;1,文件的当前位置; 2 文件结束的位置。
从文件中定位读写指针的位置,根据文件的参
fasfda