紫光同创国产FPGA学习之Power Calculator

紫光同创国产FPGA学习之Power Calculator紫光同创里面的,芯片功耗计算。没看过,没用过。有兴趣瞄一下。我又不用再电池行业,对电源没啥要求。没用经验之谈,拷贝参考书。一、总体介绍  (一)PangoPowerCalculator总体介绍PangoPowerCalculator是用来计算用户设计产生功耗的软件,简称PPC,是集成在PDS中的一个组件。用户在完成design设计,经过综合、map、布局布线后,可以使用P…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

紫光同创里面的,芯片功耗计算。没看过,没用过。有兴趣瞄一下。我又不用再电池行业,对电源没啥要求。

没用经验之谈,拷贝参考书。

一、总体介绍   

(一)Pango Power Calculator总体介绍

Pango Power Calculator是用来计算用户设计产生功耗的软件,简称PPC,是集成在PDS中的一个组件。用户在完成design设计,经过综合、map、布局布线后,可以使用PPC计算出芯片的功耗。
在布局布线后,PPC可以得到真实的FPGA资源使用情况(包括各种资源的数目、绕线情况、Clock主频等),通过这些信息可以计算出较准确的功耗值。
PPC主要有三项数据输入:
1.布局布线完成之后,各项资源的使用信息,包括:各种Grid device资源的实际数目、配置信息、绕线信息、以及Clock的主频、Clock数量等。
2.Signal activities信息,有两种方式获取该信息:一种是由用户指定默认值,软件根据用户指定的默认toggle和static probability,通过遍历整个网表来估算所有资源的signal activities;另一种是读入仿真工具(如Modelsim)产生的VCD文件来得到精确的signal activities。
3.用户提供的外部工作条件,主要包括环境、电压等参数。
PPC利用以上的输入数据可以精准的计算出功耗数值,较准确的反映design的功耗和芯片温升情况。
(二)功耗介绍

我毛华望QQ849886241,深圳工程师。博客http://blog.csdn.net/my_shar

1. 功耗的基本概念
功耗是电路在单位时间内消耗的能量,国际标准单位是瓦特(w)。
能量是物理系统做功本领的量度,国际标准单位是焦耳(j)。
2. FPGA电路功耗组成和分析
1)静态功耗(Static Power)
静态功耗是指FPGA在正常运行时所有电路各种漏电(leakage)产生的功耗。随着工艺尺寸的小型化,静态功耗占芯片总功耗的比例会越来越高。
2)动态功耗
动态功耗是用户设计(design)产生的功耗,由design本身的功能及数据输入的模式决定,主要包括瞬时功耗和充放电功耗。瞬时功耗在FPGA首次通电时产生,随着供电电压的不同而改变。充放电功耗是电路在充放电过程中产生的功耗。
3)片上功耗
片上功耗是FPGA芯片内部产生的功耗,它是静态功耗和动态功耗的总和。
4)片外功耗
片外功耗是IO引脚驱动芯片外部电路产生的功耗,主要包含IO终端,LED,IO buffer等电路。
3. 功耗影响因素
1)电压(Voltage)
电压主要影响动态充放电功耗,动态功耗和电压的平方成正比。
2)负载(Load)
负载主要影响动态充放电功耗,动态功耗和负载成正比。
3)时钟频率(Frequency)
时钟频率主要影响动态充放电功耗。动态功耗和时钟频率成正比。
4)信号翻转率(Toggle rate)
一个时钟周期之内信号翻转的次数,主要影响动态充放电功耗。动态功耗计算公式为:
P = 0.5 C V^2 f d
其中d表示Toggle rate。
5)输入状态概率(Input static probability)
输入状态概率是单位时间内输入为高电平的概率,主要影响input-dependent功耗。
6)输入信号转换速率(Input signal slew rate)
输入信号转换速率主要影响动态瞬时功耗。
7)工艺偏差(Process variation)
工艺偏差影响静态功耗和动态功耗。
8)环境温度(Ambient temperature)
环境温度是芯片周围空气的温度,主要影响静态功耗。
9)节点温度(Junction temperature)
节点温度是在设备运行时,FPGA中半导体电路PN结的温度。通常在选择device之后,会选择一个温度等级。这个等级定义了一个温度范围,在此范围下保证device可以按照指定的状态运行。如果运行环境超过了温度范围,将无法保证设备的正常运行。
结点温度 = 环境温度 + 片上功耗 * 对空气的有效热阻

