Read (MM2S) channel: When configured as Genlock Slave, the channel tries to catch up with the Genlock Master either by skipping or repeating frames. It samples the Genlock Master frame number on mm2s_frame_ptr_in and operates with a predetermined frame delay value set in its mm2s_frmdly_stride[28:24]. It outputs its current frame number on mm2s_frame_ptr_out for status purpose.
To set up the channel in Genlock Slave mode, the following settings should be used:
•Set GenlockEn (MM2S_VDMACR[3]=1) to enable Genlock synchronization between master and slave.
•Set GenlockSrc (MM2S_VDMACR[7]=1) to enable Internal Genlock mode. This bit is set to 1 by default if both channels are enabled in the Vivado IDE. When it is set to 1, you do not need to connect *_frame_ptr_out and *_frame_ptr_in signals externally. They are routed internally in the core.
•Set appropriate value in mm2s_frmdly_stride[28:24] based on master and slave frame rates.
Write (S2MM) channel: When configured as Genlock Slave, the channel tries to catch up with the Genlock Master either by skipping or repeating frames. It samples the Genlock Master frame number on s2mm_frame_ptr_in and operates with a predetermined frame delay value set in its s2mm_frmdly_stride[28:24]. It outputs its current frame number on s2mm_frame_ptr_out for status purpose.
To set up the channel in Genlock Slave mode, the following settings should be used:
•Set GenlockEn (S2MM_VDMACR[3]=1) to enable Genlock synchronization between master and slave.
•Set GenlockSrc (S2MM_VDMACR[7]=1) to enable Internal Genlock mode. This bit is set to 1 by default if both channels are enabled in the Vivado IDE. When it is set to 1, you do not need to connect *_frame_ptr_out and *_frame_ptr_in signals externally. They are routed internally in the core.
•Set appropriate value in s2mm_frmdly_stride[28:24] based on master and slave frame rates.