|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
有没有大佬帮我看看注释与注释前三行有什么区别呀?在HDLbits答题,发现自己写的代码跑出的波形不对。
题目:构建一个100位的左右旋转器,同步load,左右旋转需使能。旋转器从另一端输入移位的位元,不像移位器那样丢弃移位的位元而以零位移位。如果启用,旋转器就会旋转这些位,而不会修改或丢弃它们。
load:加载100位的移位寄存器数据
ena[1:0]:2’b01 右转1bit; 2’b10 左转1bit;其他情况不转
q:旋转器内容
module top_module(
input clk,
input load,
input [1:0] ena,
input [99:0] data,
output reg [99:0] q);
reg temp;
always@(posedge clk)begin
if(load==1)begin
q<=data;
end
else if(ena==2'b01)begin
temp<=q[0];
q<=q>>1'b1;
q[99]<=temp;
//q<={q[0],q[99:1]};别人的代码
end
else if(ena==2'b10)begin
temp<=q[99];
q<=q<<1'b1;
q[0]<=temp;
//q<={q[98:0],q[99]};
end
else begin
q<=q;
end
end
endmodule
|
|