本文参考 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使用教程的更多相关文章

  1. Xilinx SDK Problem Solution in Ubuntu

    Problem1: Documention and Example can't open, Xilinx SDK  Ubuntu.   Step1: Click the Document link o ...

  2. 【转】微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引

    微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引 Senparc.Weixin.MP SDK从一开始就坚持开源的状态,这个过程中得到了许多朋友的认可和支持. 目前SDK已经达到 ...

  3. 七牛云存储Python SDK使用教程 - 上传策略详解

    文 七牛云存储Python SDK使用教程 - 上传策略详解 七牛云存储 python-sdk 七牛云存储教程 jemygraw 2015年01月04日发布 推荐 1 推荐 收藏 2 收藏,2.7k  ...

  4. 微信公众账号 Senparc.Weixin.MP SDK 开发教程

    http://www.cnblogs.com/szw/archive/2013/05/14/weixin-course-index.html 微信公众账号 Senparc.Weixin.MP SDK ...

  5. Xilinx Zynq ZC-702 开发(02)—— 通过 Xilinx SDK 调试 Linux 应用

    远程调试环境由 PC 上运行的 System Debugger(集成在 Xilinx SDK 中) 和 Zynq 板上运行的 Linux TCF Agent 共同构成, 两者通过 TCP 连接,架构图 ...

  6. DJI Mobile SDK 新教程

    DJI Mobile SDK 新教程发布! http://bbs.dji.com/thread-20282-1-1.html Android 如何创建一个航拍相机App: 你将学到如何配置DJI Mo ...

  7. Android Studio 下载地址 & SDK 更新教程

    Android Studio 下载地址: http://www.android-studio.org/ SDK 更新教程: http://www.androiddevtools.cn/ SDK 推荐使 ...

  8. 地图 SDK 系列教程-在地图上展示指定区域(转载)

    腾讯位置服务地图SDK是一套提供多种地理位置服务的应用程序接口.通过调用该接口,开发者可以在自己的应用中加入地图相关的功能(如地图展示.标注.绘制图形等),轻松访问腾讯地图服务和数据,构建功能丰富.交 ...

  9. 【代码开源】GreaterWMS 抖音SDK调用教程

    应用介绍 GreaterWMS 抖音SDK调用教程 SDK具体功能: 1,一仓多店,多仓多店 2,库存同步,商品同步 3,快递发货,物流轨迹 4,订单拦截 5,字节云仓 6,精选联盟 7,供应分销 8 ...

随机推荐

  1. 省市县三级联动的SQL

    完整版见https://jadyer.github.io/ 首先是建表语句 CREATE TABLE `t_address_province` ( `id` INT AUTO_INCREMENT PR ...

  2. iis启动&nbsp;服务无法在此时接受控制信息。&nbsp;(异常来自&nbsp;HRESULT:0x80070425)

    问题描述:每隔一段时间应用程序池就会自动停止,报错:服务无法在此时接受控制信息.(异常来自 HRESULT:0x80070425)   iis启动 服务无法在此时接受控制信息. (异常来自HRESUL ...

  3. 跟我学Makefile(三)

    紧接着跟我学Makefile(二)继续学习:变量高级用法 (1)变量值的替换 :替换变量中的共有的部分,其格式是“$(var:a=b)”或是“${var:a=b}”,把变量“var”中所有以“a”字串 ...

  4. ES6基本语法和一些面向对象的知识

    声明变量 var 使用var声明变量会将变量的声明提到全局,在局部作用域声明的在全局也能打印 { var a = 12; } // 变量提升 var会将变量的声明提到全局 console.log(a) ...

  5. 在GUI程序中使用控制台的两种方法

    win32程序启用控制台(控制台文件名:conout$,conin$,conerr$) //添加控制台,加入在程序构造函数中 AllocConsole(); freopen("conin$& ...

  6. 1 :2 Strust2—Demo

    =============================================================== Demo基础包:

  7. poj1177 Picture 矩形周长并

    地址:http://poj.org/problem?id=1177 题目: Picture Time Limit: 2000MS   Memory Limit: 10000K Total Submis ...

  8. word 杂记

    45.error和exception有什么区别? 答案:Error表示系统级的错误和程序不必处理的异常,我们无法处理它. Exception表示是可以捕捉或者需要程序进行处理的异常. 47.abstr ...

  9. HBase优化相关

    1.HBase预分区 HBase在创建表时,默认会自动创建一个Region分区.在导入数据时,所有客户端都向这个Region写数据,直到这个Region足够大才进行切分.这样在大量数据并行写入时,容易 ...

  10. 解决Tomcat端口被占用 及 启用失败等其它错误整理册

    使用管理员模式启动命令行工具. netstat -ano|findstr 获取了pid号 taskkill /pid /f 其中6428为pid号,可能有不同. -------- 有时遇到其它问题可以 ...