0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ARM的JTAG调试结构

STM32嵌入式开发 来源:STM32嵌入式开发 2020-08-27 14:18 次阅读

一、JTAG的基本知识

JTAG是Joint Test Action Group的缩写,是IEEE 1149.1标准。使用JTAG的优点:JTAG的建立使得集成电路固定在PCB上,只通过边界扫描便可以被测试。在ARM7TDMI处理器中,可以通过JTAG直接控制ARM的内部总线、I/O口等信息,从而达到调试的目的。

二、ARM的JTAG调试结构

(1)Debug主控(Host)通常是运行有ARM公司或者第三方提供的调试软件的PC机,常用的调试软件有ARMSDT中的ARM Debug for Windows(ADW)、Linux下的arm-elf-gdb等。通过这些调试软件,可以发送高级的ARM调试命令,如设置断点、读写存储器、单步跟踪、全速运行等。

(2)协议转换器(Protocol Converter)负责转换Debug主控端发出的高级ARM调试命令为底层的和ARM内核通信的JTAG命令。Debug主控端和协议转换器之间的介质可以有很多种,比如以太网USBRS-232、并口等。Debug主控端和协议转换器之间的通信协议最典型的就是ARM公司提供的Angel标准,也可以是第三方厂家自己定义的标准。关于Angel的协议,可参考ARMSDT和ADS的相关文档。典型的协议转换器有:ARM公司的MulTI-ICE、Abatron公司的BDI、aiji公司的OpenlCE32、EPI公司的Jeeni等。

(3)ARM7TDMI的JTAG宏单元(Macrocell)主要包括3条JTAG扫描链(ScanChain) 和1个JTAG的控制TAP状态机。

三、ARM7TDMI内核的JTAG扫描链结构

ARM7TDMI内核的JTAG扫描链结构主要包括3条JTAG扫描链:Scan Chain0、Scan Chain 1、Scan Chain2。

四、ARM7TDMI中通过JTAG对外设的访问

作为ARM典型的调试手段,JTAG除了可以设置ARM的断点以外,还可以对ARM的内核进行控制,从而实现对外围设备的读/写(比如下载程序到RAM或者FLASH空间)。通常在ARM7TDMI处理器中,JTAG对ARM外围设备的访问是通过对JTAG扫描链1的控制实现的。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 集成电路
    +关注

    关注

    5396

    文章

    11643

    浏览量

    363704
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9184

    浏览量

    369725
  • JTAG
    +关注

    关注

    6

    文章

    401

    浏览量

    71905

