当前位置: 首页 > news >正文

一文带你搞懂JTAG中DP与AP

JTAG(Joint Test Action Group,联合测试工作组)作为遵循IEEE 1149.1标准的核心调试与测试协议,其高级调试能力依赖于分层化的访问架构——其中DP(Debug Port,调试端口)与AP(Access Port,访问端口)是连接外部调试器与目标芯片内部资源的核心枢纽,共同构成调试访问端口(DAP,Debug Access Port)体系。简单来说,DP负责“接收与翻译”外部调试指令,AP负责“执行与访问”内部具体资源,二者协同实现对芯片的精准调试与控制。

一、DP(Debug Port,调试端口)—— 外部指令的“翻译官”与“网关”

DP是JTAG调试链路的“入口节点”,直接对接外部调试器的JTAG信号线(TCK时钟、TMS模式选择、TDI数据输入、TDO数据输出等),核心职责是将外部物理层协议(如JTAG、SWD)转换为芯片内部可识别的调试控制信号,并管理与AP的通信逻辑。在一个DAP体系中,通常仅存在一个DP,它是整个调试链路的“中枢网关”。

1. DP的核心功能

  • 协议转换:将外部调试器发送的JTAG/SWD串行数据,转换为内部对AP的并行控制信号,同时将AP返回的响应数据序列化后通过TDO反馈给调试器;

  • 指令解析与路由:解析外部发来的JTAG指令(如DPACC、APACC),判断指令是针对DP自身寄存器操作,还是需要转发给某个AP执行,并完成指令路由;

  • 状态管理与初始化:负责调试链路的初始化(如唤醒调试域电源)、状态监控(如故障标志位记录),以及时钟同步(基于TCK实现与内部逻辑的时序协同);

  • AP选择:通过内部的SELECT寄存器指定当前要访问的AP编号(支持最多256个AP),实现多AP的切换控制。

2. DP的主要类型

  • JTAG-DP:最基础的DP类型,完全基于JTAG协议与外部通信,是CoreSight架构中最常用的调试端口形式,直接接入JTAG的TAP控制器;

  • SW-DP:基于串行线调试(SWD)协议,仅需两根信号线(SWCLK、SWDIO)即可实现调试通信,相比JTAG更节省引脚资源,适用于引脚紧张的嵌入式场景;

  • SWJ-DP:兼容型DP,支持在运行时通过特定序列切换JTAG与SWD模式,兼顾兼容性与引脚资源优化,是当前主流MCU(如Cortex-M系列)的常用配置。

3. DP的关键寄存器

DP内部包含一组专用寄存器,用于实现配置、状态监控与AP控制,核心寄存器如下:

  • DP_IDCODE(0x0):只读寄存器,存储调试端口的唯一标识码(含制造商代码、设备型号等),用于调试器识别目标DP的兼容性;

  • DP_ABORT(0x0):用于异常终止当前正在执行的调试事务,避免错误操作持续影响系统;

  • DP_CTRL_STAT(0x4):控制与状态寄存器,核心配置位包括CSYSPWRUPREQ(系统电源唤醒请求)、CDBGPWRUPREQ(调试域电源唤醒请求),以及故障标志位(如STICKYERR);

  • DP_SELECT(0x8):用于选择目标AP的编号(APSEL字段)及该AP下的寄存器组(APBANKSEL字段),是多AP协同的核心寄存器。

二、AP(Access Port,访问端口)—— 内部资源的“访问器”与“执行者”

AP是连接DP与芯片内部资源的“桥梁”,本质是一种内存映射总线接口,负责将DP转发的调试指令转换为对具体硬件资源的访问操作(如读写内存、配置外设、控制调试组件)。与DP的“单一性”不同,一个DAP体系中可包含多个AP(最多256个),每个AP对应一类特定资源或总线,实现对不同层级资源的精准访问。

