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

ARM芯片架构之APB,ATB总线

CoreSight SoC-400

APB Interconnect Components 与 ATB Interconnect Components 技术详解(整理版)


1. APB Interconnect Components

1.1 概述

CoreSight 调试基础设施通过 AMBA APB3 协议提供对各调试单元寄存器的统一访问。
APB 互连组件负责:

  • 将一个或多个上游主设备(Master)连接到多个从设备(Slave)寄存器接口;
  • 提供地址解码、仲裁、错误响应及低功耗运行。

典型主设备:

  • AXI-to-APB 或 AHB-to-APB 桥接器;
  • 片上调试控制器。

典型从设备:

  • Embedded Trace Macrocell (ETM)
  • Cross Trigger Interface (CTI)
  • System Trace Macrocell (STM)
  • Trace Buffers (ETF/ETB) 等。

1.2 功能与特性

  • 多主多从:支持多达 N 个主设备接口与 M 个从设备接口。
  • 可编址性:每个从设备拥有独立、连续的地址空间。
  • 仲裁策略:静态优先级或轮询;可在 RTL 配置阶段参数化。
  • 低功耗:集成时钟门控、空闲检测。
  • 错误检测:无映射地址、从设备超时、无响应时返回 PSLVERR。

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/2becc7cae92b402b8cd3132ec7baa717.png

1.3 接口信号

APB 互连严格遵循 AMBA APB3 接口。主要信号如下:

名称方向描述
PCLKinAPB 时钟信号
PRESETnin低电平有效复位
PADDR[31:0]in寄存器访问地址
PWRITEin1=写访问, 0=读访问
PWDATA[31:0]in写数据
PSELxout从设备片选,x 表示从设备编号
PENABLEin访问阶段指示
PRDATA[31:0]out读数据
PREADYout就绪/等待信号
PSLVERRout错误响应

时序要点

  • 传输分为 Setup 与 Enable 两阶段;
  • 当 PREADY 为低时,互连插入等待周期;
  • PSLVERR 在读/写完成周期有效,用于指示无效访问或外设错误。

1.4 编程模型

  • 所有寄存器 32 位对齐;
  • 地址空间通常以 4 KB 为粒度分配;
  • 支持 Secure / Non-Secure 访问区分,便于与 TrustZone 配合;
  • 典型寄存器类型:控制、状态、ID/特征寄存器。

1.5 典型寄存器表(示例)

偏移地址寄存器说明
0x000CONTROL互连全局使能、仲裁策略配置
0x004STATUS当前主/从接口状态与错误标志
0x008ERRADDR最近一次错误访问的地址

字段描述示例
CONTROL[0]:全局使能;
CONTROL[3:1]:仲裁模式选择。

实际寄存器及位定义请参见原始手册对应章节。


在这里插入图片描述

1.6 设计与集成注意

  • 功耗控制:建议在无访问时门控 PCLK。
  • 可扩展性:可级联形成分层结构;顶层互连解码至子互连。
  • 调试支持:集成状态寄存器和可选中断输出,便于 SoC 级调试。

2. ATB Interconnect Components

2.1 概述

ATB(Advanced Trace Bus)是 AMBA Trace 体系的高速单向通道,用于实时 Trace 数据传输
CoreSight 的 ATB 互连组件提供:

  • 多个 Trace 源到一个或多个 Trace Sink 的无损数据通路;
  • 可靠握手机制和流量控制。

2.2 架构组成

  • ATB Master 接口:连接 ETM、STM 等数据源。
  • ATB Slave 接口:连接 Trace Funnel、Replicator、ETF、TPIU 等接收端。
  • Funnel:多输入一输出的合并器,内建仲裁。
  • Replicator:一输入多输出的数据复制模块。
  • Crossbar/Router(可选):支持多源多汇的复杂拓扑。

2.3 信号定义

