微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > DDR2/3 中的刷新问题

DDR2/3 中的刷新问题

时间:10-02 整理:3721RD 点击:
在DDR2/3 SDRAM中,DDR3-1600刷新操作间隔7.8us,刷新是担心数据丢失,那么,如果我仅仅使用DDR内部空间的一部分,并且明确知道使用空间的地址边界,那么,我是否可以只对我使用的部分刷新,而无需考虑未使用部分呢?

好像是可以的。命令好像不一样。
具体查DDR 文档。
常用的是:auto-refresh。refresh地址是DDR自己累加的。
好像也可以指定refresh的地址,就是你说的运用。



   谢谢,看了DDR2的一份文档,没有找到用户控制具体刷新地址的"刷新",只有刷新与自我刷新自我刷新,是为了节能、降耗,此时系统其余部分可以断电!
但不论是哪一种刷新,维持存储芯片内部数据不丢失,都是依靠存储芯片采用内部的地址管理机制完成的!
也就是说,我之前提出的概念是不成立的!
谢谢!

DRAM REFRESH是根據chip內的row counter來對一條row address 做 refresh。用戶是無法控制 row counter,但是可以不對 DRAM 下 REF command,只要針對你所使用的 row 做一次 ACT & PRE,等同做了一次 refresh。因為你使用較少區域,這樣你可以不用每7.8us做一次。



   谢谢!的确,在用户使用的地址空间非常小的时候,这倒不失为一种方案!
但是,这种方案的弊端同样明显!以SAMSUNG DDR3为例,具体体现在:
1)  ACT to ACT command period  (tRC)  [unit: ns]  [only min] [no max]
    DDR3-800: 52.5  /  DDR3-1066: 50.625  /  DDR3-1333: 49.5  /   DDR3-1600: 48.75
2)  ACT to PRE command period  (tRAC)  [unit: ns] [only min] [max: 9*tREFI]
    DDR3-800: 37.5  /  DDR3-1066: 37.5     /  DDR3-1333: 36     /   DDR3-1600: 35
基于这两点,可以确定,通过ACT + PRE来变相地实现”地址可控的刷新“,会导致额外的不小的时间开销。


要考慮 REF後的 tRFC 時間: DDR3 約為 110ns,也大約等同 ACT+PRE的時間。但是如果只針對小區域做刷新,並不需要每7.8us做一次。看你使用的區域佔比,將比例x7.8us即可。因為可以自己控制刷新時間,可以試看看最長可以多久,當然這是指使用(ACT+PRE),別使用REF command。



   嗯,对,需要对周期数做一个考虑上的折衷!

学习了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top