10)对空气的有效热阻(Effective Thermal Resistance to Air(θJA(°C/W)))
对空气的有效热阻是一个定义功耗从FPGA中的硅单元以热量的形式扩散到空气的系数。
主要包含两部分:
1.        热量从硅单元向上传到周围空气中的热阻,用 θJA表示。
2.        热量从硅单元向下传到电路板然后到达空气的热阻,用 θJB表示。

4.  PPC计算FPGA功耗的组成部分
PPC主要针对FPGA芯片在上电之后,芯片正常工作时的功耗进行分析,包含各种资源的静态和动态功耗分析。鉴于各种资源的功耗模型或者分析手段不同,PPC的功耗分析按照以下资源类别来进行:
1)逻辑资源
包括LUT,flop,gate,MUX等可编程逻辑块内部的功耗。
2)APM
乘法器,累加器,flop等APM模块内部功耗。
3)DRM
DRM内部功耗。
4)PLL
PLL内部功耗。
5)Clock network
Clock network产生的功耗,占全芯片功耗的较大比例。
6)Routing资源
Signal routing的功耗,占全芯片功耗的最大比例,而且随着工艺的小型化,这部分比例会越来越大。
7)IO
IO的功耗包括IO自身功耗,和IO驱动外部电路的功耗两个部分。
8)Hard-IP
包括SERDES、DDR2/3等。
9)其他模块
如Configuration RAM、CCS、解密模块、e-fuse等。

二、功能描述
(一)PPC功能简介

       PPC通过遍历布局布线之后的电路网表,根据相关的配置情况(环境参数、电源电压、信号翻转率等)计算出用户设计中用到的各项资源的功耗数据。每次改变相关配置后需要重新执行PPC来计算功耗数据。
在执行PPC计算功耗之前,用户可以指定VCD文件用于计算信号的toggle rate,如果没有指定VCD文件,软件将会根据用户指定的默认signal activities估算出信号的toggle rate。
功耗数据计算完成之后,软件将会产生一个后缀为.ppr的功耗报告文件,该文本文件以表格的形式记录了setting信息和summary信息。setting信息包含器件、工作环境、电源电压等参数配置情况。summary中记录了总的功耗信息、各类资源的功耗分布以及各个电源的功耗分布情况。
(二)PPC支持的芯片器件类型

紫光同创国产FPGA学习之Power Calculator
表1   PPC支持的芯片器件类型
(三)软件运行

1)软件执行流程
PPC集成在PDS中,需通过PDS来运行PPC,PDS中提供了两种执行PPC的方式。
1. 双击Flow窗口下的Report Power,可产生文本类型的功耗报告。
在执行PPC之前用户可以配置PPC运行的相关参数,若不进行配置,PPC将使用默认参数计算功耗。
在Flow窗口中点击鼠标右键弹出菜单。

紫光同创国产FPGA学习之Power Calculator
图 1  右键菜单配置选项
选择configure,在弹出对话框的左侧窗口中选择Report Power,右侧窗口跳转到PPC相应的配置界面。

紫光同创国产FPGA学习之Power Calculator
图 2  PPC参数配置界面
该窗口中有两个复选框和两个Tab页面:Power Settings和VCD File Settings。
在Power Settings页面中,Specify Input Setting File为用户需要指定的配置文件,该配置文件提供了PPC计算功耗过程中需要的器件、环境、电源电压等相关参数。
在VCD File Settings页面中包含三项输入内容:
Specify Input VCD File: 用户指定的后仿真文件,该文件记录了仿真波形,通过该文件能够获取信号的翻转情况。
Specify the test bench top module:用户指定的仿真文件中顶层module名。
Specify the design top module instance:用户指定的设计design在test bench中的例化名。

紫光同创国产FPGA学习之Power Calculator

