http://www.alteraforum.com.cn/showtopic-355-1.aspx
骏龙科技_技术资料汇总52:关于Altera LVDS 经验分享
作者:上海骏龙 毛老师 相信大家在帮助客户调试altea lvds接口的时候,都遇到过不少问题。 下面两个应该是最常见的: (一)字节对齐 字节对齐是我遇到的最多的,收到的数据并不是错了,只是起始bit的位置变了。 使用bitslip,比特滑动控制,可以解决这个问题,但有更为简单的方法: 只要随路时钟与数率的比值(W),与串化因子(J)相同,并且随路时钟和数据是边沿对齐,那么接收侧字的边界是确定的。 如: 数率:800Mbps 位宽:8bit(J=8) 随路时钟:100MHz 那么,收到的数据,字节边界固定不便,至于具体边界位置,可以通过仿真或者实测获得。 (二)DPA使用后,电路工作不正常 DPA电路使用时,如果遇到异常状况无法解决,试着添加下面Altera推荐的复位流程: 1. Ensure the receive clock is stable 2. Reset PLL and release it (PLL_ARESET) 3. Wait until the PLL is locked 4. Begin sending the training pattern 5. Reset DPA and release it (RX_RESET) 6. Wait until DPA is locked (RX_DPA_LOCKED) 7. Reset DPA FIFO and release it (RX_FIFO_RESET) 8. Align LVDS channel data to establish word boundaries (use RX_CHANNEL_DATA_ALIGN) 9. Start normal operation 如果锁相环失锁,重复上面流程;如果检测到接收数据出错,重复第5步开始的复位流程。 (三)LVDS的差分管脚和单端信号需要相隔一定数量的PAD,这个在设计原理图分配管脚的时候一定要注意, 另外有些器件系列的行IO会有OCT,列IO就没有。 <后记>--上海骏龙的毛老师: 一. 字节对齐,我来介绍一个在客户那的成功案例. 通过检测训练序列,调整RX_CHANNEL_DATA_ALIGN端口.作了一个简单参考设计给客户,多通道对齐也可以实现. 二.一块板上两片FPGA,一片LVDS发,一片LVDS收,有时会有上电后,第二片FPGALVDS不正常,复位也不能正常工作.只有重新加载第二片FPGALVDS才能正常工作. 解决方法:控制两片FPGA的加载时序,第一片FPGA先于第二片加载成功。