欢迎来到天天文库
浏览记录
ID:38711200
大小:296.50 KB
页数:8页
时间:2019-06-18
《基于FPGA的LVDS接口应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于FPGA的LVDS接口应用时间:2012-02-2409:20:06来源:电子设计工程作者:陈莹,高双成西安电子科技大学摘要介绍了LVDS技术的原理,对LVDS接口在高速数据传输系统中的应用做了简要的分析,着重介绍了基于FPGA的LVDS_TX模块的应用,并通过其在DAC系统中的应用实验进一步说明了LVDS接口的优点。关键词LVDS;FPGA;高速数据传输;PLL;AD9735介绍了基于FPGA的LVDS模块的应用,实现了将数据通过FPGA(AheraStratixIIEP2S90)的LVDS发送模块
2、的传输,以640Mbit·s-1数据率送至DAC电路。1LVDS技术简介LVDS,即Low-VoltageDifferentialSignaling低压差分信号,是由美国国家半导体公司于1994年提出的一种信号传输模式,在满足高数据传输率的同时降低了功耗,运用LVDS技术可使数据速率从几百Mbit·s-1到2Gbit·s-1。LVDS传输方式的原理是用一对线传输一个信号,一条传输正信号,另一条传输相反电平并且在接收端相减,可以将走线上的共模噪声消除。因为两根信号的极性相反,所以对外辐射的电磁场可以相互抵消
3、,耦合越紧密,互相抵消的磁力线越多,泄露到外界的电磁能量就越少。LVDS接口也称RS-644总线接口,运用LVDS传输技术,采用极低的电压摆幅高速差动传输数据,具有低功耗、低误码率、低串扰和低辐射等特点,可使用铜质PCB连线传输或平衡电缆。LVDS在对信号完整性、低抖动及共模特性要求较高的系统中的应用越来越广泛。目前LVDS技术规范有两个标准:一个是TIA/EIA的ANSI/TIA/EIA-644标准;另一个是IEEE1596.3标准。2基于FPGA的LVDS接口发送模块采用StratixII系列的EP2
4、S90F1020C3FPGA,其支持高速LVDS接口,在QuartusII软件中可以调用其宏功能模块Altlvds_tx,即LVDS接口发送模块。此模块将以并行方式输入的TTL电平数据信号转换成串行的LVDS信号输出。2.1Altlvds_tx发送模式将LVDS模块设置为发送模式,即将左端输入的并行tx_in信号转化为串行的tx_out信号输出,并且设置通道数和串行化因子,在这里,通道数即为输出数据的位数,而串行化因子表示将输入数据分几次输出。例如输入为96位的并行数据,设置为24channels×4,表
5、示输出串行的24位数据,分4次输出,若输入数据时钟为160MHz,则输出的数据率为4倍,即640Mbit·s-1,并且可以输出640MHz的数据时钟。在综合设置页面中,没有选中“ImplementSerializer/DeserializerCircuitryInLogicCells”,就表示用到了LVDSSerdes硬核。图2所示数据率为640Mbit·s-1,输出时钟为640MHz。需要注意的是,Altlvds发送模块在对数据进行并转串输出时,会对输入数据的顺序进行重新排列,例如:输入8位并行数据,设
6、置2channels×4,则输入数据分为2组即2个通道,每组4bit,如图3所示。从图3可以看出,8位输人数据分为2个通道,每个通道4bit,输出数据时,第一个输出的2bit数为第一个通道的最高位和第二个通道的最高位分别作输出的高位和低位,第二个输出的数为第一个通道的次高位和第二个通道的次高位组合,以此类推。当设置的串行化因子为2时,Altivds_tx模块会自动变成DDR工作模式。2.2AltlvdS_tx时钟模式Altlvds模块内部有一个PLL,可以得到所需要的输出数据时钟,在图1中可以看到选项Us
7、eExternalPLL,当选择此项时,表示使用外部时钟,则需要在FPGA中重新做一个PLL,并将输出时钟和LVDS模块进行相应的连接。当使用内部PLL时,如图2所示,Whatisthephasealignmentof‘tx_in’withrespecttotherisingedgeof‘tx_inclock’?(indegrees)即可以调节tx_in输入数据和tx_inclock输入时钟的相位偏移,而Register‘tx_in’inputportusing选项表示输入数据是用输入时钟tx_inclo
8、ck控制还是用核时钟tx_coreclock控制,默认的是核时钟,而当使用tx_inclock时钟缓存输入数据时,可能会提示建立时间的问题,而对高速时钟来说,使用核时钟缓存时,会用最优的相位位置来缓存数据。如图4所示,发送器设置界面中Whatisthephasealignmentof‘tx_outclock’withrespectto‘tx_out’?选项可以设置输出数据和输出时钟的相位关系。当选择‘tx_coreclock’
此文档下载收益归作者所有