1. AP的核心功能

  • 总线转换:将DP发来的通用调试指令,转换为对应总线协议(如AHB、APB、AXI)的访问信号,适配不同内部资源的总线接口;

  • 资源访问:独立于CPU核心访问内部资源,无需激活CPU即可完成内存(SRAM、ROM)、外设寄存器、调试组件(如ETM、ITM)的读写,类似“调试专用DMA”;

  • 批量数据传输:部分AP(如AHB-AP)支持块传输模式,通过BD(块数据)寄存器实现批量数据读写,提升调试效率;

  • 访问控制:通过自身配置寄存器(如CSW)设定访问参数,包括数据宽度(8/16/32位)、地址自动递增模式、访问权限等。

2. AP的主要类型及应用场景

AP的类型由其适配的总线与访问对象决定,主流类型如下:

  • AHB-AP(Advanced High-performance Bus - AP):高性能总线访问端口,适配AHB总线(嵌入式系统主流高性能总线),支持访问系统内存(SRAM、SDRAM)、核心寄存器、片上外设等。广泛应用于Cortex-M系列MCU,可实现独立于CPU的内存读写,是RTT(实时传输)等高级调试功能的基础;

  • APB-AP(Advanced Peripheral Bus - AP):低功耗、低带宽总线访问端口,适配APB总线,专门用于访问调试专用外设(如CTI交叉触发接口、ETM跟踪模块)。其地址空间与系统核心地址空间独立,可避免CPU误操作调试寄存器,常见于Cortex-A/R系列高性能处理器;

  • AXI-AP(Advanced eXtensible Interface - AP):适配AXI总线(高性能SoC主流总线),支持更高带宽与多通道访问,适用于复杂SoC(如包含CPU、GPU、FPGA的异构芯片)的调试,可访问高速外设与大容量内存;

  • JTAG-AP:兼容型AP,用于访问旧款ARM核心(如ARM9)的非内存映射调试寄存器,通过转发JTAG指令实现调试。当前主流处理器已较少使用,仅用于兼容性场景。

3. AP的关键寄存器

不同类型AP的寄存器集略有差异,但核心寄存器统一遵循DAP规范,主要包括:

  • CSW(Control and Status Word,0x00):控制与状态字寄存器,用于配置访问参数,如数据宽度、地址自动递增模式、访问使能等;

  • TAR(Target Address Register,0x04):目标地址寄存器,存储下一次读写操作的目标地址(32位或64位,取决于架构);

  • DRW(Data Read/Write,0x0C):数据读写寄存器,写入时触发对TAR地址的写操作,读取时返回该地址的当前数据,是最常用的AP寄存器;

  • BASE(0xF0):只读寄存器,存储AP的基地址指针,用于调试器识别AP的访问范围;

  • CFG(0xF4):配置寄存器,记录AP的硬件能力(如是否支持大端模式、最大传输带宽等)。

三、DP与AP的协同工作机制

DP与AP通过严格的时序与协议协同,完成一次完整的调试访问(以JTAG-DP访问MEM-AP为例),流程如下:

  1. 初始化阶段:外部调试器通过JTAG信号线发送复位序列,驱动DP进入IDLE状态;随后读取DP_IDCODE寄存器,确认DP型号与兼容性;

  2. 电源唤醒阶段:调试器通过DPACC指令写入DP_CTRL_STAT寄存器,置位CSYSPWRUPREQ与CDBGPWRUPREQ,唤醒芯片的系统域与调试域电源;

  3. AP选择阶段:通过DP_SELECT寄存器指定目标AP(如MEM-AP对应的APSEL编号)及寄存器组;

  4. 访问配置阶段:通过APACC指令写入AP的CSW寄存器,配置数据宽度(如32位)、地址自动递增模式等;

  5. 数据传输阶段:写入AP的TAR寄存器设定目标地址(如0x20000000,片上SRAM地址),随后通过DRW寄存器执行读写操作——数据经AP转换为AHB总线信号,访问目标资源后将结果返回DP;

  6. 结果反馈阶段:DP将AP返回的结果序列化后,通过TDO信号线反馈给外部调试器,完成一次调试访问。

