fpga_lvds小结.pdf
文本预览下载声明
注:由于个人能力有限,文档中可能存在不当之处,望大家注
意,并及时指正(只做参考文档)。
Fpga_lvds 小结
FPGA lvds
一. 中 信号使用时需要注意的部分事项
1.CI和CII,没有Altera所谓的“truelvdsbuffer”。无论TX还是RX方向,都需要接匹
配的电阻网络。TX方向,3个电阻;RX方向,一个 100欧电阻;
2.CIII,在芯片的rightban ,leftban 上,也就是1,2,5,6ban ,设计了“dedicatedoutput
buffer”。这样,输出就不需要做任何电阻网络匹配的工作了。
至于上下两边,3,4,7,8ban 上,没有“dedicatedoutputbuffer”,如果要做输出使用,
仍然需要像CI和CII上面一样,配上3个电阻的网络。Altera将这种方式名为“emulatedlvds
output...”
对于LVDS输入,无论哪个ban ,都需要100欧姆电阻。
以上两点时pcb 需要注意的事项;
3.CIII分配管脚时,左右ban 的LVDS差分信号在IO分配时选择IO标准为LVDS;上
下ban 的LVDS差分信号在IO分配时选择IO标准为LVDS_E_3R,LVDS_E_3R是Atlera
对于带3个电阻的LVDS输出的一种叫法。对于时序要求不是太高的lvds信号可以直接与
fpga 中相应的输入输出lvds管脚相连接即可;对于互为差分信号的一对信号来说,使用时,
我们只需要处理其中一条信号即可。
不同型号的器件lvds使用也不是完全相同的,fpga 中lvds信号使用时需要参考具体的
器件手册。
二.FPGA 中针对LVDS信号处理的IP核简介
对于高速的lvds信号,若不使用专用的IP核的话,可能无法满足数据,时钟之间的时
序要求。对于高速的lvds我们可以直接调用专用的ip完成数据之间的传输。
Manager管理器提供了针对LVDS信号处理的IP核,包括LVDS发送核(altlvds_tx)
与LVDS接收核(altlvds_rx)。
LVDS发送核(altlvds_tx):将并行信号串行化为LVDS信号后发送。
LVDS接收核 (altlvds_rx) :接收LVDS 串行信号并将该信号并行化,即解串器。
2.1 Lvds_tx 核参数说明:
在综合设置页面中,没有选中 “Implement Serializer/Deserializer Circuitry In
Logic Cells”,就表示用到了LVDS Serdes硬核。选中说明用逻辑单元实现 lvds serdes
的功能;传输开始与时钟锁存后的时钟沿;适应于低速传输;字节对齐与专用Serdes硬核
不同。(对应有些器件支持内部LE实现或者采用内部专用电路实现,对应Cyclone系列,
能采用LE实现,内部无专用电路)
通道数为输出通道的数量;对应设置最大值需根据所选的Device支持LVDS个数决定。
反序列因子为输出的单通道对应的并行的比特数(或通道数);假设输出通道为2,反
序列因子为4,则并行输入通道数为8;输入与输出数据的关系如下图所示(通道1输出数
据的顺序依次为bit3,bit2,bit1,bit0;通道2输出数据的顺序为bit7,bit6,bit5,bit4;):
使用外部时钟;通道数为2时,用ddr的方式实现serdes的功能;通道数不小于4时
可以打开,若打开,自己生成pll模块做为serdes的时钟源,设置合适的频率,正确的连
接方式;关闭,自动生成一个内部带有pll块的altlvds_tx块;在图中可以看到选项Use
External PLL,当选择此项时,表示使用外部时钟,则需要在FPGA 中重新做一个PLL,并
将输出时钟和LVDS模块进行相应的连接。
Use tx_data_reset input port : 用逻辑单元实现lvds serdes的功能时,此选项
可以选择。若选择,ip核增加一输入端口,此端口可以异步复位altlvds_tx ip核的所有
逻辑(除pll外);
当使用内部PLL时,如图所示:
What is the output data rate? 输出数据速率 (tx_out的速率);
Specify input clock rate by 输入时钟速率,由输出数据速率
显示全部