英文题目:Using the Zynq SoC Processing System,参考自ADI的ug1165文档。

利用Zynq Soc创建一个嵌入式工程,该工程总体上包括五个步骤:

步骤一、新建空白工程

步骤二、创建一个Embedded Processor工程

步骤三、Zynq7 Processing System的管理

步骤四、综合仿真、编译运行、生成二进制文件

步骤五、Exporting Hardware to SDK

步骤一、新建工程

1. 点击Vivado图标启动软件,Create New Project 新工程。假定创建工程名为my_test,选择打勾方框[checked]

2. 选中RTL Project,注意下面方框不选中[Unchecked]。其它不选择。

3. 接下来Add Sources、Add Existing IP、Add Constraints三个界面不做任何改变,一路next。

4. 选择 Board选项,搜索ZYNQ-7 ZC702 Evaluation Board作为开发板。

5. 点击Finish,至此一个空工程建立完毕。

步骤二、创建一个Embedded Processor工程。

1. 在IP Integrator下,点击 Create Block Design.创建块的设计名为tutorial_bd,其它不变,点击OK.

2. 初始化后,在右侧Diagram下选择 Add IP图标按钮,在弹出框中输入zynq搜索IP核ZYNQ7,按Enter键确认。

3. 双击ZYNQ Processing System该IP核,进入Block Design界面如下所示。

步骤三、Zynq7 Processing System的管理

1. 点击Presets按钮,选择ZC702。此时左侧选择各个外设均有变化。

I/O Peripherals 部分引脚被选中。

MIO Configuration 中MIO设备部分被选中。

2. 点击OK关闭自定义IP核界面,此时IP核按照预先ZC702开发板来配置。

3. 点击Run Block Automation运行,没有报错。

4. 右键点击Diagram中空白处,选择Validate Design

此时,弹出错误框

5. 将鼠标放在M_AXI_GP0_ACLK 端口,产生画笔性质后连线至 FCLK_CLK0,重新选择Validate Design,显示成功并点击OK。

6. 在Block Design视窗, 选择Sources项。在 Design Sources下, 右键单击 tutorial_bd并选择Create HDL Wrapper.

7. 在弹出框选择Let Vivado manage wrapper and auto-update并点击OK

8. 在Design Sources视窗下,右键tutorial_bd_i - tutorial_bd(tutorial_bd.bd) 并选择Generate Output Products.

9. 生成成功后,点击OK确认。在IP Sources tab选项卡下面,可以看到所生成文件

步骤四、综合仿真、编译运行、生成二进制文件

1. 在左侧Synthesis,下,点击Run Synthesis.

此时,右上角会一直有进度条运行,直至运行结束。

2. 在弹出框选择Run Implementation,注意进度条运行结束,点击OK。

3. 点击Generate Bitstream,注意进度条运行结束,点击OK.

至此,二进制文件生成。下一步将输出到hardware并运行软件Software Development Kit (SDK)。

步骤五、Exporting Hardware to SDK

1. 在vivado工具栏上,点击File > Export > Export Hardware,弹出如下界面,点击OK。

注意,仅当工程中有PL设计和二进制文件生成是,选项卡Include bitstream才被选中。

2. 选择File > Launch SDK.在弹出界面中选择默认,点击OK。

SDK软件打开,显示system.hdf文件,描述了处理器地址的映射。

3. 关闭SDK。

:在Vivado中使用“Export Hardware”输出的硬件描述文件。都在工程目录下 “/<vivado project>/<project name>.sdk/<top module name>_hw_platform_0”文件夹下,可供petalinux使用。

