[FPGA] FPGA控制AD采样数据DDR3存储后出现毛刺的问题

[复制链接]
4741|8
 楼主| chenqizhou8 发表于 2013-10-10 23:06 | 显示全部楼层 |阅读模式
这个项目用了三路AD采样,依次存入DDR3之后,读取出来的其中AD1路波形有毛刺。VHDL程序没有改动,当去掉chipscope后重新综合,AD1路的毛刺消失,但是AD2路产生了新的毛刺。
分析了一下毛刺的原因,就是读出来的数比如说16位的,其中某一位不同步,如果是高位,一下子就一个很大的毛刺。
FPGA用的是XIlinx公司的Virtex-6,AD使用ADS5463,控制DDR3是用Xilinx的IP核MIG。大神们有没有碰到过类似情况?求助!
 楼主| chenqizhou8 发表于 2013-10-11 08:36 | 显示全部楼层
求猴哥现身哇
chenkui456 发表于 2013-10-11 09:48 | 显示全部楼层
你 确定问题是出在存储上而不是采集上?
Backkom80 发表于 2013-10-11 13:27 | 显示全部楼层
时序是否有约束?
haitaox 发表于 2013-10-11 15:22 | 显示全部楼层
从AD到DA,数据通路经过的环节很多。我建议
1.先屏蔽掉DDR3 SDRAM,将AD的数据直接输出,看看是否有毛刺
如果没有毛刺,那就要看看ddr3的部分了
2.v6只提供了DDR3的控制器硬核,用户需要自己写算法的。请将你的ddr3模块在仿真平台上好好验证一遍
3.v6的ddr3 ip提供了example design,里面有比较完整的测试工程,你可以用他的测试工程跑一遍,确定ddr3是好用的
验证好ddr3之后,将前后模块整合起来
4.时序约束一定要做好,否则加上chipscope之后很容易出现错误。原因是chipscope会使用时钟资源布线,如果这条时钟没有约束的话,就会造成其他逻辑出现错误
 楼主| chenqizhou8 发表于 2013-10-11 22:48 | 显示全部楼层
haitaox 发表于 2013-10-11 15:22
从AD到DA,数据通路经过的环节很多。我建议
1.先屏蔽掉DDR3 SDRAM,将AD的数据直接输出,看看是否有毛刺
如 ...

DDR3 和AD都 单独测试过木有问题。今天毛刺问题解决了,使用的是planahead进行优化 。多谢海涛x帮助!
 楼主| chenqizhou8 发表于 2013-10-11 22:50 | 显示全部楼层
Backkom80 发表于 2013-10-11 13:27
时序是否有约束?

之前进行了是时序约束,今天用planahead进行区域约束,把问题解决了。Thank u all the same!
haitaox 发表于 2013-10-12 08:49 | 显示全部楼层
chenqizhou8 发表于 2013-10-11 22:48
DDR3 和AD都 单独测试过木有问题。今天毛刺问题解决了,使用的是planahead进行优化 。多谢海涛x帮助! ...

恭喜你,planahead的确挺好用的,请问你用的是区域约束解决的问题?
lwq030736 发表于 2013-10-12 16:09 | 显示全部楼层
估计是你的时序约束不正确导致的
可能没有时序警告,但是你的约束量不对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

7

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部