首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
数字电路
» 数字IC低功耗设计入门(二)——功耗的分析(2)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
数字IC低功耗设计入门(二)——功耗的分析(2)
发短消息
加为好友
look_w
当前离线
UID
1066743
帖子
8283
精华
0
积分
4142
阅读权限
90
在线时间
233 小时
注册时间
2017-6-23
最后登录
2019-5-18
论坛元老
UID
1066743
1
#
打印
字体大小:
t
T
look_w
发表于 2017-11-7 15:57
|
只看该作者
数字IC低功耗设计入门(二)——功耗的分析(2)
(2)无向量分析法
前面我们说到,无向量分析法就是通过命令来定义节点的翻转率的方法来分析功耗。我们先来逐条学习需要什么的命令,然后在后面进行举例说明无向量分析法的脚本。
在学习设置翻转率的命令之前,我们先来了解一下什么是设计的传播起点和黑盒子。我们定义
传播的起点
为设计的输入端和黑盒子的输出端,
黑盒子
是指在工艺库里没有功能描述的单元(比如ROM 、RAM或者一些IP核)。例如对于下面的设计中:
上面的设计有三处起点,一处是整个设计的输入端,一处是黑盒子的输出端,还有一处是某个单元的输入端。最后一处的起点不包含在我们的定义中,但是我们也把它当做起点,因为这是被标记了翻转率,这个我们后面进行讲解。
利用无向量分析法分析功耗时,我们不必提供设计内部节点的翻转率,而是通过设置
起点
的翻转率就行了。我们有两种方法设置翻转率,一种是通过设置翻转变量,一种是通过标记的方法。下面我们就来介绍如何通过这两种方法进行设置翻转率。
①设置翻转变量
在power compiler中,可以设置下面的两个翻转变量进行设置翻转率:
power_default_toggle_rate
power_default_static_probability
下面就来介绍一下这两个变量(主要介绍power_default_toggle_rate)。
power_default_toggle_rate
:其用法我们可以在DC中进行man一下,这个变量设置设计中
默认使用的翻转率
。定义方式是:
set power_default_toggle_rate 翻转值
翻转值默认是0.5。这个翻转值不是翻转率,这个变量定义的翻转率是个相对的值:
·
如果设计定义了时钟,这个power_default_toggle_rate变量定义的翻转率就以最快的时钟为参考,比如翻转值为0.5时,设计中最快的时钟为10ns,那么翻转率Tr = 0.5/10ns = 0.05GHz,也就是整个设计中默认的翻转率是0.05GHz。
·
如果设计中没有时钟,那么就会以工艺库中的时间单位作为参考,例如工艺库中的时间单位是ns,翻转值为0.5,那么翻转率Tr = 0.5/1ns = 0.5GHz。
power_default_static_probability
:这个设置的是默认的静态概率,也就是起点的逻辑值是1的概率。至于静态概率,这里就不详细描述了。这两个变量的默认翻转值都是0.5,翻转率是很大的,一般情况下需要减小一点,比如设置为0.01和0.02这样的。
一般情况下,默认的翻转率是设置在起点上的,也就是说起点的翻转率用的是power_default_toggle_rate这个变量设置的翻转率,内部节点的翻转率可以通过传播得到,如下图所示:
需要说明的是,传播不可以穿过没有功能描述的黑盒子,也就是不能通过传播的方式得到黑盒子的输出翻转率,因此我们在最前面就定义了,将黑盒子的输出当做起点,这样其他节点的翻转率可以通过传播得到(包括黑盒子的输入),黑盒子输出的翻转率通过默认设置的翻转率得到,我们就得到了设计中所有节点的翻转率。
②标记翻转率
上面的方式设置的是默认的翻转率。当我们需要为某个节点标记某个指定的翻转率,而不是使用默认的翻转率时,我们就用到了标记频率,如下图所示:
单元A
的输入端口标记了特定翻转率,比如说0.04GHz。标记的翻转率比传播的翻转率优先级更高,被标记翻转率的节点将作为一个新的起点,这就不属于起点的定义,但还是叫它为起点的原因。标记翻转率之后,这个单元后续的节点的翻转率将通过这个新标记的翻转率传播得到。
设置标记翻转率(简称设置翻转率)的命令主要有两条:
set_switching_activity 和 set_case_analysis
,下面就来讲解一下这两条命令的意思。
set_switching_activity
:设置某个节点的翻转率和静态概率,在使用无向量分析法估算功耗的时候,这个命令被广泛使用,越多的节点上被标记翻转率,估算功耗的精度就越高。命令和选项如下所示:
set_switching_activity
[-static_probability static_probability]
[-toggle_rate toggle_rate]
[-state_condition state_condition]
[-path_sources path_sources]
[-rise_ratio rise_ratio]
[-period period_value | -base_clock clock]
[-type object_type_list]
[-hierarchy]
[object_list]
[-verbose]
下面来简单介绍一下常用的几个选项,详细的介绍可以通过man set_switching_activity
获取。
-static_probability :设置静态概率。
-period period_value | -base_clock clock:设置时钟(周期),-period和 -base_clock只能设置其中一个。
-toggle_rate:设置翻转值,与-period或者 -base_clock相关联。翻转率Tr等于:
用-base_clock选项指定的时钟周期里面的翻转数目
或 用-period选项指定的时间段里的翻转数目;
当没有这个设置两个选项时,将使用工艺库里面的时间单位,即翻转率等于在每个
库单位时间内的翻转数目。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
工业控制
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议