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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4317|回复: 10

[求助] 关于DDR3漏数据的问题

[复制链接]
发表于 2014-12-24 10:11:40 | 显示全部楼层 |阅读模式

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

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

x
大家好,DDR3中有个app_rdy信号,它在空闲的时候会时不时拉低,当拉低的时候就无法写入或读出数据。那么,我在连续写入或者读出一段数据的时候,应该如何保证数据全部写入或读出呢?大家有遇到这个问题吗?求大神指点
发表于 2014-12-24 10:26:26 | 显示全部楼层
不会是他刷新信号把,如果你用的IP的话,我觉得IP里面应该会做个机制解决这种冲突
发表于 2014-12-24 10:28:38 | 显示全部楼层
不过还是看文档把,我没用过你的IP,也许没解决这种冲突你就需要外部自己加
发表于 2014-12-24 10:48:16 | 显示全部楼层
本帖最后由 aegeus 于 2014-12-24 10:50 编辑

MIG IP里也有指令、数据的调度,当数据超过缓存深度时,肯定要向用户接口给出中断提示,比如说app_rdy拉低。在ddr用户接口空闲时,由于ddr3颗粒会有刷新等机制,此时也是需要暂停用户接口访问的。

xilinx没法保证你说的“连续全部数据的写入或读出”,因为core里的数据缓存fifo的深度是有限的,core本身也需要产生刷新指令等,所以没法保证app_rdy一直为高。需要你的用户逻辑去做仲裁和调度,去适配MIG core的时序。
发表于 2014-12-24 10:54:59 | 显示全部楼层
一个好的控制器设计,是在明确你系统的传输带宽、延时等性能要求的前提下,自己设计好仲裁和调度控制,然后去适配ddr3控制器的用户接口时序。
 楼主| 发表于 2014-12-24 14:17:58 | 显示全部楼层
回复 2# wgej1987


   是IP刷新这个信号,所以不知道该怎么解决。实测连续读写确实会在app_rdy拉低的时候漏数据
 楼主| 发表于 2014-12-24 14:22:16 | 显示全部楼层
回复 5# aegeus

明白了。谢谢。
发表于 2014-12-24 14:33:21 | 显示全部楼层
4,5楼讲得很清楚了,这个IP处理这种冲突的方式是加了缓存,这个办法处理的能力有限,你连续读写IP处理不了,所以给个rdy信号通知你一下,让你控制下读写速度。根据这个信号你外部写个处理逻辑。
发表于 2014-12-24 22:14:27 | 显示全部楼层
自己加个RAM去做缓冲
发表于 2018-3-27 23:33:35 | 显示全部楼层
一般都会加fifo缓存
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-24 18:48 , Processed in 0.026434 second(s), 8 queries , Gzip On, Redis On.

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