数字后端低功耗 - 多种低功耗技术及其在IC后端布局中的应用

科技   科技互联网   2024-10-18 18:00   上海  

《数字后端低功耗 - 

多种低功耗技术及其在IC后端布局中的应用》

点赞加关注可以提高更新速度哟

推文主要内容:

  • LPP: Low Power Placement

  • GLPO: Gate-level power opt

   低功耗技术:

  • Buffer Insertion

  • Cell Sizing

  • Pin Swapping

  • Phase Assignment

  • Technology Mapping

  • Factoring


有哪些低功耗策略可以应用到芯片物理布局阶段从而降低芯片的功耗呢?且随我来~~~

 

执行静态功耗优化的一些设置:
1. 对于MCMM的设计而言,我们也需要在创建scenario的时候指定哪些scenario可以被用来进行静态功耗的优化,一般选择那些静态功耗非常大的scenario,所用命令为:
set_scenario_options -leakage_power true
2. 指定多阈值电压约束,命令为:
set_multi_vth_constraint
 
执行动态功耗优化的流程:
执行LPP降低动态功耗的流程如下:
1. 对于MCMM的设计而言,我们首先需要在创建scenario的时候指定哪些scenario可以被用来进行动态功耗的优化,所用命令为:
set_scenario_options -dynamic_power true
2. 在布局之前,读入网表动态仿真得到的saif文件,它记录了Cell和Net的Swithing Activity。所用命令为:read_saif。之后使能ICC中的LPP功能,这样ICC在布局阶段会自动挪动一些Cell,缩短高翻转的Net长度,降低这些Net上的电容,从而降低与之相连的Cell的动态功耗。如果没有saif文件的话,需要在布局之前在设计的输入端口设置Toggle Rate并让其往后传递,如果知道某些中间节点的Toggle Rate也可以设置,这样功耗分析会更加精确。
该选项默认是关闭的,需要在布局之前开启。


旧版的ICC中是通过下面的方式开启的:
set_power_options -low_power_placement true
Flow如下:


注意:
在新版的ICC中,set_power_options命令已经被废除;如果是新版的软件可以用下面的命令:
set_optimize_pre_cts_power_options -low_power_placement true


执行GLPO降低动态功耗的流程如下: 
在布局的时候我们也可以通过门级功耗优化(Gate-level power optimization, GLPO)来优化逻辑从而降低功耗。


门级功耗优化的技术:
1. Buffer Insertion:
插入Buffer以降低负载电容,并缩短输入Transition时间,从而降低动态功耗。


2. Cell Sizing:
降低High Switching Activity网络上的电容,缩短Transition时间以降低Inernal Power。
 
3. 交换引脚(Pin Swapping):
将高翻转的Net连接到Cell的低电容引脚上。
4. 相位分配(Phase Assignment):
进行相位翻转来移除高翻转的反相器


5. 工艺映射(Technology Mapping):
隐藏Cell内的高翻转网络
比如4输入的AND门,我们可以用AND4+INV的方案实现,也能通过NAND2+NOR2的方案实现,两种方案在Area和Delay、Energy方面的对比如下:
PPA的对比:
面积:方案(a)结构更加紧凑,因此面积更小;
速度:两种方案都是双级结构,方案(a)比(b)速度更快,或者至少一样快;
能量:方案(a)内部高翻转网络被隐藏,因此消耗的能量更少,且效果非常明显
  
6. 代数变换分解(Algebraic Transformations Factoring):
修改网络结构,降低电容,但可能会增加活动性。


注意:
可以在place_opt期间同时执行GLPO,LPP和泄漏功耗优化,也可以在place_opt之后,在psynopt期间单独执行GLPO,可以获得类似的结果,并可能会降低整体运行时间。旧版ICC整体Flow如下:


在新版ICC里面,set_power_options命令被废除,同样通过set_scenario_options -dynamic_power true选取进行动态功耗优化的scenario,之后用place_opt -power来进行GLPO。




星球简介


目前星球中一共分享了20本+系统性的、整理成册的笔记,高达56万字+,2024年星球将分享更多私人笔记,逐步完善整个IC设计生态。
以后知识星球也会陆续会开放:
《Timing/DRV修复的专题笔记》 《ICC2 flow教程》 《Makefile在IC设计中的应用》和 《RedHawk教程笔记》 等等。
目前已上传的笔记有:
  • 低功耗设计技术总结 - 3万字,129页
  • IR drop的分析与修复总结 - 4.3千字,20页
  • 数字后端理论及实践-ICC干货笔记 - 11万字,423页
  • 数字后端理论及实践-Innouvs教程(第4版)- 5.7万字,316页
  • ICC2教程-星球精编版 - 2万字,125页
  • 数字后端理论及实践-Innouvs教程(第5版)- 11.8万字,635页
  • 面试笔试题整理 面试笔试经验分享(第1版)- 1.6万字,48页
  • 面试笔试题整理 面试笔试经验分享(第2版)- 2.3万字,87页
  • ICC2 ICC与Innovus的命令对照(第1版)
  • Tcl与DesignCompiler教程(第1版)- 6.1万字,183页
  • DRC规则讲解、DRC的检查与修复(第1版)- 7.3千字,26页
  • Congestion的分析与修复专题(第1版)- 1.2万字,41页 
  • Perl-Tk教程(第1版)- 1.6万字 73页
  • 星球精华推文分类整理合集(第1版)- 1.8万字,75页
  • 星球精华推文分类整理合集(第2版)- 4.4万字,160页
  • 面试笔试题整理 面试笔试经验分享(第3版)- 2.7万字,96页
  • 星球精华推文分类整理合集(第3版)- 6.6万字,240页
  • 时序分析与sdc专题笔记(第1版) - 3.1万字,115页
  • 星球精华推文分类整理合集(第4版)- 8.4万字,296页
  • 面试笔试题整理 面试笔试经验分享(第4版)- 3.2万字,103页
  • 更多教程、笔记持续更新中。。。 


集成电路设计及EDA教程
知识 前端 后端 DFT 低功耗 验证 EDA 1rtl检查:LEDA 2仿真:VCS 3逻辑综合:DC 4形式验证:Formality 5布局布线:ICC 6STA:PT 7功耗分析:PTPX 8DRC LVS:Calibre
 最新文章