最近在调试一个LVDS的屏显功能,涉及到了一些LVDS的东东,简单地整理如下,后续会再补充。
(1)对于altera FPGA(CYCLONE III)
1、对于作为LVDS传输的BANK必须接2.5V的VCCIO;
2、左右BANK(即1/2/5/6 BANK)的LVDS发送差分对信号无需外接匹配电阻,而上下BANK(即3/4/7/8 BANK)则需要,如果硬件工程师忘了,还可以在FPGA的IO引脚分配时里加端接电阻设置;
3、分配管脚时,左右BANK的LVDS差分信号脚在IO分配时选择的IO电平标准是LVDS,而上下BANK的LVDS差分信号脚在IO分配时选择的IO电平标准是LVDS_E_3R;
4、分配管脚时,只要指定LVDS信号的p端(+),则n端(-)会自动分配。在verilog代码中只要一个信号接口即可,无需在代码中定义一个差分对接口;
5、速度高时需用IP核(200MHz或400Mbps以上,串并转换器),在altera FPGA内使用的LVDS收发IP核是altlvds_rx和altlvds_tx,相应的IP使用说明在megawizard里有。

本文介绍了在 Altera 和 Xilinx FPGA 中使用LVDS差分信号时的注意事项,包括电压要求、匹配电阻、IO电平标准、差分信号分配以及数据对齐的方法。在 Altera 中,LVDS速度可达800Mbps,需要专用的LVDS IP核进行串并转换,而Xilinx则需要在代码中明确差分对信号并使用原语进行转换。
最低0.47元/天 解锁文章
2万+







LVDS是一种高速串行接口。速度一般都是几百MHZ以上。Altera低端的Cyclone IVE/Cyclone III的LVDS速度都可以达到800Mbps以上,高端的更能上到1.6Gbps。因此,IO的性能是远远比FPGA内部的LE性能要好的。这么高的速率情况下,你如果是用内部的LE来移位再输出到LVDS IO上,顶多能上到400Mbps(如果上DDIO的话)就已经不错了,再大的话是移不出来的。
这种情况下,你只有调用专用的串转并/并转串模块,也就是LVDS RX/TX模块。这个模块是专用的解串电路,跟Tranceiver有点像,但是功能没有Tranceiver多,