异步复位,同步释放
//异步释放,同步复位
reg [ 1: 0] rst_n_r ;
always @(posedge clk or negedge s_rst_n)begin
if(s_rst_n==1'b0)begin
rst_n_r <= 0;
end
else begin
rst_n_r <= {rst_n_r[0],1'b1};
end
end
assign rst_n = rst_n_r[1];
带PLL的异步复位,同步释放
//异步释放,同步复位
always @(posedge clk or negedge s_rst_n)begin
if(s_rst_n==1'b0)begin
rst_n_r <= 2'b00;
end
else if(locked)begin
rst_n_r <= {rst_n_r[0],1'b1};
end
end
assign rst_n = rst_n_r[1];