原创 用FPGA的差分输入实现AD转换

2011-4-26 11:18 3373 16 20 分类: 消费电子

 

特权同学也是第一次听到这么新奇的想法,今天的lattice研讨会总算不是白去的,多少是有一点收获。尤其是听说能用FPGA的差分对实现AD转换,这不仅只是停留在想法上,lattice已经把这个方案做出来了,而且你还可以在他们的官网搜到这个方案的细节。

 

 

看看文档,发现这个虽然新颖的想法其实原理还是很简单的,不仅利用了LVDS差分输入的比较器,而且还使用了地球人都知道的PWM输出用于比较器另一端的模拟比较电压。其中一种最简单的方案如图1所示,差分对的正端输入待转换模拟信号,负端则输入一个经过RC低通滤波的PWM信号,这个滤波后的PWM信号其实相当于一个参考模拟电压值。在内部逻辑设计中,可以可控的产生不同的PWM输出负比较端的参考电压,同时采样整个差分对的当前值。具体的思路恐怕不用特权同学多说,每次取中间值对比结果再反复判断得到结果。这个电路精度虽然可以做得很高,但速度会比较慢,而且最大的问题是无法检测到VCCIO电压的最低值和最高值,这要取决于FPGA的差分对电路允许的有效判断闸值。总的来说,这个电路虽然简单,但是采样电压范围比较受限。

20110426_tequan_f4.jpg

图1

 

 

另一种复杂一些的改进方案如图2所示。这种方案说白了不但是对输入电压进行分压,而且可以利用PWM输出的电压动态调整比较器负端输入的采样电压值,加之比较器正端是一个非0参考电压,从而有效的避免了前述方案中采不到两个临界点电压的尴尬,这一招也很妙。不过这个方案实现起来还是需要一些算法,并且多费一些逻辑的。

20110426_tequan_f5.jpg

图2

 

 

此外,今天头一次比较近距离的接触lattice的CPLD器件MachOS2,感觉上这个器件不仅适合做CPU的IO扩展,也很适合做一些常用外设的扩展,毕竟其内部已经集成了IIC、SPI之类的硬核,还有一些片内的RAM和FLASH也有不小的用处。

 

Lattice的参考链接:

http://www.latticesemi.com.cn/products/intellectualproperty/referencedesigns/simplesigmadeltaadc.cfm

文章评论4条评论)

登录后参与讨论

用户1181870 2013-7-5 15:25

good,tks

用户1610239 2013-7-5 10:20

很好,谢谢分享

用户1408843 2011-4-28 13:15

第一次看到FPGA的这种思路,不错的。

用户1114337 2011-4-28 10:53

可多利用

用户1558351 2011-4-28 10:25

好好分享了

用户1261931 2011-4-28 08:56

Thanks!
相关推荐阅读
用户1587532 2012-12-04 14:56
被忽略的硬件常识
          在特权同学的《都是IO弱上拉惹的祸》一文中,提及了Altera的CPLD在初始化时管脚通常会处于弱上拉状态。在实际示波器采样来看,就表现在上电初 期IO脚会有一个短暂(当时是持...
用户1587532 2012-12-04 14:56
都是IO弱上拉惹的祸
         开发的一款液晶驱动器,接收MCU过来的指令和数据进行图像显示。使用了一片可编程(带使能和PWM调节控制)的背光芯片。在CPLD设计中,上电复位状态将背光使能拉低(关闭),直到MC...
用户1587532 2011-12-29 09:39
四通道波形动态演示效果
 ">http:// http://v.youku.com/v_show/id_XMzM3MDY2NjYw.html   这效果,Cortex-M3可以吗?     ...
用户1587532 2011-12-21 12:54
高速绘图显示,还是FPGA给力
  示波器的效果,曾经以为难于上青天,殊不知咱用FPGA一样能够轻松效仿。目前只是单通道的显示效果,随后送上4通道独立或叠加的波形效果。          感兴趣的朋友不妨去看看他的详细参数:...
用户1587532 2011-10-12 10:23
Keil存储空间自定义分配
Keil存储空间自定义分配          看来Capital-Micro的软件支持包做得还不够到位啊,在51编程环境KeilC中使用Astro II器件光有个Capital Micro D...
用户1587532 2011-09-22 16:38
源同步信号跨时钟域采集的两种方法
源同步信号跨时钟域采集的两种方法            对于数据采集接收的一方而言,所谓源同步信号,即传输待接收的数据和时钟信号均由发送方产生。FPGA应用中,常常需要产生一些源同步接口信...
我要评论
4
16
关闭 站长推荐上一条 /2 下一条