Hi
In reviewing the synchronization application note (Posted by Kang Hsia on Mar 07 2013 14:29 PM) I have the following concern/question
This might be alleviated with custom hardware, but currently we have a single FPGA development board connected to 2 TI DAC boards. The startup time between the FPGA and DACs is arbitrary and not linked. The DAC's are linked to the same clock and OSTR, but will have a slight phase offset due to non matching trace lengths (not a concern). The FPGA also has a reset button which might be used at times.
My concern is how to achieve ~4 position spacing between the FIFO's read and write pointers when using the dual sync method. Since the two sync strobes are totally independent of each other and neither can be controlled, or initiated by the other (based on the available connectivity) I cannot determine how I can naively guarantee the spacing.
The app note discusses checking the alarms and tuning the offset adjustment. I don't believe that there is feedback to state the actual difference between the read and write pointers, and thus I have a concern, which is discussed briefly in the app note, that the initial config (or the config that is settled upon after tuning on startup) is on a threshold and corruption occurs at a later time due to 'PVT'.
I suppose I could tune the offset adjustment to intentionally have collisions occur and then set the final offset to '(collision offset + 4) mod 8'..
Is there a recommended method?
Thanks
Andrew