Xilinx SDK使用教程
本文参考 Xilinx SDK软件内置的教程,打开方法:打开SDK->Help->Cheet Sheets...->Xilinx SDK Tutorials,这里有6篇文档。本文详细介绍其中的4篇(与Application相关)
如何创建一个新的软件应用
1.打开SDK,切换到c/c++界面下。(有两个界面,还有一个是Debug界面,在软件右上角处切换)
2.指定一个新的硬件平台项目
在SDK开发软件时,需要指定硬件平台。(如果你打开一个现成的SDK工作空间,这一步可以省略)如果SDK工作空间中没有指定,BSP新建窗口会弹出,询问你硬件平台。
---File > New > Other > Xilinx > Hardware Platform Specification
---Next, 显示新的硬件项目对话框。
---设定项目名称,以及由Vivado产生的硬件平台。
---Finish.
3.创建一个独立的板级支持包(Board Support Package <BSP>)
---File > New > Board Support Package,打开对话框。
---指定新项目的名字(已初始一个默认的名称)
---从CPU下拉列表中,选择目标处理器
---从BSP OS下拉列表中,选择操作系统,默认是standalone(没有操作系统)
---Finish.弹出BSP设置对话框
---配置参数,生成一个BSP
---OK
4.创建应用项目
---File > New > Application Project
---指定项目名称
---选择OS
---选择目标硬件平台
---选择目标处理器
---选择编程语言
---选择一个现有的BSP,或者新建一个
---Next
---选择一个模板,生成一个可直接运行的软件工程
---Finish
如何调试一个软件应用
1.配置目标连接
如果你想用本地设备,你可以跳过这个步骤。
---确保设备和remote host相连接。
---在remote host上启动hw_server,通过执行hw_server.bat或者hw_server.csh文件。
---在‘Target Connection’下,单击“Add Target Connection”。
---在‘Target Name’中指定远程连接的名称。
---‘Set as default target’此项可选择。
---指定hw_server的ip地址和端口号。hw_server的默认端口号是3121。
---OK
2.调试应用
使用一个调试配置来调试目标硬件平台上的程序。如果已有一个调试配置,可以重复使用。否则就需要创建一个新的。
---Run > Debug Configurations.
---在左边的配置列表中,点击“Xilinx C/C++ application(System Debugger)”。
---点击Debug.
如何profile一个软件应用
在profile一个C程序之前,你应该已经创建了一个软件应用,并在目标硬件平台上运行了。
1.设置硬件
在profile软件应用之前,必须保证中断能周期性地触发以获得程序program counter的值。这需要在系统中有一个独立的定时器。如可查看呢?在Project Explorer中打开硬件平台标准文件(XML文件),点击硬件设计报告链接。查看系统中是否有一个和处理器直接连接的定时器,或者中间夹一个中断控制器。
2.设置BSP
---在Project Explorer中选择BSP
---右键,选择‘Board Support Package Settings’.
---点击操作系统名称,例如‘srandalone’,来配置它的参数。‘enable_sw_intrusive_profiling’为true,选择profile库需要使用的定时器。
---BSP应该使用 -pg编译参数进行编译。 单击‘drivers’,选择cpu驱动,在‘extra_compile_flags’中添加‘-pg’.
---OK
---Build(如果设置了自动构建,就不用手动构建了)
3.设置软件应用
---修改软件设置,来允许使用profile interrupts。更多细节,查看Help.
---右键软件应用,选择C/C++ Settings,(或者 Properties > C/C++ Build > Settings),改变工具设置中gcc编译器为Profiling,单击Enable Profiling(-pg),单击OK。
---Build(如果设置了自动构建,就不用手动构建了)
4.创建一个Profile配置
你需要创建一个profile配置,配置可以反复使用。
---在C/C++视图下,选择需要调试的应用。
---Run > Run
---在配置区域,展开 Xilinx C/C++ ELF.
---单击New。
---确保使用Profile配置选项产生的ELF文件在C/C++视图下被选中。
---在Profile Options下,做下面三件事情:
1>勾选Enable Profiling
2>默认采样频率和直方图尺寸的参数。
3>指定 Scratch Memory Address to Collect Profile Data,用16进制的形式。这是系统内存地址,而不是软件应用使用的内存地址。
---其他都默认,Run
5. Profiling the Application
当程序全部执行完,或者按下停止按钮,SDK会下载profile数据,并把它存在gmon.out文件中。
在Project Explorer下,打开gmon.out。SDK窗口下方自动打开profile视图。
如何调试一个软件应用
1.配置目标连接(与调试相同)
如果你想用本地设备,你可以跳过这个步骤。
---确保设备和remote host相连接。
---在remote host上启动hw_server,通过执行hw_server.bat或者hw_server.csh文件。
---在‘Target Connection’下,单击“Add Target Connection”。
---在‘Target Name’中指定远程连接的名称。
---‘Set as default target’此项可选择。
---指定hw_server的ip地址和端口号。hw_server的默认端口号是3121。
---OK
2.调试应用
使用一个调试配置来调试目标硬件平台上的程序。如果已有一个调试配置,可以重复使用。否则就需要创建一个新的。
---Run > Run Configurations.
---在左边的配置列表中,点击“Xilinx C/C++ application(System Debugger)”。
---点击Debug.
如何使用SPM工程(System Performance Model)
SPM工具提供了硬件和软件的早期exploration
1.创建一个新的SPM工程
File > New > SPM Project
2.加载一个SPM工程
从Projects列表上选择一个SPM应用。单击Finish
3.运行
单击Run.
转载:http://blog.csdn.net/DuinoDu/article/details/46740389
Xilinx SDK使用教程的更多相关文章
- Xilinx SDK Problem Solution in Ubuntu
Problem1: Documention and Example can't open, Xilinx SDK Ubuntu. Step1: Click the Document link o ...
- 【转】微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引
微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引 Senparc.Weixin.MP SDK从一开始就坚持开源的状态,这个过程中得到了许多朋友的认可和支持. 目前SDK已经达到 ...
- 七牛云存储Python SDK使用教程 - 上传策略详解
文 七牛云存储Python SDK使用教程 - 上传策略详解 七牛云存储 python-sdk 七牛云存储教程 jemygraw 2015年01月04日发布 推荐 1 推荐 收藏 2 收藏,2.7k ...
- 微信公众账号 Senparc.Weixin.MP SDK 开发教程
http://www.cnblogs.com/szw/archive/2013/05/14/weixin-course-index.html 微信公众账号 Senparc.Weixin.MP SDK ...
- Xilinx Zynq ZC-702 开发(02)—— 通过 Xilinx SDK 调试 Linux 应用
远程调试环境由 PC 上运行的 System Debugger(集成在 Xilinx SDK 中) 和 Zynq 板上运行的 Linux TCF Agent 共同构成, 两者通过 TCP 连接,架构图 ...
- DJI Mobile SDK 新教程
DJI Mobile SDK 新教程发布! http://bbs.dji.com/thread-20282-1-1.html Android 如何创建一个航拍相机App: 你将学到如何配置DJI Mo ...
- Android Studio 下载地址 & SDK 更新教程
Android Studio 下载地址: http://www.android-studio.org/ SDK 更新教程: http://www.androiddevtools.cn/ SDK 推荐使 ...
- 地图 SDK 系列教程-在地图上展示指定区域(转载)
腾讯位置服务地图SDK是一套提供多种地理位置服务的应用程序接口.通过调用该接口,开发者可以在自己的应用中加入地图相关的功能(如地图展示.标注.绘制图形等),轻松访问腾讯地图服务和数据,构建功能丰富.交 ...
- 【代码开源】GreaterWMS 抖音SDK调用教程
应用介绍 GreaterWMS 抖音SDK调用教程 SDK具体功能: 1,一仓多店,多仓多店 2,库存同步,商品同步 3,快递发货,物流轨迹 4,订单拦截 5,字节云仓 6,精选联盟 7,供应分销 8 ...
随机推荐
- ARM上电启动及Uboot代码分析
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qianlong4526888/article/details/27698707 注意:由于文档是去年 ...
- 002-spring cache 基于声明式注解的缓存-01-Cacheable annotation
一.简述 对于缓存声明,抽象提供了一组Java注解: @Cacheable触发缓存填充(这里一般放在创建和获取的方法上) @CacheEvict触发缓存驱逐(用于删除的方法上) @CachePut更新 ...
- HDU5124:lines(线段树+离散化)或(离散化思想)
http://acm.hdu.edu.cn/showproblem.php?pid=5124 Problem Description John has several lines. The lines ...
- docker——网络配置
一.网络启动与配置参数 Docker启动时会在主机上自动创建一个docker0虚拟网桥,实际上是一个Linux网桥,可以理解为一个软件交换机,它会在挂载其上的接口之间进行数据转发.同时,Docker随 ...
- python2.7多线程的批量操作远程服务器
#!/usr/bin/env python #-*- coding:utf-8 -*- #多线程批量远程执行一条命令 # made in china import threading import s ...
- 2.2 The Object Model -- Reopening Classes and Instances
1. 你不需要一开始定义一个类的全部内容,你可以通过使用reopen方法重新打开一个类并定义新的属性. Person.reopen({ isPerson: true }); Person.create ...
- (1)了解cocostudio基础
操作界面 Cocos Studio的界面主要分为菜单栏.工具栏.对象面板.资源面板.画布面板.属性面板.动画面板.输出窗口.状态栏九部分组成,如下图: 菜单栏 菜单栏为Cocos Studio ...
- poj1673 EXOCENTER OF A TRIANGLE
地址:http://poj.org/problem?id=1673 题目: EXOCENTER OF A TRIANGLE Time Limit: 1000MS Memory Limit: 100 ...
- 基于Policy Gradient实现CartPole
http://chenrudan.github.io/blog/2016/09/04/cartpole.html 首页 分类 关于 归档 标签 基于Policy Gradient实现CartPole ...
- STM32 IO口双向问题
源: STM32 IO口双向问题