Vivado 设计套件包括高度集成的设计环境和新一代从系统到 IC 级的工具,这些均建立在共享的可扩展数据模型和通用调试环境基础上。这也是一个基于 AMBA AXI4 互联规范、IP-XACT IP 封装元数据、工具命令语言 (TCL)、Synopsys 系统约束 (SDC) 以及其它有助于根据客户需求量身定制设计流程并符合业界标准的开放式环境。Vivado 工具将各类可编程技术结合在一起,能够可扩展实现多达 1 亿个等效 ASIC 门的设计。

UltraFast设计方法

为了最大限度地提高系统性能,降低风险,实现更快速和可预测的设计周期,Xilinx 推出了可编程领域的首套综合设计方法。Xilinx 提出了 UltraFast设计方法。面向 Vivado的 UltraFAST 方法学的主体是 UG949 文档,配合相应的 Checklist,随 Vivado 版本同时更新,用户可以在 Xilinx 的主页上免费下载。针对 Vivado 设计套件的 UltraFAST 中文版也已经上市,另外一套全新的针对嵌入式可编程设计的 UltraFAST 嵌入式设计方法指南UG1046和针对高级综合的UltraFAST 方法指南UG1197也已经在 Xilinx 官网上开放下载。

工程模式与非工程模式

Vivado设计有工程和非工程两种模式

(1)工程模式是使用Vivado设计套件工程自动管理设计源文件、设计配置和结果,使用图形化Vivado集成设计环境(IDE)交互式处理设计。在Vivado IDE中可一键式运行整个设计流程。工程模式的关键优势在于Vivado工具可管理整个设计流程,包括工程文件管理、报告生成、数据存储等。在综合后修改HDL源文件,Vivado工具会提示您重新综合。在布线完成后,工具会自动生成时序和功耗报告。

(2) 非工程模式是使用Tcl脚本流程,在非工程模式下,需要自己管理设计源文件和设计过程。源文件只能从当前位置访问,不能将其复制到其它位置。设计结果保留在已分配给Vivado工具进程的机器内存中。使用Tcl命令来设置设计参数和实现选项。您可使用Tcl在设计过程的任何阶段保存设计检查点(DCP)并生成报告。每个设计步骤都可通过Tcl命令独立控制。例如 :

• 如果在综合后修改了一个HDL文件,那么必须记得重新运行综合。

• 如果在布线后需要时序报告,那就需要明确生成时序报告。

GUI和TCL可以相互交叉使用,在使用Tcl脚本流程,但在必要时仍可使用IDE来执行设计分析或约束定义等设计任务。

总之,使用Vivado后感觉Vivado的ultrafast的设计方法和ASIC设计方法特别类似,特别是非工程模式的TCL脚本。正如Xilinx喊的口号一样Vivado是ASIC增强型设计套件,FPGA芯片是ASIC级架构。Vivado只支持7系列,包括A7,K7,V7和ZYNQ。从综合运行体验而言Vivado 很耗内存。跟Altera的Quartus比较而言Vivado还是慢如牛。论坛上有人说Vivado 的综合效果还是一如既往地不好,布局布线算法有所提高,所以,推荐用Synplify做综合,Vivado做布局布线和生成最后的bit文件。

参考文献:

[1] Vivado™ 设计套件是什么?http://china.xilinx.com/china/ch_prs_rls/QA.htm

[2] Xilinx. ug949-Vivado设计套件的UltraFast设计方法指南. 2014,3.

[3] 何斌. Xilinx FPGA权威设计指南—Vivado 2014集成开发环境. 电子工业出版社.2015,2.

初识Vivado的更多相关文章

  1. Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(6)

    Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(6) 1.创建工程与开启GUI 2.调试 查看关于 ...

  2. Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(5)

    Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(5) 1.创建工程 启动vidado HLS co ...

  3. Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(4)

    Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(4) 1.老样子,首先运行tcl脚本建工程: Vi ...

  4. Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(3)

    Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(3) 优化lab1 1.创建工程,开启HLS 运行 ...

  5. Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(2)

    Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(2) 1.实验目的 2.启动命令行  将命令行切换 ...

  6. Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》

    Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis> 1.启动 2.创建工程 3.添加源文件 4.添加测 ...

  7. Android动画效果之初识Property Animation(属性动画)

    前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...

  8. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  9. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

随机推荐

  1. java停止线程

    本文将介绍jdk提供的api中停止线程的用法. 停止一个线程意味着在一个线程执行完任务之前放弃当前的操作,停止一个线程可以使用Thread.stop()方法,但是做好不要使用它,它是后继jdk版本中废 ...

  2. Laravel配置nginx环境

    前言: 之前坑的!一直在尝试配置,但都失败了,只能用着apache,但是最近想整合swoole到laravel,无奈当前测试服务器是nginx,我只能再尝试在nginx上搭laravel环境 方法如下 ...

  3. threesixty.min.js 和jquery.threesixty.js使用总结----实现360度展示

    最近公司做一个项目需要360度展示汽车的外观,就用到了threesixty.min.js,自己总结一下使用方法: treesixty.min.js 源码: /*! threesixty-slider ...

  4. CSS counter计数器(content目录序号自动递增)详解

    一.CSS计数器三角关系 CSS计数器只能跟content属性在一起的时候才有作用,而content属性貌似专门用在before/after伪元素上的.于是,就有了,“计数器↔伪元素↔content属 ...

  5. gulp 实现 js、css,img 合并和压缩(转)

    前提条件,知道如何安装nodejs.gulp,这里不做介绍,可以自行google 实现此功能需要安装的gulp工具有如下 npm install gulp-htmlmin gulp-imagemin ...

  6. 两分钟彻底让你明白Android Activity生命周期(图文)!(转载)

    转自:http://kb.cnblogs.com/page/70125/ 大家好,今天给大家详解一下Android中Activity的生命周期,我在前面也曾经讲过这方面的内容,但是像网上大多数文章一样 ...

  7. ORACLE PL/SQL 实例精解之第六章 迭代控制之一

    6.1 简单循环 简单循环,就想其名称一张,是一种最基本循环.简单循环具有如下结构 LOOP STATEMENT 1; STATEMENT 2; ... STATEMENT N; END LOOP; ...

  8. Ant Design Vue项目解析-前言

    源码系列文章很长时间没有更新,一是在考虑文章用什么方式写质量会更高,用什么方式总结更易于扩展和总结知识点,加上工作.看书.健身占用的时间比较多所以也没时间去整理.最近在网上看到一篇文章感觉这种方式不错 ...

  9. 51nod1126【矩阵快速幂】

    思路: 自己的一点心得:中间矩阵为最终矩阵. 搞出来很简单的: #include <bits/stdc++.h> using namespace std; const int N=1e2+ ...

  10. 2016 Multi-University Training Contest 3 1011【鸽巢原理】

    题解: 坐标(0,m)的话,闭区间,可能一共有多少曼哈顿距离? 2m 但是给一个n,可能存在n(n+1)/2个曼哈顿距离 所以可以用抽屉原理了 当n比抽屉的数量大,直接输出yes 不用计算 那...N ...