Trace32 SRST和TRST、system.attach 和 system.up的区别

这篇具有很好参考价值的文章主要介绍了Trace32 SRST和TRST、system.attach 和 system.up的区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

TRST-Resets the JTAG TAP controller and the CPU internal debug logic

SRST- Resets the CPU core and peripherals

SYStem.Mode Down

SYStem.Mode Nodebug

SYStem.Mode Prepare

SYStem.Mode Go

SYStem.Mode Attach

SYStem.Mode StandBy

SYStem.Mode Up


下图为Trace32工具为ARM debug设计的 JTAG pin 脚图:

Trace32 SRST和TRST、system.attach 和 system.up的区别

 其中,TRST和SRST信号是可选的。

TRST-Resets the JTAG TAP controller and the CPU internal debug logic

Test Reset 信号用于JTAG Test Access Port (TAP)的异步重置。它将reset TAP的状态机,以及绝大部分ARM系列的debug相关寄存器。从调试器的视角,TRST信号从调试器输出至目标板。它是低电平有效。

SRST- Resets the CPU core and peripherals

System Reset,低电平有效,用于reset 目标系统。这个信号同样也可以用于调试器检测目标处理器是否处于reset状态。该信号可以是输入或者输出。

Trace32 SRST和TRST、system.attach 和 system.up的区别

SYStem.Mode Down

禁用调试器,CPU的状态不会改变。

SYStem.Mode Nodebug

同down,禁用调试器,CPU的状态不会改变。

SYStem.Mode Prepare

reset 目标处理器,可以通过重置信号(reset line)或者CPU中特殊的reset寄存器来实现。之后,将提供对CoreSight DAP接口的直接访问。对于reset,reset line必须连接到调试器。

调试器将初始化一些debug 端口(JTAG,SWD,cJTAG)以及CoreSight DAP接口,但是并不连接到CPU。这种Mode可以用于一些不需要debug CPU或者绕过CPU的场景,调试器直接通过内存总线(memory bus),比如AXI,AHB或者APB等,直接通过CoreSight DAP的内存访问端口,比如:

  • 调试器绕过CPU,直接访问物理内存。如果改映射存在,内存应该在被访问前,被初始化。
  • 调试器访问外设,例如,在调试模式下,停止CPU之前配置寄存器。可能需要先对外设进行计时和供电,然后才能访问它们。
  • 第三方软件或一些特殊调试器使用 TRACE32 API通过 TRACE32 调试器硬件访问调试端口和 DAP。

SYStem.Mode Go

通过复位线复位目标,初始化调试端口(JTAG、SWD、cJTAG),并开始进程执行。对于重置,重置线必须连接到调试连接器

SYStem.Mode Attach

不会发生重置,CPU状态(正在运行或停止)不会更改。调试端口(JTAG,SWD,cJTAG)将被初始化。 执行此命令后,例如,可以使用 Break 命令停止用户进程。

SYStem.Mode StandBy

通过复位线使目标保持复位状态,并等待检测到电源。对于重置,重置线必须连接到调试连接器。 一旦检测到电源,调试器就会恢复尽可能多的调试寄存器(例如片上断点、矢量捕获事件、控制),并从复位中释放CPU以启动进程执行。 检测到 CPU 断电时,调试器会自动切换回待机模式。这允许调试电源周期,因为调试寄存器将在上电时恢复。 注意:通常只能在CPU运行时设置片上断点和矢量捕获事件。要设置软件断点,必须停止 CPU。

SYStem.Mode Up

通过复位线复位目标,初始化调试端口(JTAG、SWD、cJTAG),停止CPU,并进入调试模式,相关寄存器被恢复为默认值。 对于重置,重置线必须连接到调试连接器。 所有寄存器的当前状态都是从 CPU 读取的。

虽然笔者未在文档中找到关于SYStem.Mode Up 会触发SRST的相关描述,但在实际使用中,如果把EnRESET选项设置为ON,可以发现SYStem.Mode Up确实会触发SRST。

参考文章:

TRACE32® Download TRACE32® Help System (lauterbach.com)文章来源地址https://www.toymoban.com/news/detail-460070.html

