最近在跟着高亚军老师的分析文章来学习Xilinx最近发布的《UltraFast Design Methodology Timing Closure Quick Reference Guide (UG1292)》,这是一个有关UltraFast 设计方法论的文档,非常值得细细品读,反复推敲,不断打磨自己的工程。

但是一上来就遇到一个操作Run report_failfast,熟悉TCL操作的人,一看就知道这是一条TCL执行命令,但是在Tcl Console敲入命令的时候,发现命令非法(没有这条命令)。。。。感觉在UltraFast设计法中这条命令挺重要的,所以得解决这个问题,请教了高老师之后才发现需要在Xilinx Tcl Store中安装相应的库。

什么是Xilinx Tcl Store呢?简单的说就是一个开源共享的Tcl脚本库,这些脚本可以扩展 Vivado 设计套件的核心功能,从而进一步提升生产力和易用性。

1. 安装Xilinx Tcl Store

平台:Vivado 2016.4

安装位置:Tools--Xilinx Tcl Store--Design Utilities,先不要点击安装(install)。

注意:你手上的Xilinx Tcl Store可能不是最新的,有可能也不包含report_failfast这个命令,所以得更新一下,点击左下角的Refresh。没错!你可能也会报错!原因嘛……就不说了。直接手动更新!

2. 手动更新

2.1 下载库

Xilinx Tcl Store是开源的,GitHub中有完整的版本,网址:https://github.com/Xilinx/XilinxTclStore 直接打包下载所有的文件,下载完成并解压后,其文件夹名为Xilinx Tcl Store-Master,将其名字改为Xilinx Tcl Store,并复制到.\Xilinx\Vivado\2016.4\data,替换掉原来的Xilinx Tcl Store文件夹。

2.2 修改环境变量

如图修改环境变量,注意是修改用户里面的环境变量,变量名XILINX_TCLAPP_REPO,变量值就是Xilinx Tcl Store的路径(移动后的,在Xilinx安装目录下的)。

经过以上两步之后,再次进入Vivado--Tools--Xilinx Tcl Store,你会发现没有Refresh按钮了,变成了最新版本,成功!注意:库目录的版本更新了,但是貌似里面的各个库版本并没有更新,也许在Design Utilities的库详细介绍中依然看不到report_failfast的介绍,但是在Tcl Console中确实可以使用了。

Xilinx Tcl Store内的命令,使用方法是:xilinx::designutils::report_failfast

参考文献:

  1. https://forums.xilinx.com/t5/Vivado-TCL-Community/Refresh-catalog-not-updating-in-xilinx-tcl-store/m-p/569881
  2. 深度解析U1292(10)--Lauren的FPGA(高亚军老师的公众号,值得关注~)

干掉Vivado幺蛾子(1)-- Xilinx Tcl Store的更多相关文章

  1. 干掉Vivado幺蛾子(2)-- 快速替换debug probes

    目录 1. 什么是ECO 2. 操作步骤 参考文献: 我们做项目,进入找bug阶段时,需要用ILA捕获相关的信号.之前我做项目,每改动一次探针(debug probes),都要重新综合.实现,通常要花 ...

  2. Python_内置函数之round的幺蛾子

    pycharm运行结果 1 ret = round(0.5) print(ret) >>> 0 ret1 = round(1.5) print(ret1) >>> ...

  3. cocoapod安装过程中的幺蛾子

    cocoapod是GoogleMobileAd framework推荐的一个自动解决依赖关系的工具.   安装cocoapod时遇到问题: EthandeMacBook-Air:Xcode ethan ...

  4. 27-java String 之间比较的幺蛾子

    仔细看啊, 他有双引号啊!!!!

  5. Android 7.1.1 又出幺蛾子了 —— 再谈 Android 上的 Wifi 连接

    在之前的博客文章中,我写了点在 Android 6 系统中连接到指定名称的 Wifi 的体验.然而,在 Android 7 中,有一些东西又变化了.另外就是在那篇文章中我说要提供代码,结果拖到这篇文章 ...

  6. UltraFast设计法实践(1) -- 初始设计检查

    目录 1. report_failfast 1.1 命令使用 1.2 优化 1.3.总结 2.report_timing_summary 3. report_methodology 4. 总结 5.遗 ...

  7. 73.Vivado使用误区与进阶——在Vivado中实现ECO功能

    关于Tcl在Vivado中的应用文章从Tcl的基本语法和在Vivado中的应用展开,继上篇<用Tcl定制Vivado设计实现流程>介绍了如何扩展甚至是定制FPGA设计实现流程后,引出了一个 ...

  8. Tcl在Vivado中的使用

    http://blog.chinaaet.com/detail/36014 Vivado是Xilinx最新的FPGA设计工具,支持7系列以后的FPGA及Zynq 7000的开发.与之前的ISE设计套件 ...

  9. Vivado Design Suite用户指南之约束的使用第二部分(约束方法论)

    Constraints Methodology(约束方法论) 关于约束方法论 设计约束定义了编译流程必须满足的要求,以使设计在板上起作用. 并非所有步骤都使用所有约束在编译流程中. 例如,物理约束仅在 ...

随机推荐

  1. CSS外边距合并的几种情况

    CSS外边距合并的几种情况 外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者. 外边距在CSS1中就有 The width ...

  2. 从零开始安装hue(原创-转载注明出处)

    hue安装需要从github上面下载源码,进行编译安装.github上面给出的安装教程很简单 然而实际上在安装的过程中遇到了无数个坑,下面开始真正意义上的从零开始安装hue. 安装环境: centOS ...

  3. turntable

    1.业务流程 2.80001代码逻辑 3.80002代码逻辑 4抽奖概率计算

  4. Spring.net 容器注入是替换(后处理器appConfigPropertyHolder)

    .定义节点 下面两个都定义为键值对 <section name="DaoConfiguration" type="System.Configuration.Name ...

  5. Perl 学习笔记-子程序

    1.定义子程序 使用sub关键字定义 ;   子程序名和标识符同要求, 但是有的特殊的可以用 &符号;  子程序是全局的, 不需要再使用前声明;  重名函数后者覆盖前者. sub roger{ ...

  6. 4.4.6 数组也能无锁:AtomicIntegerArray

    数组也可以实现cas操作,有以下几个类以及用法如下: public class AtomicTntegerArrayTest { public static void main(String[] ar ...

  7. RenderPage()加载局部页和传递数据

    System.Web.WebPages.WebPageBase类的方法public override HelperResult RenderPage(string path, params objec ...

  8. UVALive 7752 Free Figurines (瞎搞)

    题意:给定 n 个盒子,然后告诉你每个盒子在哪个盒子里,数值越大,盒子越大,给定你初态,和末态,问你最少要几步能完成,只有两种操作,一种是把一个盒子连同里面的小盒子放到一个空盒子里,另一种是把一个堆盒 ...

  9. HDU 5977 Garden of Eden (树分治+状态压缩)

    题意:给一棵节点数为n,节点种类为k的无根树,问其中有多少种不同的简单路径,可以满足路径上经过所有k种类型的点? 析:对于路径,就是两类,第一种情况,就是跨过根结点,第二种是不跨过根结点,分别讨论就好 ...

  10. JavaScript - this详解 (一)

    侃侃JavaScript中的this this为何如此多变? this总是跟它的执行上下文有关,而在JavaScript总会有开辟新的执行上下文的东西,比如函数,所以,this才如此的变化. 执行环境 ...