名称方向描述
ATCLKinATB 时钟
ATRESETnin低电平复位
ATDATA[n:0]outTrace 数据总线,32/64/128 位可配置
ATVALIDout源端数据有效
ATREADYin目的端就绪
AFVALIDout辅助标志有效
AFREADYin辅助标志就绪

时序特性

  • 仅当 ATVALID=1 且 ATREADY=1 时数据传输成功;
  • 下游可拉低 ATREADY 实现流量调节;
  • 辅助信号通道用于时间戳和同步标志。

2.4 关键模块

  • Trace Funnel
    • 合并多个 Trace 流;
    • 支持优先级仲裁与可配置输入屏蔽。
  • Trace Replicator
    • 复制单一路径到多个接收端;
    • 常用于同时输出到外部调试接口和片上缓冲。
  • Trace Sink (ETF/ETB/TPIU)
    • 接收、缓存或输出 Trace 数据。
    • ETF/ETB 提供存储与回读;TPIU 负责高速外部输出。

2.5 设计考量

  • 带宽规划:根据所有 ETM 峰值速率决定总线位宽与时钟。
  • 延迟与缓冲:适度 FIFO 以平衡源与汇速度差。
  • 层次化拓扑:在大规模 SoC 中使用多级 Funnel、Replicator。
  • 调试与监控:可选性能计数器、状态寄存器。

3. 协同与系统集成

  • 控制面:APB
    • 配置各 Trace 源与 Sink 寄存器;
    • 启动/停止 Trace、设置触发条件。
  • 数据面:ATB
    • 传输实时 Trace 数据流;
    • 与调试主机或外部工具对接。

两者共同实现从“配置-启动”到“高速采集-输出”的完整调试闭环。


4. 设计与验证建议

  1. 地址映射一致性:确保 APB 从设备地址在全局内唯一。
  2. 跨时钟域同步:ATB 链路可能运行在高于 APB 的时钟域,需可靠同步。
  3. 安全策略:结合 TrustZone 设定安全/非安全访问。
  4. 仿真验证:进行满带宽压力、异常访问和超时场景测试。

参考

  • Arm® CoreSight™ SoC-400 Technical Reference Manual
  • Arm® AMBA® APB Protocol Specification
  • Arm® AMBA® ATB Protocol Specification
http://www.dtcms.com/a/418441.html

相关文章:

  • 死信队列(Dead-Letter Queue,DLQ)
  • Python 2025:网络安全与智能防御新范式
  • 2025软考甄选范文“论分布式事务及其解决方案”,软考高级,系统架构设计师论文
  • 学习前端开发的网站占酷设计网站官网入口
  • 【R语言验证统计量的渐进分布】
  • starrocks查询伪代码
  • R语言中的S3 泛型与方法
  • 安全运维实战指南:常见病毒防护操作手册
  • 爬虫逆向——RPC技术
  • tldr的安装与使用
  • Imatest-Star模块(西门子星图)
  • Unity 3D笔记——《B站阿发你好》
  • R语言从入门到精通Day3之【包的使用】
  • rocr专栏介绍
  • 济南网站建设 推搜点搜索优化的培训免费咨询
  • pc网站建设哪个好重庆seo网站运营
  • 沙箱1111111
  • 2、order-service 企业级代码目录结构规范
  • C# MVVM模式和Qt中MVC模式的比较
  • html mip 网站阿里云装wordpress慢
  • 权限校验是否应该在 Spring Cloud Gateway 中进行?
  • MariaDB数据库管理
  • 21.mariadb 数据库
  • GFM100 地线连续性检测监控器:破解工业接地痛点,筑牢电力系统安全防线
  • 2、Nginx 与 Spring Cloud Gateway 详细对比:定位、场景与分工
  • 玳瑁的嵌入式日记---0928(ARM--I2C)
  • 微服务故障排查
  • 离散时间马尔可夫链
  • 怎么做网站快照网站域名跳转代码html
  • 基于 OpenCV + 深度学习的实时人脸检测与年龄性别识别系统