• 正文
  • 相关推荐
申请入驻 产业图谱

Glitch Power的成因和解决方法

01/06 12:56
734
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

Glitch Power的成因

Glitch power 产生的根本原因是:组合逻辑电路里,各输入信号由于布线延迟、门级延迟不同,到达同一逻辑门的时刻不一致,导致输出在正式稳定前出现多次“无效翻转”。这些短暂、非功能性的 0→1→0(或 1→0→1)跳变,同样会对负载电容进行充放电,从而额外消耗能量,这就是 glitch power。

问题在 AI 加速器里尤为棘手,这类芯片追求“极限性能 + 极限能效”。神经网络处理器里充斥 MAC(乘累加)运算,传统硬件乘法器里大量异或门串联、流水线化,单周期内信号因路径延迟不同来回翻转多次才稳定,极易产生 glitch power。7 nm 左右开始,组合逻辑深度普遍加深,glitch power 突然占到动态功耗 25%–40%。

具体诱因可归纳为6点。

1. 信号传播延迟差异:同一信号经不同路径到达会合点,或不同信号变化不同步,造成瞬间“竞争-冒险”现象。

2. 组合逻辑深度大、扇入多  逻辑级数越深、输入端口越多,各分支延迟越难平衡,出现 glitch 的概率越高。

3. 时钟偏斜:同步系统中时钟到达各寄存器的时间差异,会间接使后续组合逻辑的输入变化错开,诱发毛刺。

4. 先进工艺节点 RC 延迟占比上升:晶体管缩小后,互连线电阻与负载电容成为延迟主导因素,微小延迟差异更易被放大,使 glitch 更频繁。

5. 异步输入或跨时钟域信号:未做同步处理的异步控制线随时可能“插拍”变化,引入不可预测的窄脉冲。这些无效翻转虽然宽度很窄,但数量庞大,在 16 nm 及以下工艺中可占动态功耗的 20 %–40 %,并伴随峰值电流引起 IR-Drop,影响性能与可靠性。

6. 串扰噪声:串扰噪声不是“逻辑功能上该不该跳”,而是“两根相邻线通过耦合电容 C_c 互相注入/抽取电荷”,让受害线(victim)的电压出现窄脉冲式抖动。只要这个抖动幅度 ≥ 下一级门的 V_IL/V_IH 阈值,就会被门识别为一次有效翻转,于是产生一次额外的充放电 → 计入 glitch power。

常见“高危”结构。1.多输入 XOR/加法器:奇偶树、CSA、CRC、MAC。2.高扇入 MUX/编码器:仲裁器、优先级逻辑。3.深组合逻辑链:>10 级无寄存器的路径。4。时钟门控/使能信号晚到:使能变化落后于数据变化。

毛刺瞬态功耗公式:Pglitch = αglitch · Cload · Vdd² · fclk。

其中 αglitch 为“毛刺翻转率”,比功能翻转率高出 1.3×–4.7×。GPA(Glitch Power Activity) 指标,可在无向量情况下,用概率传播算法在RTL级预测αglitch。

Glitch power的解决方法

一、定位

1. 跑门级仿真 + SDF,产生 VCD/SAIF

注意:必须反标 sdf,否则工具会把“理想跳变”当成毛刺,功耗虚高 。

2. 用 PT-PX / Voltus读入 VCD,打开 glitch 报表

set_power -analysis_mode time_based -vcd ../vcd/top.vcd

report_power -by_hierarchy -glitch_power  ;# 看各模块占比

report_power -instance -glitch_power [get_cells u_dsp/*] ;# 精准到子模块

二、修复

RTL/架构层 。1.把“组合云”切成 2-3 级流水线,直接截断毛刺传播路径。2.状态机采用 Gray/One-Hot 编码,减少相邻状态多位同时翻转。 3.总线/算子采用“使能寄存”风格:数据先稳定后再开使能,避免无效翻转。

综合与布局布线层。 1Logic-Balance(路径平衡):对“早到”的 fast path 插缓冲器/延迟门,让多路信号同时到达,消除竞争。2.Aggressor 降驱 + Victim 增驱  aggressor  net 驱动太强会把毛刺“打”到相邻线,适当 `size_down`;  victim net 驱动太弱则容易被“打”,适当 `size_up` 或插 buffer 。  3.NDR + Shielding: 给高频毛刺 net 设 2s1w/2s2w 等宽间距规则,必要时两侧走 VSS 屏蔽线。4.长线分段:对 >300 µm 的高翻转 net 自动插 1-2 个 buffer,打断耦合电容。5.时钟树低 skew :用 H-Tree / Multi-tap 结构把 clock skew 做到 <20 ps,减少寄存器采样窗口外翻转 。

Sign-off 阶段,最后一道闸。1.手动 ECO :PrimeTime-DMSA 报出的 glitch 点,若工具无法自动 fix,可手动去插buffer或size cell。2.过滤短脉冲:若确认 <100 ps 的毛刺在硅片层面不会真正翻转,可在 PT-PX等工具中 里继续收紧 “min_pulse_width”约束得到更真实功耗 。

三、验证

对比修复前后glitch power变化;检查 setup/hold时序变化,插 buffer 和 size cell 后时序不能恶化;  跑 VCD 后仿,确认功能无差。

星球介绍

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录