复位就是 reset
高电平指的是 if(reset) begin d <= 0; end
异步指的是 always@(posedge clk, posedge reset)
如果写成
always@(posedge clk) begin
d <= d_in;
end
是没有复位信号的d触发器
always@(posedge clk) begin
if(reset) begin // reset 被 clk 采样为1时触发
d <= 0;
end else begin
d <= d_in;
end
end
是同步高电平复位的
always@(posedge clk, posedge reset) begin // reset 变为高电平会进入这个always block
// 由这里的逻辑表达异步语意
if(reset) begin // 由这里编写reset为高电平时刻的复位语意逻辑,注意reset要和posedge一致
d <= 0;
end else begin
d <= d_in;
end
end
是异步高电平复位的