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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2002|回复: 2

[求助] 求助:ddr3 ml605的一些问题

[复制链接]
发表于 2012-8-8 00:05:44 | 显示全部楼层 |阅读模式

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

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

x
1.

app_addr = row + bank + col

app_addr = bank + row + col

两者的区别是什么?



2.

对于顺序的读写,比如ML605板上的DDR3是512MB的,那么如果全部写入或者读出,无论在back-to-back 还是 non back-to-back模式下,

app_addr是否就单调的增加就行,而不用单独处理 col_addr row_addr bank_addr,如果是这样,那么就不用了解DDR3内部的组织了。

而对于单独地读写一个burst length,我的理解也是不用单独处理col_addr等的。

请问是否是这样?



3.

我的设计这样的:

3.1 put data -> ddr3: (put_data_fifo + mask_fifo) -> ddr3, 两个fifo的写入速率小于读出速率,

    这样的话,对ddr3的写入就会不连续,所以我采用了app_rdy和app_wdf_rdy同时处理的模式,也就是说:在app_rdy和app_wdf_rdy同时为高的情况下

    如果fifo有数据的话,app_en会隔一个周期使能(写入app_cmd和app_addr);

    app_en使能的同时app_wdf_wren,写入app_wdf_data为burst的前四个qw;app_en不使能时,写入app_wdf_data为burst的后四个qw.

3.2 ddr3 -> get data: ddr3 -> (get_data_fifo),同理,fifo的读出速率小于写入速率。

    当fifo快满时,就要停止从ddr3读取数据,也就是停止app_en及地址的增加,这样的话就无法实现back-to-back了,

    所以我的ddr3读取逻辑还是app_en使能隔一个周期。

请问这样的设计是否会有问题?

而事实呢,我确实碰到问题,比如512MB全部写入然后全部读出时,我的逻辑状态机会死机:写和读都会死机。

读死机是app_rdy始终为低;

写死机是状态机跳到未知状态去了,可我没有定义其他状态啊。

呼唤 catcat_2 和 lucien_1986 出来答疑,万分感谢!
发表于 2012-8-10 11:32:04 | 显示全部楼层
困扰已久的问题,同求
发表于 2012-11-29 14:07:46 | 显示全部楼层
同问,有经验的人来说下吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-22 09:53 , Processed in 0.014914 second(s), 7 queries , Gzip On, Redis On.

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