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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

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

[求助] 请教一下,testbench里for循环嵌套无法正确执行

[复制链接]
发表于 2012-2-11 15:18:01 | 显示全部楼层 |阅读模式

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

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

x
设计了一个5*5的乘法器,用testbench测试,要求覆盖所有可能input。
module tb_mult5x5();

reg [4:0] InA=0, InB=0;

wire [9:0] Product;

integer clk,fp;



mult5x5
mult(InA,InB, Product);



initial begin



for(InA=0;InA<=5'b11111;InA=InA+1)begin

for(InB=0;InB<=5'b11111;InB=InB+1)begin

#1;

end

end

#5;

$stop;

end


仿真以后,Product的输出全部都是XXXXXXXXX0,然后输入变量InA始终是0,InB在00001到11111之间不断循环。请问这是什么问题?谢谢!
发表于 2012-2-11 21:48:29 | 显示全部楼层
for(InB=0;InB<=5'b11111;InB=InB+1)begin
                 ^^^^^^^^^^ ==> 這個條件永遠成立,會永不停止
发表于 2012-2-12 08:16:54 | 显示全部楼层
initial begin



for(InA=0;InA<=5'b11111;InA=InA+1)begin

for(InB=0;InB<=5'b11111;InB=InB+1)begin

#1;

end
#1;
end

#5;

$stop;

end
改成这样可以吗?
发表于 2012-2-12 13:23:18 | 显示全部楼层
請改這兩行
reg [4:0] InA=0, InB=0; ==> reg [5:0] InA=0, InB=0;
mult(InA,InB, Product);  ==> mult(InA[4:0],InB[4:0], Product);
发表于 2012-2-14 11:25:46 | 显示全部楼层
for(InB=0;InB<=5'b11111;InB=InB+1)begin

InB=InB+1,当InB=11111时,执行InB=InB+1,InB又变为0了,一直在这里循环
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-22 22:55 , Processed in 0.051301 second(s), 9 queries , Gzip On, Redis On.

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