lower power的IP设计
在IP的实现过程中,考虑lower power部分进行设计:
1)Partition the design来满足lower power的一些strategies,尤其是power gating和clock gating。
2)为power gating增加额外的逻辑。
3)设计clock和reset的strategy来配合lower power设计。
lower power memory可能需要好多mode:normal operating mode,retention mode,power off。
其中retention mode工作在一个低电压下,retain data。
针对power gating,在IP设计中需要注意:
1)区分power gating和power always on的block。
2)设计power controller控制power up和power down的sequence。(一般在IP外的一个aon模块中)
3)区分signal需要做isolate处理。
一般的power down和power up的sequence操作:

1)判断transaction和fifo都已为空。
2)停止clock。
3)针对isolate信号,进行clamp操作。
4)进retention操作。
5)复位IP。
6)关掉power。
上电过程中,会在clock之前进行一个rst,在经过clock的sync之后,才会被撤销。 异步复位的rst端口是电平触发,可以保证rst的成功。
但是仿真器中的X->0行为不确定。 掉电区域的clock,必须有一个clock的eb信号默认为有效,这样在上电后,可以保证有clock。
但是clock的频率需要再用该clock或者其他有电的clock进行配置。
rst的sync,只在存在cdc issue的问题上才会做。 同一个clock group上的clock,不需要做sync,不存在相位差。
上电过程中很多其他的clock的enable信号也必须是默认有效的,或者bus上的clock的enable信号默认有效。
1)从pmu过来的rst会进行同步; 2)Bus相关的rst会由bus的clock来同步; 3)Module相关的rst会由自己的clock来同步;
在rtl的simulation过程中,在power down之后,force register的输出为X,来进行仿真。
在gate-simulation过程中,可以建立一个switching fabric的model来进行仿真,还可以得到power up/down时间。
一个power gating的IP的框图,其中的pwr_switch在综合后加入。

lower power的IP设计的更多相关文章
- Power Gating的设计(模块二)
针对lower power的验证,由cpf/upf来建模,包括: 1)power gating的功能模型(在power gate之后将output force为x) 2)isolation功能模型: ...
- Lower Power with CPF(三)
常用的一些Lower Power的策略: 1)Clock tree optimization and clock gating:在正常情况下clock信号会一直toggle at the maximu ...
- Lower Power with CPF(二)
CPF文件可以有两种组织方式:Flat CPF file or Hierarchical CPF file. 由于在大型的SoC设计中,一般都采用Hierarchical的形式,所以本文主要按这个方式 ...
- Power Gating的设计(概述)
Leakage power随着CMOS电路工艺进程,功耗越来越大. Power Domain的开关一般通过硬件中的timer和系统层次的功耗管理软件来进行控制,需要在一下几方面做trade-off: ...
- 一步一步学ZedBoard & Zynq(四):基于AXI Lite 总线的从设备IP设计
本帖最后由 xinxincaijq 于 2013-1-9 10:27 编辑 一步一步学ZedBoard & Zynq(四):基于AXI Lite 总线的从设备IP设计 转自博客:http:// ...
- Lower Power with CPF(四)
CPF从Front-end到Back-end(RTL--GDSII)的整个流程: 1)Creating a CPF file:来在前端就建立lower power的规范. 2)检查CPF文件的正确性, ...
- lower power设计中的DVFS设计
Pswitch = Ceff * Vvdd^2*Fclk, Pshort-circuit = Isc * Vdd * Fclk, Pleakage = f(Vdd, Vth, W/L) 尽管对电压的s ...
- Power Gating的设计(架构)
switching network的层次: 一般选择flatted的形式,hierarchy的结构对voltage drop和performance delay有影响. Power network的结 ...
- Power Gating的设计(模块)
Switching Fabric的设计: 三种架构:P沟道的switch vdd(header switch),N沟道的switch vss(footer switch),两个switch. 但是如果 ...
随机推荐
- 利用 libiconv 实现汉字编码 utf-8 格式 和 gbk格式的相互转换
参考文章:http://jimmee.iteye.com/blog/2174693 关于windows上编译libiconv的库,请参见:http://www.cnblogs.com/tangxin- ...
- TEST指令
In the x86 assembly language, the TEST instruction performs a bitwise AND on two operands. The flags ...
- Stakeholder Risk Management
In this article we'll address the people swirling around your project: stakeholders. You'll find som ...
- .NET基础加强,找工作之前可以看看这些............
.NET基础知识加强: 1 变量命名规则:骆驼命名法:第一个字母小写之后的首字母大写,[对于方法名和类名首字母大写]→培养良好的命名规范. 2 构造函数:没有返回值,方法名和类名相同,每个类中都有 ...
- Linux脚本执行过程重定向
Linux脚本执行过程重定向 一.bash调试脚本,并将执行过程重定向到指定文件 bash –x shell.sh 2>&1 | tee shell.log
- ASP.NET Highcharts图表
js 图表代码,如下: charts[i] = new Highcharts.Chart({ chart: { backgroundColor: { linearGradient: [0, 0, 50 ...
- [转载]Oracle修改表空间大小
Oracle修改表空间大小 使用Oracle10g建立数据库后,向数据库中导入了部分数据,第二天继续向数据库中导入数据表时发生错误: 查了很多资料发现原来是Oracle表空间限制,导致无法继续导入数据 ...
- pymongo使用总结
0. 何为pymongo pymongo是操作MongoDB的python模块 1.安装pymongo # easy_install pymongo 2.连接mongodb >>> ...
- 使用jquery的小记
随便写点 1.给span这种标签赋值 不能用$("#id").val("abc"); 因为这种标签没有value属性 而应该用$("#id" ...
- linux:lnmp环境搭建
一.准备工作(把安装环境需要使用到的包都下载好) mysql(官网):http://dev.mysql.com/downloads/ php(官网):http://php.net/downloads. ...