目录
- L1 instruction memory system
- Instruction decode -指令译码
- Register rename -寄存器重命名
- Instruction issue - 指令发射
- Integer execute - 整数执行
- Vector execute - 向量执行
- Advanced SIMD and floating-point support - 高级 SIMD 和浮点支持
- Cryptographic Extension - 加密扩展
- Scalable Vector Extension - 可扩展向量扩展
- L1 data memory system
- Memory Management Unit
- L2 memory system
- Embedded Trace Extension and Trace Buffer Extension
- Statistical Profiling Extension
- Performance Monitoring Unit
- Activity Monitoring Unit
- GIC CPU interface
- CPU bridge
Cortex-X925 core中的组件旨在使其成为一个高性能的core。
主要模块包括:
- L1 指令和 L1 数据存储系统
- L2 存储系统
- 寄存器重命名
- 指令解码
- 指令发射
- 执行流水线
- 内存管理单元 (MMU)
- 跟踪单元和跟踪缓冲
- 性能监控单元 (PMU)
- 活动监控单元 (AMU)
- 通用中断控制器 (GIC) CPU 接口
Cortex-X925 core通过 CPU 桥与 DynamIQ Shared Unit-120 连接。
Cortex-X925 core实现了 ARMv9.2-A 架构。ARMv9.2-A 架构扩展了 ARMv8-A 架构中定义的架构,涵盖了 ARMv8.7-A。
L1 instruction memory system
L1 指令存储系统从指令缓存中提取指令,并将指令流传送到指令解码单元。
L1 指令存储系统包括:
- 一个 64KB、4 路集合关联的 L1 指令缓存,带有 64 字节缓存行。
- 一个全关联的 L1 指令翻译后备缓冲(TLB),原生支持 4KB、16KB、64KB 和 2MB 页大小。
- 一个动态分支预测器。
Instruction decode -指令译码
指令解码单元将 AArch64 指令解码为内部格式。
Register rename -寄存器重命名
寄存器重命名单元执行寄存器重命名,以便于乱序执行,并将解码后的指令分派到各种发射队列。
Instruction issue - 指令发射
指令发射单元控制解码后的指令何时分派到执行流水线。它包括存储待发射到执行流水线的指令的发射队列。
Integer execute - 整数执行
整数执行流水线是整体执行流水线的一部分,包含执行算术和逻辑数据处理操作的整数执行单元。
Vector execute - 向量执行
向量执行单元是执行流水线的一部分,执行高级 SIMD 和浮点操作(FPU),执行可扩展向量扩展(SVE)和可扩展向量扩展 2(SVE2)指令,并可选择性地执行加密指令(Crypto)。
Advanced SIMD and floating-point support - 高级 SIMD 和浮点支持
高级 SIMD 是一种媒体和信号处理架构,主要增加了音频、视频、3D 图形、图像和语音处理指令。浮点架构提供单精度和双精度浮点运算支持。
Cryptographic Extension - 加密扩展
加密扩展在 Cortex-X925 core中是可选的。加密扩展为高级 SIMD 和可扩展向量扩展(SVE)指令集添加了新指令,加速以下操作:
- 高级加密标准(AES)加密和解密。
- 安全哈希算法(SHA)功能 SHA1、SHA2、SHA3。
- 即使未配置 CRYPTO 支持,也支持 SVE2 版本的 SHA3 指令 EOR3、XAR 和 BCAX。
- Armv8.2-SM SM3 哈希函数和 SM4 加密与解密指令。
- 在诸如 Galois/计数器模式和椭圆曲线加密等算法中使用的有限域运算。
注意
可选的加密扩展不包括在基础产品中。Arm 提供了在 Cortex-X925 core许可下的附加许可中提供的加密扩展。
Scalable Vector Extension - 可扩展向量扩展
可扩展向量扩展(SVE)和可扩展向量扩展 2(SVE2)是 Armv8-A 架构的扩展。
它们补充但不取代 AArch64 高级 SIMD 和浮点功能。
高级 SIMD 架构、其相关实现以及支持软件也被称为 NEON 技术。
L1 data memory system
L1 数据存储系统执行加载和存储指令,并涵盖 L1 数据侧存储系统。它还处理内存一致性请求。
L1 数据存储系统包括:
- 一个 64KB、4 路集合关联缓存,具有 64 字节缓存行。
- 一个全关联的 L1 数据 TLB,原生支持 4KB、16KB 和 64KB 页大小,以及 2MB 和 512MB 块大小。
Memory Management Unit
内存管理单元 (MMU) 通过一组虚拟到物理地址映射和存储属性(保存在翻译表中),提供对内存系统的精细控制。
当地址被翻译时,这些会被保存到 TLB 中。TLB 项目包括全局和地址空间标识符 (ASID),以防止上下文切换时的 TLB 失效。它们还包括虚拟机标识符 (VMID),以防止虚拟机切换时由虚拟机监控程序引起的 TLB 失效。
L2 memory system
L2 存储系统包括 L2 缓存。L2 缓存是core的私有缓存,可以配置为 2MB 的 8 路集合关联缓存或 3MB 的 12 路集合关联缓存。L2 存储系统通过异步 CPU 桥连接到 DSU-120。
Embedded Trace Extension and Trace Buffer Extension
Cortex-X925 core支持一系列的调试、测试和跟踪选项,包括跟踪单元和跟踪缓冲器。
Cortex-X925 core还包括一个 ROM 表,其中包含系统中组件的列表。调试器可以使用该 ROM 表确定实现了哪些 CoreSight 组件。
Cortex-X925 core的所有调试和跟踪组件都在本手册中描述。有关嵌入式逻辑分析仪 (ELA) 的更多信息,请参阅 [Arm CoreSight ELA-600 嵌入式逻辑分析仪技术参考手册](Embedded Logic Analyzer Technical Reference Manual)。
Statistical Profiling Extension
Cortex-X925 core实现了 ARMv8.7-A 架构的统计分析扩展 (SPE)。SPE 提供执行指令的性能特征的统计视图,软件编写者可以使用这些数据优化代码以获得更好的性能。
Performance Monitoring Unit
性能监控单元 (PMU) 根据配置提供 6 或 31 个性能监控器。性能监控器可以配置为收集每个core和存储系统的操作统计信息。这些信息可用于调试和代码分析。
Activity Monitoring Unit
Cortex-X925 core实现了 ARMv8.4-A 架构的活动监控扩展。活动监控单元 (AMU) 中的活动监控器提供了有关系统电源管理和持续监控的有用信息。
GIC CPU interface
通用中断控制器 (GIC) CPU 接口与外部分配器组件集成时,用于支持和管理集群系统中的中断。
CPU bridge
在一个集群中,每个 Cortex-X925 core和 DSU-120 之间有一个 CPU 桥。
CPU 桥控制core和 DSU-120 之间的缓冲和同步。
CPU 桥是异步的,以允许每个core在频率、电源和区域实现点之间有不同的选择。你可以将 CPU 桥配置为同步运行,而不影响其他始终异步的接口,如调试和追踪。