CPF(Common Power Format):cadence推出的一种在设计中描述低功耗设计的文件。完全按Tcl的语言格式来定义。

CPF文件在整个前端后端的过程中,需要的部分不一样,所以CPF文件可以随着流程一步步的更新。

一个CPF文件可以分为两部分内容:工艺相关的信息(technology-related)和设计相关的信息(design-related)。

CPF要求顶层模块必须设置为default power domain,其他的instances 再按设计进行设置。同样也必须有一个default power mode,不过不要求必须是顶层module。

低功耗策略:MSV(Multiple Supply Voltage),对不同的logic,分出power domain,同一个domain中的voltage相同。

power mode:对一种确定的功耗状态,就可以称为一种mode,来方便分类分析。

lever shifters:一种有两组power和ground的cell,本身就带有两个power domain----primary and secondary power domain。

接在primary power domain上的power domain 称为这个cell的primary power domain,同理secondary power domain。

针对一个block的Timing and Power Analysis,以Power Mode为基本单元,包括Analysis View for Best Case Corner 和 Analyis View

for Worst Case Corner。其中的一个Analysis View,在以Power Domain 和 Operating Corner来进行分析。其中针对PVT来

讲(process, temperature, voltage),称为Operating Condition。Opeartion Condition + 相应的lib就可以得到各个lib的

BCS和WCS。在一个power mode中可以通过指定sdc files来进行时序约束,通过添加activity file来进行动态功耗分析,可以添

加的文件包括VCD, TCF, SAIF等value change file。

低功耗策略:PSO(Power Shut Off),设计的某些部分可以关断,来save leakage,dynamic power。

同一个power domain的blocks,leaf instances,pin能够同时的关断。

某些domain打开,某些domain关断的一种稳定状态就可以称为power mode

根据控制信号的不同,可以分为internal switchable(相应的需要一组power switch logic)和external switchable(需要一种external power shut-off method)。

为了防止一些domain关断时,输出X来影响其他的domain,所以需要在一个domain的输出logic中加入isolate cells(至少有两组供电单元)。同样为了在resume的工程中,能够得到off前的值,也需要state retention cells(至少有两组供电单元)。

同样在一个设计中,必须有一个always on power domain,来为这些logic和其他一些必要的logic提供电源。

低功耗策略:DVFS(Dynamic voltage frequency scaling),reduces the power in the chip by scaling down the

voltage and frequency when peak performance is not required。

设计中需要level shifters, isolate cells, state retention cells, power switch logic等。

在各个design flow中,需要的CPF文件中的部分:

RTL Verification:     set_design

end_design

create_power_domain

create_nominal_condition(MSV,PSO,DVFS等都可以来电压来定义)

create_power_mode(domain+condition)

create_state_retention_rule

create_isolation_rule

create_level_shifter_rule

Synthesis:             define_library_set(主要加入lib)

define_always_on_cell

define_state_retention_cell

define_isolation_cell

define_level_shifter_cell

define_power_switch_cell

update_nominal_condition(+lib)

update_power_mode

Physical:                create_power_nets(主要加入power)

create_ground_nets

create_global_connection

create_power_switch_rule

update_power_switch_rule

update_power_domain

create_operating_corner

create_analysis_view

Lower Power with CPF(一)的更多相关文章

  1. Lower Power with CPF(四)

    CPF从Front-end到Back-end(RTL--GDSII)的整个流程: 1)Creating a CPF file:来在前端就建立lower power的规范. 2)检查CPF文件的正确性, ...

  2. Lower Power with CPF(二)

    CPF文件可以有两种组织方式:Flat CPF file or Hierarchical CPF file. 由于在大型的SoC设计中,一般都采用Hierarchical的形式,所以本文主要按这个方式 ...

  3. Lower Power with CPF(三)

    常用的一些Lower Power的策略: 1)Clock tree optimization and clock gating:在正常情况下clock信号会一直toggle at the maximu ...

  4. lower power的IP设计

    在IP的实现过程中,考虑lower power部分进行设计: 1)Partition the design来满足lower power的一些strategies,尤其是power gating和clo ...

  5. Low Power之CPF/UPF

    1 CPF The Common Power Format is a standard promoted by the Low Power Coalition at Si2. CPF is also ...

  6. lower power的physical library

    在一个cell library中,比较重要的是cell height,cell height由tracks来决定,track表示一个metal线的pitch. 一个cell通常被做成一定数量的trac ...

  7. lower power设计中的DVFS设计

    Pswitch = Ceff * Vvdd^2*Fclk, Pshort-circuit = Isc * Vdd * Fclk, Pleakage = f(Vdd, Vth, W/L) 尽管对电压的s ...

  8. Multi-voltage和power gating的实现

    power domain:一个逻辑的集合体,包含power supply的一些信息.建立在FE. voltage area:chip上的一块物理区域.可以看作power domain的物理实现. Le ...

  9. Power Gating的设计(模块二)

    针对lower power的验证,由cpf/upf来建模,包括: 1)power gating的功能模型(在power gate之后将output force为x) 2)isolation功能模型: ...

随机推荐

  1. vue 项目里正确地引用 jquery

    一.NPM安装的jQuery 使用vue-cli构建的vue项目,需要修改的是build/webpack.base.conf.js 1.添加引入webpack,后面的plugins那里需要 const ...

  2. Python并行编程的几个要点

    一.基于线程的并行编程 如何使用Python的线程模块 如何定义一个线程 如何探测一个线程 如何在一个子类中使用线程 Lock和RLock实现线程同步 信号实现线程同步 条件(condition)实现 ...

  3. Debian的自动化安装(DEBIAN_FRONTEND)

    Debian 安装程序的参数 安装系统确认一些附加的引导参数 debconf/priority 这些参数设置将设置显示的信息为为最低的级别. 缺省安装使用 debconf/priority=high ...

  4. 微信小游戏 交互接口的使用 wx.showToast wx.showLoading

    在小游戏中,会有如下图的提示窗口,这些可以使用微信提供的交互接口实现. 使用loading等待的接口.mask=true表示遮罩,防止等待时点击其他按钮触发其他操作导致异常. wx.showLoadi ...

  5. 【转】Openstack中oslo_config模块学习

    OpenStack的项目貌似越来越多了,在Grizzly版之前,每个项目都得实现一套处理配置文件的代码.在每个项目的源码中基本上都可以找到openstack/common/cfg.py,inipars ...

  6. python之接口

    首先,我们必须明确的一点是:python里无接口类型,定义接口只是一个人为规定,在编程过程自我约束 python的类是可以写任意个方法的 定义一个接口对继承类进行约束,接口里有什么方法,继承类就必须有 ...

  7. 消息通讯之关于消息队列MQ必须了解的相关概念

    目录 系统通讯方式有哪些? 消息队列的应用场景 消息队列通讯模型 常见的消息协议 AMQP MQTT ATOMP JMS 小结 系统通讯方式有哪些? RPC调用 RPC 全称 Remote Proce ...

  8. cadence upf低功耗流程的仿真验证

    本文是记录项目过程中遇到的奇巧淫技,如有遗漏或者不足,请大家改正和补充,谢谢. 随着深亚微米技术的普及与发展,leakage功耗在整个功耗中的比重越来越大,比如45nm下,已经占到了60%以上,所以低 ...

  9. Redis之使用python脚本监控队列长度

    编辑python脚本redis_conn.py #!/usr/bin/env python #ending:utf-8 import redis def redis_conn(): pool = re ...

  10. poj3417Network【LCA】【树形DP】

    Yixght is a manager of the company called SzqNetwork(SN). Now she's very worried because she has jus ...