利用Zynq Soc创建一个嵌入式工程
英文题目: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创建一个嵌入式工程的更多相关文章
- 创建一个Android工程
Creating an Android Project 原文演示了怎么通过Android Studio和命令行两种方式来创建一个Android工程. 原文链接:http://developer.and ...
- 利用ZYNQ SOC快速打开算法验证通路(1)——MATLAB浮点数与定点二进制补码互转
最近本人一直在学习ZYNQ SOC的使用,目的是应对科研需要,做出通用的算法验证平台.大概思想是:ZYNQ PS端负责与MATLAB等上位机数据分析与可视化软件交互:既可传输数据,也能通过上位机配置更 ...
- 使用idea创建一个maven工程
使用idea创建一个maven工程 一.创建maven工程 二.输入工程名 三.指定maven仓库 四.点击finish 五.修改工程结构(file->project structure) 六. ...
- Eclipse创建一个mybatis工程实现连接数据库查询
Eclipse上创建第一mybatis工程实现数据库查询 步骤: 1.创建一个java工程 2.创建lib文件夹,加入mybatis核心包.依赖包.数据驱动包.并为jar包添加路径 3.创建resou ...
- django学习笔记【001】django版本的确定&创建一个django工程
2.3 查看当前的django版本 python3. -m django --version 2.3.1 创建一个django工程 django-admin startproject mysite 在 ...
- 使用Idea第一次创建一个Mavne工程时没有src目录
在使用idea创建一个maven工程时没有src目录,可能出现的问题很多,我先把我自己的问题分享上来 因为没有src,可能是因为maven插件还没下载到本地仓库.maven插件的版本和jdk版本冲突或 ...
- 利用ZYNQ SOC快速打开算法验证通路(6)——LWIP实现千兆TCP/IP网络传输
一.前言 之前ZYNQ与PC之间的网络连接依赖于外接硬件协议栈芯片,虽然C驱动非常简单,但网络带宽受限.现采用LWIP+PS端MAC控制器+PHY芯片的通用架构.关于LWIP库,已经有很多现成的资料和 ...
- 创建一个Portlet工程
使用Liferay的SDK创建一个简单的Portlet,此Portlet不包括业务逻辑.不包括数据库,只有简单的页面展现,用以说明Portlet的开发过程. 一.创建Portlet工程 1.打开Lif ...
- UE4编程之C++创建一个FPS工程(二)角色网格、动画、HUD、子弹类
转自:http://blog.csdn.net/u011707076/article/details/44243103 紧接上回,本篇文章将和大家一同整理总结UE4关于角色网格.动画.子弹类和HUD的 ...
随机推荐
- We are writing to let you know we have removed your selling privileges
Hello, We are writing to let you know we have removed your selling privileges, canceled your listin ...
- 子元素设置margin-top后,父元素跟随下移的问题
子元素设置margin-top后,父元素跟随下移的问题 <!DOCTYPE html> <html lang="en"> <head> < ...
- scrum立会报告+燃尽图(第三周第三次)
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2286 项目地址:https://coding.net/u/wuyy694 ...
- VK Cup 2015 - Qualification Round 1 D. Closest Equals 离线+线段树
题目链接: http://codeforces.com/problemset/problem/522/D D. Closest Equals time limit per test3 secondsm ...
- web.config详解(转载)
该文为转载 原文地址:http://www.cnblogs.com/gaoweipeng/archive/2009/05/17/1458762.html 花了点时间整理了一下ASP.NET Web.c ...
- Strust2: 工作流程
以下为Struts2的体系结构图: Struts2框架处理用户请求,大体分为以下几个过程: (1)用户发出一个HttpServletRequest请求 (2)请求经过一系列过滤器,最后达到Filter ...
- Ribbon源码解析
SpringCloud中的Ribbon开源项目,提供了客户端的负载均衡算法.这篇文章,我们来介绍下他是如何实现的.为了方便理解,我们以客户端调用的流程来介绍,其中会穿插介绍相关源代码. 简单回顾下Ri ...
- ci事务
CI框架百问百答:CodeIgniter的事务用法?--第9问 时间 2013-06-06 10:57:45 CSDN博客 原文 http://blog.csdn.net/haor2756/art ...
- 【uoj#175】新年的网警 结论题+Hash
题目描述 给出一张 $n$ 个点 $m$ 条边的无向连通图,每条边的边权为1.对于每个点 $i$ ,问是否存在另一个点 $j$ ,使得对于任意一个不为 $i$ 或 $j$ 的点 $k$ ,$i$ 到 ...
- appium手机操作
1.按键操作 pressKeyCode(key, metastate) key为按键事件,metastate为辅助功能键 举例: pressKeyCode(AndroidKeyCode.HOME) ...