Why do we have a multibit wide synchronizer with no handshake mechanism? You can't reliably synchronize a multibit bus unless it's grey-coded.
A single bit synchronizer must be of configurable depth and/or readily replaceable by integrator specific synchronizers.
2-bit depth synchronizers may not comply with integrator/foundry design rules or practice.
Recommendation: Add define for synchronizer depth and/or define for ready replacement of the synchronizers by the integrator.
these were meant to "bungle" independent wires to reduce code typing . they are instantiating dual flop synchronizer modules, which can be replaced by a physical library cell.
re: module rvsyncss, module rvsyncss_fpga
"lib/beh_lib.sv"
Why do we have a multibit wide synchronizer with no handshake mechanism? You can't reliably synchronize a multibit bus unless it's grey-coded.
A single bit synchronizer must be of configurable depth and/or readily replaceable by integrator specific synchronizers. 2-bit depth synchronizers may not comply with integrator/foundry design rules or practice.
Recommendation: Add define for synchronizer depth and/or define for ready replacement of the synchronizers by the integrator.