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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6602|回复: 15

[求助] 测试文件添加激励

[复制链接]
发表于 2017-6-1 19:10:15 | 显示全部楼层 |阅读模式

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

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

x
module xx_tb;


// Inputs

reg clk;

reg rst;

reg [17:0] dina;

reg [17:0] dinb;


// Outputs

wire [33:0] dout;

integer
i ,j ;

reg
[647:0]
datathmem[2:0] ;

reg
[17:0]
dataxmem[647:0] ;

// Instantiate the Unit Under Test (UUT)

dxx1 uut (

.clk(clk),

.rst(rst),

.dina(dina),

.dinb(dinb),

.dout(dout)

);

always #10
clk = ~clk ;

initial

begin

$readmemb("realTtH1.txt",datathmem) ;

$readmemb("realx1.txt",dataxmem) ;

end

initial

begin

clk = 0 ;

rst = 0 ;

dina = 0 ;

dinb = 0 ;

#15
rst = 1 ;

// #20
dina = datathmem[0][647:630] ;

// dinb = dataxmem[0] ;

// #20
dina = datathmem[0][629:612] ;

// dinb = dataxmem[18] ;

begin

for (i=35;i>-1;i=i-1)

begin

j = i*18  ;

dina = datathmem[0][j*1+17-:1] ;

dinb = dataxmem[j] ;

#20 ;

end

end

end
endmodule
其中dina想要表示的是datathmem[0]的第j+17到j这18位,但是波形出现问题
发表于 2017-6-2 14:27:43 | 显示全部楼层
波形呢?
 楼主| 发表于 2017-6-5 09:51:36 | 显示全部楼层
回复 2# gaurson


   dout一直在0和1之间变化,
发表于 2017-6-5 11:34:45 | 显示全部楼层
你是不是应该把dxx1的原码和你的仿真波形都贴出来
发表于 2017-6-5 13:47:11 | 显示全部楼层
dxx1里面dout的定义是34比特的把?
 楼主| 发表于 2017-6-6 08:48:49 | 显示全部楼层
回复 5# gaurson


   是的
发表于 2017-6-6 17:21:34 | 显示全部楼层
1、不知道你的DUT实现什么功能;2、最好把波形贴出来;
发表于 2017-6-6 21:59:19 | 显示全部楼层
是不是时标没加?
你把你的波形贴出来
 楼主| 发表于 2017-6-7 08:52:07 | 显示全部楼层
回复 8# 清风403


    1496797197(1).jpg 想要试实现的功能是每次相乘的结果相加,
 楼主| 发表于 2017-6-7 08:55:08 | 显示全部楼层
回复 7# gaurson


    1496797197(1).jpg 实现的功能是每次相乘的结果相加,因为涉及的深度较多,想用一个for循环进行地址的移位,结果就是这样,但是若输入每个确定的地址的话,得到的结果是对的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2025-7-17 19:58 , Processed in 0.040579 second(s), 8 queries , Gzip On, MemCached On.

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