到了这里,关于Trace32 SRST和TRST、system.attach 和 system.up的区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ARM Trace32(劳特巴赫) 使用介绍 2.1 -- TRACE32 Practice 脚本 cmm 脚本学习】

    请阅读 【ARM Coresight SoC-400/SoC-600 专栏导读】 上篇文章【ARM Trace32(劳特巴赫) 使用介绍 2 - Veloce 环境中使用trace32 连接 Cortex-M33】 下篇文章【ARM Trace32(劳特巴赫) 使用介绍 2.2 – TRACE32 进阶命令之 DIAG 弹框命令】

    2024年02月05日
    浏览(47)
  • 【ARM Trace32(劳特巴赫) 使用介绍 2 -- Trace32 cmm 脚本基本语法及常用命令】

    CMM ( Command Macro Model ) 是由 Lauterbach 公司定义的一种脚本语言,用于控制它的 TRACE32 调试器 系列。CMM脚本通常用于自动化调试或测试任务,例如加载代码,配置目标硬件,运行测试等。 SYStem(缩写sys) 是CMM脚本中的一条命令,它用于控制和查询目标系统的状态。以下是一些常

    2024年02月06日
    浏览(51)
  • 【ARM Trace32(劳特巴赫) 使用介绍 1.1 - Veloce 环境中使用trace32 连接 Cortex-M33】

    请阅读 【ARM Coresight SoC-400/SoC-600 专栏导读】 上篇文章:【ARM Trace32(劳特巴赫) 使用介绍 1 - Veloce 环境中使用 Trace32】 下篇文章:【ARM Trace32(劳特巴赫) 使用介绍 2.1 – TRACE32 Practice 脚本 cmm 脚本学习】

    2024年02月04日
    浏览(42)
  • [飞腾]Trace32使用概述

     视频教程: B站:【教程11】飞腾CPU JTAG Trace32使用概述 https://www.bilibili.com/video/BV1pG411c77F/?vd_source=6b0aeb756259b17f1846941ff75f37c6 根据飞腾demo图trace32的接法图如下图所示(新一些的demo图jtag的接法已经删除了,可以看比较老点儿的demo才会有这部分原理图,这里参考FT-2000_4core_demo_

    2023年04月18日
    浏览(51)
  • Trace32 部分命令

    以下命令可用于对FLASH进行刷写 FLASH.ReProgram ALL 启用所有声明的FLASH设备进行编程 FLASH.ReProgram off 对FLASH设备进行编程,然后禁用FLASH编程 Data.LOAD.auto 加载刷写文件(在大多数情况下,可以自动检测文件格式) Data.LOAD.file_format 有关支持的文件格式,请参阅《处理器体系结构支

    2024年02月10日
    浏览(43)
  • unity_Vector3.up 和 transform.up 的区别

    Vector3.up : 即 Vector3(0, 1, 0) Vector3.down : 即 Vector3(0, -1, 0) Vector3.forward : 即 Vector3(0, 0, 1) Vector3.back : 即 Vector3(0, 0, -1) Vector3.right : 即 Vector3(1,0, 0) Vector3.left : 即 Vector3(-1, 0, 0) 在 Scene 中画线(脚本挂给Cube)  结果 transform.up : 即 Vector3.up transform.forward : 即 Vector3.forward tra

    2023年04月14日
    浏览(29)
  • linux目录/usr/lib/systemd/system目录详解

    init 的进化经历了这么几个阶段: CentOS 5: SysV init,串行 CentOS 6:Upstart,并行,借鉴ubuntu CentOS 7:Systemd,并行,借鉴MAC 今天我们一起来看看systemd的使用 Systemd 新特性: (1)系统引导时实现服务并行启动:服务间无依赖关系会并行启动 (2)按需激活进程:若服务非立刻使用,不会立刻

    2024年02月01日
    浏览(43)
  • 没有Unity_光追2008年的书 Ray Tracing From The Ground Up 目录翻译

    之前个人居然完全没有听到过这本书,神作 之前看到的都是什么real-time 3rd,精要,精粹(其实真的都是鸡肋) 拿到手的pdf(从那个最大的同性交友网站)并没有目录,所以记录一下 最后会分享几个写Unity Shader工具(外连接) 看完目录,个人下一个篇幅直接是:AO 光线遮罩

    2023年04月08日
    浏览(34)
  • Debug工具Trace32的ARM内存访问类型详解

    关于Trace32的访问类型的基本概念可以参考博文: Trace32使用教程-访问类型(Access Class)_SOC罗三炮的博客-CSDN博客 本文将以ARMv8为基础,详解Trace32的内存访问类型。 内存访问类型 描述 A 绝对寻址(物理地址),即绕过MMU E 运行时访问。(可以由 SYStem.CpuAccess 和SYStem.MemAccess命令来

    2024年02月16日
    浏览(41)
  • 虚拟ECU:基于SkyEye的TRACE32嵌入式调试

    ​ 随着通信技术、智能终端、云计算等基础支撑技术的发展,嵌入式软件功能的丰富程度日益上升,已不再局限于21世纪初的基础功能,在航空航天、工业控制、医疗设备、消费电子、汽车电子、信息家电、网络通信等领域得到大规模应用,为加快经济发展、提升生活便利水

    2024年04月12日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包