TRACE32——SMP多核调试
TRACE32——SMP多核调试
很多时候我们需要调试SMP多核芯片,或者一个复杂的处理器里的SMP多核部分,例如英飞凌TC275TF有三个Tricore™ 内核、NXP S32G274A中含有四个Cortex®-A53的内核都可以工作在SMP模式下。
TRACE32提供了对于SMP多核调试的支持,使用也非常方便,可以按照如下步骤操作:
步骤一 选择CPU
TRACE32已经支持的芯片,只需要在CPU列表中找到对应的芯片名即可:
如果在CPU列表中找不到需要调试的芯片名,可以联系劳特巴赫技术支持或者芯片厂家进行确认。大部分情况,只需要更新TRACE32至最新版本即可。
步骤二 确认多核
不同版本的TRACE32对于多核的默认选择可能不一样:有的是默认连接所有多核,有的是默认连接第一个核。
保险起见,我们可以通过如下命令进行确认或者修改需要连接的多核
core.number <number_of_cores>
或者
core.assign <core1> [<core2> …]
示意图如下:
步骤三 以SMP的方式连接芯片
配置好后,就可以使用如下命令连接芯片,开始SMP多核调试:
;up/attach二选一即可
System.up ;可能会复位芯片
System.Attach ;一般不会复位芯片
也可以在图形界面进行操作:
步骤四 SMP调试时,在多核之间切换
连接成功后,便可以观察SMP中每个核的代码、寄存器、内存等资源:
在TRACE32界面的右下角,会有一个数字显示当前选中的是哪一个核。如需切换,可以右键该数字或者双击该数字后在Core.List窗口进行切换。
TRACE32为每个核都默认设置了一个背景色,切换核后,不同的窗口(源码、寄存器等)颜色也会发生改变。这样可以直观地看到当前的信息是哪个核的。
如果不喜欢默认配色,可以在菜单栏点击Misc-Choose Colors进行修改
步骤五 使用命令,同时显示多核信息
有些时候,需要同时显示不同核的信息,我们可以使用**/core** 参数。格式如下:
<T32 Command> /Core <N>
例如,查看当前Core 0 和 Core 1的源代码:
List /Core 0
List /Core 1
例如,查看当前Core 0 和Core 1各自的寄存器信息:
Register /Core 0
Register /Core 1
注意:TRACR32多核命令中,CORE.ASSIGN后面的数字从1开始,List /Core 等命令后面的数字从0开始。示意图如下:
更多关于SMP多核调试的介绍,请查阅相关文档:
- <T32安装目录>\pdf\training_debugger_smp.pdf
- <T32安装目录>\pdf\debugger_.pdf\Multicore章节
TRACE32——SMP多核调试相关推荐
- TRACE32——AMP多核调试
TRACE32--AMP多核调试 之前有一篇文章介绍过芯片的SMP多核调试,适用于同架构的内核运行同一套操作系统的场景.例如英飞凌的TC275TF芯片的三个TriCore核以SMP的方式运行着Auto ...
- Linux内核争抢式并发在SMP多核扩展上的不足
本文来自:<被神话的Linux, 一文带你看清Linux在多核可扩展性设计上的不足> 我们先来看一段来自猛士王垠的话: 跟有些人聊操作系统是件闹心的事,因为我往往会抛弃一些术语和概念,从零 ...
- vxWorks SMP 多核编程
多核编程指南 vxworks_kernel_programmers_guide_6.8 第24章 介绍 是风河公司为VxWorks设计的symmetric multiprocessing(SMP)系 ...
- VxWorks之SMP多核编译 配置
最近在调试vxworks的系统,在这里记录一下smp smp在vxworks里面是很重要的部分,如果没有配置这个在设计到smp编译器的时候也会出现smp等于1的然后运行DKM工程不成功等现象. 关于V ...
- Linux芯片级移植与底层驱动(基于3.7.4内核) --SMP多核启动以及CPU热插拔驱动
出处:http://21cnbao.blog.51cto.com/109393/1143518 在Linux系统中,对于多核的ARM芯片而言,Bootrom代码中,CPU0会率先起来,引导Bootlo ...
- linux内核启动多核,linux SMP多核启动分析
startup_32: cld cli movl $(KERNEL_DS),%eax mov %ax,%ds mov %ax,%es mov %ax,%fs mov %ax,%gs #ifdef __ ...
- trace32专栏——基础调试
TRACE32是LAUTERBACH公司开发的在线调试工具,功能强大,可以做单步跟踪,设置断点等各种在线调试.一般大家对其习惯的称呼有:"trace32","T32&qu ...
- trace32专栏 | 基础调试
T32打开界面 首先需要安装,一般默认安装在C:\T32,在安装路径下T32/bin/windows64 下打开t32start.exe,如下,检查路径是否正确,检查core是否正确. 然后点击sta ...
- 劳特巴赫 Trace32 调试使用教程
文章目录 1. 打开trace32 2. 连接开发板 3. 下载代码到开发板 4. 多核调试 5. 复位 6. 调试 1. 查看代码当前运行位置 2. 模式选择 3. 函数查找 4. 函数跳转 5. ...
最新文章
- hdu5296 01字典树
- mysql中的宽字符注入_深入理解Mysql宽字符注入
- 从生成对抗网络到更自动化的人工智能
- matlab 多条函数颜色渐变(没多大用处)
- intel x540-at2 openstack 下桥接故障
- 关于ActiveMQ的一点总结
- linux按时间升序排列文件,Linux展示以时间生升序显示文件
- 【数据库系统概论】考研附加部分重点分析【附加】
- 腾讯技术工程沙龙深圳站来了,我们一起聊聊“工业互联网”
- 机器学习实战的P264中代码对应的公式推导
- [css] display有哪些值?分别说明他们的作用是什么?
- oracle 9i从入门到精通读书笔记2
- 如何借助vsftpd在Linux上构建安全的FTP服务?
- mysql插入反斜杠“\“丢失的解决方法
- loj136 (最小瓶颈路,多次询问)
- java--线程--习题集锦
- matlab中firrcos,DMR数字集群关键技术的应用研究
- Oracle--sqlplus如何设置SQLPlus结果显示的宽度,ORACLE sqlplus提示符设置
- java 图片线条_JAVA 关于JFrame的问题,我的图片会被线条给覆盖住,怎样让图片在上面呢...
- UE4+LiveLinkFace面部动作捕捉