在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3886|回复: 6

[求助] DDR2读数据问题的

[复制链接]
发表于 2012-9-17 16:22:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
在DDR2测试时,在ChipScope中观察到DDR2读数据端的读数据使能rd_data_valid总会出现一些毛刺,导致输出数据出现异常,DDR2是由MIG生成,在代码中,rd_data_valid是组合逻辑产生的,但后来将其修改为时序电路,rd_data_valid任然存在一些毛刺,rd_data_valid出现非正常状态主要是因为MIG3.6生成的状态控制单元(Ctrl)中有几个信号出现非正常状况,导致程序中状态机出现异常,而有问题的信号诸如:自动更新信号auto_ref_r,conflict_detect等,还有个问题是实际程序中的状态转移与数据手册上的状态转移是存在差别的,具体原因,请高手们探讨一下???
发表于 2012-9-17 18:40:43 | 显示全部楼层
查一下以下两个问题
1. 模块的时序过了没有
2. Chipscope 使用的时钟和DDR2的工作时钟是不是同一个时钟?
 楼主| 发表于 2012-9-17 20:26:14 | 显示全部楼层
回复 2# jiemoyang
模块的时序涉及到ILA,ICON的有部分没有过,由于是自己添加的cdc文件,没有使用原来生成的核,自己新建的cdc文件并且添加
观测信号,但是涉及到ILA,icon总是有部分建立时间不满足,不知道该如何处理,另外chipscope采样时钟采用的是mig的时钟clk0.
发表于 2012-9-17 21:41:15 | 显示全部楼层
先降频使用看看,看看功能能不能正确完成,再考虑input, output delay约束之类的,另外输出到PIN的信号,最后一级寄存器约束在IO列上。
 楼主| 发表于 2012-9-17 22:11:31 | 显示全部楼层
回复 4# eaglelsb

谢谢!请问你说的降频是什么意思?我使用的mig核在生成的时候有个频率范围在150-266MHZ,但是ddr2是MT4HTF3264HY-667,这个内存的在CL=3,4,5的时候对应的数据率分别是667,553和400,请问这个地方我该如何选择mig核的频率?还请指导,谢谢!
发表于 2012-9-18 11:34:14 | 显示全部楼层
回复 5# gxiaob

这个533,667是内存条能支持的最大频率,并不表示一定非得要运行这么快速率,是可以降下来的。你在MIG CORE里设置时,可以把频率设小点,比如100M,同时把进来的时钟信号也降下频,这个时钟来源可以是直接从板外接的,也可以是DCM这边分频出来的,你看下里面的设计。


DDR本身是使用单独的时钟频率的,然后通过个FIFO与外面的接口相连接,比如AHB接口之类的,也就是与AHB直接相连接的读写时钟这个可以直接用AHB的时钟,而DDR CORE本身用另外个时钟,这两者是分开的,修改进来很方便。


我以前跑250M的DDR,总是出现某些位错误,直接改成100M就能读写正常了,先用来验证来功能逻辑,以后再来看时序表示和DDR读写吞率之类的指标。
 楼主| 发表于 2012-9-18 15:24:45 | 显示全部楼层
回复 6# eaglelsb

谢谢!我的mig核频率范围是150-266M,这里降频的话是不是只能选择150M,不能再低了?此时对应的DDR2的CL是不是应该设置为3?实际的时钟输入频率是设置为150还是可以更低?做时序约束的时候是不是得以实际输入时钟为准?还请指导!再次谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 21:55 , Processed in 0.022201 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表