Forum Discussion
Altera_Forum
Honored Contributor
9 years agoThere are two phases to aligning an interface like this, bit alignment then word alignment. Bit alignment involves finding the serial data transitions and establishing the optimal clock phase for sampling the data (sampling in the center of the eye). DPA does this for you automatically if you enable it. If you don't enable DPA then you have to find your own solution for bit alignment.
Once bit alignment is complete then you start word alignment. Word alignment involves doing bitslips on each channel one at a time until the parallel data out of that channel matches the expected training word value. This is what "rx_channel_data_align" is used for. The word alignment process is very simple. Bit alignment is much trickier without DPA and you've made no mention of bit alignment. As I said in my previous post, if DPA is supported in the device family you're using then it will make your task much simpler and your design much more robust if you enable DPA.