原文标题:ARM的JTAG接口基础知识

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    JTAG的基础知识

    JTAG是一种IEEE标准用来解决板级问题,开发于上个世纪80年代。今天JTAG被用来烧录、debug、探查端口。当然,最原始的使用是边界测试。
    的头像 发表于 11-15 10:02 597次阅读
    <b class='flag-5'>JTAG</b>的基础知识

    【AI技术支持】ESP32-S3 JTAG调试问题处理

    启明云端/01你是否曾遇到过?在使用ESP32-S3模块,ESP-IDF版本为idf5.0时,调试JTAG,尝试很久也无法调通,这是为什么呢?启明云端/02这是咋回事呢?这个过程需要安装zadig
    的头像 发表于 10-30 08:01 1017次阅读
    【AI技术支持】ESP32-S3 <b class='flag-5'>JTAG</b><b class='flag-5'>调试</b>问题处理

    【AI技术支持】ESP32C3 开发板在Linux环境下,进行JTAG 调试演示

    启明云端/01JTAG调试工具本教程主要演示ESP32C3开发板在linux环境下,通过vscode的ESP-IDF插件使用JTAG调试工具。ESP32C3不但内置了USB-
    的头像 发表于 10-17 08:01 1976次阅读
    【AI技术支持】ESP32C3 开发板在Linux环境下,进行<b class='flag-5'>JTAG</b> <b class='flag-5'>调试</b>演示

    ARM处理器的结构和特点

    ARM处理器,全称Advanced RISC Machines,是一种基于精简指令集(RISC)架构的微处理器。其结构和特点在嵌入式系统、移动设备、物联网等多个领域具有显著优势。以下将详细阐述ARM处理器的
    的头像 发表于 09-10 11:09 1581次阅读

    C2000 MCU JTAG 连接调试

    电子发烧友网站提供《C2000 MCU JTAG 连接调试.pdf》资料免费下载
    发表于 09-09 09:30 0次下载
    C2000 MCU <b class='flag-5'>JTAG</b> 连接<b class='flag-5'>调试</b>

    【GD32 MCU 入门教程】二、GD32 MCU 烧录说明 (2)SWD/JTAG在线下载

    GD32系列MCU支持SWD和JTAG(部分型号不支持)接口进行下载调试,这些功能通过ARM CoreSight组件的标准配置和链状连接的TAP控制器来实现的。调试和跟踪功能集成在
    的头像 发表于 08-08 17:34 868次阅读
    【GD32 MCU 入门教程】二、GD32 MCU 烧录说明 (2)SWD/<b class='flag-5'>JTAG</b>在线下载

    如何使用JTAG调试ESP-12模块?

    我想使用 JTAG调试 ESP-12 模块。我知道这个模块使用Xtensa LX106内核,并且这个内核具有JTAG功能。那么,如果我正确配置了引脚,我可以使用JTAG dubug
    发表于 07-19 10:57

    STM32F407调试接口报错SWD/JTAG Communic怎么解决?

    我画了一块电路板,其中的调试接口接线如下: 但是在进行程序下载的时候 Keil5 报错:SWD/JTAG Communication Failure 我的 Keil5 调试配置如下:
    发表于 07-03 06:41

    windows下无法进行jtag的驱动设置,是需要将jtag相关的IO接到jtag调试器后再到PC进行设置吗?

    参考资料,windows下无法进行jtag相关的驱动设置,是需要将jtag相关的IO接到jtag调试器后再到PC进行设置吗?
    发表于 06-20 07:48

    JTAG连接ESP32开发板(ESP32-LYRAT-MINI_V1.2)的JTAG接口实现调试环境失败了的原因?

    我用segger的ARM仿真器的JTAG连接ESP32开发板(ESP32-LYRAT-MINI_V1.2)的JTAG接口实现调试环境的时候失败,电脑已经成功安装了openocd, 并可
    发表于 06-17 07:26

    RISCV soft JTAG调试_v1.2

    因为目前软件的限制,RISCV的逻辑不能同时共用JTAG,所以如果想要同时去调试逻辑和RISCV的话,可以通过RISCV的soft Jtag来实现。soft Jtag就是通过GPIO来
    的头像 发表于 04-23 08:38 1190次阅读

    STM32L4禁用nJTRST但不中断JTAG要怎么操作?

    好几只自制 JTAG 调试器,均统一使用 ARM CoreSight 调试接口,因此不用担心接口兼容性。) 背景: 我之前是做过类似的设计的:STM32F103C8T6 + XC2C3
    发表于 04-15 06:44

    jlink调试器的工作原理

    我们平时使用的jlink调试器就是使用JTAG接口,JTAG以前是用于测试芯片的一种通信方式,现在部分ARM或者DSP等都存在JTAG接口,
    的头像 发表于 03-08 12:32 3390次阅读
    jlink<b class='flag-5'>调试</b>器的工作原理

    RISCV soft JTAG调试_v1.1

    因为目前软件的限制,RISCV的逻辑不能同时共用JTAG,所以如果想要同时去调试逻辑和RISCV的话,可以通过RISCV的soft Jtag来实现。soft Jtag就是通过GPIO来
    的头像 发表于 02-23 16:16 760次阅读
    RISCV soft <b class='flag-5'>JTAG</b><b class='flag-5'>调试</b>_v1.1

    DAP接口和JTAG接口调试有啥区别?

    DAP接口和JTAG接口调试有啥区别呀,为啥我接了jtag不可以多核调试
    发表于 02-19 06:24