低功耗设计
– 最小化基本操作数量,如存储器访问、ALU操作等 – 不同类型操作的功耗是不同的,如乘法的功耗比加法多
合理的算法实现软硬件划分
– 复杂繁琐的计算由硬件完成 – 控制功能由软件完成 – 最小处理器负载和总线传输
优化算法的硬件实现
– 尽量使用简单的算法实现
优化的编码方案
– 微处理器的地址线使用Gray码编码
2006-4-20
第八章 低功耗设计
11
短路功耗
短路功耗
– Short-Circuit Power Dissipation – 开关过程中,电流从电源(VDD)流向地(GND)产生的功耗 – 短路功耗约占CMOS器件功耗的10%
PShortCircuit = VDD I ShortCircuit
2006-4-20
第八章 低功耗设计
24
低功耗门级设计
简化逻辑和映射电路
– 利用无关项简化逻辑和电路 – 选择
2006-4-20
第八章 低功耗设计
25
利用无关项简化逻辑
AB + C D + ABC + ACD
AB + C D + BC
利用无关项和卡诺图简化逻辑并减少门数
第八章 低功耗设计 29
减少假跳变
通过修改逻辑结构平衡 路径延迟 通过减小较快路径上的 门尺寸平衡路径延迟 通过在较快路径上插入 缓冲器平衡路径延迟 使用锁存器防止毛刺的 传播 使用自定时技术降低毛 刺传播深度
逻辑电路中的毛刺(Glitch)
2006-4-20
第八章 低功耗设计
30
使用锁存器防止毛刺传播
短路电流
– Short-Circuit Current – 当有较大的容性负载时,短路电流降低 – 当没有容性负载时,短路电流最大
2006-4-20
第八章 低功耗设计
12
动态功耗
动态功耗
– Dynamic Power Dissipation – – – – 动态功耗产生于逻辑门开关过程中 动态功耗是与频率相关的 动态功耗是CMOS器件功耗的主要来源 动态功耗约占CMOS电路总功耗的90%
2006-4-20
第八章 低功耗设计
8
CMOS反相器功耗参数
CMOS反相器功耗参数
PAverage = PStatic + PDynamic + PShortCircuit
2006-4-20 第八章 低功耗设计 9
CMOS反相器的负载电容充放电
CMOS反相器在两种状态下 (a)负载电容充电 (b)负载电容放电
– 程序和数据存储器访问相关的功耗 – 通过系统互连传输数据所需功耗 – 存储器单元内部的功耗
存储器功耗优化
– 减少对存储器的访问次数 – 划分为分别具有各自时钟的独立存 储器模块 – 较大存储器划分为较小存储器模块 存储器划分
2006-4-20 第八章 低功耗设计 40
低功耗算法级设计
低功耗算法设计
2006-4-20
第八章 低功耗设计
41
算法实现的软硬件划分
软硬件划分举例
2006-4-20
第八章 低功耗设计
42
算法的低功耗硬件实现
普通FIR滤波器的实现 其中与常系数的乘法可以用移位加操作实现
2006-4-20
第八章 低功耗设计
43
信号编码优化
十进制 二进制 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 跳变数 0 1 2 1 3 1 2 1 Gray码 000 001 011 010 110 111 101 100 跳变数 0 1 1 1 1 1 1 1
2006-4-20
第八章 低功耗设计
33
预计算结构举例
使用预计算结构的比较器(A>B) 当A和B的最高位不同时,n-1位比较器被禁用
第八章 低功耗设计
2006-4-20
34
低功耗结构级设计
并行结构 流水线结构 分布式处理 电源管理 存储器优化
2006-4-20
第八章 低功耗设计
35
并行结构
在相同吞吐率的情况下, 并行结构的时钟频率可以 减半,相应的可以降低电 源电压,从而降低大量功 耗,但是是以增加电路面 积为代价的
应用抽象层次 RTL、门级 RTL、门级 晶体管级 RTL、门级 RTL、门级 门级 低功耗设计工具
功能 功耗估计 功耗优化 功耗估计 功耗分析 功耗优化 功耗分析和估计
2006-4-20
第八章 低功耗设计
46
低功耗设计指南 (1)
最有效的功耗优化技术是较高层次的优化
– 算法级优化、结构级优化
使用低功耗工艺和库 通过降低动态功耗各影响因素来降低动态功耗
2006-4-20
第八章 低功耗设计
17
通过电路逻辑降低功耗
使用更多的静态逻辑电路,减少动态逻辑电路 通过逻辑优化,降低开关活动性 优化时钟和总线负载 使用更优的电路技术,降低器件数量 全定制设计可以改善功耗,但增加设计成本 在非关键路径上降低电源电压,适当调整晶体管大小 使用多阈值电压逻辑电路 优化时序电路编码
2006-4-20
第八章 低功耗设计
26
选择最优的电路实现形式
(a) Out = AB+AC+CD (b) Out = A(B+C)+CD (c) Out = AB+C(A+D) 假设信号A的活动性最高, (a)中A到Out经过了三个门 (b)中A到Out经过了两个门 (c)中A到Out经过了四个门 因此(b)是最优的电路方案
第八章 低功耗设计
37
分布式处理
低功耗分布式处理(Distributed Processing)
2006-4-20
第八章 低功耗设计
38
电源管理
ASIC/SoC中的时钟控制模块
多时钟域举例
2006-4-20 第八章 低功耗设计 39
存储器优化
存储器的功耗是芯片总功耗较大 的一个组成部分,约占40% 存储器功耗的类型
功耗估计技术
– 基于仿真的功耗估计 – 功耗估计和优化可以由EDA工具完成
2006-4-20
第八章 低功耗设计
45
低功耗设计工具
EDA工具 DesignPower Power Compiler PowerMill PowerTheater Analyst PowerTheater Designer PrimePower
2006-4-20
第八章 低功耗设计
20
系统集成降低功耗
使用频率较低的系统时钟
– 高频率时钟由片上PLL产生
高层次集成
– 把片外存储器和其他外设芯片集成到片内
2006-4-20
第八章 低功耗设计
21
低功耗设计流程
低功耗设计流程
2006-4-20 第八章 低功耗设计 22
各种优化层次的功耗改善
优化方法 算法级 结构级 RTL级 门级 晶体管级 功耗节省比例 ~75% ~50% ~15% ~5% ~3%
低功耗并行结构(Parallelism) (a) 参考结构 (b) 并行结构
2006-4-20
第八章 低功耗设计
36
流水线结构
低功耗乘法器的流水线结构(Pipelining) 由于各级流水线之间的电路减少, 可以在相同的延迟要求下降低电源电压, 同时,各级流水线之间的寄存器降低了毛刺传播深度
2006-4-20
5
低功耗的应用
电池提供电源的便携式系统
– 笔记本电脑、掌上型电脑、语言翻译器、音乐播放器等 – 微处理器功耗,I/O设备功耗,如硬盘、LCD等
移动通信产品
– 移动电话、无线通信、PDA、传呼机等
高性能工作站和计算机的处理器 其他应用
– WLAN、计算器、助听器等
2006-4-20
第八章 低功耗设计
2006-4-20
第八章 低功耗设计
10
静态功耗
静态功耗
– Static Power Dissipation – 静态功耗产生于逻辑门输出稳定状态 – 静态功耗与频率无关 – CMOS器件的静态功耗一般是非常低的
PStatic = VDD I Leakage
漏电流
– Leakage Current – 漏电流由亚阈值晶体管操作引起,并与器件工艺相关 – 大量的静态漏电流说明设计存在严重问题
6
功耗
功耗
2006-4-20
第八章 低功耗设计
7
功耗的定义
功耗
– Power Dissipation – 电源的电能转化为热能的量
P =V I
CMOS器件的功耗来源
– 静态功耗,Static Power Dissipation – 短路功耗,Short-Circuit Power Dissipation – 动态功耗,Dynamic Power Dissipation
2006-4-20
第八章 低功耗设计
18
通过结构优化降低功耗
使用电源管理技术,关闭不工作的模块 基于并行、流水线的低功耗结构 存储器架构划分,有选择的使能存储器块 降低全局总线的数量 最小化指令集,从而简化指令译码和执行逻辑
2006-4-20
第八章 低功耗设计
19
通过算法优化降低功耗
最小化运算数量,从而减少所需硬件资源 使用适当的数据编码方案,减少开关活动
第八章 低功耗设计
15
低功耗设计层次
低功耗设计技术依赖于多个设计层次
– – – – – 工艺、器件 电路、逻辑 结构级 算法级 系统级
高层次的优化对降低功耗效果显著 功耗优化方法需要认真考虑各层次的低功耗技术