半加器:一块被低估的“功耗显微镜”
你有没有试过,在凌晨三点盯着波形仿真器里一条微微抖动的电流曲线发呆?那不是噪声,是电荷在纳米级沟道里奔涌、在飞发法拉的寄生电容上堆积又泄放——而这一切,早在半个世纪前,就藏在一个只有两个输入、两个输出的电路里:半加器。
它太简单了,简单到教科书常把它当作逻辑门练习题;它又太关键了,关键到现代AI芯片中每秒百亿次的加法操作,其底层能耗模型仍可回溯至它的翻转节奏。这不是理论推演,而是工程现实:当你在SoC顶层做功耗预算时,真正咬住你PPA(Performance-Power-Area)指标的,往往不是那些炫目的定制加速器,而是成千上万个默默翻转的半加器节点。
它为什么值得你花三分钟重新认识?
先抛开所有公式。想象一个CMOS反相器:输入为0,输出为1,PMOS导通,电源给负载电容充电;输入变1,输出变0,NMOS导通,电容对地放电——每次翻转,电源都实实在在地“吐出”½CLVDD²焦耳的能量,变成热,散掉。
动态功耗的本质,就是这么朴素:电容充放电 × 翻转次数 × 频率。
而半加器,恰好把这套机制拆解得无比干净:
- 它没有时序逻辑,没有反馈,没有保持态——每一次输出变化,100%来自输入驱动,毫无干扰;
- 它只有两个输出节点(S 和 C),路径清晰可溯,寄生电容可分项估算;
- 它的真值表穷尽4种组合,开关活动率 α 不靠猜,能手算、能仿真、能实测验证。
换句话说:如果你想亲手摸清CMOS动态功耗的脉搏,半加器就是最短那根听诊器。
真值表不是摆设,它是功耗的“翻转日志”
我们再看一遍这个表格,但这次不读逻辑,读翻转行为: