求助

[复制链接]
2490|2
 楼主| wutianming 发表于 2009-12-24 15:23 | 显示全部楼层 |阅读模式
在verilog程序中,数据类型wirereg有什么本质的区别!在同一个程序中为什么数据类型不同会出现不同的综合结果!!
 楼主| wutianming 发表于 2009-12-24 15:25 | 显示全部楼层
程序为:
module ALU(out,select,a,b);
reg[4:0] out;
wire[2:0] select;
wire[3:0] a,b;
input select,a,b;
output out;
always @(a or b )
begin
case(select)
3'b000: out=a;
3'b001: out=a+b;
3'b010: out=a-b;
3'b011: out=a/b;
3'b100: out=a%b;
3'b101: out=a<<1;
3'b110: out=a>>1;
3'b111: out=a>b;
default: out=5'bz;
endcase
end
endmodule
当a,b改为reg型时综合结果是不一样的,求助!!!
webberc 发表于 2009-12-24 15:33 | 显示全部楼层
wire是线网类型,reg是寄存器。只有reg才能在always模块内赋值
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:想学习的菜鸟

1

主题

2

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部