当前课程知识点:IC设计与方法 >  6、Quartus工具 >  e)Quartus综合及分析(2) >  讲课视频

返回《IC设计与方法》慕课在线视频课程列表

讲课视频在线视频

讲课视频

下一节:Video

返回《IC设计与方法》慕课在线视频列表

讲课视频课程教案、知识点、字幕

综合完以后

我们就要通过各种分析手段

来分析设计的综合结果的正确性

Quartus II提供了四大类手段

来帮助我们分析综合的结果

包括RTL Viewer和Technology Viewer

这两类图形工具

从图形的方式来分析综合的结果

状态机Viewer可以帮助我们看电路里面的

状态机是不是正确

还有就是功耗分析工具

这四大类工具

我们来首先看一下RTL Viewer

Technology Viewer和RTL Viewer的

功能相类似

看到的结果都是类似的结果

RTL Viewer

能够帮助我们用图形化的方式

或者说原理图的方式去看我们的

RTL电路映射出来的门级网单

它的图形化的电路结构

以某一个小电路为例

这里面我们可以看到

我们的RTL代码映射完了以后

有一二三四五六七

大概有七块电路

七个小电路模块构成了我们的电路

它们之间是什么样的连接关系

左边是电路里面所用到的元器件

或者模块的名字

模块的层次化的结构

以及每个模块里边

都有哪些输入输出管腿以及管腿的名字

这样的话

从这张图里面我们可以看清楚

原来RTL的文本层次的代码

它的图形的结果

层次化就非常清楚

这就是RTL Viewer的一个作用

另外的话

我们可以也在这个图里边去做一些操作

在某些节点

去对某些信号和某些路径去做一些约束

这就是RTL Viewer的主要作用

我们来对比一下RTL Viewer和Technology Viewer

它们的功能差别以及主要作用

我们可以看到这两种可视化工具能够用

这种结构图的方式帮助我们浏览

我们设计的连接拓扑

RTL Viewer可以看RTL代码的拓扑

所以要使用RTL Viewer工具的时候

必须是我们的电路已经综合完了

把我们电路映射成了一个门级网单

这时候才能够去在这个层次

在门级网单这个层次看到这个电路

我们在讲综合的时候说过

综合要去对我们设计做约束

要做各个方面的约束

所以有了RTL Viewer以后呢

我们可以直接在图里边对某些节点

去设置相关的约束

直接在节点这个层次

比如去设置某一个模块它的

时序上的约束

另外

在调试和验证的时候

我们也可以直接从某一个节点

去关注某一个节点它的一些信息是不是正确

或者说电路的拓扑结构是不是正确

可以在这个图里边直接完成图的

各个层次之间的一个过渡

从一个层次进入到另一个层次

像刚才那张图里边

我们看到的是顶层模块的信息

我们也可以双击这个模块

进入到底层

去看底层内部的拓扑结构

这是RTL Viewer

那么Technology Viewer相对应的话呢

Technology Viewer是指我们的

电路已经映射到底层了

刚才的RTL Viewer我们看的是RTL层次的连接

当我们把电路经过综合布局布线以后

这时候我们已经有了电路内部的网单了

这时候我们再用图形化的方式去看

可以看到内部的门级的连接

以及看各个门之间时序的信息

都可以反标到Technology Viewer

这样的话

我们可以在最底层的门级网单去进行

相关的约束 调试

以及观测内部的详细信息

这是两个图形化工具使用的方法

我们下面要花比较多的

时间来介绍功耗分析工具

对于很多现在的便携式的设计

我们要要求整个电路的

功耗必须是非常低

对于服务器级的

或者说大的系统

由于芯片功耗会达到几瓦

甚至是几十瓦

的要求我们设计功耗非常低

所以对芯片进行功耗分析就非常重要

怎么进行功耗分析

我们都知道

前面讲过

对于一个单元而言

它的功耗公式CV2f

也就是说

一个电路的功耗跟它的C

也就是等效电路的负载

或者说电路的规模成正比

跟芯片工作电源电压的平方成正比

跟芯片工作的工作频率

或者说每一个器件

或者说每一个节点的翻转的频率

翻转的次数成正比的

所以功耗分析就是基于这些参数来进行

我们知道

我们电路里边可能有几百个

甚至上千个器件

我们需要知道这些器件的每一个节点

电路里面的成百上千 上万个节点的

翻转的时刻 翻转的次数

以及它的工作频率

以及每一个节点的等效电容 等效负载

知道这些信息

这些信息怎么才能得到

必须要经过我们布局布线以后完成的

最终的布局布线以后的结果才能得到

对吧

能够得到这些物理信息

所以

功耗分析一方面必须要在

布局布线结束以后才可以进行

第二方面

布局布线之后

这时候还只得到了每个器件的物理信息

我们还不知道每个器件它是怎么翻转的

比如说时钟信号它是怎么翻转的

每一个门的输出和输入这些信号是怎么翻转的

这些信息还没有

所以我们要能够进行准确的功耗分析的时候呢

我们还需要对门级电路进行仿真

仿真了以后

我们就知道整个电路工作的

任意一个节点的工作波形

把波形的信息

提取出每一个节点的翻转信息以后

就能够进行功耗分析了

所以这是功耗分析所要求得到的几类信息

我们看一下这是功耗分析的设置

最主要的设置是这里面的

每一个节点的翻转率

软件提供了几种手段来进行设置

第一个

假设我们还没有做门级仿真

这时候我们就不知道每一个节点的翻转率

我们可以设置一个默认的翻转率

通常默认翻转率是12.5%

当然我们也可以根据我们电路的

