[FPGA] 异步复位同步释放代码

https://blog.csdn.net/qq_34326957/article/details/139525353

不同的复位方式有各自的优缺点。但是在工程中,一般都用异步复位的方法,最好是异步复位同步释放的方法

 

一、异步复位,同步释放

//Synchronized Asynchronous Reset
module sync_async_reset (
    input      clk,
    input      rst_async_n,
    output reg rst_sync_n
);
reg rst_s1;
always @(posedge clk or negedge rst_async_n) 
begin
   if(!rst_async_n) 
   begin
       rst_s1     <= 1'b0;
       rst_sync_n <= 1'b0;
   end
   else 
   begin
       rst_s1     <= 1'b1;
       rst_sync_n <= rst_s1;
   end
end
endmodule

 

二、异步复位

module async_reset_dff_module (
    input clk,
    input rst_n,            // Synchronous reset
    input d,
    output reg q);
    always @ (posedge clk or negedge rst_n)
        if (!rst_n) q <= 1'b0;
        else         q <= d;
endmodule

 

posted on 2025-09-11 09:37  longyue  阅读(31)  评论(0)    收藏  举报

导航