Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Vivado下“找不同”

Vivado下“找不同”

作者头像
Lauren的FPGA
发布于 2019-10-30 16:20:56
发布于 2019-10-30 16:20:56
8930
举报
文章被收录于专栏:Lauren的FPGALauren的FPGA

上期内容:列表:创建列表

有时我们需要对比不同情形下的各类报告,以侦测这些“不同”对设计的影响。所谓的“不同情形”通常有以下几类:

-RTL代码不同

-约束不同

-综合策略不同

-实现策略不同

对比的报告可能包括:

-log文件

-资源利用率报告

-时序报告

-UFDM报告

-Control Set报告

-布线状态报告

-功耗报告

一旦涉及到“对比”就要用到一些工具,例如Beyondcompare,但这个工具不是开源的;或者vimdiff,这个是开源的,但是脱离了Vivado,需要首先打开vim,再通过vimdiff命令加载待比较的两个文件。这就要求工程师对vim有一定的了解。好在Vivado提供了这个功能。

在Vivado 2018.2版本中,可通过如下几个步骤实现“对比”。

1、选择需要比较的两个Runs,点击右键,选择Diff Selected Runs Report。这里只能选择两个,多了无法对比。Runs可以是综合,可以是实现,但两者必须是同一类型。换言之,如果一个Run是综合,另一个Run是实现,这种情形是不支持的。如图1所示。

图1

2、选择比较的内容。如图2所示,以Route Design为例,可比较的选项既包括log文件,也包括时序报告、资源利用率报告等。

图2

3、查看不同。一旦选择了比较内容,就会显示出两个比较文件之间的差异,以高亮部分显示,如图3所示。

图3

结论

Vivado提供了对比不同Design Runs生成的各种报告的功能,可方便用户查看其中的差异,明确这些差异对设计造成的影响。

