最近我在网上看了一些有关ALTLVDS的应用笔记,对串行传输有了一点认识:
1、LVDS传输时,采样时钟的相位正确保证了并行数据中的每位的正确;
2、在位接受正确后,就得正确找到串行位数据的起始位,即字对齐的问题,目前解决这个问题的方法一般有两种:
a、标准协议会定义特殊码型,如编码类型8B/10B的K28.5,用来字对齐;
b、提供附加字对齐信号;
在超声波采集系统(带有DDR接口AFE5805)中,不仅提供了用于位采样的采样时钟LCLK,也提供了用于字对齐的信号FCLK,所以我们是否采样ALTLVDS_RX都是可以的(这两种方法我以前提到过):
一是使用LCLK+DDIO,将数据位速率降低一倍,然后用LCLK的上升沿或下降沿作为时钟采样位数据,用FCLK来进行字对齐;
二是使用ALTLVDS_RX,使用FCLK+PLL产生位采样时钟(如果FCLK不在FPGA的时钟管脚上,此方法不能用),ALTLVDS_RX的解码因子可以为4、6等,然后用FCLK进行字对齐。
另外,我建议在使用LVDS进行数据传输时,考虑这么几点:
1、将FCLK、LCLK(伴随时钟)放在时钟管脚上,好进入FPGA的时钟网络。
2、如果可以的话,选用带有硬件解码功能的器件。
文章评论(0条评论)
登录后参与讨论