
1) 【一句话结论】降低DRAM动态功耗的核心方法是门控时钟(通过控制时钟周期性开关减少无效充放电)与多电压域(为非工作区域分配低电压降低电容充放电功耗),在长鑫LPDDR5芯片中,存储单元通过数据线预充电电路的门控时钟控制,行缓冲电路通过休眠行电压域切换实现,两者结合有效降低动态功耗。
2) 【原理/概念讲解】动态功耗源于电容充放电,公式为 ( P_{dyn} = C V^2 f )(( C ) 为电容,( V ) 为电压,( f ) 为开关频率)。降低动态功耗需从减少充放电次数(门控时钟)或降低电压(多电压域)入手:
3) 【对比与适用场景】
| 方法 | 定义 | 特性 | 使用场景 | 注意点 |
|---|---|---|---|---|
| 门控时钟 | 控制时钟信号周期性开关 | 减少充放电次数,降低动态功耗 | 存储单元(数据线预充电)、行缓冲(行地址译码) | 可能引入信号延迟,需优化时序(如低偏移时钟、预补偿) |
| 多电压域 | 为不同区域分配不同电压 | 降低非工作区域电压,减少功耗 | 休眠行、未选中存储单元 | 需电压转换电路,增加复杂度,需确保电压切换时间小于时序要求 |
4) 【示例】
// 存储单元数据线预充电电路
while (1) {
if (need_precharge) {
enable_clock = 1; // 开启时钟,启动预充电
// 等待预充电完成(通过电压检测电路检测数据线电压是否达到Vdd)
if (precharge_done) {
enable_clock = 0; // 关闭时钟,停止预充电
// 数据传输
}
} else {
enable_clock = 0; // 关闭时钟,保持数据线状态
}
}
// 行缓冲电路(行地址译码器)
if (row_active) { // 活跃行
set_voltage = Vdd; // 使用标准电压,保证行缓冲正常工作
} else { // 休眠行
set_voltage = Vdd/2; // 使用低电压,降低休眠行功耗
}
5) 【面试口播版答案】
“降低DRAM动态功耗主要靠门控时钟和多电压域。动态功耗来自电容充放电(公式 ( P = C V^2 f )),所以方法一是门控时钟,控制时钟开关,减少无效充放电,比如存储单元数据线预充电电路用门控时钟,当不需要预充电时关闭时钟,避免电容持续充放电;二是多电压域,给休眠行用低电压,比如LPDDR5中休眠行电压是标准电压的一半(或更低),活跃行用标准电压。具体来说,存储单元中,晶体管开关控制数据线预充电的时钟,当预充电完成后检测电路确认电压达标,再关闭时钟;行缓冲电路中,行地址译码器根据行状态(活跃/休眠)切换电压域,活跃行用标准电压维持行缓冲功能,休眠行用低电压降低功耗。这两种方法结合,有效降低了动态功耗。”
6) 【追问清单】
7) 【常见坑/雷区】