Agilex™ 7 Hard Processor System Technical Reference Manual
                    
                        ID
                        683567
                    
                
                
                    Date
                    10/31/2025
                
                
                    Public
                
            
                
                    
                    
                        1. Agilex™ 7 Hard Processor System Technical Reference Manual Revision History
                    
                
                    
                        2. Introduction to the Hard Processor System
                    
                    
                
                    
                        3. Cortex* -A53 MPCore Processor
                    
                    
                
                    
                        4. Cache Coherency Unit
                    
                    
                
                    
                        5. System Memory Management Unit
                    
                    
                
                    
                        6. System Interconnect
                    
                    
                
                    
                        7. Bridges
                    
                    
                
                    
                        8. DMA Controller
                    
                    
                
                    
                        9. On-Chip RAM
                    
                    
                
                    
                        10. Error Checking and Correction Controller
                    
                    
                
                    
                        11. Clock Manager
                    
                    
                
                    
                        12. System Manager
                    
                    
                
                    
                        13. Reset Manager
                    
                    
                
                    
                        14. Hard Processor System I/O Pin Multiplexing
                    
                    
                
                    
                        15. NAND Flash Controller
                    
                    
                
                    
                        16. SD/MMC Controller
                    
                    
                
                    
                        17. Ethernet Media Access Controller
                    
                    
                
                    
                        18. USB 2.0 OTG Controller
                    
                    
                
                    
                        19. SPI Controller
                    
                    
                
                    
                        20. I2C Controller
                    
                    
                
                    
                        21. UART Controller
                    
                    
                
                    
                        22. General-Purpose I/O Interface
                    
                    
                
                    
                        23. Timers
                    
                    
                
                    
                        24. Watchdog Timers
                    
                    
                
                    
                        25. CoreSight Debug and Trace
                    
                    
                
                    
                        A. Booting and Configuration
                    
                    
                
                    
                        B. Accessing the Secure Device Manager Quad SPI Flash Controller through HPS
                    
                    
                
                    
                        C. Operational Status of the HPS to the FPGA Logic
                    
                    
                
            
        
                                    
                                    
                                        
                                        
                                            2.2.1. HPS Block Diagram
                                        
                                        
                                    
                                        
                                        
                                            2.2.2. Cortex-A53 MPCore Processor
                                        
                                        
                                    
                                        
                                        
                                            2.2.3. Cache Coherency Unit
                                        
                                        
                                    
                                        
                                        
                                            2.2.4. System Memory Management Unit
                                        
                                        
                                    
                                        
                                            2.2.5. HPS Interfaces
                                        
                                        
                                        
                                    
                                        
                                            2.2.6. System Interconnect
                                        
                                        
                                        
                                    
                                        
                                        
                                            2.2.7. On-Chip RAM
                                        
                                        
                                    
                                        
                                            2.2.8. Flash Memory Controllers
                                        
                                        
                                        
                                    
                                        
                                            2.2.9. System Modules
                                        
                                        
                                        
                                    
                                        
                                            2.2.10. Interface Peripherals
                                        
                                        
                                        
                                    
                                        
                                        
                                            2.2.11. CoreSight* Debug and Trace
                                        
                                        
                                    
                                        
                                        
                                            2.2.12. Hard Processor System I/O Pin Multiplexing
                                        
                                        
                                    
                                
                            
                                    
                                    
                                        
                                            3.5.1. Exception Levels
                                        
                                        
                                        
                                    
                                        
                                            3.5.2. Virtualization
                                        
                                        
                                        
                                    
                                        
                                            3.5.3. Memory Management Unit
                                        
                                        
                                        
                                    
                                        
                                            3.5.4. Level 1 Caches
                                        
                                        
                                        
                                    
                                        
                                        
                                            3.5.5. Level 2 Memory System
                                        
                                        
                                    
                                        
                                            3.5.6. Snoop Control Unit
                                        
                                        
                                        
                                    
                                        
                                        
                                            3.5.7. Cryptographic Extensions
                                        
                                        
                                    
                                        
                                            3.5.8. NEON Multimedia Processing Engine
                                        
                                        
                                        
                                    
                                        
                                        
                                            3.5.9. Floating Point Unit
                                        
                                        
                                    
                                        
                                        
                                            3.5.10. ACE Bus Interface
                                        
                                        
                                    
                                        
                                        
                                            3.5.11. Abort Handling
                                        
                                        
                                    
                                        
                                            3.5.12. Cache Protection
                                        
                                        
                                        
                                    
                                        
                                            3.5.13. Generic Interrupt Controller
                                        
                                        
                                        
                                    
                                        
                                            3.5.14. Generic Timers
                                        
                                        
                                        
                                    
                                        
                                            3.5.15. Debug Modules
                                        
                                        
                                        
                                    
                                        
                                        
                                            3.5.16. Cache Coherency Unit
                                        
                                        
                                    
                                        
                                        
                                            3.5.17. Clock Sources
                                        
                                        
                                    
                                
                            
                                    
                                    
                                        
                                        
                                            5.4.1. Translation Stages
                                        
                                        
                                    
                                        
                                            5.4.2. Exception Levels
                                        
                                        
                                        
                                    
                                        
                                        
                                            5.4.3. Translation Regimes
                                        
                                        
                                    
                                        
                                            5.4.4. Translation Buffer Unit
                                        
                                        
                                        
                                    
                                        
                                            5.4.5. Translation Control Unit
                                        
                                        
                                        
                                    
                                        
                                        
                                            5.4.6. Security State Determination
                                        
                                        
                                    
                                        
                                        
                                            5.4.7. Stream ID
                                        
                                        
                                    
                                        
                                        
                                            5.4.8. Quality of Service Arbitration
                                        
                                        
                                    
                                        
                                        
                                            5.4.9. System Memory Management Unit Interrupts
                                        
                                        
                                    
                                        
                                        
                                            5.4.10. System Memory Management Unit Reset
                                        
                                        
                                    
                                        
                                        
                                            5.4.11. System Memory Management Unit Clocks
                                        
                                        
                                    
                                
                            
                        
                        
                            
                            
                                15.1. NAND Flash Controller Features
                            
                        
                            
                                15.2. NAND Flash Controller Block Diagram and System Integration
                            
                            
                        
                            
                            
                                15.3. NAND Flash Controller Signal Descriptions
                            
                        
                            
                                15.4. Functional Description of the NAND Flash Controller
                            
                            
                        
                            
                                15.5. NAND Flash Controller Programming Model
                            
                            
                        
                            
                            
                                15.6. NAND Flash Controller Address Map and Register Definitions
                            
                        
                    
                
                                                
                                                
                                                    
                                                    
                                                        15.5.1.1. NAND Flash Controller Optimization Sequence
                                                    
                                                    
                                                
                                                    
                                                    
                                                        15.5.1.2. Device Initialization Sequence
                                                    
                                                    
                                                
                                                    
                                                    
                                                        15.5.1.3. Device Operation Control
                                                    
                                                    
                                                
                                                    
                                                    
                                                        15.5.1.4. ECC Enabling
                                                    
                                                    
                                                
                                                    
                                                    
                                                        15.5.1.5. NAND Flash Controller Performance Registers
                                                    
                                                    
                                                
                                                    
                                                        15.5.1.6. Interrupt and DMA Enabling
                                                    
                                                    
                                                    
                                                
                                                    
                                                    
                                                        15.5.1.7. Timing Registers
                                                    
                                                    
                                                
                                                    
                                                    
                                                        15.5.1.8. Registers to Ignore
                                                    
                                                    
                                                
                                            
                                        
                                                            
                                                            
                                                                
                                                                
                                                                    16.4.2.5.1. Internal DMA Controller Descriptors
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.2. Internal DMA Controller Descriptor Address
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.3. Internal DMA Controller Descriptor Fields
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.4. Host Bus Burst Access
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.5. Host Data Buffer Alignment
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.6. Buffer Size Calculations
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.7. Internal DMA Controller Interrupts
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.2.5.8. Internal DMA Controller Functional State Machine†
                                                                
                                                                
                                                            
                                                        
                                                    
                                                            
                                                            
                                                                
                                                                
                                                                    16.4.3.1.1. Load Command Parameters
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.2. Send Command and Receive Response
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.3. Send Response to BIU
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.4. Driving P-bit to the CMD Pin
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.5. Polling the CCS
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.6. CCS Detection and Interrupt to Host Processor
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.7. CCS Timeout
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.8. Send CCSD Command
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    16.4.3.1.9. I/O transmission delay (NACIO Timeout)
                                                                
                                                                
                                                            
                                                        
                                                    
                                    
                                    
                                        
                                            16.5.1. Software and Hardware Restrictions†
                                        
                                        
                                        
                                    
                                        
                                        
                                            16.5.2. Initialization
                                        
                                        
                                    
                                        
                                        
                                            16.5.3. Controller/DMA/FIFO Buffer Reset Usage
                                        
                                        
                                    
                                        
                                            16.5.4. Non-Data Transfer Commands
                                        
                                        
                                        
                                    
                                        
                                            16.5.5. Data Transfer Commands
                                        
                                        
                                        
                                    
                                        
                                            16.5.6. Transfer Stop and Abort Commands
                                        
                                        
                                        
                                    
                                        
                                            16.5.7. Internal DMA Controller Operations
                                        
                                        
                                        
                                    
                                        
                                            16.5.8. Commands for SDIO Card Devices
                                        
                                        
                                        
                                    
                                        
                                            16.5.9. CE-ATA Data Transfer Commands
                                        
                                        
                                        
                                    
                                        
                                            16.5.10. Card Read Threshold
                                        
                                        
                                        
                                    
                                        
                                        
                                            16.5.11. Interrupt and Error Handling
                                        
                                        
                                    
                                        
                                            16.5.12. Booting Operation for eMMC and MMC
                                        
                                        
                                        
                                    
                                
                            
                                                
                                                
                                                    
                                                    
                                                        16.5.12.1. Boot Operation by Holding Down the CMD Line
                                                    
                                                    
                                                
                                                    
                                                    
                                                        16.5.12.2. Boot Operation for eMMC Card Device
                                                    
                                                    
                                                
                                                    
                                                        16.5.12.3. Boot Operation for Removable MMC4.3, MMC4.4 and MMC4.41 Cards
                                                    
                                                    
                                                    
                                                
                                                    
                                                    
                                                        16.5.12.4. Alternative Boot Operation
                                                    
                                                    
                                                
                                                    
                                                    
                                                        16.5.12.5. Alternative Boot Operation for eMMC Card Devices
                                                    
                                                    
                                                
                                                    
                                                        16.5.12.6. Alternative Boot Operation for MMC4.3 Cards
                                                    
                                                    
                                                    
                                                
                                            
                                        
                        
                        
                            
                                17.1. Features of the Ethernet MAC
                            
                            
                        
                            
                            
                                17.2. EMAC Block Diagram and System Integration
                            
                        
                            
                            
                                17.3. Distributed Virtual Memory Support
                            
                        
                            
                                17.4. EMAC Controller Signal Description
                            
                            
                        
                            
                                17.5. EMAC Internal Interfaces
                            
                            
                        
                            
                                17.6. Functional Description of the EMAC
                            
                            
                        
                            
                                17.7. Ethernet MAC Programming Model
                            
                            
                        
                            
                            
                                17.8. Ethernet MAC Address Map and Register Definitions
                            
                        
                    
                
                                    
                                    
                                        
                                        
                                            17.6.1. Transmit and Receive Data FIFO Buffers
                                        
                                        
                                    
                                        
                                            17.6.2. DMA Controller
                                        
                                        
                                        
                                    
                                        
                                            17.6.3. Descriptor Overview
                                        
                                        
                                        
                                    
                                        
                                            17.6.4. IEEE 1588-2002 Timestamps
                                        
                                        
                                        
                                    
                                        
                                            17.6.5. IEEE 1588-2008 Advanced Timestamps
                                        
                                        
                                        
                                    
                                        
                                            17.6.6. IEEE 802.3az Energy Efficient Ethernet
                                        
                                        
                                        
                                    
                                        
                                        
                                            17.6.7. Checksum Offload
                                        
                                        
                                    
                                        
                                            17.6.8. Frame Filtering
                                        
                                        
                                        
                                    
                                        
                                            17.6.9. Clocks and Resets
                                        
                                        
                                        
                                    
                                        
                                        
                                            17.6.10. Interrupts
                                        
                                        
                                    
                                
                            
                                                            
                                                            
                                                                
                                                                
                                                                    17.6.8.1.1. Unicast Destination Address Filter
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    17.6.8.1.2. Multicast Destination Address Filter
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    17.6.8.1.3. Hash or Perfect Address Filter
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    17.6.8.1.4. Broadcast Address Filter
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    17.6.8.1.5. Unicast Source Address Filter
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    17.6.8.1.6. Inverse Filtering Operation (Invert the Filter Match Result at Final Output)
                                                                
                                                                
                                                            
                                                                
                                                                
                                                                    17.6.8.1.7. Destination and Source Address Filtering Summary
                                                                
                                                                
                                                            
                                                        
                                                    
                                    
                                    
                                        
                                        
                                            17.7.1. System Level EMAC Configuration Registers
                                        
                                        
                                    
                                        
                                        
                                            17.7.2. EMAC FPGA Interface Initialization
                                        
                                        
                                    
                                        
                                        
                                            17.7.3. EMAC HPS Interface Initialization
                                        
                                        
                                    
                                        
                                        
                                            17.7.4. DMA Initialization
                                        
                                        
                                    
                                        
                                        
                                            17.7.5. EMAC Initialization and Configuration
                                        
                                        
                                    
                                        
                                        
                                            17.7.6. Performing Normal Receive and Transmit Operation
                                        
                                        
                                    
                                        
                                        
                                            17.7.7. Stopping and Starting Transmission
                                        
                                        
                                    
                                        
                                            17.7.8. Programming Guidelines for Energy Efficient Ethernet
                                        
                                        
                                        
                                    
                                        
                                            17.7.9. Programming Guidelines for Flexible Pulse-Per-Second (PPS) Output
                                        
                                        
                                        
                                    
                                
                            
                        
                        
                            
                                18.1. Features of the USB OTG Controller
                            
                            
                        
                            
                            
                                18.2. Block Diagram and System Integration
                            
                        
                            
                            
                                18.3. Distributed Virtual Memory Support
                            
                        
                            
                            
                                18.4. USB 2.0 ULPI PHY Signal Description
                            
                        
                            
                                18.5. Functional Description of the USB OTG Controller
                            
                            
                        
                            
                                18.6. USB OTG Controller Programming Model
                            
                            
                        
                            
                            
                                18.7. USB 2.0 OTG Controller Address Map and Register Definitions
                            
                        
                    
                
                                    
                                    
                                        
                                        
                                            24.4.1. Setting the Timeout Period Values
                                        
                                        
                                    
                                        
                                        
                                            24.4.2. Selecting the Output Response Mode
                                        
                                        
                                    
                                        
                                        
                                            24.4.3. Enabling and Initially Starting a Watchdog Timers
                                        
                                        
                                    
                                        
                                        
                                            24.4.4. Reloading a Watchdog Counter
                                        
                                        
                                    
                                        
                                        
                                            24.4.5. Pausing a Watchdog Timers
                                        
                                        
                                    
                                        
                                        
                                            24.4.6. Disabling and Stopping a Watchdog Timers
                                        
                                        
                                    
                                        
                                        
                                            24.4.7. Watchdog Timers State Machine
                                        
                                        
                                    
                                
                            
                        
                        
                            
                            
                                25.1. Features of CoreSight Debug and Trace
                            
                        
                            
                            
                                25.2. Arm* CoreSight Documentation
                            
                        
                            
                            
                                25.3. CoreSight Debug and Trace Block Diagram
                            
                        
                            
                                25.4. Functional Description of CoreSight Debug and Trace
                            
                            
                        
                            
                                25.5. CoreSight Debug and Trace Programming Model
                            
                            
                        
                            
                            
                                25.6. CoreSight Debug and Trace Address Map and Register Definitions
                            
                        
                    
                
                                    
                                    
                                        
                                            25.4.1. Debug Access Port
                                        
                                        
                                        
                                    
                                        
                                        
                                            25.4.2. CoreSight SoC-400 Timestamp Generator
                                        
                                        
                                    
                                        
                                        
                                            25.4.3. System Trace Macrocell
                                        
                                        
                                    
                                        
                                        
                                            25.4.4. Trace Funnel
                                        
                                        
                                    
                                        
                                            25.4.5. CoreSight Trace Memory Controller
                                        
                                        
                                        
                                    
                                        
                                        
                                            25.4.6. AMBA Trace Bus Replicator
                                        
                                        
                                    
                                        
                                        
                                            25.4.7. Trace Port Interface Unit
                                        
                                        
                                    
                                        
                                        
                                            25.4.8. NoC Trace Ports
                                        
                                        
                                    
                                        
                                            25.4.9. Embedded Cross Trigger System
                                        
                                        
                                        
                                    
                                        
                                        
                                            25.4.10. Embedded Trace Macrocell
                                        
                                        
                                    
                                        
                                        
                                            25.4.11. HPS Debug APB Interface
                                        
                                        
                                    
                                        
                                            25.4.12. FPGA Interface
                                        
                                        
                                        
                                    
                                        
                                        
                                            25.4.13. Debug Clocks
                                        
                                        
                                    
                                        
                                        
                                            25.4.14. Debug Resets
                                        
                                        
                                    
                                
                            
                        
                        
                            
                            
                                B.1. Features of the Quad SPI Flash Controller
                            
                        
                            
                                B.2. Taking Ownership of Quad SPI Controller
                            
                            
                        
                            
                            
                                B.3. Quad SPI Flash Controller Block Diagram and System Integration
                            
                        
                            
                            
                                B.4. Quad SPI Flash Controller Signal Description
                            
                        
                            
                                B.5. Functional Description of the Quad SPI Flash Controller
                            
                            
                        
                            
                                B.6. Quad SPI Flash Controller Programming Model
                            
                            
                        
                            
                            
                                B.7. Accessing the SDM Quad SPI Flash Controller Through HPS Address Map and Register Definitions
                            
                        
                    
                
                                    
                                    
                                        
                                        
                                            B.5.1. Overview
                                        
                                        
                                    
                                        
                                            B.5.2. Data Slave Interface
                                        
                                        
                                        
                                    
                                        
                                        
                                            B.5.3. SPI Legacy Mode
                                        
                                        
                                    
                                        
                                            B.5.4. Register Slave Interface
                                        
                                        
                                        
                                    
                                        
                                        
                                            B.5.5. Local Memory Buffer
                                        
                                        
                                    
                                        
                                        
                                            B.5.6. Arbitration between Direct/Indirect Access Controller and STIG
                                        
                                        
                                    
                                        
                                        
                                            B.5.7. Configuring the Flash Device
                                        
                                        
                                    
                                        
                                        
                                            B.5.8. XIP Mode
                                        
                                        
                                    
                                        
                                        
                                            B.5.9. Write Protection
                                        
                                        
                                    
                                        
                                        
                                            B.5.10. Data Slave Sequential Access Detection
                                        
                                        
                                    
                                        
                                        
                                            B.5.11. Clocks
                                        
                                        
                                    
                                        
                                        
                                            B.5.12. Resets
                                        
                                        
                                    
                                        
                                        
                                            B.5.13. Interrupts
                                        
                                        
                                    
                                
                            15.4.1. Discovery and Initialization
