• 1.DAP-Lite
  • 1.1 DAP-Lite structure
  • 1.2 DAP-Lite control flow
  • 2. Functional Description
  • 2.1 DP
  • 2.2 APB-AP
  • 2.3 APB-MUX
  • 2.4 ROM TAB
  • 3. 连接调试组件和系统接口


参考链接:CoreSight DAP-Lite Technical Reference Manual

1.DAP-Lite

1.1 DAP-Lite structure

DAP简单来说分成 DP + AP , Debug Port + Access Port

  • Debug Port–和JTAG的接口叫做Debug Port
  • Access Port–和内部其他的接口叫做Access Port

DAP-Lite是CoreSight设计套件随附的DAP的版本,功能较少。 它不包含JTAG访问端口或AHB访问端口或任何其他直接访问系统总线的访问端口。
For more information on the additional features and functionality provided by the DAP, see the CoreSight Components Technical Reference Manua
DAP-Lite包含以下组件:

  • 串行线JTAG调试端口(SWJ-DP)。它包含两个调试端口,SW-DP和JTAG-DP.
  • 高级外围总线访问端口(APB-AP)。APB-AP在AMBA v3.0中提供了一个APB主设备,用于访问调试APB总线。
  • 高级外围总线多路复用器(APB-Mux)。APB复用器使系统可以访问连接到Debug APB的CoreSight组件。
  • 只读内存(ROM)表。ROM表提供了连接到Debug APB的CoreSight组件的内存位置列表。

coresight 使用 coresight dap_jtag

1.2 DAP-Lite control flow

coresight 使用 coresight dap_arm_02


总体而言,DAP-Lite充当将从一种类型的接口(链接外部工具的JTAG或sw)传输的数据转换为不同的内部事务的组件。 调试端口接收JTAG或SW传输,但通过标准总线接口控制APB-AP。 APB-AP只能访问调试APB,但是也可以通过APB-Mux从AHB矩阵进行控制,从而可以控制和访问各种CoreSight组件。

2. Functional Description

2.1 DP

调试端口(debug port).
主机通过调试端口访问DAP-Lite。

  • JTAG-DP基于IEEE 1149.1测试访问端口(TAP)和边界扫描体系结构,被广泛称为JTAG,并为DAP提供JTAG接口。
  • SW-DP为DAP-Lite提供了两个引脚(时钟+数据)接口。

SWJ-DP

SWJ-DP提供了在JTAG和SWD之间进行选择的自动检测逻辑。 这使JTAG-DP和SW-DP可以共享相同的引脚。

coresight 使用 coresight dap_arm_03


JTAG

JTAG接口有四个必须引脚TCK,TMS,TDI和TDO,以及一个可选的复位nTRST。

JTAG-DP和SW-DP还需要单独的上电复位nPOTRST。

SWD

外部SWD接口需要两个引脚:

  • 双向SWDIO信号
  • 时钟SWCLK,可以从设备输入或输出

2.2 APB-AP

coresight 使用 coresight dap_外部工具_04

2.3 APB-MUX

DAP-Lite的APB多路复用器(APB-Mux)使外部工具和系统可以访问调试APB。 APB-Mux将多个接口封装到单个可交付组件中,从而使多主设备可以访问调试APB。

coresight 使用 coresight dap_jtag_05


外部工具使用APB访问端口(APB-AP)提供的APB主接口连接到APB-Mux。 系统访问需要APB桥来提供APB主接口。

coresight 使用 coresight dap_引脚_06


图2-18显示了集成到DAP-Lite中的APB-Mux。 AP从端口连接到APB-AP,系统从端口连接到系统总线。 系统总线需要一个APB桥接器才能连接到APB-Mux。 APB-AP和系统的连接必须按照图2-17所示的顺序进行,以支持不同的调试和系统电源域。

2.4 ROM TAB

DAP-Lite提供了一个可配置的内部只读存储器(ROM)表,该表连接到APB-Mux的主Debug APB端口。 调试ROM表已加载到该总线的地址0x00000000和0x80000000,可以从APB-AP和系统APB输入进行访问。地址总线的第31位未连接到ROM表,确保两个视图读取相同的值。 ROM表存储调试APB上组件的位置。 通常,此ROM表将配置为列出系统中的所有CoreSight组件。
ROM表具有标准的APB接口,但不包括PWRITEDBG和PWDATADBG。
ROM表是只读设备,写操作将被忽略。

3. 连接调试组件和系统接口

coresight 使用 coresight dap_arm_07

图2-21显示了如何通过DAP-Lite访问调试组件和系统总线。 系统访问只能通过处理器从JTAG进行。 调试组件可以通过软件或DAP-Lite或两者来访问,具体取决于AXI总线矩阵的配置。