如果文章对你有收获,欢迎转发~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lauren的FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Vivadoz中增量编译与设计锁定
所谓增量实现,更严格地讲是增量布局和增量布线。它是在设计改动较小的情形下参考原始设计的布局、布线结果,将其中未改动的模块、引脚和网线等直接复用,而对发生改变的部分重新布局、布线。这样做的好处是显而易见的,即节省运行时间,能提高再次布局、布线结果的可预测性,并有助于时序收敛。
碎碎思
2021/01/28
9190
深度解析ug1292(1)
ug1292第一页的主题是初始设计检查。这一步是针对综合后或者opt_design阶段生成的dcp。尽管在Vivado下,从功能仿真到综合、布局布线、直至生成.bit文件是相对自动化的流程,但是解决时序违例仍然是一个复杂且耗时的过程。仅仅靠log信息或者布线后的时序报告往往很难定位,这是因为实现过程中的每一步(opt_design逻辑优化,place_design布局, phys_opt_design物理优化, route_design布线)都会做一些优化,这些优化可能会导致关键路径被掩盖,例如,有时发现设计中逻辑级数(Logic Level)较高的路径时序收敛了,反倒是逻辑级数较低甚至为0的路径出现时序违例。因此,采取按部就班的策略,检查每一步的结果,及时且尽早发现设计中的问题是很有必要的。
Lauren的FPGA
2019/10/30
1.6K0
用Tcl实现Vivado设计全流程(1)
Vivado有两种工作模式:project模式和non-project模式。这两种模式都可以借助VivadoIDE或Tcl命令来运行。相比之下,VivadoIDE给project模式提供了更多的好处,而Tcl命令使得non-project模式运行起来更简单。
Lauren的FPGA
2020/10/27
3.2K0
用Tcl实现Vivado设计全流程(1)
Vivado设计锁定与增量编译(附工程)
该部分引用本公众号上一篇时序约束文章中的内容,在Quartus中采用逻辑锁定的办法来解决FPGA和外部接口的时序问题,也就是输入输出的寄存Rxd/Txd的寄存器到外部器件寄存器的时序问题。
网络交换FPGA
2019/10/29
2.6K0
Vivado设计锁定与增量编译(附工程)
图解Vivado HLS设计流程
在ESL(ElectronicSystem Level)阶段,典型的特征之一就是采用高层次语言完成设计。这里的“高层次”是相对于传统的RTL语言(VHDL/Verilog)而言。Xilinx有专门的高层次综合工具Vivado HLS,可支持C、C++和System C做为设计输入。
Lauren的FPGA
2019/10/31
2.2K0
再谈Vivado编译时间
通常,综合(Synthesis)所消耗的时间比布局布线要短,但从代码风格角度而言,我们也能找到一些端倪来缩短综合所用的时间。如下图所示代码,左右两侧功能是一致的,区别在于左侧采用了for generate语句,for循环里嵌套了always模块;右侧实际上不需要generate语句,always里直接使用了for循环(注意:实际上,这里不需要for循环,只是为了说明for循环对编译时间的影响)。单独对左侧模块采用OOC综合,耗时2分钟;而右侧耗时1分钟。因此,我们在用for循环时要谨慎一些。
Lauren的FPGA
2024/05/10
1.5K0
再谈Vivado编译时间
Xilinx 7A 开发流程——工程模式 ARTY XC7A35T
二、设计文件输入 Flow Navigator–Project Manager–add sources或Sources窗口的
战神伽罗
2021/03/02
9580
Xilinx 7A 开发流程——工程模式 ARTY XC7A35T
如何缩短Vivado运行时间
在Vivado Implementation阶段,有时是有必要分析一下什么原因导致运行时间(runtime)过长,从而找到一些方法来缩短运行时间。
Lauren的FPGA
2019/10/30
4.9K0
Vivado综合属性:MARK_DEBUG
在使用Vivado Logic Analyzer(类似于ISE时代的ChipScope)时,常常会碰到的一个情形是想要观测的信号在综合后的网表中名字发生了变化而无法找到,这时可利用综合属性MARK_DEBUG解决(实际上,对于RTL代码描述的寄存器,Vivado综合后的名字是在其原始名后添加了_reg)。
Lauren的FPGA
2019/10/31
3K0
Vivado 2019.1新特性(1):Dashboard
关于Vivado Dashboard的功能可阅读这篇文章(Vivado 2018.3这个Gadget你用了吗)。Vivado 2019.1的Dashboard功能进一步增强。Dashboard可以是空的,通过点击Add Gadget来添加显示项目。例如:显示Impl_1的place_design之后的资源利用率。同时,每个Gadget的显示方式是可编辑的,只需点击如下图中的红色椭圆框住的标记。对于多个Gadget,可将其展开或折叠,以便于查看,只需点击如下图中的蓝色椭圆框住的标记。由此可以看出,Gadget是Dashboard的构成组件。
Lauren的FPGA
2019/10/30
1.3K0
深度解析ug1292(6)
当设计出现布线拥塞时,通常会导致布线延迟增大,从而影响时序收敛。布线拥塞程度可通过如下两种方式获取:
Lauren的FPGA
2019/10/30
1.4K0
Vivado模块化综合技术的应用场景
模块化综合技术的最大优势在于实现了Vivado在模块层面对设计的综合进行相应地优化处理,使得综合的设置更能匹配设计的需求,从而提高综合的QoR。这里我们将介绍一下模块化综合技术的应用场景。
Lauren的FPGA
2019/10/31
9260
FPGA Xilinx Zynq 系列(二十八)Vivado HLS: 近视 之 算法综合
今天给大侠带来FPGA Xilinx Zynq 系列第二十八篇,讲述Vivado HLS: 近视之算法综合等相关内容,本篇内容目录简介如下:
FPGA技术江湖
2020/12/30
1.4K0
【Vivado那些事儿】Vivado环境一览
在我看来,用好一个工具的前提,就需要对工具有比较清晰的认识,不然对工具都不熟悉,遇到一些关乎工具上的问题时,会根本无从下手,也会在一定程度上影响项目的开发,所以很多时候,在进行一些项目的时候,团队里使用的开发工具的版本都会进行一定的统一,而不能一味的追求新版本,就是为了减少工具引起问题,从而提高项目进展速度。(PS:个人使用就看你自己的心情了)
狂人V
2020/12/08
1.4K0
【Vivado那些事儿】Vivado环境一览
【Vivado那些事儿】Vivado 增量综合流程
从 Vivado 2019.1 版本开始,Vivado 综合引擎就已经可以支持增量流程了。这使用户能够在设计变化较小时减少总的综合运行时间。
碎碎思
2021/12/31
1.8K0
【Vivado那些事儿】Vivado 增量综合流程
替换Debug Probes其实很简单
在使用Vivado Logic Analyzer调试时,常会遇到这样的情形:当前阶段需要观测信号xa_reg,下一阶段需要观测xb_reg,两个阶段原始设计并没有改变,只是需要将xa_reg替换为xb_reg。此时,一种方法是回到综合后的设计,通过Setup Debug重新设置待观测信号,这样固然可行,但需要对设计重新布局布线,耗时,效率低。另一种方法是采用ECO(Engineering Change Order)的模式,直接在布线后的网表中实现替换操作。相比于前一种方法,这种方法省时高效。
Lauren的FPGA
2019/10/30
1.2K0
借助Elaborated Design优化RTL代码
在Vivado FlowNavigator中有一个Elaborated Design,如下图所示,属于RTL Analysis这一步对应的设计。可能很多工程师都没有使用到,而实际上对于代码优化,它是很有帮助的。
Lauren的FPGA
2020/10/27
1.8K0
借助Elaborated Design优化RTL代码
Vivado 2018.3 report_qor_suggestions怎么用
从Vivado 2018.3开始,可以通过图形界面方式使用命令report_qor_suggestions,如图1所示。从Tcl角度而言,就是多了一个-name选项。
Lauren的FPGA
2019/10/30
1.7K0
【Vivado那些事】OOC综合方式
之前有分析过Vivado中不弹出OOC综合方式窗口的解决方式,传送门《【每周一问】Vivado综合时突然OCC模式弹不出来了》,里面简单介绍了和Global方式的区别,但是没有更加深入,今天在更深入的介绍[OOC综合方式]。
碎碎思
2021/01/28
1.5K0
Vivado 2018.3这个Gadget你用了吗
在Vivado 2018.3的Project Summary窗口中,新增了dashboard按钮,其主要功能是用于显示更多细节信息,同时,可用于不同Design Runs之间的对比。
Lauren的FPGA
2019/10/30
1K0
相关推荐
Vivadoz中增量编译与设计锁定
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档