ZHDZ012G December 2020 – June 2026 DRA829J , DRA829J-Q1 , DRA829V , DRA829V-Q1 , TDA4VM , TDA4VM-Q1
DDR:控制器在频率更改后推迟刷新超过允许的次数
当从较高的时钟频率动态切换到较低的时钟频率时,控制刷新命令推迟的滚动窗口计数器未正确加载,以适应较低的时钟频率。这将导致控制器推迟的刷新命令超过 DRAM 规范所允许的次数,从而违反 DRAM 的刷新要求。
权变措施 1:通过编程 DFS_ENABLE = 0 来禁用动态频率更改
权变措施 2:如果切换频率,则根据下面列出的伪代码对寄存器字段值进行编程。请注意,控制器要求在触发初始化之前对 AREF_*_THRESHOLD 值进行编程。在初始化后的任务模式中不能更改它们的值。因此,这些参数的值必须是计划使用的每次频率更改过渡所需的所有值中的最小值。
if (old_freq/new_freq >= 7){
if (PBR_EN==1) { // Per-bank refresh is enabled
AREF_HIGH_THRESHOLD = 19
AREF_NORM_THRESHOLD = 18
AREF_PBR_CONT_EN_THRESHOLD = 17
AREF_CMD_MAX_PER_TREF = 8
}
else { // Per-bank refresh is disabled
AREF_HIGH_THRESHOLD = 18
AREF_NORM_THRESHOLD = 17
// AREF_PBR_CONT_EN_THRESHOLD <=== don’t care, PBR not enabled
AREF_CMD_MAX_PER_TREF = 8
}
}
else {
AREF_HIGH_THRESHOLD = 21
AREF_NORM_THRESHOLD //<=== keep AREF_NORM_THRESHOLD < AREF_HIGH_THRESHOLD
AREF_CMD_MAX_PER_TREF = 8
if (PBR_EN==1) { // Per-bank refresh is enabled
//keep AREF_PBR_CONT_EN_THRESHOLD<AREF_NORM_THRESHOLD<AREF_HIGH_THRESHOLD
AREF_PBR_CONT_EN_THRESHOLD
}
}