性质去设一个比较大的翻转率

这个值只是一个猜测值 估计值

按照这种方式

分析出来的功耗也只是一个预测值

和实际功耗的差别可能会差10% 50%

甚至差100%

有量级上的差异

第二类手段呢

是用一个很准确的翻转信息

也就是说

只有当我们经过门级仿真以后

得到了波形以后

我们才能够得到这种详细的翻转信息

这个详细的翻转信息

仿真工具通常可用两类手段来提供

一类是用标准的文本文件的方式来提供

第二个是用标准的第三方格式

我们称为VCD这种格式

所有的仿真工具

不管是VCS

Cadence的NC还是这个Modelsim

都可以提供这种VCD格式

我们把VCD格式的文件

送给功耗分析工具以后

它就能得到一个特别准确的功耗分析值

这个功耗分析值跟实际我们器件在

电路板上工作时候的实际功耗差异

通常我们可以认为在10%到50%这个量级上

我们看一下功耗实际分析给出的报告结果

左边是功耗分析报告结果的列表

大概可以给出几类功耗

包括芯片工作的总的功耗

以及详细的功耗的报告分布

比如可以给出模块级的

也就是说

我们电路里面可能有不同的模块

我们把它分层次展开以后

报告各个模块的功耗

这样的话我们可以找出

占我们电路功耗百分比最大的那些模块

然后分析能不能优化它的功耗

我们也可以根据电路工作的不同区域来报告

前面我们讲过

电路的输入和输出

可能会有不同的IO Bank

我们可以分析一下

不同的电压域

或者不同的IO域功耗特性到底是什么样的

这样的话

我们可以看是不是去修改我们的

电压的分配

以及IO的分配

来合理的优化功耗

最后

我们可以按照具体不同的信号以及不同的

翻转率来进行功耗分析

来显示相应的功耗分析的结果

这样的话

我们可以去看

到底是电路里面的哪个信号

或者是哪个时钟域

哪个节点它的功耗发布情况

总之

我们根据功耗分析结果

要回过头去看

我们电路如何去进行优化

去从C V2 F这几个不同的角度去看

怎么去优化电路功耗

我们来看右边的具体的功耗分析结果

我们可以看到这颗芯片它总的

功耗大概是700多个mW

其中动态功耗将近4个mW

静态功耗大约是700多个mW

从这里面

我们可以看出来

这个芯片的功耗非常的小

由于可编程器件的特点

可编程器件

如果你选的不是低功耗类型的可编程器件的话

它的静态功耗非常的大

大概将近1W这个量级

本身这个电路因为规模非常的小

所以它的功耗也非常的小

IC设计与方法课程列表:

课程准备:Quartus II软件的下载

-软件下载说明

--Quartus II软件下载教程

1、集成电路的发展

-a) 集成电路的应用及市场

--1-1集成电路应用及市场

-a) 集成电路的应用及市场--作业

-b)集成电路的制造过程

--1-2 集成电路的制造过程

-b)集成电路的制造过程--作业

-c)从CPU的发展看IC的进展

--1-3从CPU的发展看IC的进展

-c)从CPU的发展看IC的进展--作业

-d)从行业的发展看IC的进展

--Video

-d)从行业的发展看IC的进展--作业

-e)从ISSCC看IC的发展方向

--讲课视频

-e)从ISSCC看IC的发展方向--作业

2、数字集成电路设计方法

-a)数字系统的实现方法 (ASSP/FPGA/ASIC的对比)

--讲课视频

-a)数字系统的实现方法 (ASSP/FPGA/ASIC的对比)

-b)组合逻辑电路

--Video

-2、数字集成电路设计方法--b)组合逻辑电路

-c)时序逻辑电路(1)

--2-3时序逻辑电路的设计方法 (一)

-d)时序逻辑电路(2)

--2-3时序逻辑电路的设计方法 (二)

-2、数字集成电路设计方法--d)时序逻辑电路(2)

3、Verilog语法

-a)Verilog的历史和学习要点

--讲课视频

-b)端口、信号及数据类型

--讲课视频

-b)端口、信号及数据类型--作业

-c)逻辑电平及数据操作

--讲课视频

-3、Verilog语法--c)逻辑电平及数据操作

-d)Assign 语句

--3-1-4assign语句

-e)Assign 举例

--3-1-5 Assign 举例

-f)Always

--3-1-6 Always

-f)Always--作业

-g)阻塞与非阻塞赋值

--Video

-3、Verilog语法--g)阻塞与非阻塞赋值

-h)D触发器的描述

--Video

-i)时序电路的设计

--Video

-i)时序电路的设计--作业

-j) 面向测试的Verilog语法(1)

--3-3-1面向测试的Verilog语法(1)

-k) 面向测试的Verilog语法(2)

--3-3-2 面向测试的Verilog语法(2)

-k) 面向测试的Verilog语法(2)--作业

4、电路设计实例

-a)电路设计实例1

--Video

-b)电路设计实例2

--讲课视频

-b)电路设计实例2--作业

-c)电路设计实例3

--讲课视频

5、Modelsim仿真工具

-Modelsim仿真

--Modelsim仿真

6、Quartus工具

-a)综合及相关基本概念

--Video

-a)综合及相关基本概念--作业

-b)综合及优化

--Video

-c)门级仿真

--门级仿真

-d)Quartus综合及分析(1)

--讲课视频

-e)Quartus综合及分析(2)

--讲课视频

-e)Quartus综合及分析(2)--作业

-f)Quartus综合及分析(3)

--Video

-g)Quartus综合及分析(4)

--Video

-g)Quartus综合及分析(4)--作业

讲课视频笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。