1.zynq开发板的构造以及推崇的设计理念

设计推崇的理念是设计有知识产权的可重用的IP模块。

2.操作过程中遇到的问题以及解决方法

(1)综合速度慢解决方案:

我们都知道Vivado编译起来相当的慢,每次综合起来我就拿起了手机,这个方法可以提高编译速度,在VIVADO中一个run编译时支持的线程数如下表:(综合时一般是2线程)

Place

Route

Windows默认

2

2

Linux默认

4

4

Windows开启maxThreads=8

4

4

linux开启maxThreads=8

8

8

A:在tcl脚本处输入如下命令:

  设置多线程的命令为:  set_param general.maxThreads 4

  读取当前线程数的命令: 为get_param  general.maxThreads

B:增量编译设计:

  1、首先完成非增量编译,获得参考的布局布线dcp文件;

  2、当逻辑修改小于5%,需重新出版本,采用增量编译

  3、按步骤打开:implementation setting——options——incremental compile,浏览文件

  4、选择.runs / impl_1 / *.dcp

  5、点击run implementation,等待结果

效果:预计能减少30%左右的时间。

(2)引脚指定约束xdc文件的编写语法要求等

参考网址

https://blog.csdn.net/angelbosj/article/details/52921563

http://xilinx.eetrend.com/article/8441

https://blog.csdn.net/feiliantong/article/details/78011665

(3)dcp文件的用途:http://blog.chinaaet.com/luozhongpin1989/p/37153

3.操作的流程

http://www.docin.com/p-1856047260.html

以一个工程为例,按照如下步骤开发关于block design

#1.create block design,产生一个空白的工程模板

#2.导入IP核,包括一些经常用到的核,如zynq-processing-system,axi-dma,conact,axi-fifo-data,以及我们需要的所有的自己编写的HLS的IP核

#3.选择auto-connect对模块进行连接,但是这个过程并不会把所有的模块都接好,所以还需要进一步的手动连接(需要注意的是对于axi相关的连线,能一根直接连接完毕就不要用多根自己连接,会导致编译错误)

#4.进行validate design————generate block design(相当于产生一个完整的工程)————create wrapper(将工程包装起来,右击source的system选择create HDL wrapper即可)

#5.执行综合和implementation(该过程费时间较长,可以先略过去)然后generate bitstream

#6.file--export hardware 然后launch SDK,打开SDK进行软件部分的设置

#7.软件部分的实现过程直接导入main.c等相关的文件,file ---refresh后,保存就会自动编译

#8.编译成功后,右击system_wrapper_hw_platform_0,在弹出来的对话框中选择run as ---run configurations,然后选择对应的bitstream文件,接下来就可以将文件下载到开发板,进行工程的执行。

转】用Vivado/SDK实现microblaze的一些总结

vivado操作基本问题的更多相关文章

  1. Zynq系列FPGA如何固化bit文件到QSPI_Flash

    最近由于项目需要,要将bit文件固化到zedboard的flash中,使程序上电自启,断电不丢失. 我们知道,一般板级调试的时候都是直接下载bit流到FPGA就行,固化到Flash的话,也是先生成.m ...

  2. [转载]Vivado轻松实现IP封装

    Vivado轻松实现IP封装 1.新建一个测试工程 工程化的设计方法是离不开工程的,第一步往往都是新建工程,后面我会学习去工程化的开发方法,可能会更加高效. 2.利用向导完成IP封装 2.1.启动IP ...

  3. [vivado系列]Zynq开发常用文档

    时间:2016.06.13 目的:阶段性总结学习的策略 ------------------------------------------------------------------------ ...

  4. [Xilinx]Modelsim独立仿真Vivado生成的PLL核

    EDA Tools: 1.Vivado 2015.1(64-bit) 2.Modelsim SE-64 10.1c Time: 2016.05.26 ------------------------- ...

  5. Java事务处理全解析(一)——Java事务处理的基本问题

    Java中的事务处理有多简单?在使用EJB时,事务在我们几乎察觉不到的情况下发挥着作用:而在使用Spring时,也只需要配置一个TransactionManager,然后在需要事务的方法上加上Tran ...

  6. 设置ISE/vivado中默认文本编辑器为gvim

    ise windows版,添加方式 ISE下点击菜单Edit -> Preferences -> Editor. 在Editor选项框里选择Custom,在Command line syn ...

  7. Tcl在Vivado中的使用

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

  8. 在Vivado中调用ModelSim生成FSM的状态转移图

    如果我们已经书写了一段FSM代码,现在想倒过来把它转换成为状态转移图,方便我们直观地检查我们书写的状态对不对(在写论文什么的画图太麻烦的时候,有个自动生成的是多方便啊!),应该怎么弄呢?通过在Viva ...

  9. [转帖]vivado & VS2013工具

    来源:http://bbs.csdn.net/topics/380057699 添加OpenCV库后,MFC在Debug模式下调试,提示应用程序无法正常启动(0xc000007b). 解决方法:在环境 ...

随机推荐

  1. vue-router HTML5 History 模式(转自官网)

    vue-router 默认 hash 模式 -- 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载. 如果不想要很丑的 hash,我们可以用路由的 his ...

  2. 京东云数据库RDS SQL Server高可用概述

    数据库的高可用是指在硬件.软件故障发生时,可以将业务从发生故障的数据库节点迁移至备用节点.本文主要讲述SQL Server高可用方案,以及京东云RDS数据库的高可用实现. 一.高可用解决方案总览 1. ...

  3. Object中有哪些公共方法及作用

    大家在学习java的时候,一定遇到过Object类,因为在java单一继承体系中Object类是根类,所有的类都会继承它,并拥有Object的公共方法,意味着在java的面向对象的世界中,所有对象都拥 ...

  4. 1)基本的MFC程序创建过程

    1)基本的MFC创建过程: 2)   选择MFC应用程序: 3)然后选择特定的选项  直接完成就行了: 4)下面就是建成的样子: 5)然后是  运行结果: 6)有一个问题  那个  菜单栏是属于  F ...

  5. PAT Advanced 1044 Shopping in Mars (25) [⼆分查找]

    题目 Shopping in Mars is quite a diferent experience. The Mars people pay by chained diamonds. Each di ...

  6. JavaScript学习笔记 - 进阶篇(7)- 浏览器对象

    window对象 window对象是BOM的核心,window对象指当前的浏览器窗口. window对象方法: 注意:在JavaScript基础篇中,已讲解了部分属性,window对象重点讲解计时器. ...

  7. win10下挂载efi分区

    管理员身份打开cmd 1.输入diskpart, 2.输入list disk,列出所有的disk 3.select disk xxx,xxx代表你要选的disk 数字,比如:select disk 0 ...

  8. Python中比较特殊的几种数据类型list、tuple、dict、set

    list list(列表)是Python内置的一种数据类型,它是一种有序.可变的集合,可以随时添加和删除其中的元素. >>> classmates = ['Li', 'Tom', ' ...

  9. Python的变量和注释

    变量 python的变量就像一个名字,一个变量对应一个内存地址.当我们定义一个变量时,Python解释器会在内存中开辟一片空间,用于存放各种数据(字符串.列表.元组.字典.对象....). 不同的变量 ...

  10. iOS播放器、Flutter高仿书旗小说、卡片动画、二维码扫码、菜单弹窗效果等源码

    iOS精选源码 全网最详细购物车强势来袭 一款优雅易用的微型菜单弹窗(类似QQ和微信右上角弹窗) swift, UITableView的动态拖动重排CCPCellDragger 高仿书旗小说 Flut ...