1
0
mirror of https://github.com/aolofsson/oh.git synced 2025-01-17 20:02:53 +08:00
oh/asiclib/hdl/asic_rsync.v
aolofsson 9e41b55f22 Adding default property to all cells
-Can be used to select between different cells (like sizes) that have the exact same logical function
2021-07-27 22:55:45 -04:00

25 lines
885 B
Verilog

//#############################################################################
//# 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 #(parameter PROP = "DEFAULT") (
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