data/full_repos/permissive/418750043/C906_RTL_FACTORY/gen_rtl/tdt/rtl/debug/tdt_dm_sync_dff.v
data/verilator_xmls/cde83558-42cb-4d55-b8e2-706df31fbe39.xml
module tdt_dm_sync_dff #(
    parameter    SYNC_NUM = 2
)(
    input        dst_clk,
    input        dst_rst_b,
    input        src_in,
    output       dst_out
);

reg  [SYNC_NUM-1:0] sync_ff;

always @ (posedge dst_clk or negedge dst_rst_b) begin
    if (!dst_rst_b)
        sync_ff[SYNC_NUM-1:0] <= {SYNC_NUM{1'b0}};
    else 
        sync_ff[SYNC_NUM-1:0] <= {sync_ff[SYNC_NUM-2:0], src_in};
end

assign dst_out = sync_ff[SYNC_NUM-1];

endmodule
module tdt_dm_sync_dff #(
    parameter    SYNC_NUM = 2
)(
    input        dst_clk,
    input        dst_rst_b,
    input        src_in,
    output       dst_out
);


reg  [SYNC_NUM-1:0] sync_ff;

always @ (posedge dst_clk or negedge dst_rst_b) begin
    if (!dst_rst_b)
        sync_ff[SYNC_NUM-1:0] <= {SYNC_NUM{1'b0}};
    else 
        sync_ff[SYNC_NUM-1:0] <= {sync_ff[SYNC_NUM-2:0], src_in};
end

assign dst_out = sync_ff[SYNC_NUM-1];

endmodule