The NAND flash controller performs a specific initialization sequence after the HPS receives power and the flash device is stable. During initialization, the flash controller queries the flash device and configures itself according to one of the following flash device types: 
  
  - ONFI 1.0-compliant devices
- Legacy (non-ONFI) NAND devices
The NAND flash controller identifies ONFI-compliant connected devices using ONFI discovery protocol, by sending the Read ID command. For devices that do not recognize this command (especially for 512‑byte page size devices), software must write to the system manager to assert the bootstrap_512B_device signal to identify the device type before releasing the NAND controller from reset.
   When the NAND controller is taken out of reset, the NAND flash controller samples the following configuration signals which are driven by user-writable registers in the System Manager: 
   
    
     
      
   
  
  | Signal | Default Value | Description | 
|---|---|---|
| bootstrap_inhibit_init | 0 | Inhibit the NAND controller from any initialization. The controller does not perform a query of the device and does not issue a Page Load command for block0, page0 for SLC devices. When this signal is asserted, it is expected that the software programs all registers pertaining to device parameters like: page size and width. | 
| bootstrap_512B_device | 0 | Inform the NAND controller that 512-byte devices are connected. | 
| bootstrap_512B_x16_device | 0 | Inform the NAND controller that 512-byte page size devices are connected and the device I/O width is 16 bits. This signal should be asserted in case of 512-byte devices only. | 
| bootstrap_two_row_addr_cycles | 0 | The connected device requires only two address cycles instead of the normal three row address cycles. | 
| bootstrap_inhibit_b0p0_load | 1 | Bootstrap pin to inform the NAND controller not to issue a Page Load command for block0, page0, of the device as a part of the initialization procedure. | 
To support initialization, the rdy_busy_in pin must be connected.
The NAND flash controller performs the following initialization steps:
- If the system manager is asserting bootstrap_inhibit_init, the flash controller goes directly to 7.
- When the device is ready, the flash controller sends the "Read ID" command to read the ONFI signature from the memory device, to determine whether an ONFI or a legacy device is connected.
- If the data returned by the memory device has an ONFI signature, the flash controller then reads the device parameter page. The flash controller stores the relevant device feature information in internal memory control registers, enabling it to correctly program other registers in the flash device, and goes to 5.
- If the data does not have a valid ONFI signature, the flash controller assumes that it is a legacy (non‑ONFI) device. The flash controller then performs the following steps: 
    - Sends the reset command to the device
- Reads the device signature information
- Stores the relevant values into internal memory controller registers
 
- The flash controller resets the memory device. At the same time, it verifies the width of the memory interface. The HPS supports one 8‑bit or 16-bit NAND flash device. The flash controller detects the memory interface width.
- The flash controller sends the Page Load command to block 0, page 0 of the device, configuring direct read access, so the processor can read from that page. The processor can start reading from the first page of the flash memory. 
    Note: The system manager can bypass this step by asserting bootstrap_inhibit_b0p0_load before reset is de-asserted.
- The flash controller sends the reset command to the flash.
- The flash controller clears the rst_comp bit in the intr_status0 register in the status group to indicate to software that the flash reset is complete.