verilog 语法问题

2019-07-15 21:30发布

想用一些寄存器,实现外部输入的信号的乘法和加法,刚开始就遇到了困难。主要是不清楚阻塞赋值和非阻塞赋值的差别。本来是外部输入信号赋给rra和rrb两个寄存器,但是为了仿真我就在程序里直接赋值了

rra=32'h3f800000;//1
rrb=32'h40000000;//2
rA={ rra[31], rra[30:23], 1'b1, rra[22:0]};
rB= { rrb[31], rrb[30:23], 1'b1, rrb[22:0]};

BDiff = rB[31:24] - 8'd127; // + (~8'd127 + 1)
rExp = rA[31:24] + BDiff; // A.Exp + B.Exp
Temp  = rA[23:0] * rB[23:0];

这么写,报错Signal <rrb> is assigned but never used. This unconnected signal will be trimmed during the optimization process.

敢问怎么样才算是使用了变量呢?



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
24不可说
1楼-- · 2019-07-15 23:21
回复本帖可获得 5 分积分奖励! 每人限 1 次
少年不识愁滋味
2楼-- · 2019-07-16 04:07
回复本帖可获得 5 分积分奖励! 每人限 1 次
tcy168698
3楼-- · 2019-07-16 06:58
24不可说 发表于 2017-8-1 13:05
回复本帖可获得 5 分积分奖励! 每人限 1 次

饿
zhq420923
4楼-- · 2019-07-16 08:55
wire类型赋值,前面加上assign
我爱大脸猫
5楼-- · 2019-07-16 09:04
回复本帖可获得 5 分积分奖励! 每人限 1 次

一周热门 更多>