图 3  VCD配置界面
在完成配置之后点击OK按钮保存配置。
双击Flow窗口下的Report Power执行PPC功耗计算流程,如下图所示:

紫光同创国产FPGA学习之Power Calculator
图 4  Flow窗口界面
Report Power前面会出现一个进度条指示PPC执行功耗计算的进度情况,若在PPC执行过程中出现错误,PPC会停止执行并在Console窗口输出错误信息。PPC正常完成之后,点击PDS Report Summary界面中Report窗口下的Report Power选项,即可在PDS上打开PPC产生的文本形式的功耗报告。如下图所示:

紫光同创国产FPGA学习之Power Calculator

图 5  PPC产生的文本格式的功耗报告
2. 点击PDS工具栏的Power Calculator图标,PPC会将功耗计算结果显示在界面中。
      在PDS的工具栏中点击Power Calculator图标,如图所示:

紫光同创国产FPGA学习之Power Calculator
图 6  PDS工具栏的Power Calculator图标
       PPC首先加载模型文件,读取网表信息。之后弹出详细配置向导界面,如下图所示:

紫光同创国产FPGA学习之Power Calculator
图 7  PPC配置图形界面
该页面中有2个按钮:Next、Run。
Next:跳转到下一个配置界面。
Run:执行PPC计算功耗。
 
       配置向导中有两个页面。
       1. 文件配置向导,如上图所示。页面中有7个选项:
       Input Setting File:用户指定的PPC参数设置文件。
       Input VCD File:用户指定的VCD仿真文件。
       Specify the test bench top module:指定测试用例顶层module名。
       Specify the design top module instance:指定design在test bench中例化的名字。
       Output Setting File:用户指定输出的设置文件名和保存路径,PPC在运行完成之后会把运行时的相关参数保存下来,若不指定则在当前工作路径下保存默认设置文件。
       Output Text Report File:用户指定输出的功耗报告文件,PPC在运行完成之后会把功耗计算结果保存在功耗报告文件中。若不指定该文件则会在当前工作路径下保存默认功耗报告文件。
       Output PPF File:用户指定的PPF文件名和路径。PPF文件可作为PPP的工程文件,记录了PPC计算功耗中所有的参数和数据。若不指定则在当前工作路径下保存默认文件。
点击Next按钮进入参数配置界面。
2、详细参数配置界面,如下图所示。

紫光同创国产FPGA学习之Power Calculator

图 8  PPC详细参数配置界面

该界面中有4个Tab页面分别为Device Settings、Environment、Power Rail、Default Activity Rate。
Device Settings:器件参数,灰色表示只读,不可改变。
Environment:环境参数,包括温度、散热情况、空气热阻等。
Power Rail:电源电压参数,单位为伏特(V)。
Default Activity Rate:默认的信号翻转情况和时钟频率。
   点击Run按钮执行PPC功耗计算,会弹出一个进度条指示PPC计算功耗的进度情况。当计算完成之后进度条消失,出现PPC功耗的功耗报告窗口如下图所示:

注:
PPC所有文件所在文件夹名:只允许字母数字下划线(_)杠(-)点(.)@ 和空格( ),但空格不能出现在路径名首尾 ;
 
文件名:只允许字母数字下划线(_)杠(-)点(.)。
 
       点击Run后,PPC即开始进行功耗计算,此时会弹出一个包含进度条和输出窗口的对话框,如图9所示:

紫光同创国产FPGA学习之Power Calculator

图 9  PPC功耗计算窗口
       进度条显示当前功耗计算的完成度,而下边的输出窗口用来输出打印信息,在功耗计算结束后,用户可以查看计算中是否有错误或者警告产生,点击Close按钮将关闭该对话框,点击OK按钮将进入主界面,显示如图10所示的功耗报告界面。
紫光同创国产FPGA学习之Power Calculator

图 10  PPC界面的功耗报告
窗口的左边是索引窗口,索引包括Setting、Summary、Device三个选项,如下图所示:

紫光同创国产FPGA学习之Power Calculator
图 11  功耗报告的索引窗口
2)Setting页面
点击Setting选项打开的页面可以看到用户在Configure界面所进行的设置,如下图所示:

紫光同创国产FPGA学习之Power Calculator

图 12  Setting 界面
3)Summary页面
在Summary页面上,用户可以查看整体的功耗信息。如图所示:

紫光同创国产FPGA学习之Power Calculator

图 13  Summary 界面
Power Summary页面简明的显示了芯片功耗和温度的相关情况,包括总的片上功耗,静态功耗,外部功耗,结点温度等。
Logic Device Summary页面显示了不同资源的功耗及各个资源功耗所占总功耗的比例。
Power Rail Summary面板显示了不同电源的电流值及估算出的功耗值。
这个页面中的所有数据都是不可编辑的只读数据,这些数据反映了用户设计的功耗和分布情况。
4)Device页面
Device下的选项对应芯片中各类资源的配置和功耗计算数据页面。主要包括:Clock、DRM、CLM、IO、APM、PLL和Net等。本列只显示被使用了的资源的信息,未使用的资源将不会显示。点击这些选项可以查看这些资源的使用情况和功耗数据,如下图所示为DRM的数据页面。

紫光同创国产FPGA学习之Power Calculator

图 14  Device 界面

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/179765.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 整理:数据库设计的六个阶段详解

    整理:数据库设计的六个阶段详解按照规范设计,我们将数据库的设计过程分为六个阶段:1、系统需求分析阶段;2、概念结构设计阶段;3、逻辑结构设计阶段;4、物理结构设计阶段;5、数据库实施阶段;6、数据库运行与维护阶段;每个阶段的详细解析如下:(资料来自:数据库设计(百度文库))一、系统需求分析阶段1、需求分析的任务2、需求分析的两种方法:自顶向下和自底向上二、概念结构设计三、逻辑结构设计

  • Python win32api_python api文档

    Python win32api_python api文档本文整理汇总了Python中win32api.SetCursorPos方法的典型用法代码示例。如果您正苦于以下问题:Pythonwin32api.SetCursorPos方法的具体用法?Pythonwin32api.SetCursorPos怎么用?Pythonwin32api.SetCursorPos使用的例子?那么恭喜您,这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方…

    2022年10月11日
  • 【转载】C# sleep 和wait的区别

    【转载】C# sleep 和wait的区别

    2021年11月20日
  • 关于cBridge2.0,你不能错过的关键信息(二)!

    关于cBridge2.0,你不能错过的关键信息(二)!我们之前讨论了cBridge2.0的两种流动性模型,还深入探讨了「自管」流动性模型的设计挑战。今天,我们详细聊聊针对该模型设计挑战的解决方案。首先,我们从节点协调和操作问题开始。1/n上篇ELI5短文中我们提到,“cBridge2.0是第一个也是唯一一个允许流动性提供者(LP)在「自管」和「共管」流动性模型之间自由选择的跨链架构。在「自管」模式下,也就是「非托管」模式,LP可以100%地控制其流动性。为此,每个LP须要在服务器中运行一个cBridge节点「程序」…

  • logistic回归详解(二):损失函数(cost function)详解[通俗易懂]

    logistic回归详解(二):损失函数(cost function)详解[通俗易懂]有监督学习机器学习分为有监督学习,无监督学习,半监督学习,强化学习。对于逻辑回归来说,就是一种典型的有监督学习。既然是有监督学习,训练集自然可以用如下方式表述:{(x1,y1),(x2,y2),⋯,(xm,ym)}\{(x^1,y^1),(x^2,y^2),\cdots,(x^m,y^m)\}对于这m个训练样本,每个样本本身有n维特征。再加上一个偏置项x0x_0,则每个样本包含n+1维特征

  • 改变QLabel背景颜色

    改变QLabel背景颜色在桌面应用程序开发时,需要显示一些状态信息,例如客户端是否掉线,串口是否打开等,我们可以用一些标志显示给用户,例如如果QLabel显示绿色,表示连接成功,显示黑色表示失败。代码如下:ui.label_Status->clear(); QPalettepalette; palette.setColor(QPalette::Background,Q…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号