FreeCalypso > hg > fc-sim-sniff
view fpga/sniffer-basic/sync_inputs.v @ 25:c03a882cc49e
doc/Sniffer-FPGA-design: update for working status
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 29 Aug 2023 06:37:58 +0000 |
parents | 7db5fd6646df |
children |
line wrap: on
line source
/* * This Verilog module captures the input synchronizer logic: passing all 3 * SIM sniffer inputs through double-DFF synchronizers to bring them into * our internal clock domain. */ module sync_inputs (IntClk, SIM_RST_in, SIM_RST_sync, SIM_CLK_in, SIM_CLK_sync, SIM_IO_in, SIM_IO_sync); input IntClk; input SIM_RST_in, SIM_CLK_in, SIM_IO_in; output SIM_RST_sync, SIM_CLK_sync, SIM_IO_sync; reg SIM_RST_sync, SIM_CLK_sync, SIM_IO_sync; reg SIM_RST_sync1, SIM_CLK_sync1, SIM_IO_sync1; always @(posedge IntClk) SIM_RST_sync1 <= SIM_RST_in; always @(posedge IntClk) SIM_RST_sync <= SIM_RST_sync1; always @(posedge IntClk) SIM_CLK_sync1 <= SIM_CLK_in; always @(posedge IntClk) SIM_CLK_sync <= SIM_CLK_sync1; always @(posedge IntClk) SIM_IO_sync1 <= SIM_IO_in; always @(posedge IntClk) SIM_IO_sync <= SIM_IO_sync1; endmodule