Xilinx SRL's and sync flip flops

I looked at Xilinx' sysnthesis template for double-registering asynchronous signals to avoid metastability problems. They explicitly state that an SRL primitive should NOT be extracted. Why is this?

I have used basically the same Verilog construct in my designs (having not looked at Xilinx' template first) and am fairly certain that SRL primitives ARE used. Is there a problem with this? Is it not advidsable to use SRL primitives as synchronization flops?

Reply to
motty
Loading thread data ...

motty,

The SRL16 is not a master/slave flip flop, so as such, it is not well suited to be used as a synchronizer between an asynchronous domain and a synchronous one.

Basically, for synchronization, you want a master slave FF, and you want it to be incredibly fast.

In V5, the SRL32 (or SRL16 is a master slave design, and this restriction should be removed (IMO).

Austin

Reply to
Austin Lesea

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.