verilog中函数用法

news/2024/5/19 18:14:15 标签: systemverilog

verilog中函数用法

  • 读写文件常用
    • 1.1打开文件
    • 1.2读写文件
  • 2执行系统命令

读写文件常用

1.1打开文件

$fopen打开文件,用法如下:
1. $fopen("<文件名>");
2. <句柄>=$fopen(“<文件名>”);

用法1自然无须多解释,对于用法2,句柄就是任务$fopen返回的多通道描述符,默认为32位,最低位(第0位)默认被设置1,默认开放标准输出通道,即transcript窗口。

注意:用 f o p e n 打 开 文 件 会 将 原 来 的 文 件 清 空 , 若 要 读 数 据 就 用 fopen打开文件会将原来的文件清空,若要读数据就用 fopenreadmemb, r e a d m e m h 就 可 以 了 , 这 个 语 句 不 会 清 空 原 来 文 件 中 的 数 据 。 用 readmemh就可以了,这个语句不会清空原来文件中的数据。 用 readmemhfopen的情况是为了取得句柄,即文件地址,也就是写文件时用$fdisplay(desc,“display1”);时才用。

  integer handle1;
  handle1=$fopen("file1.dat",wb);

1.2读写文件

写文件我们用到系统任务 $fdisplay, $fwrite.
两者用法相似,前者写完就会自动换行,后者不会换行。

interger handle1;
handle1 = $fopen("file1.dat","wb");
#可以用$fdisplay
$fdisplay (handle1,"write name here ");
#也可以用$fwrite
$fwrite(handle1,"write name here");
$fwrite(handle1,"/n");

读文件使用$fread。

interger code;
reg [7:0] mem[4:0];
interger fd;
fd = $fopen("test.bin","rb");

code = $fread(mem,fd);
$fread(mem,fd);

2执行系统命令

在$system(" ") " "中的命令只能是命令字符串本身或者是linux的环境变量,是不认识sv中定义的string的。

string output_sim_yuv = "a0.log";
string output_ref_yuv = "b0.log";
$system("cmp output_sim_yuv output_ref_yuv > cmpjpgdec");

这时候就可以使用$sformat().

$sformat(output_sim_yuv,"a0.log");
$sformat(output_ref_yuv,"b0.log");
$system("cmp output_sim_yuv output_ref_yuv > cmpjpgdec");

http://www.niftyadmin.cn/n/1458769.html

相关文章

tf.linalg.band_part函数的参数意思

tf.linalg.band_part&#xff08;.) 函数功能&#xff1a;保留非主对角线的元素&#xff0c;其余位置的元素替换为0 参数描述 input: 输入的张量num_lower &#xff1a;指定保留的主对角线下方的副对角线的数量&#xff0c;输入数值为负数时&#xff0c;表示下方的对角矩阵元…

在模型训练中,如何初始化及冻结Embedding层

Embedding layer 继承自 keras.layers.Layer&#xff0c;而 Layer 层的属性中包含 trainable&#xff0c;该值默认为 True&#xff0c; 设置其为 False&#xff0c;则可在模型训练中冻结 Embedding 层&#xff1b;Layer 层的方法中包含 set_weigths&#xff0c;利用该方法就可以…

OS module:使用主机操作系统服务

os 库包含很多功能&#xff0c;本部分主要记录os库中的文件与路径操作命令。 os.sep 返回操作系统路径分隔符&#xff0c;linux系统返回符号/&#xff0c; windows系统返回符号\。 os.environ 返回一个mapping对象&#xff0c;该对象的操作类似字典&#xff0c;包含一些常用的…

sys sysconfig module

sys标准库包含的参数或者函数较多&#xff0c;以下部分介绍比较常用的部分&#xff1a; sys.argv 返回在命令行环境下&#xff0c;运行python脚本时提供的命令行参数列表&#xff0c;其中sys.argv[0]存储python脚本的名称。 sys.path 返回一个列表&#xff0c; 列表中的元素是…

from_tensor_slices, from_tensors, from_generator的区别

from_tensor_slices(tensors) tensors: 输入可以是一个或者多个 tensor&#xff0c;若是多个 tensor&#xff0c;需要以元组的形式组装起来&#xff1b;另外所有的输入对象&#xff0c;在 “axis 0” 即第一个维度上&#xff0c;必须有相同的 “shape”。Dataset 内部元素的状…

SQL语法摘要

Select 语句 SELECT&#xff1a;选择原生字段或者定义新字段 字段名以逗号隔开&#xff0c;最后一个字段后不需要加逗号Distinct 关键字作用于全部列空格|AS 别名称通过操作符、数据处理函数、聚集函数、窗口函数自定义表达式生成新字段当不FROM子句时&#xff0c;就是直接计…

bash shell 命令

bash shell可以指定shell的启动方式&#xff0c;常见参数包括&#xff1a; -c string语法格式&#xff0c;参数c表示从“string”字符串中读取命令并执行-i 启动一个能接受用户输入的交互shell 常见linux目录名称&#xff1a; 基础命令 ps命令输出运行在系统上所有进程的相…

HTTP方法简介

HTTP 方法&#xff1a;告知服务器&#xff0c;客户端想对请求的页面做些什么。常见的方法&#xff1a; GET: 浏览器告知服务器&#xff0c;只获取页面上的信息并发给我。HEAD: 浏览器告诉服务器&#xff0c;欲获取信息&#xff0c;但是只关心消息头 。应用应像处理GET请求一样…