1
0
mirror of https://github.com/aolofsson/oh.git synced 2025-01-30 02:32:53 +08:00
oh/asiclib/hdl/asic_rsync.v

26 lines
856 B
Coq
Raw Normal View History

//#############################################################################
//# Function: Reset synchronizer #
// (async assert, sync deassert) #
//# Copyright: OH Project Authors. All rights Reserved. #
//# License: MIT (see LICENSE file in OH repository) #
//#############################################################################
module asic_rsync
(
input clk,
input nrst_in,
output nrst_out
);
localparam SYNCPIPE=2;
reg [SYNCPIPE-1:0] sync_pipe;
always @ (posedge clk or negedge nrst_in)
if(!nrst_in)
sync_pipe[SYNCPIPE-1:0] <= 'b0;
else
sync_pipe[SYNCPIPE-1:0] <= {sync_pipe[SYNCPIPE-2:0],1'b1};
assign nrst_out = sync_pipe[SYNCPIPE-1];
endmodule