FreeCalypso > hg > fc-sim-sniff
view fpga/sniffer-basic/sync_inputs.v @ 45:b0524d1dc6ef
simtrace3-sniff-dec: implement command decoding
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 31 Aug 2023 09:32:48 +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