SPRUIV7B May 2022 – September 2023 AM620-Q1 , AM623 , AM625 , AM625-Q1 , AM625SIP
This section provides functional description of the device integrated PRU Subsystems modules.
The PRUn (where n = 0 or 1) cores within each PRUSS have access to all resources on the SoC through the VBUSM Interface Controller port, and the external host processors can access the PRUSS resources through the VBUSP Interface Target port. The use of XFR2VBUS allows BroadSide 32Bytes of data transfer to/from SoC CBASS0 Interconnect at 256-bit bursts using the VBUSM Controller port. The 32-bit Internal CBASS Interconnect bus will be the primary interconnect between all components internal to the PRUSS. There are two equally symmetrical halves in each PRUSS known as SLICE0 and SLICE1. Each slice will share several resources while capable of working independently of each other. There are two sets of XFR2VBUS for each Slice. PRUs also has the ability to submit 32-bit bursts transitions, but this will require RAT configuration.
Each of the Slices contains one RAT (Region based Address Translation) module. The RAT module is used to translate 32-bit address of the PRU core to 48-bit physical address.
The PRU cores within the subsystems also have access to all resources on the SoC through the External CBASS0 Interconnect. A subsystem local Interrupt Controller — INTC handles system input events and posts events back to the device-level host CPUs.
Figure 7-18 shows an overview of the PRUSS Functional Block Diagram.
Table 7-32 summarizes the mapping between hardware modules and PRU0/1 cores.
Hardware Module | Broadside ID | |
---|---|---|
MPY/MAC | 00 | 2 copies: PRU1/0 |
CRC16/32 | 01 | 2 copies: PRU1/0 |
SPAD Bank0 | 10 | shared between PRU1/0 |
SPAD Bank1 | 11 | shared between PRU1/0 |
SPAD Bank2 | 12 | shared between PRU1/0 |
RX L2 | 20/21 | 2 copies: PRU1/0 |
TX L2 | 40 | 2 copies: PRU1/0 |
XFR2VBUSP | 0x60 for RD_ID0 0x61 for RD_ID1 0x62 for WD_ID0 0x63 for WD_ID1 |
2 copies
shared of RX per SLICE 2 copies shared of TX per SLICE |