Multi-voltage和power gating的实现
power domain:一个逻辑的集合体,包含power supply的一些信息。建立在FE。
voltage area:chip上的一块物理区域。可以看作power domain的物理实现。
Level shift,isolate cell,retention register的插入,越早越好,这样他们对timing和physical design的
影响,能更早的可见,CTS和DFT应该是对power已知的。

Power Intent描述设计中的power domain,level shifter,isoaltion cell和retention FF的插入,以及power switch的on/off。
指定lib cell来作为isolation cell进行综合。
retention register可以在综合的过程中,被自动的综合,只需要在cpf中定义retention style和一些attribute。
Level shifter,也可以在定义location和rule之后,直接在综合中自动插入到netlist中
Power rail的routing:
power rail的优化一般以减小voltage drop为目标,在power switch中,会存在较大的IR drop。
可以通过power network synthesis(PNS)来分析power的distribution。
PNS分析可以直接指定最大的voltage drop,routing layers等约束,来进行分析。
一个带sleep transistor的power network主要由三部分组成:
1)一个permanent power network;
2)一个virtual power network;
3)一个array sleep transistor;
在一个带有switch的power网络中,需要分析static和dynamic IR drop analysis。
static IR drop通常可以通过增加switch cell的个数和调整他们的位置来优化。
dynamic IR drop通常通过插入decoupling capacitor的方式来调整。
decoupling capacitor通常处理power ground和不同power rail之间的noise,capacitor的位置应该
尽可能的靠近daisy chain switch cell的起始。但是decoupling capacitor的插入会增大leakage。
在power gating中,decoupling capacitance越大,in rush电流越大,在permannet power net
上靠近switch cell的部分插入capacitor可以减小这种影响,数目需要和leakage/area做 trade-off
Lower power的validation,主要有三种方法:
1)Gate level logic simulation,
可以检查逻辑start up中的reset是clean的;
逻辑可以在不同的sleep mode之间来回切换;
在shutdown之后,逻辑可以正常工作;
在shutdown之后,可以正常的power up;
2)Equivalence checking,
Formal equivalence checking,保证gate level的netlist与original的RTL和CPF code是一致的;
3)Rule-based methods
检查gate level的netlist上的power structure是可行的,包括isolation cell和level shifter放置在
正确的domain,always on的cell被正确放置,以及cell的一些冗余等。
multi-voltage下的CTS:
在一个design中,clock network由于其超高高的toggle速率,power consume可能会达到一半。
当一个FF的clock path和data path的buffering不能够balanced across voltage area时,他们之间的skew处理会比较困难。

目前的时钟树综合算法,都是multi-voltage aware的,采用bottom-up的形式来构建时钟树。
每个voltage area的clock network被优化到最小的skew。
其中的LS表示level shifter,由于其引入的delay较大,所以在各个sys内部做平衡,顶层clean。

multi-voltage在routing工具中,同样是可aware的,
当从一个voltage area到另一个voltage area的signal要进行布线时,
1)加入level shifter来穿过各个voltage area;
2)detour the route;(绕远路)
加入LS的方式,带来delay,power,area方面的影响,一般选择方式二,

