当前位置:首页 > 学习资源 > 讲师博文 > ARM DS-5进行高级调试和诊断的一些方法和技巧

ARM DS-5进行高级调试和诊断的一些方法和技巧 时间:2024-12-05      来源:华清远见

ARM DS-5是一款功能强大的集成开发环境(IDE),专为ARM架构的处理器设计。它提供了丰富的工具和功能,用于高级调试和诊断,帮助开发人员深入分析和优化他们的应用程序。以下是使用ARM DS-5进行高级调试和诊断的一些方法和技巧:

1 DS-5 工程创建

1. 启动 DS-5 并设置工作空间:从桌面菜单中选择 “Eclipse for DS-5” 来启动 DS-5。在弹出的 “Workspace Launcher” 对话框中,可以接受默认的工作空间,也可以点击 “Browse” 选择一个文件夹作为工作空间,例如 “c:\ds-5_workspace”,并勾选 “Use this as the default and do not ask again” 选项后点击 “OK”。

2. 获取许可证:如果是首次使用 DS-5,会弹出 “No License Found” 对话框,点击 “Open License Manager”,在 “ARM License Manager” 对话框中点击 “Add License”,接着在 “Add License” 对话框中选择 “Generate a 30-day evaluation license for DS-5 Ultimate Edition” 选项并点击 “Next”。然后在 “Choose Network Interface” 对话框中选择一个网络接口,建议选择物理网络接口。在 “Developer Account Details” 对话框中输入 ARM 开发者(银牌)账号的详细信息,如果没有账号则需创建一个,最后点击 “Finish”。当许可证成功注册后,可在 “ARM License Manager” 中看到 30 天的评估许可证以及可用的工具包,关闭该对话框,并在确认重启 Eclipse 的对话框中点击 “Restart Eclipse”。

3. 创建新项目:从 DS-5 主菜单中选择 “File”->“New”->“C Project”,弹出 “C Project” 对话框。在 “Project name” 字段中输入项目名称,如 “hello world”;在 “Project type” 下选择 “Executable”->“Empty Project”;在 “Toolchains” 中选择 “ARM Compiler 5”,点击 “Finish” 即可创建一个名为 “hello world” 的 C 项目,可在 “Project Explorer” 视图中查看该项目。

2 ARM DS-5 加载 ELF 文件运行

1. 创建工程并扫描硬件信息:使用 ARM DS-5 前需创建工程项目,并扫描相应硬件信息,如 CPU、Coresight 组件、Cache 等,扫描完成后再执行 “build platform”12.

2. 创建加载脚本:可通过 JTAG 接口用 DS-5 将镜像烧写到内存,配置 PC 指针来启动固件。创建脚本时要注意将固件启动汇编部分的 data 段的 copy 部分注释掉,因为 DS-5 加载 elf 文件时会自动根据 elf 符号表将 data 段加载到对应地址1.

3. 执行脚本:执行 DS-5 脚本时先进行 SoC reset 操作,reset 后系统从 bootrom 重启,DS-5 接入,接着执行 stop 命令,再 load elf 文件,DS-5 会自动解析入口点,最后执行 run 命令即可1.

3  ARM DS-5 断点设置及常用 Debug 命令

1. 断点设置:在 DS-5 的调试界面中,可在代码行号左侧空白处点击设置普通断点。对于条件断点,在断点设置窗口中找到对应的断点,于条件表达式框中输入条件即可 。

2. 常用 Debug 命令:

1) stop 命令:用于暂停程序的执行,比如在加载 elf 文件前执行此命令,可使程序处于停止状态以便进行后续操作1.

2)  run 命令:使程序从当前停止位置继续运行,可用于启动已加载的 elf 文件17.

3) step into:单步执行程序,遇到函数调用会进入函数内部继续单步执行,便于详细查看程序的执行流程和函数内部的逻辑。

4) step over:同样是单步执行,但遇到函数调用时,会将函数当作一个整体执行完,直接跳到函数调用的下一行,适合在不需要深入函数内部时快速查看主程序流程。

5)  step return:在函数内部执行时,使用此命令可直接执行到函数返回处,跳出当前函数,继续执行函数调用后的代码。

4 ARM DS-5 + DSTREAM 使用配置——软件配置

1. 申请 License:登录 ARM 官网注册账号并申请免费版本23.

2. 建立 Data Base:打开 DS-5 工具,按提示建立 Data Base23.

3. Platform Configuration:进行扫描操作,完成后执行 “build platform”123.

4. DEBUG 配置:根据具体的调试需求,进行相应的 DEBUG 配置,如选择连接的目标设备、调试模式等3.



5  ARM DS-5 Trace 使用

1. 创建 Debugger Core 连接:新建一个 “Debugger” core 连接,创建完成后需断开先前已连接的,以便进行后续的 trace 数据抓取等操作4.

2. 重新编译平台:完成 debugger 的创建后,重新编译.sdf 文件,编译时需选择 “Full Debug and Trace”4.

3. 加载 elf 文件:将对应的 elf 文件加载到 DS-5 中,以便在分析 trace 数据时能正确地显示函数名、变量名等符号信息4.

4. 使用 Trace 控制窗口:通过 Trace 控制窗口可查看 trace 数据,还可抓取 trace dump 快照进行线下分析。此外,可按步骤配置来查看 trace 中函数的执行情况,如函数执行时间占比等

ETM 数据 Trace 和指令 Trace

1)新建一个"Debugger" core 连接, 创建步骤如下图所示,下图创建的是一个名为 “Trace_Demo” 的 debuger core 连接,需要注意的是在创建完成后,需要将先前已经连接的进行断开,如下图的“New_configuration

2)重新编译平台

上面第一步完成了debuger 的创建之后,需要再重新编译 .sdf 文件,编译方法如下图:

当前是进行trace数据抓取,所以选择 “Full Debug and Trace”

Trace 控制窗口

6 总结:

ARM DS - 5 高级调试与诊断技巧总结:

1. 灵活运用断点、单步调试和观察点,精确控制程序执行流程并监测变量变化。

2. 借助多核调试和系统级调试功能,处理多核协同与硬件交互相关问题。

3. 利用性能和内存分析技巧,排查性能瓶颈和内存相关故障。

4. 掌握工程创建、文件加载运行以及相关配置方法,保障调试工作顺利开展。

上一篇:深度学习在计算机视觉中的应用

下一篇:SiP和3D IC技术在提高嵌入式系统硬件集成度和性能中的应用

戳我查看嵌入式每月就业风云榜

点我了解华清远见高校学霸学习秘籍

猜你关心企业是如何评价华清学员的

干货分享
相关新闻
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2024 北京华清远见科技发展有限公司 版权所有 ,京ICP备16055225号-5京公海网安备11010802025203号

回到顶部