|
本人遇到一个奇怪问题。程序如下
module ADD(clk,a,c);
input clk;
input [7:0] a;
output [7:0] c;
reg [7:0] c;
reg [7:0] b=8'b0011_0000;
always @(posedge clk)
begin
c<=((~a) | b);
end
endmodule
我把输入a设置为8'b1111_1111,仿真出现问题:c输出为8'b0000_0000.为什么不是8'b0011_0000. 这个没有起作用。
如下图
我把各个数据位都改为四位。如下
input [3:0] a;
output [3:0] c;
reg [3:0] c;
reg [3:0] b=4'b0011;
always @(posedge clk)
begin
c<=((~a) | b);
end
endmodule
结果输出正确。
如下图
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|