在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5079|回复: 4

[求助] verilog testbench 常量数组

[复制链接]
发表于 2014-7-1 14:57:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
写testbench的时候,激励信号,由于编码有N种组合想写个常数数组实现
发现verilog没有这功能。。。。。
笨办法是写N段代码
有没有好一点的办法,用循环来实现?


谢谢!!!
 楼主| 发表于 2014-7-2 12:38:24 | 显示全部楼层
顶上去,现在审核怎么要这么长时间
发表于 2014-7-3 10:39:55 | 显示全部楼层
可以用reg [x:0] reg_name [0:y]定义啊。
发表于 2014-7-3 13:28:54 | 显示全部楼层
本帖最后由 UNice 于 2014-7-3 13:33 编辑

回复 1# feiyufox


可以用generate来实现例如:




module gray2bin1
(

bin,

gray
);  


parameter SIZE = 8;  


output
[SIZE-1:0] bin;
input
[SIZE-1:0] gray;


genvar i;


generate



for(i=0; i<SIZE; i=i+1)begin: bit

assign bin = ^gray[SIZE-1:i];

end   


endgenerate


endmodule





等同于下面的语句:

assign bin[0] = ^gray[SIZE-1:0];

assign bin[1] = ^gray[SIZE-1:1];

assign bin[2] = ^gray[SIZE-1:2];

assign bin[3] = ^gray[SIZE-1:3];

assign bin[4] = ^gray[SIZE-1:4];

assign bin[5] = ^gray[SIZE-1:5];

assign bin[6] = ^gray[SIZE-1:6];

assign bin[7] = ^gray[SIZE-1:7];
发表于 2014-7-3 23:16:49 | 显示全部楼层
// use Array of 32-b registers
reg [32:0] array[N-1:0];
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-26 04:20 , Processed in 0.021813 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表