初识Vivado
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的更多相关文章
- Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(6)
Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(6) 1.创建工程与开启GUI 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 ...
- Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(4)
Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(4) 1.老样子,首先运行tcl脚本建工程: Vi ...
- Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(3)
Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(3) 优化lab1 1.创建工程,开启HLS 运行 ...
- Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》(2)
Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis>(2) 1.实验目的 2.启动命令行 将命令行切换 ...
- Vivado HLS初识---阅读《vivado design suite tutorial-high-level synthesis》
Vivado HLS初识---阅读<vivado design suite tutorial-high-level synthesis> 1.启动 2.创建工程 3.添加源文件 4.添加测 ...
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- 初识Hadoop
第一部分: 初识Hadoop 一. 谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
随机推荐
- bzoj-1012 1012: [JSOI2008]最大数maxnumber(线段树)
题目链接: 1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec Memory Limit: 162 MB Description 现在请求你维护一个数列,要 ...
- BZOJ_2196_[Usaco2011 Mar]Brownie Slicing_二分答案+贪心
BZOJ_2196_[Usaco2011 Mar]Brownie Slicing_二分答案+贪心 Description Bessie烘焙了一块巧克力蛋糕.这块蛋糕是由R*C(1 <= R,C ...
- 「LuoguT36048」 Storm in Lover
Description 平成二十四年(2012年),5月11日,东京,某弓道场. "呐,呐,海未酱,你听说了吗?几天后的那场弓道大会?啊-!"橙发少女兴奋地拿着一张传单一样的纸跑向 ...
- 洛谷P4316绿豆蛙的归宿——期望
题目:https://www.luogu.org/problemnew/show/P4316 期望水题,从终点向起点推,因为是DAG,所以拓扑序推过去即可. 代码如下: #include<ios ...
- bzoj2431逆序对数列——递推
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2431 考虑新加入一个数i,根据放的位置不同,可以产生0~i-1个新逆序对: 所以f[i][j ...
- Cocos2dx+lua合适还是Cocos2dx+js合适?
问题: 开发cocos2dx手游Cocos2dx+lua合适还是Cocos2dx+js合适 百牛信息技术bainiu.ltd整理发布于博客园 回答: 作者:廖宇雷链接:https://www.zhih ...
- Appium+python自动化
名称 链接地址 Appium+python自动化8-Appium Python API(上) http://mp.weixin.qq.com/s/WvpT5oRrYY22avI95FuypQ Appi ...
- C++ 指针p1 p2,p1-p2 与*p1-*p2的区别
p1-p2 指 指针的地址值相减,计算两个指针之间的偏移量 *p1-*p2 指 指针指向的内存地址里面存的数值相减
- Where Amazing Happens
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission( ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 08. 输入Model和防止重复Post
通过action的参数传入一个model 通过input的name属性和model属性对应上 通常是使用Http post去做 快速创建了这个Action 这个Action很简单我们只需要返回View ...