你的位置:EETOP 赛灵思(Xilinx) 社区 >> >> 全部 >> 详细内容

Adam Tayor玩转MicroZed系列65:Zynq 应用分析 II

发布者:jackzhang 时间:2015-02-03 22:58:39

作者:Adam Taylor

在此系列博客的前面几期中,我们已经可以运行示例应用并获得用于分析的程序运行数据。运行分析器可以生成一个gmon.out格式的文件,它包含了分析数据。当应用程序运行自然结束或者通过SDK来终止应用程序都可以生成这个文件。

在我们运行应用程序之前,我们需要确保已经正确配置了Zynq。因此,第一步就是配置FPGA,在SDK环境下点击菜单栏的XilinxTools->Program FPGA。

为了在硬件上运行分析,我们要设置一下应用程序的配置选项,在Vivado Project explorer下拉菜单中选中应用工程,右击,选择Run As ->Launch on Hardware(GDB):

上面的操作会直接运行应用程序(这里选用的是Dhrystone例程)。以我们这次使用的应用为例,这个应用将会运行完毕,然后会弹出一个如下图所示的对话框。注:如果你的应用没有自己结束的话,你需要使用SDK来终止它,以便生成gmon.out文件。

生成的文件位于工程的debug(调试)目录下:

双击 gmon.out文件,会打开一个对话框,要你确认用于分析的ELF格式的文件:

在console(控制台)窗口的旁边,gprof会以一个新的标签页打开。在这个新的标签页下面显示了分析结果,我们可以用来做更进一步的分析:

我们可能期望进一步的分析这些数据或者采用不同的格式,可以将它能够清晰明了的演示等等,点击彩色的饼状图(位于屏幕的右上方)按钮,可以让你选择 将这些数据以饼状图、折线图或者条形图的方式来显示,这些你都可以自己选择。如果分析结果不是所期望的,可以通过调整设置来收集更多的详细信息。你可以改 变下面的分析参数:

采样频率——数据采集中断发生的频率。中断频率越高结果将会更精确,但是采样过程将会更加的麻烦。

容器大小——程序的执行空间被分为很多个采样容器。容器空间越小,采样结果的间隔也就越大。当中断发生得更加准 确的时,越大的采样间隔决定了程序计数器的值。大的间隔也有其缺点,它需要更多的存储空间来存储信息,因为额外增加了很多的采样容器。最小的容器大小是四 个字节——相当于ARM Cortex-A9单个指令的存储空间大小。如果你的内存空间有限,可以使用更大的容器。然而,当采样中断产生时,大的容器尺寸使其无法准确的确定当时正 在执行的指令。

原文链接:
http://forums.xilinx.com/t5/Xcell-Daily-Blog/Adam-Taylor-s-MicroZed-Chro...

© Copyright 2014 Xilinx Inc
如需转载,请注明出处

最新课程

  • 深入浅出玩儿转FPGA

    本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念

  • 从零开始大战FPGA基础篇

    本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“

  • Verilog基础及典型数字

    课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了