我是靠谱客的博主 想人陪店员,最近开发中收集的这篇文章主要介绍三款LVDS ADC的使用总结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

两年时间使用了三款ADC:AD9653,AD9266,AD3442,在此记录下坑及使用经验。

 

参考文档

xapp524-serial-lvds-adc-interface.pdf

 

所需用到的原语:IDDR、ISERDESE2等

 

1.AD9653:ADI公司的采样率高达125M,16bit ADC

时序图1:

 

 

 时序图2:

 

 

 根据时序图,可使用ISERDESE2进行解串。

对于xilinx7系列的FPGA,DDR模式的ISERDESE2支持4、6、8bit,级联支持10、14bit。对于SDR模式的ISERDESE2支持2,3,4,5,6,7,8bit。

则对于16bit的ADC,可使用SDR或DDR模式,且ADC需配置为双线,即为时序图1的时序。

 

2.AD9266:16bit ADI公司的高达80M采样的ADC

时序图1:

 

 

 可以看到数据是并行的8个通道,DDR。则可以使用IDDR进行接收。

 

3.AD3442:TI公司14bit高达50M采样的ADC。

时序图1:

 

 

 

时序图2:

 

 

 这里简单起见,使用时序图1 进行ISERDESE2解串处理,14bit的数据可用级联DDR模式。

参考文档中的图,下述图主要用于调整经过IBUFIO或BUFR的时钟边沿跟经过IBUFDS的时钟边沿对齐。使得LVDS数据和时钟均只经过IBUFDS,保证相位关系。

 

 然后用ISERDESE2接收数据,根据实际情况是否使用IDELAY模块对数据进行延时,使得数据尽量对齐中心边沿,当然如果PCB保证了数据和时钟的等长处理则更佳,只需考虑高低温情况的偏斜。

需考虑bit调整,其次需要字节对齐,因为解串出来的数据第一个bit是随机的,不一定就是所需的数据,需要进行字节训练,保证解串出的值的正确性。

上述两个步骤操作完成后,就可以放心采集数据了。

 

 

Thinking:高速率情况应该也可使用双线级联DDR14bit模式,对数据进行拆分。

 

使用IDDR和ISERDESE2主要关注时钟与数据的关系,要开发者保证时序关系确保接收数据的准确性。

 

以上。

 

最后

以上就是想人陪店员为你收集整理的三款LVDS ADC的使用总结的全部内容,希望文章能够帮你解决三款LVDS ADC的使用总结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部