SPRUIV7B May 2022 – September 2023 AM620-Q1 , AM623 , AM625 , AM625-Q1 , AM625SIP
The PRU is a processor optimized for performing embedded tasks that require manipulation of packed memory mapped data structures, handling of system events that have tight real-time constraints and interfacing with systems external to the SoC. The PRU is both very small and very efficient at handling such tasks.
The major attributes of the PRU are shown in Table 7-36.
Attribute | Value |
---|---|
IO Architecture | Load/Store |
Data Flow Architecture | Register to Register |
Core Level Bus Architecture | |
Type | 4-Bus Harvard (1 Instruction, 3 Data) |
Instruction I/F | 32-Bit Modified VBUSP Controller |
Memory I/F 0 | 32-Bit VBUSP Controller |
Memory I/F 1 | 32-Bit VBUSP Controller |
Execution Model | |
Issue Type | Scalar |
Pipelining | None (Purposefully) |
Ordering | In Order |
ALU Type | Unsigned Integer |
Registers | |
General Purpose (GP) | 30 (R1 – R30) |
External Status | 0 (R31) |
GP/Indexing | 0 (R0) |
Addressability in Instruction | Bit, Byte (8-bit), Half-word (16-bit), Word (32-bit), Pointer |
Addressing Modes | |
Load Immediate | 16-bit Immediate |
Load/Store – Memory | Register Base + Register Offset |
Register Base + 8-bit Immediate Offset | |
Register Base with auto increment/decrement | |
Constant Table Base + Register Offset | |
Constant Table Base + 8-bit Immediate Offset | |
Constant Table Base with auto increment/decrement | |
Data Path Width | 32-bit |
Instruction Width | 32-bit |
Accessibility to Internal PRU Structures | Provides 32-bit VBUSP target with three regions: |
|
The processor is based on a four-bus architecture which allows instructions to be fetched and executed concurrently with data transfers. In addition, an input is provided in order to allow external status information to be reflected in the internal processor status register. Figure 7-20 shows a block diagram of the processing element and the associated instruction RAM/ROM that contains the code that is to be executed.