四、核心总结

DP与AP是JTAG高级调试架构的核心,二者分工明确又紧密协同:DP负责“对外通信与协议转换”,是调试器与芯片的“接口中枢”;AP负责“对内资源访问与总线适配”,是调试指令的“执行终端”。这种分层设计使得JTAG能够适配复杂SoC的多资源调试需求,支持独立于CPU的精准访问,为嵌入式系统开发提供了高效、灵活的调试能力。无论是简单的MCU调试,还是复杂的异构SoC测试,DP与AP的协同工作都是实现可靠调试的基础。

http://www.jsqmd.com/news/336412/

相关文章:

  • 2026年全屋定制品牌终极评测(行业权威数据双重背书)| 家装选型和避坑全指南 - 品牌推荐
  • 图增强大模型:Graph4LLM系统性综述
  • 2026板材品牌怎么选?从环保技术到全球认证的选购指南 - 品牌排行榜
  • 《How to fix your entire life in 1 day》
  • 隐形车衣费用多少,宣城口碑好的隐形车衣企业盘点 - myqiye
  • 【IEEE出版 | EI检索】第三届电气技术与自动化工程国际学术会议(ETAE 2026)
  • 定稿前必看!9个AI论文网站深度测评,专科生毕业论文写作必备工具推荐
  • 锂电池裁切喷码产线的PLC老司机手记
  • 聊聊电力设备综合制造商排名,昂翡(重庆)线缆有限公司性价比高 - mypinpai
  • 2026年评价高的糕点食品包装机/速冻食品包装机最新TOP厂家排名 - 品牌宣传支持者
  • 深圳孵化产业园区出租与办公室租赁指南:2026年电商直播、漫展及活动场地优选 - 品牌2025
  • 真的太省时间!10个AI论文网站测评:专科生毕业论文+开题报告高效攻略
  • 基于MATLAB的材料晶粒组织生长与变化模拟:方法、实现与应用
  • 2026年质量好的LED柜内灯/衣柜柜内灯厂家推荐及选择参考 - 行业平台推荐
  • asyncio事件循环调优与性能瓶颈分析
  • 备考必看!2026副主任护师考试刷题APP哪个好?实测避坑指南 - 医考机构品牌测评专家
  • 2026跨境电商办公与产业园区租赁实战指南:5大黄金选址,高效出海不踩坑 - 品牌2025
  • httpx 异步客户端处理 WebSocket 数据
  • 全屋定制品牌怎么对比?2026年品牌推荐与评测,解决预算超支与交付痛点 - 品牌推荐
  • 2026年知名的铣型衣柜拉手/极简衣柜拉手厂家推荐及采购指南 - 行业平台推荐
  • 从零构建个人知识库:程序员的文档管理实践与静流书站
  • 2026年精选:五家高口碑、靠谱且值得信赖的跨境电商产业园区深度评测 - 品牌2025
  • 2026年U型/换热器/不锈钢/风机盘管厂家推荐:山东天鹰环保设备有限公司,适配多行业热交换的盘管全系供应 - 品牌推荐官
  • 2026深圳创业团队办公室推荐:五大电商产业园区深度解析与选择指南 - 品牌2025
  • 2026年口碑好的成都高端定制家具/软装定制家具厂家推荐及选择参考 - 行业平台推荐
  • Xilinx FPGA ISERDES 使用详细介绍
  • 2026年口碑好的山东石墨烯电池/石墨烯电池厂家选购真相 - 行业平台推荐
  • 聊聊可靠的校史馆建设公司,口碑不错的有哪些 - 工业品网
  • UR5机械臂PID轨迹跟踪控制与六自由度机械臂simscape物理仿真:DH参数表、坐标系表示...
  • 2026年知名的板簧强化抛丸机/江苏弹簧强化抛丸机工厂 - 行业平台推荐