进行Power analysis:主要验证两个方面:
1)在power gate后的voltage drop see by standard cell。
2)处理power-up sequece过程中的in-rush电流。
多个voltage power的情况下,在进行STA分析时,必须考虑到多个operating mode和corner,以及chip variation。
on-chip的variation会使得die上的timing变得复杂。
针对multi-voltage的DFT challenge:
1)Power aware architecture和scan chain的reorder;
2)across power domain的过程中,DFT信号的level shifter和isolation cell的自动插入;
3)across power domain的信号的timing issue;
4)scan enable信号的布线调整,来避免power domain crossing;
在Manufacturing Test中,由于Power Consumption的不同,会导致voltage drop的不同,继而使得critical path
的改变,所以,在目前的Manufacturing的test中,需要做stuck-at和delay-fault的test,而且在不同的
operating voltage和temperature下,都必须分别进行测试,所以test time(cost)和coverage之间会有一个trade-off。
isolation cell和level shifter一般放在voltage area的边缘来保证对timing的影响降低到最小。
power up的sequence设计限制in-rush的电流,通常将switch分组,在speed和noise之间做trade-off。
Multi-voltage和power gating的实现的更多相关文章
- Power Gating的设计(模块)
Switching Fabric的设计: 三种架构:P沟道的switch vdd(header switch),N沟道的switch vss(footer switch),两个switch. 但是如果 ...
- Power Gating的设计(概述)
Leakage power随着CMOS电路工艺进程,功耗越来越大. Power Domain的开关一般通过硬件中的timer和系统层次的功耗管理软件来进行控制,需要在一下几方面做trade-off: ...
- Power Gating的设计(模块二)
针对lower power的验证,由cpf/upf来建模,包括: 1)power gating的功能模型(在power gate之后将output force为x) 2)isolation功能模型: ...
- Power Gating的设计(架构)
switching network的层次: 一般选择flatted的形式,hierarchy的结构对voltage drop和performance delay有影响. Power network的结 ...
- Instant low voltage or power off to make computer power burn down
严重则可造成硬盘直接报废! 原理:瞬间低压或者断电,滤波电容上存储的电能已经被使用,此时再瞬间供电则会重新对电容充电,而限流电阻还没有恢复到保护状态,于是会产生很大的冲击电流,从而导致了全桥元件或保险 ...
- Lower Power with CPF(三)
常用的一些Lower Power的策略: 1)Clock tree optimization and clock gating:在正常情况下clock信号会一直toggle at the maximu ...
- lower power的physical library
在一个cell library中,比较重要的是cell height,cell height由tracks来决定,track表示一个metal线的pitch. 一个cell通常被做成一定数量的trac ...
- lower power的IP设计
在IP的实现过程中,考虑lower power部分进行设计: 1)Partition the design来满足lower power的一些strategies,尤其是power gating和clo ...
- Zephyr的Power Management
1 关于Zephyr Zephyr是Linux基金会维护的微内核项目,来源于WindRiver向Zephyr捐赠的Rocket RTOS内核.主要用于开发针对物联网设备的实时操作系统. Zephyr操 ...
随机推荐
- linux下安装memcache以及开启memcache扩展
memcache 的工作就是在专门的机器的内存里维护一张巨大的hash表,来存储经常被读写的一些数组与文件,从而极大的提高网站的运行效率,减轻后端数据库的读写压力.在安装memcached之前需要安装 ...
- java简单优化和编写规范,自己总结的。
1.永远不要比较两个浮点数是否相等.它是不安全的.详情google. 2.尽量使用StringBuffer代替String. 3.final类会提高很多效率. 4.try-catch 不应该用来控制程 ...
- Java调用ASP.NET的webservice故障排除
公司要接入其它公司的一个业务功能,对方是提供的 .net产生的webservice,在用cxf的wsdl2java命令生成客户端的测试代码时,出现了如下故障WSDLToJava Error: Thro ...
- jQuery获取自身HTML
<html><head> <title>jQuery获取自身HTML</title> <meta http-equiv="Content ...
- ibatis传入数组或List
小结一下ibatis框架下,传入参数为数组类型或者是List类型的sql写法.标签里面都不需要表名 1.传入字符串数组,不需要标明parameterClasss,数组和List类型对象一样都可以用&l ...
- C#对象的声明与实例化
在代码中我们经常能看到下面这样的语句. A a = new A();(1) B b = null;(2) C c;(3) 代码( 1 ) 创建 A 的对象并对其进行初始化. A :类: new A() ...
- 使用C语言把字母转换成大写,不能使用库函数
char to_upper(char input) { if ('a' <= input && input <= 'z') { return input - ' ...
- Java: Difference between ArrayList and LinkedList
Basically, they are just two different implementations of List interface. LinkedList is implemented ...
- rank 和 星星评级
我们常常看到打分,如下图 这样的效果有几种方法 1.用:lt(index) /* $('dl').each(function(){ var ths = $(this); $(this).find('d ...
- Ubuntu 上安装 Freemind 并支持中文
Ubuntu 上安装 Freemind 并支持中文 JAVA 运行时 Freemind 是一个使用 Java 编写的思维导图工具,在安装时,需要到 Java 运行时(使用 OpenJRE 或 Orac ...