aboutsummaryrefslogtreecommitdiff
path: root/rtl/src/reset_synchronizer.v
blob: dc7a80a24f56d03f0bd46b20d1063d4ed6c551b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
module reset_synchronizer (
    input clk,
    input rstn_async,
    output rstn
);

reg [1:0] rstn_sync;

always @(posedge clk or negedge rstn_async) begin
  if (!rstn_async) rstn_sync <= 2'b00;
  else             rstn_sync <= {rstn_sync[0], 1'b1};
end

assign rstn = rstn_sync[1];

endmodule