将txt文本中的数据读到tb文件中——一种testbench设计方式

一、将txt文本数据读到tb文件中

假设有一个test.txt的文档,需要将其中的数据读出到testbench中,需要用到关键函数:

$readmemb 和 $readmemh

$readmemb:要求数字是二进制
$readmemh:要求数字是十六进制

在Verilog语法中,分别有以下三种用法:

(1)$readmemb(“<数据文件名>”,<存储器名>);

(2)$readmemb(“<数据文件名>”,<存储器名>,<起始地址>);

(3)$readmemb(“<数据文件名>”,<存储器名>,<起始地址>,<终止地址>);

(1)$readmemh(“<数据文件名>”,<存储器名>);

(2)$readmemh(“<数据文件名>”,<存储器名>,<起始地址>);

(3)$readmemh(“<数据文件名>”,<存储器名>,<起始地址>,<终止地址>);

//假设test文档中有868bit数据,需要读到testbench中,则先定义一个mem;
reg[7:0]  mem[85:0]; 
initial begin
		$readmemb("./test.txt",mem);
	end

注意:这个test.txt文件需要在仿真目录下,否则读取不到
在这里插入图片描述

二、此外这里补充一个快速生成数据文本的方式:

前提:sublime text工具 + 下载好的工具包
{:位数(两位)进制}
这里进制只能是2进制十进制。

例如:要生成86个8bit数据,2进制
1. 输入命令:[:07b]
2. 选中右键:repeat code with nubmers
在这里插入图片描述
3. 按照提示输入命令,填充数据为0~85,向下每次递增1,向右不增。
在这里插入图片描述
4. 最后填充效果如下:
在这里插入图片描述

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值