ARM Coresight 系列文章 7 - ARM Coresight 通过 AHB-AP 访问 cpu 内部 coresight 组件

文章目录

上篇文章:ARM Coresight 系列文章 6 - ARM Coresight ROM Table
下篇文章:ARM Coresight 系列文章 8 - ARM Coresight 通过 APBIC 级联使用

如下图所示,如果A78想去访问M33的内部 coresight 组件 ETM,需要要怎么做?

答案也正是在图中,首先A78 通过AXI 互联,接入到 APBIC 的 slave port,再通过APBIC 的 master 送出,而APBIC中的master port 可以 master 的身份来访问对应的 AHB-AP上,至于为何要是使用AHB-AP连接M33? 前面的文章已经介绍过了。

AHB-AP中的 BASE 寄存器存有 M33 的 ROM Table 的地址,通过SOC-600 SPEC 可以找到 AHB-AP 中的 BASE 寄存器的偏移地址,如下图所示 BASE 寄存器在SOC-600 AHB-AP中有两个,偏移地址分别为:0x0DFB和0x1DFB, 那么为何会出现两个BASE寄存器呢?

答案 在SOC-600的SPEC中,如下面截取SOC-600的部分说明,
看了之后其实还是不明白为何要分为两组,其实前面的文章已经介绍过,对于AHB-AP(APB-AP) 的访问可以有两种,一种是通过外部 debugger 工具,另外一种就是通过系统总线来访问,这里的两组寄存器其实就是这个作用,在0x00001000之后的是留给系统总线使用的,另外一组是给外部debugger 使用的。

如下图所示通过读取0x1df8 偏移之后,读到的值为 0xe00ff003, 这个值也就是 M33 ROM TABLE的地址。

读出来的值最后 2 bit 为何是0x3,可以查看前面文章找到原因。

通过查询 M33 的 SPEC 可以看到 0xE00FF000 正是 ROM Table 的地址。

上篇文章:ARM Coresight 系列文章 6 - ARM Coresight ROM Table
下篇文章:ARM Coresight 系列文章 8 - ARM Coresight 通过 APBIC 级联使用

相关推荐
狂奔蜗牛(bradley)9 小时前
拒绝SOEM黑盒!死磕EtherCAT主站:ARM+FPGA架构、DC同步与状态机修复等,50+篇实战开发文档全公开
arm开发·fpga开发·架构
女神下凡14 小时前
芯参谋(31):SPI NOR Flash 电路设计指南
arm开发·单片机·嵌入式硬件·fpga开发·设计规范
程序员JerrySUN14 小时前
Jetson边缘嵌入式实战课程第四讲:用 Yocto 定制 Jetson 系统,从开发走向产品化
arm开发·人工智能·安全·计算机视觉·目标跟踪
女神下凡7 天前
嵌入式设计的各种存储芯片的硬件/软件设计规范,非常全面。
arm开发·单片机·嵌入式硬件
从零开始的嵌入式之旅7 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
老当益壮梁奶奶7 天前
ARM汇编学习笔记(六):【i.MX6ULL】时钟系统与定时器(EPIT & GPT)
c语言·arm开发·嵌入式硬件·学习·51单片机
昌原的儿子LEO7 天前
IMX6ULL 时钟系统与 EPIT/GPT 定时器原理与配置
arm开发·学习
sunoo-2297 天前
【ARM嵌入式学习笔记Day6】一文打通i.MX6ULL时钟体系:PLL/PFD/预分频+滞回比较器全解析
arm开发·笔记·vscode·单片机·imx6ull·汇编语言
M78佐菲7 天前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
sunoo-2298 天前
【嵌入式裸机开发Day04】i.MX6ULL 蜂鸣器驱动详解:从引脚地址查找到代码实现全流程
arm开发·单片机·嵌入式硬件·学习·串口·裸机