利用Zynq Soc创建一个嵌入式工程的更多相关文章

  1. 创建一个Android工程

    Creating an Android Project 原文演示了怎么通过Android Studio和命令行两种方式来创建一个Android工程. 原文链接:http://developer.and ...

  2. 利用ZYNQ SOC快速打开算法验证通路(1)——MATLAB浮点数与定点二进制补码互转

    最近本人一直在学习ZYNQ SOC的使用,目的是应对科研需要,做出通用的算法验证平台.大概思想是:ZYNQ PS端负责与MATLAB等上位机数据分析与可视化软件交互:既可传输数据,也能通过上位机配置更 ...

  3. 使用idea创建一个maven工程

    使用idea创建一个maven工程 一.创建maven工程 二.输入工程名 三.指定maven仓库 四.点击finish 五.修改工程结构(file->project structure) 六. ...

  4. Eclipse创建一个mybatis工程实现连接数据库查询

    Eclipse上创建第一mybatis工程实现数据库查询 步骤: 1.创建一个java工程 2.创建lib文件夹,加入mybatis核心包.依赖包.数据驱动包.并为jar包添加路径 3.创建resou ...

  5. django学习笔记【001】django版本的确定&创建一个django工程

    2.3 查看当前的django版本 python3. -m django --version 2.3.1 创建一个django工程 django-admin startproject mysite 在 ...

  6. 使用Idea第一次创建一个Mavne工程时没有src目录

    在使用idea创建一个maven工程时没有src目录,可能出现的问题很多,我先把我自己的问题分享上来 因为没有src,可能是因为maven插件还没下载到本地仓库.maven插件的版本和jdk版本冲突或 ...

  7. 利用ZYNQ SOC快速打开算法验证通路(6)——LWIP实现千兆TCP/IP网络传输

    一.前言 之前ZYNQ与PC之间的网络连接依赖于外接硬件协议栈芯片,虽然C驱动非常简单,但网络带宽受限.现采用LWIP+PS端MAC控制器+PHY芯片的通用架构.关于LWIP库,已经有很多现成的资料和 ...

  8. 创建一个Portlet工程

    使用Liferay的SDK创建一个简单的Portlet,此Portlet不包括业务逻辑.不包括数据库,只有简单的页面展现,用以说明Portlet的开发过程. 一.创建Portlet工程 1.打开Lif ...

  9. UE4编程之C++创建一个FPS工程(二)角色网格、动画、HUD、子弹类

    转自:http://blog.csdn.net/u011707076/article/details/44243103 紧接上回,本篇文章将和大家一同整理总结UE4关于角色网格.动画.子弹类和HUD的 ...

随机推荐

  1. Wacom将在CES 2015上发布全新旗舰版Cintiq

    Cintiq 27QHD和Cintiq 27QHD touch拥有宽大的工作表面,以及令人惊喜的屏幕笔触和颜色性能. 2015年1月6日,Wacom发布了Cintiq 27QHD和Cintiq 27Q ...

  2. 如何更改Arcmap里经纬度小数点后面的位数?

    customize>arcmap option>data view >round coordinate to 改成想要显示的小数位数

  3. BFC的表象认识

    首先字面翻译,这三个字母分别代表什么,box,formatting, context,它决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用. 形象点就是说一种规范,规范什么呢?规范盒子内部 ...

  4. C/C++学习计划

    学习内容:C语言程序设计精髓/计算机程序设计(C++) 学习理由:基础比较薄弱,想先打好基础. 时间安排:每天学习两课时. mooc地址:http://www.icourse163.org/home. ...

  5. springboot+vue+element:echarts开发遇见问题---后端sql(三)

    <select id="getSumRequestRankingCount" parameterType="java.lang.String" resul ...

  6. 跨域写cookie

    假设a站想往b站写cookie,那么目前有两种方案,参考如下: 第一种(使用jsonp): a站js代码如下: $.ajax({ url: 'http://www.b.com/jsonp.jsp?do ...

  7. lintcode-203-线段树的修改

    203-线段树的修改 对于一棵 最大线段树, 每个节点包含一个额外的 max 属性,用于存储该节点所代表区间的最大值. 设计一个 modify 的方法,接受三个参数 root. index 和 val ...

  8. PAT 甲级 1041 Be Unique

    https://pintia.cn/problem-sets/994805342720868352/problems/994805444361437184 Being unique is so imp ...

  9. php自带的filter过滤函数

    PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤. filter_has_var()检查是否存在指定输入类型的变量. filter_id()返回指定过滤器的 ID 号. filt ...

  10. egret 开发总结

    用egret快两年了,开发过两款成功的游戏.<<妖怪修走 |诸神的黄昏>><<损友圈|我的地盘>> 妖怪修走是个重度游戏,付费率超高.也比较成功. 损友 ...