6.3 Arm A15
The Arm Subsystem (ARMSS) of the SoC integrates a single Cortex-A15 processor with additional logic for bus protocol conversion, local power management, and various debug and trace enhancements.
The Cortex-A15 processor is an Armv7A-compatible, multi-issue out-of-order superscalar execution engine with integrated L1 caches.
The implementation also supports advanced SIMDv2 (NEON™ technology) and VFPv4 (vector floating point) architecture extensions, security, virtualization, LPAE (large physical address extension), and multiprocessing extensions.
The Arm Subsystem includes a 512KB L2 cache and support for AMBA4 AXI and AXI coherence extension (ACE) protocols.
NOTE
The Arm Subsystem is also referred to as Arm CorePac.
The Arm subsystem supports the following key features:
- Arm Cortex-A15 processor, full implementation of Armv7-A architecture instruction set
- 32KB L1 instruction (L1I) and data (L1D) caches
- 512KB L2 cache
- Super scalar, variable-length, out-of-order pipeline (12 stage in-order, 3-12 stage out-of-order)
- 128-bit instruction fetch
- 3-wide instruction decode
- 3-wide instruction dispatch
- 8-wide instruction issue
- Dynamic branch prediction with Branch Target Buffer (BTB) and Global History Buffer (GHB), a return stack, and an indirect predictor
- Integrated Neon and VFP (Vector Floating Point unit)
- Support for security and virtualization extensions
- Error Correction Code (ECC) protection for L1 data cache and L2 cache, parity protection for L1 instruction cache
- 32-entry fully-associative L1 Translation Look-aside Buffers (TLBs), for instruction fetch, data loads, and data stores
- 512-entry 4-way set-associative L2 TLB
- AMBA 4.0 AXI Coherency Extension (ACE) master port which is directly connected to MSMC (Multicore Shared Memory Controller) for low-latency access to shared MSMC SRAM
- Dedicated Arm clocking (ARM_PLL) for full flexibility in performance trade-offs
- Support for four integrated generic timers, in addition to 1 dedicated SoC-level watchdog timer (TIMER_5)
- Support for invasive (stop-mode) and non-invasive (tracing, performance monitoring) debug modes and cross triggering for multiprocessor debugging
- Support for processor instruction trace using Program Trace Macrocell (PTM) and data trace (printf style debug) using System Trace Macrocell (STM)
- Support for up to 480 interrupt requests via the Arm Interrupt Controller (AINTC) module
The Arm subsystem does not support the following features:
- ACP (Accelarator Coherancy Port) Slave
- Native AXI Master interface (only MSMC option is used)
The Arm subsystem integrates the following major blocks:
- Single-core Arm Cluster
- AXI2VBUS_MASTER
- Debug and Trace components
- ARM_VBUSP registers
- AINTC
- Global Timebase Counter (GTC)
- Various interfaces for interaction with other SoC subsystems and modules
For more information, see section Arm Cortex-A15 Subsystem in chapter Processors and Accelerators of the Device TRM.