S 32 NXP
S 32 NXP
Chapter 1
About This Manual
1.1 Audience....................................................................................................................................................................... 51
1.2 Organization..................................................................................................................................................................51
1.3.1 Example: chip-specific information that clarifies content in the same chapter............................................. 52
1.5 Conventions.................................................................................................................................................................. 55
Chapter 2
Introduction
2.1 Overview.......................................................................................................................................................................59
2.2.1 S32K14x.........................................................................................................................................................59
2.6 Applications.................................................................................................................................................................. 69
2.7.6 Clocking......................................................................................................................................................... 74
Chapter 3
Memory Map
3.1 Introduction...................................................................................................................................................................79
Chapter 4
Signal Multiplexing and Pin Assignment
4.1 Introduction...................................................................................................................................................................85
Chapter 5
Security Overview
5.1 Introduction...................................................................................................................................................................93
5.3.2 Chain of trust: check flash memory for integrity and authenticity................................................................ 96
Chapter 6
Safety Overview
6.1 Introduction...................................................................................................................................................................103
6.2.7 CRC................................................................................................................................................................109
Chapter 7
CM4 Overview
7.1 Arm Cortex-M4F core configuration............................................................................................................................111
7.2.3 Determining the bitfield and register location for configuring a particular interrupt.................................... 115
Chapter 8
CM0+ Overview
8.1 Arm Cortex-M0+ core introduction..............................................................................................................................119
8.2.3 Determining the bitfield and register location for configuring a particular interrupt.................................... 121
Chapter 9
Micro Trace Buffer (MTB)
9.1 Introduction...................................................................................................................................................................125
Chapter 10
Miscellaneous Control Module (MCM)
10.1 Chip-specific MCM information.................................................................................................................................. 141
10.2 Introduction...................................................................................................................................................................142
Chapter 11
System Integration Module (SIM)
11.1 Chip-specific SIM information..................................................................................................................................... 167
11.2 Introduction...................................................................................................................................................................167
Chapter 12
Port Control and Interrupts (PORT)
12.1 Chip-specific PORT information..................................................................................................................................195
12.2 Introduction...................................................................................................................................................................198
12.3 Overview.......................................................................................................................................................................198
Chapter 13
General-Purpose Input/Output (GPIO)
13.1 Chip-specific GPIO information...................................................................................................................................215
13.2 Introduction...................................................................................................................................................................216
Chapter 14
Crossbar Switch Lite (AXBS-Lite)
14.1 Chip-specific AXBS-Lite information..........................................................................................................................229
14.2 Introduction...................................................................................................................................................................230
Chapter 15
Memory Protection Unit (MPU)
15.1 Chip-specific MPU information................................................................................................................................... 235
15.2 Introduction...................................................................................................................................................................237
15.3 Overview.......................................................................................................................................................................237
Chapter 16
Peripheral Bridge (AIPS-Lite)
16.1 Chip-specific AIPS information................................................................................................................................... 271
16.2 Introduction...................................................................................................................................................................272
Chapter 17
Direct Memory Access Multiplexer (DMAMUX)
17.1 Chip-specific DMAMUX information......................................................................................................................... 319
17.2 Introduction...................................................................................................................................................................320
17.5.1 Reset...............................................................................................................................................................327
Chapter 18
Enhanced Direct Memory Access (eDMA)
18.1 Chip-specific eDMA information ................................................................................................................................ 331
18.2 Introduction...................................................................................................................................................................332
18.6.8 Suspend/resume a DMA channel with active hardware service requests...................................................... 406
Chapter 19
Trigger MUX Control (TRGMUX)
19.1 Chip-specific TRGMUX information...........................................................................................................................409
19.2 Introduction...................................................................................................................................................................413
Chapter 20
External Watchdog Monitor (EWM)
20.1 Chip-specific EWM information ................................................................................................................................. 453
20.2 Introduction...................................................................................................................................................................453
Chapter 21
Error Injection Module (EIM)
21.1 Chip-specific EIM information.....................................................................................................................................467
21.2 Introduction...................................................................................................................................................................467
Chapter 22
Error Reporting Module (ERM)
22.1 Chip-specific ERM information................................................................................................................................... 479
22.2 Introduction...................................................................................................................................................................479
Chapter 23
Watchdog timer (WDOG)
23.1 Chip-specific WDOG information................................................................................................................................489
23.2 Introduction...................................................................................................................................................................491
Chapter 24
Cyclic Redundancy Check (CRC)
24.1 Chip-specific CRC information.................................................................................................................................... 509
24.2 Introduction...................................................................................................................................................................509
Chapter 25
Reset and Boot
25.1 Introduction...................................................................................................................................................................519
25.2 Reset..............................................................................................................................................................................519
25.3 Boot...............................................................................................................................................................................526
Chapter 26
Reset Control Module (RCM)
26.1 Chip-specific RCM information................................................................................................................................... 529
26.3 Introduction...................................................................................................................................................................530
Chapter 27
Clock Distribution
27.1 Introduction...................................................................................................................................................................545
Chapter 28
System Clock Generator (SCG)
28.1 Chip-specific SCG information.................................................................................................................................... 565
28.2 Introduction...................................................................................................................................................................567
Chapter 29
Peripheral Clock Controller (PCC)
29.1 Chip-specific PCC information.....................................................................................................................................601
29.2 Introduction...................................................................................................................................................................604
Chapter 30
Clock Monitoring Unit (CMU)
30.1 CMU chip-specific information....................................................................................................................................673
30.2 Introduction...................................................................................................................................................................674
Chapter 31
Memories and Memory Interfaces
31.1 Introduction...................................................................................................................................................................689
31.3.5 SRAM access: Behavior of device when in accessing a memory with multi-bit ECC error.........................693
Chapter 32
PRAM Controller (PRAMC)
32.1 PRAMC chip-specific information .............................................................................................................................. 695
32.2 Introduction...................................................................................................................................................................695
Chapter 33
Local Memory Controller (LMEM)
33.1 Chip-specific LMEM information ............................................................................................................................... 701
33.2 Introduction...................................................................................................................................................................701
Chapter 34
Miscellaneous System Control Module (MSCM)
34.1 Chip-specific MSCM information................................................................................................................................ 723
34.2 Overview.......................................................................................................................................................................724
Chapter 35
Flash Memory Controller (FMC)
35.1 Chip-specific FMC information....................................................................................................................................757
35.2 Introduction...................................................................................................................................................................758
Chapter 36
Flash Memory Module (FTFC)
36.1 Chip-specific FTFC information...................................................................................................................................763
36.2 Introduction...................................................................................................................................................................785
Chapter 37
Quad Serial Peripheral Interface (QuadSPI)
37.1 Chip-specific QuadSPI information..............................................................................................................................895
37.2 Introduction...................................................................................................................................................................901
37.5.2 Memory Mapped Serial Flash Data - Individual Flash Mode on Flash A..................................................... 956
37.5.3 Memory Mapped Serial Flash Data - Individual Flash Mode on Flash B..................................................... 957
37.10 Driving Flash Control Signals in Single and Dual Mode............................................................................................. 991
Chapter 38
Power Management
38.1 Introduction...................................................................................................................................................................1005
Chapter 39
System Mode Controller (SMC)
39.1 Introduction...................................................................................................................................................................1019
Chapter 40
Power Management Controller (PMC)
40.1 Chip-specific PMC information....................................................................................................................................1039
40.2 Introduction...................................................................................................................................................................1039
Chapter 41
ADC Configuration
41.1 Instantiation information...............................................................................................................................................1049
Chapter 42
Analog-to-Digital Converter (ADC)
42.1 Chip-specific ADC information....................................................................................................................................1071
42.2 Introduction...................................................................................................................................................................1071
42.4.24 ADC Plus-Side General Calibration Offset Value Register 3 (CLP3_OFS)................................................. 1104
42.4.25 ADC Plus-Side General Calibration Offset Value Register 2 (CLP2_OFS)................................................. 1105
42.4.26 ADC Plus-Side General Calibration Offset Value Register 1 (CLP1_OFS)................................................. 1106
42.4.27 ADC Plus-Side General Calibration Offset Value Register 0 (CLP0_OFS)................................................. 1107
42.4.28 ADC Plus-Side General Calibration Offset Value Register X (CLPX_OFS)............................................... 1108
42.4.29 ADC Plus-Side General Calibration Offset Value Register 9 (CLP9_OFS)................................................. 1109
Chapter 43
Comparator (CMP)
43.1 Chip-specific CMP information....................................................................................................................................1125
43.2 Introduction...................................................................................................................................................................1129
Chapter 44
Programmable delay block (PDB)
44.1 Chip-specific PDB information.................................................................................................................................... 1163
44.2 Introduction...................................................................................................................................................................1171
44.5.1 Impact of using the prescaler and multiplication factor on timing resolution............................................... 1195
Chapter 45
FlexTimer Module (FTM)
45.1 Chip-specific FTM information....................................................................................................................................1197
45.2 Introduction...................................................................................................................................................................1207
45.5.3 Counter...........................................................................................................................................................1270
Chapter 46
Low Power Interrupt Timer (LPIT)
46.1 Chip-specific LPIT information....................................................................................................................................1375
46.2 Introduction...................................................................................................................................................................1378
Chapter 47
Low Power Timer (LPTMR)
47.1 Chip-specific LPTMR information...............................................................................................................................1415
47.2 Introduction...................................................................................................................................................................1416
Chapter 48
Real Time Clock (RTC)
48.1 Chip-specific RTC information.................................................................................................................................... 1429
48.2 Introduction...................................................................................................................................................................1430
48.4.3 Compensation.................................................................................................................................................1443
48.4.7 Interrupt..........................................................................................................................................................1445
Chapter 49
Low Power Serial Peripheral Interface (LPSPI)
49.1 Chip-specific LPSPI information..................................................................................................................................1447
49.2 Introduction...................................................................................................................................................................1448
Chapter 50
Low Power Inter-Integrated Circuit (LPI2C)
50.1 Chip-specific LPI2C information................................................................................................................................. 1489
50.2 Introduction...................................................................................................................................................................1490
Chapter 51
Low Power Universal Asynchronous Receiver/Transmitter (LPUART)
51.1 Chip-specific LPUART information.............................................................................................................................1547
51.2 Introduction...................................................................................................................................................................1548
Chapter 52
Flexible I/O (FlexIO)
52.1 Chip-specific FlexIO information.................................................................................................................................1595
52.2 Introduction...................................................................................................................................................................1595
Chapter 53
FlexCAN
53.1 Chip-specific FlexCAN information.............................................................................................................................1643
53.1.8 Requirements for entering FlexCAN modes: Freeze, Disable, Stop............................................................. 1645
53.2 Introduction...................................................................................................................................................................1647
Chapter 54
Synchronous Audio Interface (SAI)
54.1 Chip-specific SAI information .....................................................................................................................................1795
54.2 Introduction...................................................................................................................................................................1797
Chapter 55
Ethernet MAC (ENET)
55.1 Chip-specific ENET information..................................................................................................................................1845
55.2 Introduction...................................................................................................................................................................1845
55.3 Overview.......................................................................................................................................................................1846
55.5.38 Tx Packets Less Than Bytes and Good CRC Statistic Register (ENET_RMON_T_UNDERSIZE)............ 1890
55.5.39 Tx Packets GT MAX_FL bytes and Good CRC Statistic Register (ENET_RMON_T_OVERSIZE)..........1891
55.5.40 Tx Packets Less Than 64 Bytes and Bad CRC Statistic Register (ENET_RMON_T_FRAG)..................... 1891
55.5.41 Tx Packets Greater Than MAX_FL bytes and Bad CRC Statistic Register (ENET_RMON_T_JAB)........ 1892
55.5.49 Tx Packets Greater Than 2048 Bytes Statistic Register (ENET_RMON_T_P_GTE2048).......................... 1895
55.5.53 Frames Transmitted with Single Collision Statistic Register (ENET_IEEE_T_1COL)............................... 1897
55.5.56 Frames Transmitted with Late Collision Statistic Register (ENET_IEEE_T_LCOL).................................. 1898
55.5.58 Frames Transmitted with Tx FIFO Underrun Statistic Register (ENET_IEEE_T_MACERR).................... 1899
55.5.59 Frames Transmitted with Carrier Sense Error Statistic Register (ENET_IEEE_T_CSERR)....................... 1899
55.5.62 Octet Count for Frames Transmitted w/o Error Statistic Register (ENET_IEEE_T_OCTETS_OK)........... 1900
55.5.67 Rx Packets with Less Than 64 Bytes and Good CRC Statistic Register
(ENET_RMON_R_UNDERSIZE)................................................................................................................ 1902
55.5.68 Rx Packets Greater Than MAX_FL and Good CRC Statistic Register (ENET_RMON_R_OVERSIZE)...1903
55.5.69 Rx Packets Less Than 64 Bytes and Bad CRC Statistic Register (ENET_RMON_R_FRAG).................... 1903
55.5.70 Rx Packets Greater Than MAX_FL Bytes and Bad CRC Statistic Register (ENET_RMON_R_JAB)....... 1903
55.5.78 Rx Packets Greater than 2048 Bytes Statistic Register (ENET_RMON_R_P_GTE2048)........................... 1907
55.5.82 Frames Received with CRC Error Statistic Register (ENET_IEEE_R_CRC).............................................. 1908
55.5.83 Frames Received with Alignment Error Statistic Register (ENET_IEEE_R_ALIGN)................................ 1909
55.5.85 Flow Control Pause Frames Received Statistic Register (ENET_IEEE_R_FDXFC)................................... 1909
55.5.86 Octet Count for Frames Received without Error Statistic Register (ENET_IEEE_R_OCTETS_OK)......... 1910
Chapter 56
Debug
56.1 Introduction...................................................................................................................................................................1979
56.5.1 IR codes..........................................................................................................................................................1985
56.8 AHB-AP........................................................................................................................................................................1990
56.11 TPIU..............................................................................................................................................................................1991
Chapter 57
JTAG Controller (JTAGC)
57.1 Chip-specific JTAGC information................................................................................................................................1995
57.2 Introduction...................................................................................................................................................................1995
1.1 Audience
This reference manual is intended for system software and hardware developers and
applications programmers who want to develop products with this device. It assumes that
the reader understands operating systems, microprocessor system design, and basic
principles of software and hardware. The manual describes the functionality of the
superset device of the S32K1xx series. For the available features, register implementation
of a specific S32K1xx derivative (derivative device), please refer to the respective Chip-
specific module information.
1.2 Organization
This manual has two main sets of chapters.
1. Chapters in the first set contain information that applies to all components on the
chip.
2. Chapters in the second set are organized into functional groupings that detail
particular areas of functionality.
• Examples of these groupings are clocking, timers, and communication interfaces.
• Each grouping includes chapters that provide a technical description of
individual modules.
• The first section, Chip-specific [module name] information, provides details such as
the number of module instances on the chip and connections between the module and
other modules. Read this section first because its content is crucial to understanding
the information in other sections of the chapter.
• The subsequent sections provide general information about the module, including its
signals, registers, and functional description.
L E
Chapter 49
Enhanced Serial Communication Interface (eSCI)
P
49.1 Chip-specific eSCI information
This chip has six instances of the eSCI module. Some feature details vary between the
instances.
M
The following table summarizes the feature differences. The table does not list feature
details that the instances share.
Table 49-1. eSCI instance feature differences
Chip-specific information
Instance DMA support that should be read first
A
eSCI_A and eSCI_B Yes
eSCI_C, eSCI_D, eSCI_E, and eSCI_F No: descriptions of eSCI DMA functionality do not apply to
these instances
X
NOTE
For eSCI_D, the single wire feature does not apply for TX/RX
via PCSA3 because this pad works only as an output.
E
49.2 Introduction
The eSCI block is an enhanced SCI block with a LIN master interface layer and DMA
support. The LIN master layer complies with the specifications LIN 1.3, LIN 2.0, LIN
2.1, and SAE J2602/1.
Beginning of general
49.2.1 Bibliography module information
• LIN Specification Package Revision 1.3; December 12, 2002
• LIN Specification Package Revision 2.0; September 23, 2003
Figure 1-1. Example: chapter chip-specific information and general module information
accesses by masters without permission. If the RIA bit in the SWT_CR is set then the
SWT generates a system reset on an invalid access otherwise a bus error is generated. If
E
either the HLK or SLK bits in the SWT_CR are set, then the SWT_CR, SWT_TO,
SWT_WN, and SWT_SK registers are read-only.
The SWT memory map is shown in the following table.
L
SWT memory map
Chapter 34 Address Width Section/
Software Watchdog Timer (SWT) offset (hex)
Register name
(in bits)
Access Reset value
page
0 SWT Control Register (SWT_CR) 32 R/W See section 34.4.1/1331
P
4 SWT Interrupt Register (SWT_IR) 32 R/W 0000_0000h 34.4.2/1334
34.1 Chip-specific SWT information 8 SWT Time-out Register (SWT_TO) 32 R/W See section 34.4.3/1334
C SWT Window Register (SWT_WN) 32 R/W 0000_0000h 34.4.4/1335
This chip has two instances of the SWT module: SWT_A and SWT_B. 10 SWT Service Register (SWT_SR) 32 W 0000_0000h 34.4.5/1335
14 SWT Counter Output Register (SWT_CO) 32 R 0000_0000h 34.4.6/1336
18 SWT Service Key Register (SWT_SK) 32 R/W 0000_0000h 34.4.7/1336
M
34.1.1 SWT register reset values
The following table identifies chip-specific reset values of SWT registers.
34.4.1 SWT Control Register (SWT_CR)
Table 34-1. Chip-specific SWT register reset values
NOTE
A
Register SWT_A SWT_B
The reset value for the SWT_CR is implementation specific.
CR FF00_010Bh FF00_010Ah
See the configuration information.
TO 0005_FCD0h 0005_FCD0h
The SWT_CR contains fields for configuring and controlling the SWT.
This register is read-only if either the SWT_CR[HLK] or SWT_CR[SLK] bits are set.
X
Address: 0h base + 0h offset = 0h
34.2 Introduction Bit 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
This section provides an overview, list of features, and modes of operation for the SWT. R 0
E MAP0
MAP1
MAP2
MAP3
MAP4
MAP5
MAP6
MAP7
W
Bit 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
The Software Watchdog Timer (SWT) is a peripheral module that can prevent system
lockup in situations such as software getting trapped in a loop or if a bus transaction fails R 0
SMD RIA WND ITR HLK SLK CSL STP FRZ WEN
to terminate. When enabled, the SWT requires periodic execution of a watchdog W
servicing operation. The servicing operation resets the timer to a specified time-out
period. If this servicing action does not occur before the timer expires the SWT generates Reset 0* 0* 0* 0* 0* 0* 0* 0* 0* 0* 0* 0* 0* 0* 0* 0*
an interrupt or hardware reset. The SWT can be configured to generate a reset or interrupt * Notes:
• The reset value for the SWT_CR is implementation specific. See the configuration information.
on an initial time-out. A reset is always generated on a second consecutive time-out.
Figure 1-2. Example: chip-specific information that clarifies content in the same chapter
LE
Chapter 10 Chapter 9
Crossbar Integrity Checker (XBIC) Crossbar Switch (XBAR)
P
10.1 Chip-specific XBIC information 9.1 Chip-specific XBAR information
This chip has one instance of the XBIC module. This chip has one instance of the XBAR module.
M
10.1.1 XBIC master and slave assignments 9.1.1 XBAR master and slave assignments
The XBIC identifies each XBAR master and slave in terms of the master or slave's The following table lists the XBAR physical port numbers and logical IDs for all master
physical port number. See the "Physical master port" assignments in Table 9-1 and the ports on this SoC.
"Slave port" assignments in Table 9-2. • Each port number matches the default priority assigned to the corresponding physical
A
master port. This default priority equals the reset value of the priority field for each
master port in the PRSn registers.
• A priority value of 0 is the highest priority. There is no "disabled" value for the
10.1.2 Unimplemented MCR and ESR fields
priority.
X
On this chip, the MCR[SE5] and ESR[DPSE5] fields are not implemented. In XBIC • A Nexus_3 module and core data bus share the same physical master port for each
Module Control Register (XBIC_MCR) and XBIC Error Status Register (XBIC_ESR), core.
these fields are reserved.
The logical master ID corresponds to the logical address provided by the master module
and is unique for each module. The logical master IDs are used by the bus masters
E
connected to the XBAR. The Nexus master is identified by setting the MSB in the 4-bit
10.2 Overview field that supplies the master ID number.
The Crossbar Integrity Checker (XBIC) verifies the integrity of the crossbar transfers. Table 9-1. XBAR master ports and logical master IDs
For forward signals (master to slave), it is done by verifying the integrity of the attribute Module Physical master port Logical master ID Comment
information using an 8-bit Error Detection Code (EDC). The EDC detects any single- or Core0 instruction 0 0
double-bit errors in the attribute information and signals the Fault Collection and Control Core0 data 1 0
Unit (FCCU) when an error is detected. For feedback signals (slave to master), it is done Nexus_3_0 8 Nexus_3_0 arbitrates with Core0 data for XBAR port 1
by comparing the consistency of the signals during the AHB dataphase.There are three Core1 instruction 2 1
signals from slave to master, hready, hresp0, and hresp2. If any of the master signals is Core1 data 3 1
different from the slave signals during dataphase, the error will be reported in the Error Nexus_3_1 9 Nexus_3_1 arbitrates with Core1 data for XBAR port 3
R R Mnemonic R R 0 R 1
Mnemonic
W W W Mnemonic W Mnemonic W Mnemonic
Read/write Read-only Write-only Write-only Write-only
reads zero reads one
R R R R 1 R 0
Reserved
W W 1 W 0 W W
Reserved, Write-only one Write-only zero Read-only one Read-only zero
unimplemented
1.5 Conventions
Term Meaning
reserved Refers to a memory space, register, field, or programming setting. Device operation is not
guaranteed when reserved locations are written to any value.
• Do not modify the default value of a reserved programming setting, such as the reset value of
a reserved register field.
• Consider undefined locations in memory to be reserved.
w1c Write 1 to clear: Refers to a register bitfield that must be written as 1 to be "cleared."
2.1 Overview
The S32K1xx product series further extends the highly scalable portfolio of Arm®
Cortex®-M0+/M4F MCUs in the automotive industry. It builds on the legacy of the KEA
series, while introducing higher memory options alongside a richer peripheral set
extending capability into a variety of automotive applications. With a 2.70–5.5 V supply
and focus on automotive environment robustness, the S32K product series devices are
well suited to a wide range of applications in electrically harsh environments, and are
optimized for cost-sensitive applications offering low pin-count options. The S32K
product series offers a broad range of memory, peripherals, and package options. It shares
common peripherals and pin counts, allowing developers to migrate easily within an
MCU family or among the MCU families to take advantage of more memory or feature
integration. This scalability allows developers to use the S32K product series as the
standard for their end product platforms, maximizing hardware and software reuse and
reducing time to market.
2.2.1 S32K14x
S32K14x series of devices are 32-bit general purpose automotive microcontrollers based
on the Arm Cortex-M4F core. They offer superior performance, large memories and the
most scalable peripherals in this class. This product series provides up to 112 MHz CPU
performance with DSP and FPU support, with up to 2 MB Flash and up to 256 KB
SRAM. Overview of device features:
• 32-bit Arm Cortex-M4F core with FPU, up to 112 MHz (HSRUN) and 80 MHz
(Normal RUN)
1. CSEc (Security) or EEPROM writes/erase will trigger error flags in HSRUN mode (112 MHz) because this use case
is not allowed to execute simultaneously. The device will need to switch to RUN mode (80 Mhz) to execute CSEc
(Security) or EEPROM writes/erase.
2. This refers to region addressable by Arm CM4 Code bus and is used to cache code as well as data in this region.
See S32K1xx_memory_map.xlsx for more details on cacheability of different regions.
3. HSRUN mode (112 MHz) operation is not valid at 125 °C.
2.2.2 S32K11x
S32K11x series of devices are 32-bit general purpose automotive microcontrollers based
on the Arm Cortex-M0+ core. They offer superior performance, large memories and the
most scalable peripherals in this class. This product series provides 48 MHz CPU
performance, with up to 256 KB Flash and up to 25 KB SRAM. Overview of device
features:
• 32-bit Arm Cortex-M0+ core with 48 MHz CPU
• Up to 256 KB code flash memory and 32 KB FlexMem (supports up to 2 KB
emulated EEPROM with 2 KB FlexRAM)
• Up to 25 KB SRAM
• Integrated clocking architecture with on-chip fast IRC 48 MHz, slow IRC 8MHz, and
128 KHz LPO
• Analog modules providing precision mixed-signal capabilities, including 12-bit 1
Msps SAR ADC, high-speed comparator
• Power Management Controller (PMC) with internal regulators capable of supporting
multiple power modes including:
• RUN
• STOP
• VLPR
• VLPS
• I/O supporting 2.7 V to 5.5 V supply
• Wide operating voltage ranges (2.7–5.5 V) with fully functional flash memory
program/erase/read operations
• 32-pin QFN, 48-pinLQFP, 64-pinLQFP with up to 58 GPIO pins
• Ambient operating temperature ranges from –40 °C to 125 °C
The S32K11x MCU portfolio is supported by a highly comprehensive set of development
tools and software. The enablement package includes: NXP Arduino compatible
evaluation boards, S32K Software Development Kit (SDK) including graphical
configurability and S32 Design Studio software, as well as broad support from IAR
Systems, Cosmic Software, Green Hills, and other partners.
2. CSEc (Security) or EEPROM writes/erase will trigger error flags in HSRUN mode (112 MHz) because this use case is not
allowed to execute simultaneously. The device need to switch to RUN mode (80 Mhz) to execute CSEc (Security) or
EEPROM writes/erase.
3. On this device, NXP's system MPU implements the safety mechanisms to prevent masters from accessing restricted
memory regions. This system MPU provides memory protection at the level of the Crossbar Switch. Each Crossbar master
(Core, DMA, Ethernet) can be assigned different access rights to each protected memory region. The Arm M4 core version
in this family does not integrate the Arm Core MPU, which would concurrently monitor only core-initiated memory
accesses. In this document, the term MPU refers to NXP’s system MPU.
System
ICODE
Mux SPLL
eDMA TCD
512B
LMEM
System MPU1
Main SRAM2
ENET
M0 M1 M2 M3
S1 S2 Crossbar switch (AXBS-Lite) S3 S0
CSEc3
CRC TRGMUX LPSPI PDB LPIT
RTC SAI
1: On this device, NXP’s system MPU implements the safety mechanisms to prevent masters from
accessing restricted memory regions. This system MPU provides memory protection at the Device architectural IP
level of the Crossbar Switch. Each Crossbar master (Core, DMA, Ethernet) can be assigned on all S32K devices
different access rights to each protected memory region. The Arm M4 core version in this family
Key: Peripherals present
does not integrate the Arm Core MPU, which would concurrently monitor only core-initiated memory
accesses. In this document, the term MPU refers to NXP’s system MPU. on all S32K devices
2: For the device-specific sizes, see the "On-chip SRAM sizes" table in the "Memories and Memory Interfaces" Peripherals present
chapter of the S32K1xx Series Reference Manual. on selected S32K devices
(see the "Feature Comparison"
3: CSEc (Security) or EEPROM writes/erase will trigger error flags in HSRUN mode (112 MHz) because this
section)
use case is not allowed to execute simultaneously. The device need to switch to RUN mode (80 MHz) to
execute CSEc (Security) or EEPROM writes/erase.
The following figure shows block diagram of the S32K11x product series.
IO PORT
MTB+DWT
eDMA
AHBLite
AHBLite
M0 M2
Crossbar switch (AXBS-Lite)
S0 S1 S2
EIM
Flash memory
controller
SRAM2
FlexRAM/
SRAM2
1: On this device, NXP’s system MPU implements the safety mechanisms to prevent masters from Device architectural IP
accessing restricted memory regions. This system MPU provides memory protection at the on all S32K devices
level of the Crossbar Switch. Crossbar master (Core, DMA) can be assigned
different access rights to each protected memory region. The Arm M0+ core version in this family Peripherals present
Key:
does not integrate the Arm Core MPU, which would concurrently monitor only core-initiated memory on all S32K devices
accesses. In this document, the term MPU refers to NXP’s system MPU.
Peripherals present
2: For the device-specific sizes, see the "On-chip SRAM sizes" table in the "Memories and Memory Interfaces" on selected S32K devices
chapter of the S32K1xx Series Reference Manual. (see the "Feature Comparison"
section)
NOTE
Availability of peripherals depends on the pin availability in a
particular package. For more information see IO Signal
Description Input Multiplexing sheet(s) attached with
Reference Manual.
S32K11x S32K14x
Parameter K116 K118 K142 K144 K146 K148
Core Arm® Cortex™-M0+ Arm® Cortex™-M4F
Frequency 48 MHz 80 MHz (RUN mode) or 112 MHz (HSRUN mode)1
IEEE-754 FPU
Cryptographic Services Engine (CSEc)1
CRC module 1x 1x
ISO 26262 capable up to ASIL-B capable up to ASIL-B
Peripheral speed up to 48 MHz up to 112 MHz (HSRUN)
Crossbar
DMA
System
12-bit SAR ADC (1 Msps each) 1x (13) 1x (16) 2x (16) 2x (24) 2x (32)
Comparator with 8-bit DAC 1x 1x
10/100 Mbps IEEE-1588 Ethernet MAC 1x
Serial Audio Interface (AC97, TDM, I2S) 2x
Communication
SWO), ETM
Ecosystem NXP S32 Design Studio (GCC) + SDK, NXP S32 Design Studio (GCC) + SDK,
(IDE, compiler, debugger) IAR, GHS, Arm®, Lauterbach, iSystems IAR, GHS, Arm®, Lauterbach, iSystems
48-pin LQFP 64-pin LQFP 100-pin MAPBGA
48-pin LQFP
Other
Packages5 32-pin QFN 48-pin LQFP 64-pin LQFP 100-pin MAPBGA 100-pin LQFP6
64-pin LQFP
48-pin LQFP 64-pin LQFP 100-pin LQFP 100-pin LQFP 144-pin LQFP
100-pin LQFP
100-pin MAPBGA 144-pin LQFP 176-pin LQFP
LEGEND:
Not implemented
Available on the device
1 No write or erase access to Flash module, including Security (CSEc) and EEPROM commands, are allowed when
device is running at HSRUN mode (112MHz) or VLPR mode.
2 Available when EEEPROM, CSEc and Data Flash are not used. Else only up to 1,984 KB is available for Program Flash.
3 4 KB (up to 512 KB D-Flash as a part of 2 MB Flash). Up to 64 KB of flash is used as EEPROM backup and the remaining 448 KB
of the last 512 KB block can be used as Data flash or Program flash. See chapter FTFC for details.
4 Only for Boundary Scan Register
5 See Dimensions section for package drawings
6 Under development, QuadSPI not supported for S32K148 in 100-pin LQFP
Due to the differences in core and cache architecture between S32K11x and S32K14x
devices, their CPU execution and interrupt latency will be different which in turn will
affect the observed time among the timers, and the associated events triggered by them.
See Arm Cortex-M4F Technical Reference Manual and Arm Cortex-M0+ Technical
Reference Manual for core architecture details. For more differences, see AN11997,
available at nxp.com.
2.6 Applications
The S32K1xx product series are the ideal choices for general purpose automotive
applications, which include but not limited to:
• Exterior and interior lighting
• HVAC
• Door/Window/Wiper/Seat controller
• BLDC/PMSM motor control
• Park assistant
• E-shifter
• TPMS
• Real time control in infotainment system
• Battery management system
• Human machine interface such as touch sense control
• Secured vehicle data transfer
• Safety controller
• Over the air update 4
Moreover, the 100 Mbit IEEE-1588 Ethernet MAC and Serial audio interface (AC97,
TDM, and I2S) on S32K148 make it fit perfectly for Ethernet connected edge nodes in
vehicle, and the audio streaming application.
In addition to automotive applications, the S32K1xx product series can also be used in
challenging environments found in industrial, automation, communications,
transportation, medical and A & D applications which need high level quality, reliability
and safety.
NOTE
• For safety aware and critical application, the user must
refer to S32K1xx Safety Manual and Using the S32K1xx
4. See S32K Architecture and Capabilities to Enable Over the Air Updates
2.7.6 Clocking
The following clock modules are available on this device.
Table 2-8. Clock modules
Module Description
System clock generator (SCG) The SCG provides several clock sources for the MCU that include:
• Phase-locked loop (PLL) — Voltage-controlled oscillator (VCO)
• Fast internal reference clock (FIRC) — An internally-generated 48 MHz
clock, which can be used as a clock source for other on-chip peripherals
Table continues on the next page...
3.1 Introduction
This chip contains various memories and memory-mapped peripherals that are located in
one 32-bit contiguous memory space. This chapter describes the memory and peripheral
locations within that memory space.
Details about the memory map appear in the spreadsheet that is attached to this
document: S32K1xx_memory_map.xlsx. To access this spreadsheet, view the document's
list of attachments.
NOTE
CM0+ architecture implements single RAM controller, hence
SRAM_U and MTB are referred as single contiguous memory
regions. MTB in S32K11x is present at the same location as
SRAM_L in S32K14x.
See S32K1xx_memory_map.xlsx attached to this document for details. Accesses to the
memory ranges outside the amount of RAM on the chip causes the bus cycle to be
terminated with an error followed by the appropriate response in the requesting bus
master.
FlexNVM
Modules that are disabled via their clock gate control bits in the PCC/SIM registers
disable the associated AIPS-Lite slots. Access to any address within an unimplemented or
disabled peripheral bridge slot results in a transfer error termination.
NOTE
While trying to access memory map region of unavailable
feature (See SIM_SDID[FEATURES]) with corresponding
module clock enabled through PCC CGC bit, there will not be
any transfer error termination.
NOTE
In S32K14x series of devices, one factor contributing to these
situations is processor write buffering. The processor
architecture has a programmable configuration field to disable
write buffering: ACTLR[DISDEFWBUF]. (For details see
Arm® Cortex® M4 Processor Technical Reference Manual,
Revision r0p1, at http://arm.com ). However, disabling buffered
writes is likely to degrade system performance much more than
simply performing the required memory serialization for the
situations that truly require it.
1. The Arm Core ROM table is optionally required by Arm CoreSight debug infrastructure to discover the components on the
chip. This ROM table has no any relationship with the MCU Boot ROM.
1. Reserved area return transfer error. Reserved is Unknown/Should be 0. Software must not rely on reading as all 0s, and it
must treat the value as if it is unknown.
31 0 31 0
1 MB
32 MB
Figure 3-2. Alias bit-band mapping
NOTE
Each bit in a bit-band region has an equivalent bit that can be
manipulated through bit 0 in a corresponding long word in the
alias bit-band region.
NOTE
Do not use bit banding for w1c status bits.
CAUTION
The S32K product series and the software drivers support bit-
banding, but Arm no longer promotes its usage. Therefore, we
recommend that bit-banding should not be used.
4.1 Introduction
The signal multiplexing enables the sharing of single pad for multiple functions.
The signal multiplexing unit comprises of control signals from GPIO, PORT and pad
interface logic. The signal multiplexing unit consists of several individual sub-units, each
handling the signal multiplexing of one pad.
The Port Control block controls the module specific pad settings (pull up etc) and the
signal present on the external pin. See PORT_PCR for the description of control signals.
For reset values per port, see IO Signal Description Input Multiplexing sheet(s) attached
to the Reference Manual.
Pad controls
do Signal do Functional
Padring Multiplexing Modules/
Unit Peripherals
obe obe
ibe ibe
do Output
Driver
Pad
pue
pus
ind Input
Receiver
NOTE
The device does not support open drain on all the pins. Only
pins that are configured for a protocol that requires open-drain
(e.g;, LPI2C, LPUART single-wire) will work in open-drain
mode.
1. The IO pad states are undefined until VDD rises sufficiently to enable the POR circuits. The level at which this occurs will
vary from device to device, but for reference it is approximately 700 mV. After POR circuits are enabled, the IO pad states
are high impedance with weak pull devices disabled until POR release.
2. While in reset, the pin behavior is same apart from reset pin. Chip drives pad low via obe=1, pue=0, till reset sequence is
complete to indicate reset to off-chip connected devices.
• The next two columns specify the reset value and the configurable bit fields of PCR
corresponding to pad.
• Pad Type: This field mentions the pad type of the corresponding pad.
• GPIO: General Purpose IO Pad (Standard)
• GPIO-HD: General Purpose IO Pad that support high drive functionality
(Strong)
• GPIO-FAST: General Purpose IO Pad that support High Speed (applicable for
S32K148 only)
NOTE
If oscillator is enabled then enabling the GPIO or LPI2C
function for EXTAL/XTAL pins can lead to device damage.
This must be avoided by software.
5.1 Introduction
All chips of this S32K1xx product series have a comprehensive set of customer-
configurable security features designed to protect code and data from unauthorized
access.
NOTE
The security features apply only to external accesses via debug.
CPU accesses to the flash memory are not affected by the status
of FSEC.
In the unsecured state, all flash memory commands are available to the programming
interfaces (SWD (Serial Wire Debug) and JTAG (Joint Test Access Group)), as are user
code execution of Flash Memory Controller commands. When the flash memory is
secured (FSEC[SEC] = 00b, 01b, or 11b), programmer interfaces are allowed to launch
only mass erase operations and have no access to memory locations.
Further information regarding the flash memory security options and enabling/disabling
flash security is available in the Flash Memory Module.
The MAC protects against modification of the bootloader and depends on the (secret)
boot key.
Only if the calculated MAC value matches the stored boot MAC value: a successful
secure boot occurs, and keys become unlocked for further use.
CSEc
System Memory Input Output
16 Bytes Blocks 0x06 0x00 0x01 KeyID MAC Len MSG Len
n
CMD Word Length CMD Word Length
n-1 n-1 Ver Status n-1
n-2 n-2
n-3 function n-3
n-2
n processing n
n-3 MAC time MAC
n-4
MAC
14
0x06 0x00 0x01 KeyID MAC Len MSG Len
13
CMD Word Length CMD Word Length
12 8 8
9 9
10 10 10
11 11
9 12 function 12
13 processing 13
8 14 time 14
NOTE
If WRITE_PROTECTION flag is set for any key then the user
will be unable to delete that key with DEBUG_CHAL and
DEBUG_AUTH commands and failure analysis would not be
possible.
6.1 Introduction
The S32K1xx series is developed according to ISO 26262 and has an integrated safety
concept targeting an ISO26262 ASIL-B integrity level. The following documentation
supports the integration of an S32K1xx chip into safety-related systems:
• Reference Manual (S32K1XXRM): describes the programming model and
functionality of S32K1xx chips
• Data Sheet (S32K1XX): describes S32K1xx operating conditions as well as timing
and electrical characteristics
• Safety Manual (S32K1XXSM): describes the S32K1xx safety concept and possible
safety mechanisms (integrated in S32K1xx, system-level hardware, or system-level
software) as well as measures to reduce dependent failures
• Dynamic FMEDA: inductive analysis enabling customization of system-level safety
mechanisms, including the resulting safety metrics for ISO 26262 (SPFM, LFM &
PMHF) and IEC 61508 (SFF & Beta IC Factor)
• FMEDA Report: describes the FMEDA methodology and safety mechanisms
supported in the FMEDA, including source of failure rates, failure modes, and
assumptions during the analysis
The S32K1xx series is a SafeAssure™ solution. For more information regarding
functional safety at NXP, visit http://www.nxp.com/safeassure.
DCODE
System
ICODE
SPLL
Main
SRAM2 Mux DMA
mux
System MPU1
ECC on Upper
SRAM Region
Lower
Region eDMA TCD
512B
Code Cache
ENET
M0 M1 M2 M3
S1 S2 Crossbar switch (AXBS-Lite) S3 S0 System
memory
System MPU1 System MPU1 protection
unit
Mux iahb_gasket
Flash memory
GPIO controller
QuadSPI
Peripheral FlexRAM/
Peripheral bus controller SRAM
protection
QuadSPI CSEc
CRC CRC TRGMUX LPSPI PDB RTC
1: On this device, NXP’s system MPU implements the safety mechanisms to Key: Device architectural IP on all
prevent masters from accessing restricted memory regions. This system MPU S32K devices.
provides memory protection at the level of the Crossbar Switch. Each Crossbar Peripherals present on all
master (Core, DMA, Ethernet) can be assigned different access rights to each S32K devices.
protected memory region. The Arm M4 core version in this family does not
integrate the Arm Core MPU, which would concurrently monitor only core-initiated Peripherals present on selected
memory accesses. In this document, the term MPU refers to NXP’s system MPU.
S32K devices. See section
Feature Comparison.
2: See Memories and Memory Interfaces chapter: On-chip SRAM sizes table for Device specific sizes
• prevent non-safety masters from interfering with the operation of the Safety Core
• manage the concurrent execution of software with different (lower) ASIL
A hierarchical memory protection scheme, which includes the following, protects against
interference:
• System Memory Protection Unit (MPU)
• Peripheral Bridge (AIPS-Lite)
• Register protection
6. On this device, NXP’s system MPU implements the safety mechanisms to prevent masters from accessing
restricted memory regions. This system MPU provides memory protection at the level of the Crossbar Switch. Each
Crossbar master (Core, DMA, Ethernet) can be assigned different access rights to each protected memory region.
The Arm M4 core version in this family does not integrate the Arm Core MPU, which would concurrently monitor
only core-initiated memory accesses. In this document, the term MPU refers to NXP’s system MPU.
6.2.7 CRC
The CRC unit supports the detection of accidental alteration of data in memory or
configuration registers by calculating its CRC signature and comparing it to a previously
calculated CRC. The CRC module can also detect erroneous corruption of data during
transmission or storage.
References:
• Functional description: in this Reference Manual, see CRC
• CRC in safety concept: see Safety Manual chapter
Debug Interrupts
7.1.4 Caches
This device includes one 4 KB code cache to minimize the performance impact of
memory access latencies. The code cache exists on the I/D bus, and there is no cache on
the system bus.
Features of the cache are:
• 2-way set associative
• 4 word lines
• Lines can be individually flushed
• Entire cache can be flushed at once
7.1.4.1 Control
For control purposes, the cache can be in one of these states:
1. Write Back / Write Allocate (WBWA)
2. Write Through
3. No cache
For each defined region there will be 2 bits allocated on the control register (see
PCCRMR that determines the cache state for the memory region associated with this
section. The user can only "lower" the cache attribute, given the fixed relationship of
WBWA > WT > NC - so, you can demote a WBWA region to either WT or NC, you can
demote a WT space to NC. In order to change the state upwards a system reset is
required.
NOTE
See LMEM for the cache reset states.
Arm PPB
Nested Vectored
Module
Cortex-M4 Interrupt Controller
core (NVIC)
Module
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
IRQ3 IRQ2 IRQ1 IRQ0
W
The NVIC registers you would use to configure the interrupt are:
• NVICISER1
• NVICICER1
• NVICISPR1
• NVICICPR1
• NVICIABR1
• NVICIPR14
To determine the particular IRQ's bitfield location within these particular registers:
• NVICISER1, NVICICER1, NVICISPR1, NVICICPR1, NVICIABR1 bit location =
IRQ mod 32 = 26
• NVICIPR14 bitfield starting location = 8 × (IRQ mod 4) + 4 = 20
Since the NVICIPR bitfields are 4-bit wide (16 priority levels), the NVICIPR14
bitfield range is 20-23
Therefore, the following bitfield locations are used to configure the LPTMR interrupts:
• NVICISER1[26]
• NVICICER1[26]
• NVICISPR1[26]
• NVICICPR1[26]
• NVICIABR1[26]
• NVICIPR14[23:20]
Wake-up
requests
Asynchronous
Nested vectored Module
interrupt controller Wake-up Interrupt
(NVIC) Controller (AWIC)
Module
PPB
FPU
core
transfers
Signal
JTAG controller multiplexing
R 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
IRQ3 IRQ2 IRQ1 IRQ0
W
• The NVIC registers you would use to configure the interrupt are:
• NVICIPR2
• To determine the particular IRQ's field location within these particular registers:
• NVICIPR2 field starting location = 8 * (IRQ mod 4) + 6 = 22
Since the NVICIPR fields are 2-bit wide (4 priority levels), the NVICIPR2 field
range is 22–23.
Therefore, the following field locations are used to configure the FlexCAN interrupts:
• NVICIPR2[23:22]
9.1 Introduction
Microcontrollers using the Cortex-M0+ processor core include support for a CoreSight
Micro Trace Buffer to provide program trace capabilities.
The proper name for this function is the CoreSight Micro Trace Buffer for the Cortex-
M0+ Processor; in this document, it is simply abbreviated as the MTB.
The simple program trace function creates instruction address change-of-flow data
packets in a user-defined region of the system RAM. Accordingly, the system RAM
controller manages requests from two sources:
• AMBA-AHB reads and writes from the system bus
• program trace packet writes from the processor
As part of the MTB functionality, there is a MTB_DWT (Data Watchpoint and Trace)
module that allows the user to define watchpoint addresses, or optionally, an address and
data value, that when triggered, can be used to start or stop the program trace recording.
9.1.1 Overview
As shown in the main block diagram, the platform RAM (PRAM) controller connects to
two input buses:
• the crossbar slave port for system bus accesses
• a "private execution MTB port" from the core
The logical paths from the crossbar master input ports to the PRAM controller are
highlighted along with the private execution trace port from the processor core. The
private MTB port signals the instruction address information needed for the 64-bit
program trace packets written into the system RAM. The PRAM controller output
interfaces to the attached RAM array. In this document, the PRAM controller is the
MTB_RAM controller.
The following information is taken from the ARM CoreSight Micro Trace Buffer
documentation.
"The execution trace packet consists of a pair of 32-bit words that the MTB generates
when it detects the processor PC value changes non-sequentially. A non-sequential PC
change can occur during branch instructions or during exception entry.
The processor can cause a trace packet to be generated for any instruction.
The following figure shows how the execution trace information is stored in memory as a
sequence of packets.
31 1 0
Nth destination address S Odd word address
Nth source address A Even word address
Incrementing
SRAM memory
address 31 1 0
2nd destination address S Start bit
2nd source address A
1st destination address S Odd word address
1st source address A Even word address
Atom bit
The first, lower addressed, word contains the source of the branch, the address it
branched from. The value stored only records bits[31:1] of the source address, because
Thumb instructions are at least halfword aligned. The least significant bit of the value is
the A-bit. The A-bit indicates the atomic state of the processor at the time of the branch,
and can differentiate whether the branch originated from an instruction in a program, an
exception, or a PC update in Debug state. When it is zero the branch originated from an
instruction, when it is one the branch originated from an exception or PC update in
Debug state. This word is always stored at an even word location.
The second, higher addressed word contains the destination of the branch, the address it
branched to. The value stored only records bits[31:1] of the branch address. The least
significant bit of the value is the S-bit. The S-bit indicates where the trace started. An S-
bit value of 1 indicates where the first packet after the trace started and a value of 0 is
used for other packets. Because it is possible to start and stop tracing multiple times in a
trace session, the memory might contain several packets with the S-bit set to 1. This word
is always stored in the next higher word in memory, an odd word address.
When the A-bit is set to 1, the source address field contains the architecturally-preferred
return address for the exception. For example, if an exception was caused by an SVC
instruction, then the source address field contains the address of the following instruction.
This is different from the case where the A-bit is set to 0. In this case, the source address
contains the address of the branch instruction.
For an exception return operation, two packets are generated:
• The first packet has the:
• Source address field set to the address of the instruction that causes the exception
return, BX or POP.
• Destination address field set to bits[31:1] of the EXC_RETURN value. See the
ARM v6-M Architecture Reference Manual.
• The A-bit set to 0.
• The second packet has the:
• Source address field set to bits[31:1] of the EXC_RETURN value.
• Destination address field set to the address of the instruction where execution
commences.
• A-bit set to 1."
Given the recorded change-of-flow trace packets in system RAM and the memory image
of the application, a debugger can read out the data and create an instruction-by-
instruction program trace. In keeping with the low area and power implementation cost
design targets, the MTB trace format is less efficient than other CoreSight trace modules,
for example, the ETM (Embedded Trace Macrocell). Since each branch packet is 8 bytes
in size, a 1 KB block of system RAM can contain 128 branches. Using the Dhrystone 2.1
benchmark's dynamic runtime as an example, this corresponds to about 875 instructions
per KB of trace RAM, or with a zero wait state memory, this corresponds to
approximately 1600 processor cycles per KB. This metric is obviously very sensitive to
the runtime characteristics of the user code.
The MTB_DWT function (not shown in the core platform block diagram) monitors the
processor address and data buses so that configurable watchpoints can be detected to
trigger the appropriate response in the MTB recording.
9.1.2 Features
The key features of the MTB_RAM and MTB_DWT include:
• Memory controller for system RAM and Micro Trace Buffer for program trace
packets
• Read/write capabilities for system RAM accesses, write-only for program trace
packets
• Supports zero wait state response to system bus accesses when no trace data is being
written
• Can buffer two AHB address phases and one data write for system RAM accesses
• Supports 64-bit program trace packets including source and destination instruction
addresses
• Program trace information in RAM available to MCU's application code or external
debugger
• Program trace watchpoint configuration accessible by MCU's application code or
debugger
• Location and size of RAM trace buffer is configured by software
• Two DWT comparators (addresses or address + data) provide programmable start/
stop recording
• CoreSight compliant debug functionality
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R NUMCMP DWTCFGCTRL
W
Reset 0 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
This field is hardwired to 0xF00_0000, disabling all the remaining DWT functionality. The specific fields
and their state are:
MTBDWT_CTRL[27] = NOTRCPKT = 1, trace sample and exception trace is not supported
MTBDWT_CTRL[26] = NOEXTTRIG = 1, external match signals are not supported
MTBDWT_CTRL[25] = NOCYCCNT = 1, cycle counter is not supported
MTBDWT_CTRL[24] = NOPRFCNT = 1, profiling counters are not supported
MTBDWT_CTRL[22] = CYCEBTENA = 0, no POSTCNT underflow packets generated
MTBDWT_CTRL[21] = FOLDEVTENA = 0, no folded instruction counter overflow events
MTBDWT_CTRL[20] = LSUEVTENA = 0, no LSU counter overflow events
MTBDWT_CTRL[19] = SLEEPEVTENA = 0, no sleep counter overflow events
MTBDWT_CTRL[18] = EXCEVTENA = 0, no exception overhead counter events
MTBDWT_CTRL[17] = CPIEVTENA = 0, no CPI counter overflow events
MTBDWT_CTRL[16] = EXCTRCENA = 0, generation of exception trace disabled
MTBDWT_CTRL[12] = PCSAMPLENA = 0, no periodic PC sample packets generated
MTBDWT_CTRL[11:10] = SYNCTAP = 0, no synchronization packets
MTBDWT_CTRL[9] = CYCTAP = 0, cycle counter is not supported
Table continues on the next page...
If MTBDWT_COMP0 is used for a data value comparator and the access size is byte or halfword, the data
value must be replicated across all appropriate byte lanes of this register. For example, if the data is a
byte-sized "x" value, then COMP[31:24] = COMP[23:16] = COMP[15:8] = COMP[7:0] = "x". Likewise, if the
data is a halfword-size "y" value, then COMP[31:16] = COMP[15:0] = "y".
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MATCHED
R 0 0 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
DATAVMATCH
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 No match.
1 Match occurred.
23–20 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
19–16 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
15–12 Data Value Address 0
DATAVADDR0
Since the MTB_DWT implements two comparators, the DATAVADDR0 field is restricted to values {0,1}.
When the DATAVMATCH bit is asserted, this field defines the comparator number to use for linked
address comparison.
If MTBDWT_COMP0 is used as a data watchpoint and MTBDWT_COMP1 as an address watchpoint,
DATAVADDR0 must be set.
11–10 Data Value Size
DATAVSIZE
For data value matching, this field defines the size of the required data comparison.
00 Byte.
01 Halfword.
10 Word.
11 Reserved. Any attempts to use this value results in UNPREDICTABLE behavior.
9 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
8 Data Value Match
DATAVMATCH
When this field is 1, it enables data value comparison. For this implementation, MTBDWT_COMP0
supports address or data value comparisons; MTBDWT_COMP1 only supports address comparisons.
Selects the action taken on a comparator match. If MTBDWT_COMP0 is used for a data value and
MTBDWT_COMP1 for an address value, then MTBDWT_FCT1[FUNCTION] must be set to zero. For this
configuration, MTBDWT_MASK1 can be set to a non-zero value, so the combined comparators match on
a range of addresses.
0000 Disabled.
0100 Instruction fetch.
0101 Data operand read.
0110 Data operand write.
0111 Data operand (read + write).
others Reserved. Any attempts to use this value results in UNPREDICTABLE behavior.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MATCHED
R 0 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
FUNCTION
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 No match.
1 Match occurred.
23–4 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
FUNCTION Function
Selects the action taken on a comparator match. If MTBDWT_COMP0 is used for a data value and
MTBDWT_COMP1 for an address value, then MTBDWT_FCT1[FUNCTION] must be set to zero. For this
configuration, MTBDWT_MASK1 can be set to a non-zero value, so the combined comparators match on
a range of addresses.
0000 Disabled.
0100 Instruction fetch.
0101 Data operand read.
0110 Data operand write.
0111 Data operand (read + write).
others Reserved. Any attempts to use this value results in UNPREDICTABLE behavior.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R NUMCOMP 0
Reset 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
ACOMP1
ACOMP0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DEVICECFG
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Hardwired to 0x0000_0000.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R DEVICETYPID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Hardwired to 0x0000_0004.
R PERIPHID
W
Reset x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x*
* Notes:
• x = Undefined at reset.
Peripheral ID1 is hardwired to 0x0000_00E0; ID2 to 0x0000_0008; and all the others to 0x0000_0000.
R COMPID
W
Reset x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x*
* Notes:
• x = Undefined at reset.
NOTE
• For S32K11x , LMDR information can be inferred for
SRAM size as below:
• S32K116: LMDR1[LMSZH]=0,
LMDR1[LMSZH]=0x5 , so SRAM_U size 1*(16) KB
= 16 KB. Actual size is 16 KB – 2 KB = 14 KB
• S32K118: LMDR1[LMSZH]=1,
LMDR1[LMSZH]=0x6 , so SRAM_U size 0.75*(32)
KB = 24 KB. Actual size is 24 KB – 2 KB = 22 KB
• For S32K14x variants SRAM is the tightly coupled SRAM
(TCM), while for S32K11x variants SRAM is at the
crossbar slave side.
Address offset of LMPEIR register varies between S32K14x and S32K11x as given
below.
Table 10-2. MCM register offset
Register S32K14x offset S32K11x offset
MCM_LMPEIR 0x488 0x484
10.2 Introduction
The Miscellaneous Control Module (MCM) provides miscellaneous control functions.
NOTE
• Cache write buffer is not supported on S32K1xx.
• ECC on SRAML/MTB, FPU, and Cache is not supported
on S32K11x.
10.2.1 Features
The MCM includes the following feature:
• Program-visible information on the platform configuration and revision
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Read 0 ASC
Write
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Read 0 AMC
Write
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
CPCR defines the arbitration and protection schemes for the two system RAM arrays.
Address: 0h base + Ch offset = Ch
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 SRAMUWP
SRAMLWP
Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
AXBS_HLT_REQ
PBRIDGE_IDLE
FMC_PF_IDLE
AXBS_HLTD
HLT_FSM_
R
ST
Reserved
CBR
Reserved Reserved
R
Reset 0 0 0 0 0 0 0 0 0 x* 0 x* 0 0 0 0
* Notes:
• x = Undefined at reset.
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
29–28 SRAM_L Arbitration Priority
SRAMLAP
Defines the arbitration scheme and priority for the processor and SRAM backdoor accesses to the
SRAM_L array.
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
00 Round robin
01 Special round robin (favors SRAM backdoor accesses over the processor)
10 Fixed priority. Processor has highest, backdoor has lowest
11 Fixed priority. Backdoor has highest, processor has lowest
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
25–24 SRAM_U Arbitration Priority
SRAMUAP
Defines the arbitration scheme and priority for the processor and SRAM backdoor accesses to the
SRAM_U array.
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
00 Round robin
01 Special round robin (favors SRAM backdoor accesses over the processor)
10 Fixed priority. Processor has highest, backdoor has lowest
11 Fixed priority. Backdoor has highest, processor has lowest
23–10 This field is reserved.
Reserved
9 Crossbar Round-robin Arbitration Enable
CBRR
Configures the crossbar slave ports to fixed-priority or round-robin arbitration.
NOTE: Highly recommended to configure this bit field to round-robin mode before configuring any other
master, for example: DMA, ENET etc., as fixed arbitration may generate stalls or under runs on
low priority master.
0 Fixed-priority arbitration
1 Round-robin arbitration
8–7 This field is reserved.
Reserved
6 Peripheral Bridge Idle
PBRIDGE_IDLE
This field indicates if the Peripheral Bridge is idle.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 1 0
Reserved
FOFCE
FUFCE
FDZCE
FIOCE
FIDCE
FIXCE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Reserved
FOFC
FUFC
FDZC
FIOC
FIDC
FIXC
R 0 0 0
W w1c
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 No interrupt
1 Interrupt occurred
14–13 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
12 FPU Inexact Interrupt Status
FIXC
This field is a copy of the core’s FPSCR[IXC] field and signals an inexact number has been detected in the
processor’s FPU. Once set, this field remains set until software clears FPSCR[IXC].
0 No interrupt
1 Interrupt occurred
11 FPU Underflow Interrupt Status
FUFC
This field is a copy of the core’s FPSCR[UFC] field and signals an underflow has been detected in the
processor’s FPU. After this field is set, it remains set until software clears FPSCR[UFC].
0 No interrupt
1 Interrupt occurred
10 FPU Overflow Interrupt Status
FOFC
This field is a copy of the core’s FPSCR[OFC] field and signals an overflow has been detected in the
processor’s FPU. After this field is set, it remains set until software clears FPSCR[OFC].
0 No interrupt
1 Interrupt occurred
9 FPU Divide-by-Zero Interrupt Status
FDZC
This field is a copy of the core’s FPSCR[DZC] field and signals a divide by zero has been detected in the
processor’s FPU. After this field is set, it remains set until software clears FPSCR[DZC].
0 No interrupt
1 Interrupt occurred
8 FPU Invalid Operation Interrupt Status
FIOC
This field is a copy of the core’s FPSCR[IOC] field and signals an illegal operation has been detected in
the processor’s FPU. After this field is set, it remains set until software clears FPSCR[IOC].
0 No interrupt
1 Interrupt occurred
7–5 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 PID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
CPOACK
R 0
CPOREQ
CPOWOI
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Reserved
LOCK
W
Reset x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x*
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MT
Reserved
Reset x* x* x* x* x* x* x* x* x* x* x* x* x* x* x* x*
* Notes:
• The reset values are different for the individual LMDR registers. LMDR0: 0x8804_0003; LMDR1: 0x8804_2003. x =
Undefined at reset.
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
000 SRAM_L
001 SRAM_U
12 This field is reserved.
Reserved
11–8 This field is reserved.
Reserved
7–4 This field is reserved.
Reserved
CF0 Control Field 0
NOTE
LMDR0[CF0] bit field is Reserved and Read-Only 0 for S32K11x
variants.
This section of the programming model is an array of 32-bit generic on-chip memory
descriptor registers that provide static information on the attached memories as well as
configurable controls (where appropriate).
Privileged 32-bit reads from a processor core or the debugger return the appropriate
processor information. Reads from any other bus master return all zeroes. Privileged
writes from a processor core or the debugger to writeable registers update the appropriate
fields. Privileged writes from other bus masters are ignored. Attempted user mode
accesses or any access with a size other than 32 bits are terminated with an error.
Address: 0h base + 408h offset = 408h
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserved
LMSZH
R V LMSZ WY DPW
Reserved
LOCK
W
Reset 1 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R MT
Reset 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0
0100 4 KB LMEMn
23–20 Level 1 Cache Ways
WY
0000 No Cache
0010 2-Way Set Associative
0100 4-Way Set Associative
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
010 PC Cache
12 This field is reserved.
Reserved
11–8 This field is reserved.
Reserved
7–4 Control Field 1
CF1
This field is used for cache parity control functions.
• CF1[3]-PCPFE = PC Parity Fault Enable
• CF1[2]-Reserved
• CF1[1]-PCPME = PC Parity Miss Enable
• CF1[0]-Reserved
Reserved This field is reserved.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0
ECPR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
ERNCR
ER1BR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
0 Reporting disabled
1 Reporting enabled
19–17 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
16 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
15–9 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
8 Enable RAM ECC 1 Bit Reporting
ER1BR
NOTE
This bit field is Reserved and Read-Only 0 for S32K11x variants. This
bit field cannot mask ECC reporting, as a result the ECC would
always be reported.
0 Reporting disabled
1 Reporting enabled
7–1 This field is reserved.
Reserved This read-only field is reserved and always has the value 0.
0 Reporting disabled
1 Reporting enabled
NOTE
Writes of 1 to the error bit in LMPEIR[23:0] can clear the
interrupt flag. For S32K11x variants, MCM interrupt for ECC
is not supported and this register only captures the event.
Address: 0h base + 488h offset = 488h
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R V 0 PEELOC PE
W w1c
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R E1B ENC
W w1c w1c
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
NOTE: This bit field is Reserved and Read-Only 0 for S32K11x variants.
15–8 E1Bn = ECC 1-bit Error n
E1B
• PEIR[15:10] - Reserved
• PEIR[9] - 1-bit Error detected on SRAM_U
• PEIR[8] - 1-bit Error detected on SRAM_L. (This is Reserved for S32K11x variants.)
ENC ENCn = ECC Noncorrectable Error n
• PEIR[7:2] - Reserved
• PEIR[1] - Noncorrectable Error detected on SRAM_U
• PEIR[0] - Noncorrectable Error detected on SRAM_L (This is Reserved for S32K11x variants.)
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EFADD
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
OVR
R 0 0 0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
PEFW
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PEFDH
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PEFDL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
10.4.1 Interrupts
The MCM interrupt is generated if any of the following is true:
• FPU input denormal interrupt is enabled (FIDCE) and an input is denormalized
(FIDC)
• FPU inexact interrupt is enabled (FIXCE) and a number is inexact (FIXC)
• FPU underflow interrupt is enabled (FUFCE) and an underflow occurs (FUFC)
• FPU overflow interrupt is enabled (FOFCE) and an overflow occurs (FOFC)
• FPU divide-by-zero interrupt is enabled (FDZCE) and a divide-by-zero occurs
(FDZC)
• FPU invalid operation interrupt is enabled (FIOCE) and an invalid occurs (FIOC)
• SRAM_L correctable (1-bit) ECC error
• SRAM_L uncorrectable ECC error
• SRAM_U correctable (1-bit) ECC error
• SRAM_U uncorrectable ECC error
• PC data parity error
• PC tag parity error
• Cache write buffer error
NOTE
The above interrupt is not applicable for S32K11x variants.
NOTE
ECC and Parity interrupts are determined by LMPECR
(interrupt enable) and LMPEIR (interrupt source).
11.2 Introduction
The System Integration Module (SIM) provides system control and chip configuration
registers.
11.2.1 Features
Features of the SIM include:
• System clocking configuration
• Flash memory and system RAM size configuration
• FlexTimer clock channel and configuration
11.3.1.2.1 Offset
Register Offset
CHIPCTL 4h
11.3.1.2.2 Function
SIM_CHIPCTL contains the controls for selecting ADC COCO trigger, trace clock,
clock out source, PDB back-to-back mode, and ADC interleave channel.
NOTE
Bits 31:16 are reset on POR.
11.3.1.2.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
ADC_SUPPLYEN
ADC_SUPPLY
SRAMU_RETE
SRAML_RETE
Reserved
Reserved
W
N
Reset 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
ADC_INTERLEAVE_EN
TRACECLK_SE
CLKOUTSEL
PDB_BB_SE
CLKOUTEN
CLKOUTDIV
Reserved
W
L
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.2.4 Fields
Field Function
31-24 Reserved
—
23-22 Reserved
—
21 SRAML_RETEN
SRAML_RETEN SRAML retention
Field Function
Internal supplies monitored on ADC0 internal channel 0 (configured by selecting ADC0_SC1n[ADCH] as
010101b)
000b - 5 V input VDD supply (VDD)
001b - 5 V input analog supply (VDDA)
010b - ADC Reference Supply (VREFH)
011b - 3.3 V Oscillator Regulator Output (VDD_3V)
100b - 3.3 V flash regulator output (VDD_flash_3V)
101b - 1.2 V core regulator output (VDD_LV)
110b - Reserved
111b - Reserved
15-14 Reserved
—
13 PDB back-to-back select
PDB_BB_SEL Selects ADC COCO source as pdb back-to-back mode, see section Back-to-back acknowledgement
connections for details.
NOTE: This bit field is Reserved and Read-Only Zero for S32K11x variants.
0b - PDB0 channel 0 back-to-back operation with ADC0 COCO[7:0] and PDB1 channel 0 back-to-
back operation with ADC1 COCO[7:0]
1b - Channel 0 of PDB0 and PDB1 back-to-back operation with COCO[7:0] of ADC0 and ADC1.
12 Debug trace clock select
TRACECLK_SE Selects core clock or platform clock as the trace clock source.
L
NOTE: This bit field is Reserved and Read-Only Zero for S32K11x variants.
0b - Core clock
1b - Reserved
11 CLKOUT enable
CLKOUTEN NOTE: The below sequence should be followed while CLKOUT configuration:
1. Configure SIM_CHIPCTL[CLKOUTSEL]
2. Configure SIM_CHIPCTL[CLKOUTDIV]
3. Enable SIM_CHIPCTL[CLKOUTEN]
(While switching, CLKOUTEN should be first cleared and then the above sequence should be
followed)
0b - Clockout disable
1b - Clockout enable
10-8 CLKOUT Divide Ratio
CLKOUTDIV NOTE: The below sequence should be followed while CLKOUT configuration:
1. Configure SIM_CHIPCTL[CLKOUTSEL]
2. Configure SIM_CHIPCTL[CLKOUTDIV]
3. Enable SIM_CHIPCTL[CLKOUTEN]
(While switching, CLKOUTEN should be first cleared and then the above sequence should be
followed)
000b - Divide by 1
001b - Divide by 2
010b - Divide by 3
011b - Divide by 4
100b - Divide by 5
101b - Divide by 6
110b - Divide by 7
111b - Divide by 8
7-4 CLKOUT Select
Table continues on the next page...
Field Function
CLKOUTSEL NOTE: The below sequence should be followed while CLKOUT configuration:
1. Configure SIM_CHIPCTL[CLKOUTSEL]
2. Configure SIM_CHIPCTL[CLKOUTDIV]
3. Enable SIM_CHIPCTL[CLKOUTEN]
(While switching, CLKOUTEN should be first cleared and then the above sequence should be
followed)
NOTE: For QuadSPI clocks, see QuadSPI clocking diagram in table 'Peripheral module clocking'
Selects the clock to output on the CLKOUT pin.
0000b - SCG CLKOUT
0001b - Reserved
0010b - SOSC DIV2 CLK
0011b - Reserved
0100b - SIRC DIV2 CLK
0101b - For S32K148: QSPI_SFIF_CLK_HYP_PREMUX: Divide by 2 clock (configured through
SCLKCONFIG[5]) for HyperRAM going to sfif clock to QSPI; For others: Reserved
0110b - FIRC DIV2 CLK
0111b - HCLK
1000b - For S32K14x: SPLL DIV2 CLK For S32K11x: Reserved
1001b - BUS_CLK
1010b - LPO128K_CLK
1011b - For S32K148: QSPI_Module clock; For others: Reserved
1100b - LPO_CLK as selected by SIM_LPOCLKS[LPOCLKSEL]
1101b - For S32K148: QSPI_SFIF_CLK; For others: Reserved
1110b - RTC_CLK as selected by SIM_LPOCLKS[RTCCLKSEL]
1111b - For S32K148: QSPI_2xSFIF_CLK; For others: Reserved
3-0 ADC interleave channel enable
ADC_INTERLE Select ADC interleave pins. See section ADC Hardware Interleaved Channels for more information.
AVE_EN
NOTE: This bit field is Reserved and Read-Only Zero for S32K11x variants.
0000b - Interleaving disabled. No channel pair interleaved. Interleaved channels are individually
connected to pins. PTC0 is connected to ADC0_SE8. PTC1 is connected to ADC0_SE9. PTB15 is
connected to ADC1_SE14. PTB16 is connected to ADC1_SE15. PTB0 is connected to ADC0_SE4.
PTB1 is connected to ADC0_SE5. PTB13 is connected to ADC1_SE8. PTB14 is connected to
ADC1_SE9.
1xxxb - PTB14 to ADC1_SE9 and ADC0_SE9
x1xxb - PTB13 to ADC1_SE8 and ADC0_SE8
xx1xb - PTB1 to ADC0_SE5 and ADC1_SE15
xxx1b - PTB0 to ADC0_SE4 and ADC1_SE14
11.3.1.3.1 Offset
Register Offset
FTMOPT0 Ch
11.3.1.3.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
FTM3CLKSEL
FTM2CLKSEL
FTM1CLKSEL
FTM0CLKSEL
FTM7CLKSEL
FTM6CLKSEL
FTM5CLKSEL
FTM4CLKSEL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
FTM3FLTxSEL
FTM2FLTxSEL
FTM1FLTxSEL
FTM0FLTxSEL
0
0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.3.3 Fields
Field Function
31-30 FTM3 External Clock Pin Select
FTM3CLKSEL Selects the external pin used to drive the FTM3 module clock.
NOTE: The selected pin must also be configured for the FTM3 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM3 external clock driven by TCLK0 pin.
01b - FTM3 external clock driven by TCLK1 pin.
10b - FTM3 external clock driven by TCLK2 pin.
11b - No clock input
29-28 FTM2 External Clock Pin Select
FTM2CLKSEL Selects the external pin used to drive the FTM2 module clock.
NOTE: The selected pin must also be configured for the FTM2 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM2 external clock driven by TCLK0 pin.
01b - FTM2 external clock driven by TCLK1 pin.
10b - FTM2 external clock driven by TCLK2 pin.
11b - No clock input
27-26 FTM1 External Clock Pin Select
FTM1CLKSEL Selects the external pin used to drive the FTM1 module clock.
NOTE: The selected pin must also be configured for the FTM1 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM1 external clock driven by TCLK0 pin.
01b - FTM1 external clock driven by TCLK1 pin.
10b - FTM1 external clock driven by TCLK2 pin.
11b - No clock input
25-24 FTM0 External Clock Pin Select
Table continues on the next page...
Field Function
FTM0CLKSEL Selects the external pin used to drive the FTM0 module clock.
NOTE: The selected pin must also be configured for the FTM0 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM0 external clock driven by TCLK0 pin.
01b - FTM0 external clock driven by TCLK1 pin.
10b - FTM0 external clock driven by TCLK2 pin.
11b - No clock input
23-22 FTM7 External Clock Pin Select
FTM7CLKSEL Selects the external pin used to drive the FTM7 module clock.
NOTE: The selected pin must also be configured for the FTM7 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM7 external clock driven by TCLK0 pin.
01b - FTM7 external clock driven by TCLK1 pin.
10b - FTM7 external clock driven by TCLK2 pin.
11b - No clock input
21-20 FTM6 External Clock Pin Select
FTM6CLKSEL Selects the external pin used to drive the FTM6 module clock.
NOTE: The selected pin must also be configured for the FTM6 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM6 external clock driven by TCLK0 pin.
01b - FTM6 external clock driven by TCLK1 pin.
10b - FTM6 external clock driven by TCLK2 pin.
11b - No clock input
19-18 FTM5 External Clock Pin Select
FTM5CLKSEL Selects the external pin used to drive the FTM5 module clock.
NOTE: The selected pin must also be configured for the FTM5 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM5 external clock driven by TCLK0 pin.
01b - FTM5 external clock driven by TCLK1 pin.
10b - FTM5 external clock driven by TCLK2 pin.
11b - No clock input
17-16 FTM4 External Clock Pin Select
FTM4CLKSEL Selects the external pin used to drive the FTM4 module clock.
NOTE: The selected pin must also be configured for the FTM4 external clock function through the
appropriate Pin Control Register in the Port Control module.
00b - FTM4 external clock driven by TCLK0 pin.
01b - FTM4 external clock driven by TCLK1 pin.
10b - FTM4 external clock driven by TCLK2 pin.
11b - No clock input
15 Reserved
—
14-12 FTM3 Fault X Select
FTM3FLTxSEL Selects the source of the FTM3 fault. Every bit means one fault input, respectively.
NOTE: The pin source of the fault must be configured for FTM3 fault function through the appropriate
PORT_PCRn field when the fault comes from an external pin. TRGMUX_FTM3 SELx
corresponds to the FTM3 Fault x input.
000b - FTM3_FLTx pin
Table continues on the next page...
Field Function
001b - TRGMUX_FTM3 out
11 Reserved
—
10-8 FTM2 Fault X Select
FTM2FLTxSEL Selects the source of the FTM2 fault. Every bit means one fault input, respectively.
NOTE: The pin source of the fault must be configured for FTM2 fault function through the appropriate
PORT_PCRn field when the fault comes from an external pin. TRGMUX_FTM2 SELx
corresponds to the FTM2 Fault x input.
000b - FTM2_FLTx pin
001b - TRGMUX_FTM2 out
7 Reserved
—
6-4 FTM1 Fault X Select
FTM1FLTxSEL Selects the source of the FTM1 fault. Every bit means one fault input, respectively.
NOTE: The pin source of the fault must be configured for FTM1 fault function through the appropriate
PORT_PCRn field when the fault comes from an external pin. TRGMUX_FTM1 SELx
corresponds to the FTM1 Fault x input.
000b - FTM1_FLTx pin
001b - TRGMUX_FTM1 out
3 Reserved
—
2-0 FTM0 Fault X Select
FTM0FLTxSEL Selects the source of the FTM0 fault. Every bit means one fault input, respectively.
NOTE: The pin source of the fault must be configured for FTM0 fault function through the appropriate
PORT_PCRn field when the fault comes from an external pin. TRGMUX_FTM0 SELx
corresponds to the FTM0 Fault x input.
000b - FTM0_FLTx pin
001b - TRGMUX_FTM0 out
11.3.1.4.1 Offset
Register Offset
LPOCLKS 10h
11.3.1.4.2 Function
NOTE
The LPOCLKS register is a write-once register, and is reset
only on POR or LVD.
11.3.1.4.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
0
LPO32KCLKEN
LPO1KCLKEN
LPOCLKSEL
RTCCLKSE
W
L
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
11.3.1.4.4 Fields
Field Function
31-6 Reserved
—
5-4 32 kHz clock source select
RTCCLKSEL Selects 32 kHz clock source for peripherals
00b - SOSCDIV1_CLK
01b - 32 kHz LPO_CLK
10b - 32 kHz RTC_CLKIN clock
11b - FIRCDIV1_CLK
3-2 LPO clock source select
LPOCLKSEL Selects LPO clock source for peripherals
00b - 128 kHz LPO_CLK
01b - No clock
10b - 32 kHz LPO_CLK which is derived from the 128 kHz LPO_CLK
11b - 1 kHz LPO_CLK which is derived from the 128 kHz LPO_CLK
1 32 kHz LPO_CLK enable
0b - Disable 32 kHz LPO_CLK output
LPO32KCLKEN
1b - Enable 32 kHz LPO_CLK output
0 1 kHz LPO_CLK enable
0b - Disable 1 kHz LPO_CLK output
LPO1KCLKEN
1b - Enable 1 kHz LPO_CLK output
11.3.1.5.1 Offset
Register Offset
ADCOPT 18h
11.3.1.5.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ADC1SWPRETRG
ADC0SWPRETRG
0
0
ADC1PRETRGSE
ADC0PRETRGSE
ADC1TRGSEL
ADC0TRGSEL
W
L
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.5.3 Fields
Field Function
31-16 Reserved
—
15-14 Reserved
—
13-12 ADC1 pretrigger source select
ADC1PRETRG Selects pretrigger source for ADC1.
SEL 00b - PDB pretrigger (default)
01b - TRGMUX pretrigger
10b - Software pretrigger
11b - Reserved
11-9
ADC1 software pretrigger sources
000b - Software pretrigger disabled
ADC1SWPRET
001b - Reserved (do not use)
RG
010b - Reserved (do not use)
Table continues on the next page...
Field Function
011b - Reserved (do not use)
100b - Software pretrigger 0
101b - Software pretrigger 1
110b - Software pretrigger 2
111b - Software pretrigger 3
8 ADC1 trigger source select
ADC1TRGSEL Selects trigger source for ADC1.
NOTE: Each PDB supports two ADC channels, and each channel has 8 pretriggers. If needed, the
trigger of two ADC channels are OR'ed together to support up to 16 pretriggers.
0b - PDB output
1b - TRGMUX output
7-6 Reserved
—
5-4 ADC0 pretrigger source select
ADC0PRETRG Selects pretrigger source for ADC0.
SEL 00b - PDB pretrigger (default)
01b - TRGMUX pretrigger
10b - Software pretrigger
11b - Reserved
3-1 ADC0 software pretrigger sources
000b - Software pretrigger disabled
ADC0SWPRET
001b - Reserved (do not use)
RG
010b - Reserved (do not use)
011b - Reserved (do not use)
100b - Software pretrigger 0
101b - Software pretrigger 1
110b - Software pretrigger 2
111b - Software pretrigger 3
0 ADC0 trigger source select
ADC0TRGSEL Selects trigger source for ADC0.
NOTE: Each PDB supports two ADC channels, and each channel has 8 pretriggers. If needed, the
trigger of two ADC channels are OR'ed together to support up to 16 pretriggers.
0b - PDB output
1b - TRGMUX output
11.3.1.6.1 Offset
Register Offset
FTMOPT1 1Ch
11.3.1.6.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
FTM3_OUTSEL FTM0_OUTSEL
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0
FTM7SYNCBIT
FTM6SYNCBIT
FTM5SYNCBIT
FTM4SYNCBIT
FTM3SYNCBIT
FTM2SYNCBIT
FTM1SYNCBIT
FTM0SYNCBIT
FTM2CH1SEL
FTM2CH0SEL
FTM1CH0SEL
FTMGLDOK
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.6.3 Fields
Field Function
31-24 FTM3 channel modulation select with FTM2_CH1
FTM3_OUTSEL Bits 7 to 0 of this field are for channel 7 to 0, respectively.
00000000b - No modulation with FTM2_CH1
00000001b - Modulation with FTM2_CH1
23-16 FTM0 channel modulation select with FTM1_CH1
FTM0_OUTSEL Bits 7 to 0 of this field are for channel 7 to 0, respectively.
00000000b - No modulation with FTM1_CH1
00000001b - Modulation with FTM1_CH1
15 FTM global load enable
FTMGLDOK This bit is not self-clearing. For subsequent reload operations, it should be cleared and then set.
0b - FTM Global load mechanism disabled.
1b - FTM Global load mechanism enabled
14 FTM7 Sync Bit
FTM7SYNCBIT This is used as trigger source for FTM7. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
13 FTM6 Sync Bit
FTM6SYNCBIT This is used as trigger source for FTM6. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
12 FTM5 Sync Bit
FTM5SYNCBIT This is used as trigger source for FTM5. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
11 FTM4 Sync Bit
FTM4SYNCBIT This is used as trigger source for FTM4. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
10-9 Reserved
—
Field Function
8 FTM2 CH1 Select
FTM2CH1SEL Selects FTM2 CH1 input
0b - FTM2_CH1 input
1b - exclusive OR of FTM2_CH0,FTM2_CH1,and FTM1_CH1
7-6 FTM2 CH0 Select
FTM2CH0SEL Selects FTM2 CH0 input
00b - FTM2_CH0 input
01b - CMP0 output
10b - Reserved
11b - Reserved
5-4 FTM1 CH0 Select
FTM1CH0SEL Selects FTM1 CH0 input
00b - FTM1_CH0 input
01b - CMP0 output
10b - Reserved
11b - Reserved
3 FTM3 Sync Bit
FTM3SYNCBIT This is used as trigger source for FTM3. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
2 FTM2 Sync Bit
FTM2SYNCBIT This is used as trigger source for FTM2. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
1 FTM1 Sync Bit
FTM1SYNCBIT This is used as trigger source for FTM1. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
0 FTM0 Sync Bit
FTM0SYNCBIT This is used as trigger source for FTM0. See section FTM Hardware Triggers and Synchronization for
details on FTM hardware triggering.
11.3.1.7.1 Offset
Register Offset
MISCTRL0 20h
11.3.1.7.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
FTM7_OBE_CTRL
FTM6_OBE_CTRL
FTM5_OBE_CTRL
FTM4_OBE_CTRL
FTM3_OBE_CTRL
FTM2_OBE_CTRL
FTM1_OBE_CTRL
FTM0_OBE_CTRL
RMII_CLK_SEL
RMII_CLK_OBE
QSPI_CLK_SE
Reserved
L
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
W1C STOP2_MONITOR
W1C STOP1_MONITOR
FTM_GTB_SPLIT_EN
R
Reserved
Reserved
Reserved
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.7.3 Fields
Field Function
31-27 Reserved
—
26 QSPI CLK Select bit
QSPI_CLK_SEL QSPI asynchronous clock gating enable
0b - QuadSPI internal reference clock is gated.
1b - QuadSPI internal reference clock is enabled.
25 RMII CLK Select bit
RMII_CLK_SEL Set this bit to enable SOSCDIV1_CLK as ENET RMII clock in Internal loopback mode.
24 RMII CLK OBE bit
RMII_CLK_OBE Output Buffer Enable for ENET RMII clock in internal loopback mode
23 FTM7 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM7_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
22 FTM6 OBE CTRL bit
Table continues on the next page...
Field Function
FTM6_OBE_CT 0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
RL channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
21 FTM5 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM5_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
20 FTM4 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM4_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
19 FTM3 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM3_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
18 FTM2 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM2_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
17 FTM1 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM1_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
16 FTM0 OBE CTRL bit
0b - The FTM channel output is put to safe state when the FTM counter is enabled and the FTM
FTM0_OBE_CT
channel output is enabled by Fault Control (FTM_MODE[FAULTM]!=2'b00 and
RL
FTM_FLTCTRL[FSTATE]=1'b0) and PWM is enabled (FTM_SC[PWMENn] = 1'b1). Otherwise the
channel output is tristated.
1b - The FTM channel output state is retained when the channel is in output mode. The output
channel is tristated when the channel is in input capture [DECAPEN=1'b0, COMBINE=1'b0,
MSnB:MSnA=2'b00] or dual edge capture mode [DECAPEN=1'b1].
Field Function
15 Reserved
—
14 FTM GTB split enable/disable bit
FTM_GTB_SPLI Split time base enable/disable.
T_EN 0b - All the FTMs have a single global time-base
1b - FTM0-3 have a common time-base and others have a different common time-base. Please
refer 'FTM global time base' in FTM chapter for implementation details.
13-11 Reserved
—
10 STOP2 monitor bit
STOP2_MONIT This status bit monitors system clock status on STOP2 mode entry and can be used for monitoring
OR whether STOP2 entry was successful or aborted (In STOP2, system clock is disabled and bus clock is
enabled). This bit needs to be W1C after wakeup from STOP2 mode.
11.3.1.8.1 Offset
Register Offset
SDID 24h
11.3.1.8.2 Function
NOTE
This register's reset value is loaded during system reset from
flash memory IFR.
11.3.1.8.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
11.3.1.8.4 Fields
Field Function
31-28 S32K product series generation
GENERATION Specifies the generation of the S32K product series of chips. Generation for this chip is 1.
27-24 Subseries
SUBSERIES Specifies the sub-series of the chip. The value is 4 (S32K14x chip) or 1 (S32K11x chip).
23-20 Derivate
DERIVATE Specifies the derivate of the chip. The value is 8 (S32K148), 6 (S32K146), 4 (S32K144), 2 (S32K142), 8
(S32118), or 6 (S32K116).
19-16 RAM size
RAMSIZE This field specifies the total amount of system RAM available on the chip, including FlexRAM.
0000b - Reserved
0001b - Reserved
0010b - Reserved
0011b - Reserved
0100b - Reserved
0101b - Reserved
0110b - Reserved
0111b - Reserved
1000b - Reserved
1001b - Reserved
1010b - Reserved
1011b - 192 KB (S32K148), 96 KB (S32K146), Reserved (others)
1100b - Reserved
1101b - 48 KB (S32K144), Reserved (others)
1110b - Reserved
1111b - 256 KB (S32K148), 128 KB (S32K146), 64 KB (S32K144), 32 KB (S32K142), 25 KB
(S32K118), 17 KB (S32K116)
15-12 Device revision number
REVID Specifies the silicon implementation number for the chip. The value is 0 (for S32K148, S32K146,
S32K142, S32K118, and S32K116) and 1 (for S32K144).
11-8 Package
PACKAGE Specifies the available package options for the chip.
Table continues on the next page...
Field Function
0000b - Reserved
0001b - 32 QFN
0010b - 48 LQFP
0011b - 64 LQFP
0100b - 100 LQFP
0101b - Reserved
0110b - 144 LQFP
0111b - 176 LQFP
1000b - 100 MAP BGA
1001b - Reserved
1010b - Reserved
1011b - Reserved
1100b - Reserved
1101b - Reserved
1110b - Reserved
1111b - Reserved
7-0 Features
FEATURES Specifies the supported features of the chip.
NOTE: • While trying to access memory map region of un-available feature with corresponding
module clock enabled through PCC CGC bit, there will not be any transfer error
termination.
• This bit field overrides the PCC.PR status for the chip.
1 Feature is present
0 Feature is not present
Each bit in this field represents the following:
• Bit 7: Security
• Bit 6: ISO CAN-FD
• Bit 5: FlexIO
• Bit 4: QuadSPI
• Bit 3: ENET
• Bit 2: ISELED
• Bit 1: SAI
• Bit 0: Reserved
11.3.1.9.1 Offset
Register Offset
PLATCGC 40h
11.3.1.9.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
0
CGCMSCM
CGCERM
CGCMPU
CGCDMA
CGCEIM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
11.3.1.9.3 Fields
Field Function
31-6 Reserved
—
5 Reserved
—
4 EIM Clock Gating Control
CGCEIM Controls the clock gating to the EIM.
0b - Clock disabled
1b - Clock enabled
3 ERM Clock Gating Control
CGCERM Controls the clock gating to the ERM.
0b - Clock disabled
1b - Clock enabled
2 DMA Clock Gating Control
CGCDMA Controls the clock gating to the DMA module.
0b - Clock disabled
1b - Clock enabled
1 MPU Clock Gating Control
CGCMPU Controls the clock gating to the MPU module.
0b - Clock disabled
1b - Clock enabled
0 MSCM Clock Gating Control
CGCMSCM Controls the clock gating to the MSCM.
0b - Clock disabled
1b - Clock enabled
11.3.1.10.1 Offset
Register Offset
FCFG1 4Ch
11.3.1.10.2 Function
NOTE
The reset value of DEPART field of this register is loaded
during system reset from flash memory IFR.
NOTE
Attempted writes to this register may result in unpredictable
behavior.
11.3.1.10.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DEPART
Reserved
Reserved
R
0
W
Reset u u u u u u u u u u u u u u u u
11.3.1.10.4 Fields
Field Function
31-28 Reserved
—
27-24 Reserved
—
23-20 Reserved
Table continues on the next page...
Field Function
—
19-16 EEE SRAM SIZE
EEERAMSIZE EEE SRAM data size.
0000b - Reserved
0001b - Reserved
0010b - 4 KB
0011b - 2 KB
0100b - 1 KB
0101b - 512 Bytes
0110b - 256 Bytes
0111b - 128 Bytes
1000b - 64 Bytes
1001b - 32 Bytes
1111b - 0 Bytes
15-12 FlexNVM partition
DEPART Data flash memory / emulated EEPROM backup split. See DEPART field description in FTFC chapter.
11-2 Reserved
—
1 Reserved
—
0 Reserved
—
11.3.1.11.1 Offset
Register Offset
UIDH 54h
11.3.1.11.2 Function
NOTE
• UID127_96, UID95_64, UID63_32, and UID31_0 together
represents 128-bit unique identification number for this
device.
• This register's reset value is loaded during system reset
from flash memory IFR.
11.3.1.11.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UID127_96
W
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UID127_96
W
Reset u u u u u u u u u u u u u u u u
11.3.1.11.4 Fields
Field Function
31-0 Unique Identification
UID127_96 Unique identification for the chip.
11.3.1.12.1 Offset
Register Offset
UIDMH 58h
11.3.1.12.2 Function
NOTE
This register's reset value is loaded during system reset from
flash memory IFR.
11.3.1.12.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UID95_64
W
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UID95_64
W
Reset u u u u u u u u u u u u u u u u
11.3.1.12.4 Fields
Field Function
31-0 Unique Identification
UID95_64 Unique identification for the chip.
11.3.1.13.1 Offset
Register Offset
UIDML 5Ch
11.3.1.13.2 Function
NOTE
This register's reset value is loaded during system reset from
flash memory IFR.
11.3.1.13.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UID63_32
W
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UID63_32
W
Reset u u u u u u u u u u u u u u u u
11.3.1.13.4 Fields
Field Function
31-0 Unique Identification
UID63_32 Unique identification for the chip.
11.3.1.14.1 Offset
Register Offset
UIDL 60h
11.3.1.14.2 Function
NOTE
This register's reset value is loaded during system reset from
flash memory IFR.
11.3.1.14.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R UID31_0
W
Reset u u u u u u u u u u u u u u u u
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R UID31_0
W
Reset u u u u u u u u u u u u u u u u
11.3.1.14.4 Fields
Field Function
31-0 Unique Identification
UID31_0 Unique identification for the chip.
11.3.1.15.1 Offset
Register Offset
CLKDIV4 68h
11.3.1.15.2 Function
NOTE
This register is Reserved for S32K11x variants.
11.3.1.15.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
TRACEDIVEN
0
0
W
Reset 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
TRACEFRAC
0
TRACEDIV
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.15.4 Fields
Field Function
31-29 Reserved
—
28 Debug Trace Divider control
TRACEDIVEN This field controls the Debug Trace Divider.
0b - Debug trace divider disabled
1b - Debug trace divider enabled
27-4 Reserved
—
3-1 Trace Clock Divider value To configure TRACEDIV, you must first disable TRACEDIVEN, then enable it
after setting TRACEDIV.
TRACEDIV
This field sets the divide value for the fractional clock divider used as a source for trace clock. The source
clock for the trace clock is set by the SIM_CHIPCTL[TRACECLK_SEL]. Divider output clock = Divider
input clock * [(TRACEFRAC+1)/(TRACEDIV+1)].
11.3.1.16.1 Offset
Register Offset
MISCTRL1 6Ch
11.3.1.16.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
0
SW_TR
W
G
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
11.3.1.16.3 Fields
Field Function
31-1 Reserved
—
0 Software trigger to TRGMUX. Writing to this bit generates software trigger to peripherals through
TRGMUX (Refer to Figure: Trigger interconnectivity).
SW_TRG
1. See the attachments IO Signal Description Input Multiplexing sheet(s) for details.
5. Configure the peripheral pins mux and features in the Port Control and Interrupts
register (PORTx_PCRn).
6. Start communication
where cycles_tISR: Core clock cycles in Interrupt Service Routine (ISR) from system
entering RUN mode till PORTx_PCRn[ISF] clearing for corresponding pin.
(Sufficient delay should be added in ISR, if required, to achieve the above)
12.2 Introduction
12.3 Overview
The Port Control and Interrupt (PORT) module provides support for port control, digital
filtering, and external interrupt functions.
Most functions can be configured independently for each pin in the 32-bit port and affect
the pin regardless of its pin muxing state.
There is one instance of the PORT module for each port. Not all pins within each port are
implemented on a specific device.
12.3.1 Features
The PORT module has the following features:
• Pin interrupt
• Interrupt flag and enable registers for each pin
• Support for edge sensitive (rising, falling, both) or level sensitive (low, high)
configured per pin
• Support for interrupt or DMA request configured per pin
• Asynchronous wake-up in low-power modes
• Pin interrupt is functional in all digital pin muxing modes
• Digital input filter
• Digital input filter for each pin, usable by any digital peripheral muxed onto the
pin
• Individual enable or bypass control field per pin
S32K1xx Series Reference Manual, Rev. 11, 06/2019
198 NXP Semiconductors
Chapter 12 Port Control and Interrupts (PORT)
• Selectable clock source for digital input filter with a five bit resolution on filter
size
• Functional in all digital pin multiplexing modes
• Port control
• Individual pull control fields with pullup, pulldown, and pull-disable support
• Individual drive strength field supporting high and low drive strength
• Individual input passive filter field supporting enable and disable of the
individual input passive filter
• Individual mux control field supporting analog or pin disabled, GPIO, and up to
six chip-specific digital functions
• Pad configuration fields are functional in all digital pin muxing modes.
NOTE
Not all pins within each port are implemented on each device.
NOTE
See the Signal Multiplexing and Pin Assignment chapter for the
reset value of this device.
See the GPIO Configuration section for details on the available
functions for each pin.
Do not modify pin configuration registers associated with pins
that are not available in a reduced-pin package offering.
Unbonded pins not available in a package are disabled by
default to prevent them from consuming power.
Address: 0h base + 0h offset + (4d × i), where i=0d to 31d
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 ISF 0
IRQC
W w1c
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0
Reserved
Reserved
Reset 0 0 0 0 0 * * * 0 * 0 * 0 0 * *
* Notes:
• MUX field: Varies by port. See Signal Multiplexing and Signal Descriptions chapter for reset values per port.
• DSE field: Varies by port. See the Signal Multiplexing and Signal Descriptions chapter for reset values per port.
• PFE field: Varies by port. See Signal Multiplexing and Signal Descriptions chapter for reset values per port.
• PE field: Varies by port. See Signal Multiplexing and Signal Descriptions chapter for reset values per port.
• PS field: Varies by port. See Signal Multiplexing and Signal Descriptions chapter for reset values per port.
0 Low drive strength is configured on the corresponding pin, if pin is configured as a digital output.
1 High drive strength is configured on the corresponding pin, if pin is configured as a digital output.
5 This field is reserved.
Reserved
4 Passive Filter Enable
PFE
Passive filter configuration is valid in all digital pin muxing modes.
0 Internal pulldown resistor is enabled on the corresponding pin, if the corresponding PE field is set.
1 Internal pullup resistor is enabled on the corresponding pin, if the corresponding PE field is set.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
W GPWE GPWD
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 Corresponding Pin Control Register is not updated with the value in GPWD.
1 Corresponding Pin Control Register is updated with the value in GPWD.
GPWD Global Pin Write Data
Write value that is written to all Pin Control Registers bits [15:0] that are selected by GPWE.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
W GPWE GPWD
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 Corresponding Pin Control Register is not updated with the value in GPWD.
1 Corresponding Pin Control Register is updated with the value in GPWD.
GPWD Global Pin Write Data
Table continues on the next page...
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
W GIWD GIWE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Selects which Pin Control Registers (15 through 0) bits [31:16] update with the value in GIWD.
0 Corresponding Pin Control Register is not updated with the value in GPWD.
1 Corresponding Pin Control Register is updated with the value in GPWD.
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0
W GIWD GIWE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Selects which Pin Control Registers (31 through 16) bits [31:16] update with the value in GIWD.
0 Corresponding Pin Control Register is not updated with the value in GPWD.
1 Corresponding Pin Control Register is updated with the value in GPWD.
The pin interrupt configuration is valid in all digital pin muxing modes. The Interrupt
Status Flag for each pin is also visible in the corresponding Pin Control Register, and
each flag can be cleared in either location.
Address: 0h base + A0h offset = A0h
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R ISF
W w1c
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Each bit in the field indicates the detection of the configured interrupt of the same number as the field.
The digital filter configuration is valid in all digital pin muxing modes.
Address: 0h base + C0h offset = C0h
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
W
DFE
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
The digital filter configuration is valid in all digital pin muxing modes. The output of each digital filter is
reset to zero at system reset and whenever the digital filter is disabled. Each bit in the field enables the
digital filter of the same number as the field.
0 Digital filter is disabled on the corresponding pin and output of the digital filter is reset to zero.
1 Digital filter is enabled on the corresponding pin, if the pin is configured as a digital input.
The digital filter configuration is valid in all digital pin muxing modes.
Address: 0h base + C4h offset = C4h
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CS
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
The digital filter configuration is valid in all digital pin muxing modes.
Address: 0h base + C8h offset = C8h
Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 FILT
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
The digital filter configuration is valid in all digital pin muxing modes. Configures the maximum size of the
glitches, in clock cycles, that the digital filter absorbs for the enabled digital filters. Glitches that are longer
than this register setting will pass through the digital filter, and glitches that are equal to or less than this
register setting are filtered. Changing the filter length must be done only after all filters are disabled.
The lower half of the Pin Control register configures the following functions for each pin
within the 32-bit port.
• Pullup or pulldown enable
• Drive strength
• Passive input filter enable
• Pin Muxing mode
The functions apply across all digital pin muxing modes and individual peripherals do not
override the configuration in the Pin Control register. For example, if an I2C function is
enabled on a pin, that does not override the pullup configuration for that pin.
When the Pin Muxing mode is configured for analog or is disabled, all the digital
functions on that pin are disabled. This includes the pullup and pulldown enables, output
buffer enable, input buffer enable, and passive filter enable.
The LK bit (bit 15 of Pin Control Register PCRn) allows the configuration for each pin to
be locked until the next system reset. When locked, writes to the lower half of that pin
control register are ignored, although a bus error is not generated on an attempted write to
a locked register.
The configuration of each Pin Control register is retained when the PORT module is
disabled.
Whenever a pin is configured in any digital pin muxing mode, the input buffer for that
pin is enabled allowing the pin state to be read via the corresponding GPIO Port Data
Input Register (GPIO_PDIR) or allowing a pin interrupt or DMA request to be generated.
If a pin is ever floating when its input buffer is enabled, then this can cause an increase in
power consumption and must be avoided. A pin can be floating due to an input pin that is
not connected or an output pin that has tri-stated (output buffer is disabled).
Enabling the internal pull resistor (or implementing an external pull resistor) will ensure a
pin does not float when its input buffer is enabled; note that the internal pull resistor is
automatically disabled whenever the output buffer is enabled allowing the Pull Enable bit
to remain set. Configuring the Pin Muxing mode to disabled or analog will disable the
pin’s input buffer and results in the lowest power consumption.
The global pin control registers are designed to enable software to quickly configure
multiple pins within the one port for the same peripheral function. However, the interrupt
functions cannot be configured using the global pin control registers.
The global pin control registers are write-only registers, that always read as 0.
The PORT module generates a single interrupt that asserts when the interrupt status flag
is set for any enabled interrupt for that port. The interrupt negates after the interrupt status
flags for all enabled interrupts have been cleared by writing a logic 1 to the ISF flag in
either the PORT_ISFR or PORT_PCRn registers.
The PORT module generates a single DMA request that asserts when the interrupt status
flag is set for any enabled DMA request in that port. The DMA request negates after the
DMA transfer is completed, because that clears the interrupt status flags for all enabled
DMA requests.
During Stop mode, the interrupt status flag for any enabled interrupt is asynchronously
set if the required level or edge is detected. This also generates an asynchronous wake-up
signal to exit the Low-Power mode.
NOTE
• In S32K14x, GPIO can only be accessed by the core
through the cross bar interface at 0x400F_F000.
13.2 Introduction
The general-purpose input and output (GPIO) module communicates to the processor
core via a zero wait state interface for maximum pin performance. The GPIO registers
support 8-bit, 16-bit or 32-bit accesses.
The GPIO data direction and output data registers control the direction and output data of
each pin when the pin is configured for the GPIO function. The GPIO input data register
displays the logic value on each pin when the pin is configured for any digital function,
provided the corresponding Port Control and Interrupt module for that pin is enabled.
13.2.1 Features
Features of the GPIO module include:
• Port Data Input register visible in all digital pin-multiplexing modes
• Port Data Output register with corresponding set/clear/toggle registers
• Port Data Direction register
NOTE
The GPIO module is clocked by system clock.
NOTE
Not all pins within each port are implemented on each device.
See the chapter on signal multiplexing for the number of GPIO
ports available in the device.
NOTE
Not all pins within each port are implemented on each device.
See the chapter on signal multiplexing for the number of GPIO
ports available in the device.
13.3.1.2.1 Offset
Register Offset
PDOR 0h
13.3.1.2.2 Function
This register configures the logic levels that are driven on each general-purpose output
pin.
NOTE
Do not modify pin configuration registers associated with pins
not available in your selected package. All unbonded pins not
available in your package will default to DISABLE state for
lowest power consumption.
13.3.1.2.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PDO
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PDO
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.2.4 Fields
Field Function
31-0 Port Data Output
PDO Register bits for unbonded pins return an undefined value when read.
0b - Logic level 0 is driven on pin, provided pin is configured for general-purpose output.
1b - Logic level 1 is driven on pin, provided pin is configured for general-purpose output.
13.3.1.3.1 Offset
Register Offset
PSOR 4h
13.3.1.3.2 Function
This register configures whether to set the fields of the PDOR.
13.3.1.3.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W PTSO
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
W PTSO
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.3.4 Fields
Field Function
31-0 Port Set Output
PTSO Writing to this register updates the contents of the corresponding bit in the PDOR as follows:
0b - Corresponding bit in PDORn does not change.
1b - Corresponding bit in PDORn is set to logic 1.
13.3.1.4.1 Offset
Register Offset
PCOR 8h
13.3.1.4.2 Function
This register configures whether to clear the fields of PDOR.
13.3.1.4.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W PTCO
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
W PTCO
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.4.4 Fields
Field Function
31-0 Port Clear Output
PTCO Writing to this register updates the contents of the corresponding bit in the Port Data Output Register
(PDOR) as follows:
0b - Corresponding bit in PDORn does not change.
1b - Corresponding bit in PDORn is cleared to logic 0.
13.3.1.5.1 Offset
Register Offset
PTOR Ch
13.3.1.5.2 Function
This register toggles the logic levels that are driven on each general-purpose output pin.
13.3.1.5.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W PTTO
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
W PTTO
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.5.4 Fields
Field Function
31-0 Port Toggle Output
PTTO Writing to this register updates the contents of the corresponding bit in the PDOR as follows:
0b - Corresponding bit in PDORn does not change.
1b - Corresponding bit in PDORn is set to the inverse of its existing logic state.
13.3.1.6.1 Offset
Register Offset
PDIR 10h
13.3.1.6.2 Function
This register captures the logic levels that are driven into each general-purpose input pin.
NOTE
Do not modify pin configuration registers associated with pins
not available in your selected package. All unbonded pins not
available in your package will default to DISABLE state for
lowest power consumption.
13.3.1.6.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R PDI
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R PDI
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.6.4 Fields
Field Function
31-0 Port Data Input
PDI Reads 0 at the unimplemented pins for a particular device. Pins that are not configured for a digital
function read 0. If the Port Control and Interrupt module is disabled, then the corresponding bit in PDIR
does not update.
0b - Pin logic level is logic 0, or is not configured for use by digital function.
1b - Pin logic level is logic 1.
13.3.1.7.1 Offset
Register Offset
PDDR 14h
13.3.1.7.2 Function
The PDDR configures the individual port pins for input or output.
13.3.1.7.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PDD
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PDD
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.7.4 Fields
Field Function
31-0 Port Data Direction
PDD Configures individual port pins for input or output.
0b - Pin is configured as general-purpose input, for the GPIO function. The pin will be high-Z if the
port input is disabled in GPIOx_PIDR register.
1b - Pin is configured as general-purpose output, for the GPIO function.
13.3.1.8.1 Offset
Register Offset
PIDR 18h
13.3.1.8.2 Function
This register disables each general-purpose pin from acting as an input.
13.3.1.8.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
PID
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13.3.1.8.4 Fields
Field Function
31-0 Port Input Disable
PID 0b - Pin is configured for General Purpose Input, provided the pin is configured for any digital
function.
1b - Pin is not configured as General Purpose Input. Corresponding Port Data Input Register bit will
read zero.
If Then
A pin is configured for the GPIO function and the The pin is configured as an input.
corresponding port data direction register bit is clear.
A pin is configured for the GPIO function and the The pin is configured as an output and the logic state of the
corresponding port data direction register bit is set. pin is equal to the corresponding port data output register.
To facilitate efficient bit manipulation on the general-purpose outputs, pin data set, pin
data clear, and pin data toggle registers exist to allow one or more outputs within one port
to be set, cleared, or toggled from a single register write.
The corresponding Port Control and Interrupt module does not need to be enabled to
update the state of the port data direction registers and port data output registers including
the set/clear/toggle registers.
1. Priority in fixed-priority mode. MCM controls mode selection for global slave port arbitration. For fixed priority, set
MCM_CPCR[CBRR] to 0. For round robin, set MCM_CPCR[CBRR] to 1. The arbitration setting applies to all slave ports.
NOTE
For configuring the bit field MCM_CPCR[CBRR], see the note
present in the CBRR.
14.2 Introduction
The information found here provides information on the layout, configuration, and
programming of the crossbar switch.
The crossbar switch connects bus masters and bus slaves using a crossbar switch
structure. This structure allows up to four bus masters to access different bus slaves
simultaneously, while providing arbitration among the bus masters when they access the
same slave.
14.2.1 Features
The crossbar switch includes these features:
• Symmetric crossbar bus switch implementation
• Allows concurrent accesses from different masters to different slaves
• Up to single-clock 32-bit transfer
• Programmable configuration for fixed-priority or round-robin slave port arbitration
(see the chip-specific information).
14.3.2 Arbitration
The crossbar switch supports two arbitration algorithms:
• Fixed priority
• Round-robin
The selection of the global slave port arbitration algorithm is described in the crossbar
switch chip-specific information.
15.2 Introduction
The memory protection unit (MPU) provides hardware access control for all memory
references generated in the device.
15.3 Overview
The MPU concurrently monitors all system bus transactions and evaluates their
appropriateness using pre-programmed region descriptors that define memory spaces and
their access rights. Memory references that have sufficient access control rights are
allowed to complete, while references that are not mapped to any region descriptor or
have insufficient rights are terminated with a protection error response.
Access Region
Evaluation
Descriptor 0
Macro
Access Region
Evaluation
Descriptor 1
Macro
Access Region
Evaluation
Descriptor x
Macro
MPU_EARn MPU_EDRn
Mux
The hardware's two-dimensional connection matrix is clearly visible with the basic access
evaluation macro shown as the replicated submodule block. The crossbar switch slave
ports are shown on the left, the region descriptor registers in the middle, and the
peripheral bus interface on the right side. The evaluation macro contains two magnitude
comparators connected to the start and end address registers from each region descriptor
as well as the combinational logic blocks to determine the region hit and the access
protection error. For details of the access evaluation macro, see Access evaluation macro.
15.3.2 Features
The MPU implements a two-dimensional hardware array of memory region descriptors
and the crossbar slave ports to continuously monitor the legality of every memory
reference generated by each bus master in the system.
The feature set includes:
• 16 program-visible 128-bit region descriptors, accessible by four 32-bit words each
• Each region descriptor defines a modulo-32 byte space, aligned anywhere in
memory
• Region sizes can vary from 32 bytes to 4 Gbytes
• Two access control permissions defined in a single descriptor word
• Masters 0–3: read, write, and execute attributes for supervisor and user
accesses
• Masters 4–7: read and write attributes
• Hardware-assisted maintenance of the descriptor valid bit minimizes coherency
issues
• Alternate programming model view of the access control permissions word
• Priority given to granting permission over denying access for overlapping region
descriptors
• Detects access protection errors if a memory reference does not hit in any memory
region, or if the reference is illegal in all hit memory regions. If an access error
occurs, the reference is terminated with an error response, and the MPU inhibits the
bus cycle being sent to the targeted slave device.
• Error registers, per slave port, capture the last faulting address, attributes, and other
information
• Global MPU enable/disable control bit
15.4.2.1 Offset
Register Offset
CESR 0h
15.4.2.2 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
W1C SPERR
W1C SPERR
W1C SPERR
W1C SPERR
W1C SPERR
HRL
R
0
0
0
Reset 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R NSP NRGD 0
VLD
W
Reset 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 1
15.4.2.3 Fields
Field Function
31 Slave Port 0 Error
SPERR0 Indicates a captured error in EAR0 and EDR0. This bit is set when the hardware detects an error and
records the faulting address and attributes. It is cleared by writing one to it. If another error is captured at
the exact same cycle as the write, the flag remains set. A find-first-one instruction or equivalent can
detect the presence of a captured error.
0b - No error has occurred for slave port 0.
Table continues on the next page...
Field Function
1b - An error has occurred for slave port 0.
30 Slave Port 1 Error
SPERR1 Indicates a captured error in EAR1 and EDR1. This bit is set when the hardware detects an error and
records the faulting address and attributes. It is cleared by writing one to it. If another error is captured at
the exact same cycle as the write, the flag remains set. A find-first-one instruction or equivalent can
detect the presence of a captured error.
0b - No error has occurred for slave port 1.
1b - An error has occurred for slave port 1.
29 Slave Port 2 Error
SPERR2 Indicates a captured error in EAR2 and EDR2. This bit is set when the hardware detects an error and
records the faulting address and attributes. It is cleared by writing one to it. If another error is captured at
the exact same cycle as the write, the flag remains set. A find-first-one instruction or equivalent can
detect the presence of a captured error.
0b - No error has occurred for slave port 2.
1b - An error has occurred for slave port 2.
28 Slave Port 3 Error
SPERR3 Indicates a captured error in EAR3 and EDR3. This bit is set when the hardware detects an error and
records the faulting address and attributes. It is cleared by writing one to it. If another error is captured at
the exact same cycle as the write, the flag remains set. A find-first-one instruction or equivalent can
detect the presence of a captured error.
0b - No error has occurred for slave port 3.
1b - An error has occurred for slave port 3.
27 Slave Port 4 Error
SPERR4 Indicates a captured error in EAR4 and EDR4. This bit is set when the hardware detects an error and
records the faulting address and attributes. It is cleared by writing one to it. If another error is captured at
the exact same cycle as the write, the flag remains set. A find-first-one instruction or equivalent can
detect the presence of a captured error.
0b - No error has occurred for slave port 4.
1b - An error has occurred for slave port 4.
26 Reserved
—
25 Reserved
—
24 Reserved
—
23 Reserved
—
22-20 Reserved
—
19-16 Hardware Revision Level
HRL Specifies the MPU’s hardware and definition revision level. It can be read by software to determine the
functional definition of the module.
15-12 Number Of Slave Ports
NSP Specifies the number of slave ports connected to the MPU.
11-8 Number Of Region Descriptors
Table continues on the next page...
Field Function
NRGD Indicates the number of region descriptors implemented in the MPU.
0000b - 8 region descriptors
0001b - 12 region descriptors
0010b - 16 region descriptors
7-1 Reserved
—
0 Valid
VLD Global enable/disable for the MPU.
0b - MPU is disabled. All accesses from all bus masters are allowed.
1b - MPU is enabled
15.4.3.1 Offset
Register Offset
EAR0 10h
EAR1 18h
EAR2 20h
EAR3 28h
EAR4 30h
15.4.3.2 Function
When the MPU detects an access error on slave port n, the 32-bit reference address is
captured in this read-only register and the corresponding bit in CESR[SPERRn] is set.
Additional information about the faulting access is captured in the corresponding EDRn
at the same time. This register and the corresponding EDRn contain the most recent
access error; there are no hardware interlocks with CESR[SPERRn], as the error registers
are always loaded upon the occurrence of each protection violation.
15.4.3.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R EADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R EADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15.4.3.4 Fields
Field Function
31-0 Error Address
EADDR Indicates the reference address from slave port n that generated the access error
15.4.4.1 Offset
Register Offset
EDR0 14h
EDR1 1Ch
EDR2 24h
EDR3 2Ch
EDR4 34h
15.4.4.2 Function
When the MPU detects an access error on slave port n, 32 bits of error detail are captured
in this read-only register and the corresponding bit in CESR[SPERRn] is set. Information
on the faulting address is captured in the corresponding EARn register at the same time.
This register and the corresponding EARn register contain the most recent access error;
S32K1xx Series Reference Manual, Rev. 11, 06/2019
NXP Semiconductors 245
MPU register descriptions
there are no hardware interlocks with CESR[SPERRn] as the error registers are always
loaded upon the occurrence of each protection violation.
15.4.4.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R EACD
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
15.4.4.4 Fields
Field Function
31-16 Error Access Control Detail
EACD Indicates the region descriptor with the access error.
• If EDRn contains a captured error and EACD is cleared, an access did not hit in any region
descriptor.
• If only a single EACD bit is set, the protection error was caused by a single non-overlapping region
descriptor.
• If two or more EACD bits are set, the protection error was caused by an overlapping set of region
descriptors.
15-8 Error Process Identification
EPID Records the process identifier of the faulting reference. The process identifier is typically driven only by
processor cores; for other bus masters, this field is cleared.
7-4 Error Master Number
EMN Indicates the bus master that generated the access error.
3-1 Error Attributes
EATTR Indicates attribute information about the faulting reference.
NOTE: All other encodings are reserved.
000b - User mode, instruction access
001b - User mode, data access
010b - Supervisor mode, instruction access
011b - Supervisor mode, data access
0 Error Read/Write
ERW Indicates the access type of the faulting reference.
0b - Read
1b - Write
15.4.5.1 Offset
For n = 0 to 15:
Register Offset
RGDn_WORD0 400h + (n × 10h)
15.4.5.2 Function
The first word of the region descriptor defines the 0-modulo-32 byte start address of the
memory region. Writes to this register clear the region descriptor’s valid bit
(RGDn_WORD3[VLD]).
15.4.5.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
SRTADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
SRTADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15.4.5.4 Fields
Field Function
31-5 Start Address
SRTADDR Defines the most significant bits of the 0-modulo-32 byte start address of the memory region.
4-0 Reserved
—
15.4.6.1 Offset
Register Offset
RGD0_WORD1 404h
15.4.6.2 Function
The second word of the region descriptor defines the 31-modulo-32 byte end address of
the memory region. Writes to this register clear the region descriptor’s valid bit
(RGDn_WORD3[VLD]).
15.4.6.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
ENDADDR
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
ENDADDR
W
Reset 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
15.4.6.4 Fields
Field Function
31-5 End Address
ENDADDR Defines the most significant bits of the 31-modulo-32 byte end address of the memory region.
NOTE: The MPU does not verify that ENDADDR ≥ SRTADDR.
4-0 Reserved
—
15.4.7.1 Offset
Register Offset
RGD0_WORD2 408h
15.4.7.2 Function
The third word of the region descriptor defines the access control rights of the memory
region. The access control privileges depend on two broad classifications of bus masters:
• Bus masters 0–3 have a 5-bit field defining separate privilege rights for user and
supervisor mode accesses. Each of these bus masters optionally includes a process
identification field (if implemented for the master) within the definition.
• Bus masters 4–7 are limited to separate read and write permissions.
For the privilege rights of bus masters 0–3, there are three flags associated with this
function:
• Read (r) refers to accessing the referenced memory address using an operand (data)
fetch
• Write (w) refers to updating the referenced memory address using a store (data)
instruction
• Execute (x) refers to reading the referenced memory address using an instruction
fetch
Writes to RGDn_WORD2 clear the region descriptor’s valid bit
(RGDn_WORD3[VLD]). If only updating the access controls, write to RGDAACn
instead because stores to these locations do not affect the descriptor’s valid bit.
15.4.7.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserved
Reserved
M7WE
M6WE
M5WE
M4WE
M7RE
M6RE
M5RE
M4RE
M3SM
M2SM
M3UM
W
Reset 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
M2SM
M1PE
M1SM
M0PE
M0SM
M2UM
M1UM
M0UM
W
Reset 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1
15.4.7.4 Fields
Field Function
31 Bus Master 7 Read Enable
0b - Bus master 7 reads terminate with an access error and the read is not performed
M7RE
1b - Bus master 7 reads allowed
30 Bus Master 7 Write Enable
0b - Bus master 7 writes terminate with an access error and the write is not performed
M7WE
1b - Bus master 7 writes allowed
29 Bus Master 6 Read Enable
0b - Bus master 6 reads terminate with an access error and the read is not performed
M6RE
1b - Bus master 6 reads allowed
28 Bus Master 6 Write Enable
0b - Bus master 6 writes terminate with an access error and the write is not performed
M6WE
1b - Bus master 6 writes allowed
27 Bus Master 5 Read Enable
0b - Bus master 5 reads terminate with an access error and the read is not performed
M5RE
1b - Bus master 5 reads allowed
26 Bus Master 5 Write Enable
0b - Bus master 5 writes terminate with an access error and the write is not performed
M5WE
1b - Bus master 5 writes allowed
25 Bus Master 4 Read Enable
0b - Bus master 4 reads terminate with an access error and the read is not performed
M4RE
1b - Bus master 4 reads allowed
24 Bus Master 4 Write Enable
0b - Bus master 4 writes terminate with an access error and the write is not performed
M4WE
1b - Bus master 4 writes allowed
23 Reserved
— This bit must be written with a zero.
22-21 Bus Master 3 Supervisor Mode Access Control
Table continues on the next page...
Field Function
M3SM Defines the access controls for bus master 3 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M3UM
20-18 Bus Master 3 User Mode Access Control
M3UM Defines the access controls for bus master 3 in User mode. M3UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M3UM[2:0]: M3UM[2] controls read
permissions, M3UM[1] controls write permissions, and M3UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
17 Reserved
— This bit must be written with a zero.
16-15 Bus Master 2 Supervisor Mode Access Control
M2SM Defines the access controls for bus master 2 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M2UM
14-12 Bus Master 2 User Mode Access control
M2UM Defines the access controls for bus master 2 in User mode. M2UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M2UM[2:0]: M2UM[2] controls read
permissions, M2UM[1] controls write permissions, and M2UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
11 Bus Master 1 Process Identifier enable
0b - Do not include the process identifier in the evaluation
M1PE
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
10-9 Bus Master 1 Supervisor Mode Access Control
M1SM Defines the access controls for bus master 1 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M1UM
8-6 Bus Master 1 User Mode Access Control
M1UM Defines the access controls for bus master 1 in User mode. M1UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M1UM[2:0]: M1UM[2] controls read
permissions, M1UM[1] controls write permissions, and M1UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
5 Bus Master 0 Process Identifier enable
0b - Do not include the process identifier in the evaluation
M0PE
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
4-3 Bus Master 0 Supervisor Mode Access Control
Table continues on the next page...
Field Function
M0SM Defines the access controls for bus master 0 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M0UM
2-0 Bus Master 0 User Mode Access Control
M0UM Defines the access controls for bus master 0 in User mode. M0UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M0UM[2:0]: M0UM[2] controls read
permissions, M0UM[1] controls write permissions, and M0UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
15.4.8.1 Offset
Register Offset
RGD0_WORD3 40Ch
15.4.8.2 Function
The fourth word of the region descriptor contains the optional process identifier and
mask, plus the region descriptor’s valid bit.
15.4.8.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PID PIDMASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
VLD
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
15.4.8.4 Fields
Field Function
31-24 Process Identifier
PID Specifies the process identifier that is included in the region hit determination if RGDn_WORD2[MxPE] is
set. PIDMASK can mask individual bits in this field.
23-16 Process Identifier Mask
PIDMASK Provides a masking capability so that multiple process identifiers can be included as part of the region hit
determination. If a bit in PIDMASK is set, then the corresponding PID bit is ignored in the comparison.
This field and PID are included in the region hit determination if RGDn_WORD2[MxPE] is set. For more
information on the handling of the PID and PIDMASK, see “Access Evaluation - Hit Determination.”
15-1 Reserved
—
0 Valid
VLD Signals the region descriptor is valid. Any write to RGDn_WORD0–2 clears this bit.
0b - Region descriptor is invalid
1b - Region descriptor is valid
15.4.9.1 Offset
For n = 1 to 15:
Register Offset
RGDn_WORD1 404h + (n × 10h)
15.4.9.2 Function
The second word of the region descriptor defines the 31-modulo-32 byte end address of
the memory region. Writes to this register clear the region descriptor’s valid bit
(RGDn_WORD3[VLD]).
15.4.9.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
ENDADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R Reserved
ENDADDR
W
Reset 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1
15.4.9.4 Fields
Field Function
31-5 End Address
ENDADDR Defines the most significant bits of the 31-modulo-32 byte end address of the memory region.
NOTE: The MPU does not verify that ENDADDR ≥ SRTADDR.
4-0 Reserved
—
15.4.10.1 Offset
For n = 1 to 15:
Register Offset
RGDn_WORD2 408h + (n × 10h)
15.4.10.2 Function
The third word of the region descriptor defines the access control rights of the memory
region. The access control privileges depend on two broad classifications of bus masters:
• Bus masters 0–3 have a 5-bit field defining separate privilege rights for user and
supervisor mode accesses. Each of these bus masters optionally includes a process
identification field (if implemented for the master) within the definition.
• Bus masters 4–7 are limited to separate read and write permissions.
For the privilege rights of bus masters 0–3, there are three flags associated with this
function:
• Read (r) refers to accessing the referenced memory address using an operand (data)
fetch
• Write (w) refers to updating the referenced memory address using a store (data)
instruction
• Execute (x) refers to reading the referenced memory address using an instruction
fetch
Writes to RGDn_WORD2 clear the region descriptor’s valid bit
(RGDn_WORD3[VLD]). If only updating the access controls, write to RGDAACn
instead because stores to these locations do not affect the descriptor’s valid bit.
15.4.10.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
Reserved
Reserved
M7WE
M6WE
M5WE
M4WE
M7RE
M6RE
M5RE
M4RE
M3SM
M2SM
M3UM
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
M2SM
M1PE
M1SM
M0PE
M0SM
M2UM
M1UM
M0UM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15.4.10.4 Fields
Field Function
31 Bus Master 7 Read Enable
0b - Bus master 7 reads terminate with an access error and the read is not performed
M7RE
1b - Bus master 7 reads allowed
30 Bus Master 7 Write Enable
0b - Bus master 7 writes terminate with an access error and the write is not performed
M7WE
1b - Bus master 7 writes allowed
29 Bus Master 6 Read Enable
0b - Bus master 6 reads terminate with an access error and the read is not performed
M6RE
1b - Bus master 6 reads allowed
28 Bus Master 6 Write Enable
0b - Bus master 6 writes terminate with an access error and the write is not performed
M6WE
1b - Bus master 6 writes allowed
27 Bus Master 5 Read Enable
0b - Bus master 5 reads terminate with an access error and the read is not performed
M5RE
1b - Bus master 5 reads allowed
26 Bus Master 5 Write Enable
0b - Bus master 5 writes terminate with an access error and the write is not performed
M5WE
1b - Bus master 5 writes allowed
25 Bus Master 4 Read Enable
0b - Bus master 4 reads terminate with an access error and the read is not performed
M4RE
1b - Bus master 4 reads allowed
24 Bus Master 4 Write Enable
0b - Bus master 4 writes terminate with an access error and the write is not performed
M4WE
1b - Bus master 4 writes allowed
23 Reserved
— This bit must be written with a zero.
22-21 Bus Master 3 Supervisor Mode Access Control
M3SM Defines the access controls for bus master 3 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M3UM
20-18 Bus Master 3 User Mode Access Control
M3UM Defines the access controls for bus master 3 in User mode. M3UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M3UM[2:0]: M3UM[2] controls read
permissions, M3UM[1] controls write permissions, and M3UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
17 Reserved
— This bit must be written with a zero.
16-15 Bus Master 2 Supervisor Mode Access Control
M2SM Defines the access controls for bus master 2 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
Table continues on the next page...
Field Function
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M2UM
14-12 Bus Master 2 User Mode Access control
M2UM Defines the access controls for bus master 2 in User mode. M2UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M2UM[2:0]: M2UM[2] controls read
permissions, M2UM[1] controls write permissions, and M2UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
11 Bus Master 1 Process Identifier enable
0b - Do not include the process identifier in the evaluation
M1PE
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
10-9 Bus Master 1 Supervisor Mode Access Control
M1SM Defines the access controls for bus master 1 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M1UM
8-6 Bus Master 1 User Mode Access Control
M1UM Defines the access controls for bus master 1 in User mode. M1UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M1UM[2:0]: M1UM[2] controls read
permissions, M1UM[1] controls write permissions, and M1UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
5 Bus Master 0 Process Identifier enable
0b - Do not include the process identifier in the evaluation
M0PE
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
4-3 Bus Master 0 Supervisor Mode Access Control
M0SM Defines the access controls for bus master 0 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M0UM
2-0 Bus Master 0 User Mode Access Control
M0UM Defines the access controls for bus master 0 in User mode. M0UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M0UM[2:0]: M0UM[2] controls read
permissions, M0UM[1] controls write permissions, and M0UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
15.4.11.1 Offset
For n = 1 to 15:
Register Offset
RGDn_WORD3 40Ch + (n × 10h)
15.4.11.2 Function
The fourth word of the region descriptor contains the optional process identifier and
mask, plus the region descriptor’s valid bit.
15.4.11.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
PID PIDMASK
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0
VLD
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15.4.11.4 Fields
Field Function
31-24 Process Identifier
PID Specifies the process identifier that is included in the region hit determination if RGDn_WORD2[MxPE] is
set. PIDMASK can mask individual bits in this field.
23-16 Process Identifier Mask
PIDMASK Provides a masking capability so that multiple process identifiers can be included as part of the region hit
determination. If a bit in PIDMASK is set, then the corresponding PID bit is ignored in the comparison.
Table continues on the next page...
Field Function
This field and PID are included in the region hit determination if RGDn_WORD2[MxPE] is set. For more
information on the handling of the PID and PIDMASK, see “Access Evaluation - Hit Determination.”
15-1 Reserved
—
0 Valid
VLD Signals the region descriptor is valid. Any write to RGDn_WORD0–2 clears this bit.
0b - Region descriptor is invalid
1b - Region descriptor is valid
15.4.12.1 Offset
Register Offset
RGDAAC0 800h
15.4.12.2 Function
Because software may adjust only the access controls within a region descriptor
(RGDn_WORD2) as different tasks execute, an alternate programming view of this 32-
bit entity is available. Writing to this register does not affect the descriptor’s valid bit.
15.4.12.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserved
Reserved
M7WE
M6WE
M5WE
M4WE
M7RE
M6RE
M5RE
M4RE
M3SM
M2SM
M3UM
W
Reset
0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1
1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
M2SM
M1PE
M1SM
M0PE
M0SM
M2UM
M1UM
M0UM
W
Reset 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1
15.4.12.4 Fields
Field Function
31 Bus Master 7 Read Enable
0b - Bus master 7 reads terminate with an access error and the read is not performed
M7RE
1b - Bus master 7 reads allowed
30 Bus Master 7 Write Enable
0b - Bus master 7 writes terminate with an access error and the write is not performed
M7WE
1b - Bus master 7 writes allowed
29 Bus Master 6 Read Enable
0b - Bus master 6 reads terminate with an access error and the read is not performed
M6RE
1b - Bus master 6 reads allowed
28 Bus Master 6 Write Enable
0b - Bus master 6 writes terminate with an access error and the write is not performed
M6WE
1b - Bus master 6 writes allowed
27 Bus Master 5 Read Enable
0b - Bus master 5 reads terminate with an access error and the read is not performed
M5RE
1b - Bus master 5 reads allowed
26 Bus Master 5 Write Enable
0b - Bus master 5 writes terminate with an access error and the write is not performed
M5WE
1b - Bus master 5 writes allowed
25 Bus Master 4 Read Enable
0b - Bus master 4 reads terminate with an access error and the read is not performed
M4RE
1b - Bus master 4 reads allowed
24 Bus Master 4 Write Enable
0b - Bus master 4 writes terminate with an access error and the write is not performed
M4WE
1b - Bus master 4 writes allowed
23 Reserved
— This bit must be written with a zero.
Field Function
22-21 Bus Master 3 Supervisor Mode Access Control
M3SM Defines the access controls for bus master 3 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M3UM
20-18 Bus Master 3 User Mode Access Control
M3UM Defines the access controls for bus master 3 in User mode. M3UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M3UM[2:0]: M3UM[2] controls read
permissions, M3UM[1] controls write permissions, and M3UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
17 Reserved
— This bit must be written with a zero.
16-15 Bus Master 2 Supervisor Mode Access Control
M2SM Defines the access controls for bus master 2 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M2UM
14-12 Bus Master 2 User Mode Access Control
M2UM Defines the access controls for bus master 2 in User mode. M2UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M2UM[2:0]: M2UM[2] controls read
permissions, M2UM[1] controls write permissions, and M2UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
11 Bus Master 1 Process Identifier Enable
M1PE NOTE: For RGDAAC0: Only bus master 1 can write to M1PE.
0b - Do not include the process identifier in the evaluation
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
10-9 Bus Master 1 Supervisor Mode Access Control
M1SM Defines the access controls for bus master 1 in Supervisor mode.
Field Function
1b - Allows the given access type to occur
5 Bus Master 0 Process Identifier Enable
0b - Do not include the process identifier in the evaluation
M0PE
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
4-3 Bus Master 0 Supervisor Mode Access Control
M0SM Defines the access controls for bus master 0 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M0UM
2-0 Bus Master 0 User Mode Access Control
M0UM Defines the access controls for bus master 0 in User mode. M0UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M0UM[2:0]: M0UM[2] controls read
permissions, M0UM[1] controls write permissions, and M0UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
15.4.13.1 Offset
For n = 1 to 15:
Register Offset
RGDAACn 800h + (n × 4h)
15.4.13.2 Function
Because software may adjust only the access controls within a region descriptor
(RGDn_WORD2) as different tasks execute, an alternate programming view of this 32-
bit entity is available. Writing to this register does not affect the descriptor’s valid bit.
15.4.13.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserved
Reserved
M7WE
M6WE
M5WE
M4WE
M7RE
M6RE
M5RE
M4RE
M3SM
M2SM
M3UM
W
Reset
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
M2SM
M1PE
M1SM
M0PE
M0SM
M2UM
M1UM
M0UM
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15.4.13.4 Fields
Field Function
31 Bus Master 7 Read Enable
0b - Bus master 7 reads terminate with an access error and the read is not performed
M7RE
1b - Bus master 7 reads allowed
30 Bus Master 7 Write Enable
0b - Bus master 7 writes terminate with an access error and the write is not performed
M7WE
1b - Bus master 7 writes allowed
29 Bus Master 6 Read Enable
0b - Bus master 6 reads terminate with an access error and the read is not performed
M6RE
1b - Bus master 6 reads allowed
28 Bus Master 6 Write Enable
0b - Bus master 6 writes terminate with an access error and the write is not performed
M6WE
1b - Bus master 6 writes allowed
27 Bus Master 5 Read Enable
0b - Bus master 5 reads terminate with an access error and the read is not performed
M5RE
1b - Bus master 5 reads allowed
26 Bus Master 5 Write Enable
0b - Bus master 5 writes terminate with an access error and the write is not performed
M5WE
1b - Bus master 5 writes allowed
25 Bus Master 4 Read Enable
0b - Bus master 4 reads terminate with an access error and the read is not performed
M4RE
1b - Bus master 4 reads allowed
24 Bus Master 4 Write Enable
0b - Bus master 4 writes terminate with an access error and the write is not performed
M4WE
1b - Bus master 4 writes allowed
23 Reserved
— This bit must be written with a zero.
Field Function
22-21 Bus Master 3 Supervisor Mode Access Control
M3SM Defines the access controls for bus master 3 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M3UM
20-18 Bus Master 3 User Mode Access Control
M3UM Defines the access controls for bus master 3 in User mode. M3UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M3UM[2:0]: M3UM[2] controls read
permissions, M3UM[1] controls write permissions, and M3UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
17 Reserved
— This bit must be written with a zero.
16-15 Bus Master 2 Supervisor Mode Access Control
M2SM Defines the access controls for bus master 2 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M2UM
14-12 Bus Master 2 User Mode Access Control
M2UM Defines the access controls for bus master 2 in User mode. M2UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M2UM[2:0]: M2UM[2] controls read
permissions, M2UM[1] controls write permissions, and M2UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
11 Bus Master 1 Process Identifier Enable
M1PE NOTE: For RGDAAC0: Only bus master 1 can write to M1PE.
0b - Do not include the process identifier in the evaluation
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
10-9 Bus Master 1 Supervisor Mode Access Control
M1SM Defines the access controls for bus master 1 in Supervisor mode.
Field Function
1b - Allows the given access type to occur
5 Bus Master 0 Process Identifier Enable
0b - Do not include the process identifier in the evaluation
M0PE
1b - Include the process identifier and mask (RGDn.RGDAAC) in the region hit evaluation
4-3 Bus Master 0 Supervisor Mode Access Control
M0SM Defines the access controls for bus master 0 in Supervisor mode.
00b - r/w/x; read, write and execute allowed
01b - r/x; read and execute allowed, but no write
10b - r/w; read and write allowed, but no execute
11b - Same as User mode defined in M0UM
2-0 Bus Master 0 User Mode Access Control
M0UM Defines the access controls for bus master 0 in User mode. M0UM consists of three independent bits,
enabling read (r), write (w), and execute (x) permissions. In M0UM[2:0]: M0UM[2] controls read
permissions, M0UM[1] controls write permissions, and M0UM[0] controls execute permissions. For each
bit:
0b - An attempted access of that mode may be terminated with an access error (if not allowed by
another descriptor) and the access not performed
1b - Allows the given access type to occur
≥ ≤
hit_b error
≥ ≥
where the current_pid is the selected process identifier from the current bus master, and
RGDn_Word3[PID] and RGDn_Word3[PIDMASK] are the process identifier fields from
region descriptor n. For bus masters that do not output a process identifier, the MPU
forces the pid_hit term to assert.
As shown in the third condition, granting permission is a higher priority than denying
access for overlapping regions. This approach is more flexible to system software in
region descriptor assignments. For an example of the use of overlapping region
descriptors, see Application information.
In this example, there are eight descriptors used to span nine regions in the three main
spaces of the system memory map: flash, RAM, and peripheral space. Each region
indicates the specific permissions for each of the four bus masters and this definition
provides an appropriate set of shared, private and executable memory spaces.
Of particular interest are the two overlapping spaces: region descriptors 2 & 3 and 3 & 4.
The space defined by RGD2 with no overlap is a private data and stack area that provides
read/write access to CP0 only. The overlapping space between RGD2 and RGD3 defines
a shared data space for passing data from CP0 to CP1 and the access controls are defined
by the logical OR of the two region descriptors. Thus, CP0 has (rw- | r--) = (rw-)
permissions, while CP1 has (--- | r--) = (r--) permission in this space. Both DMA engines
are excluded from this shared processor data region. The overlapping spaces between
RGD3 and RGD4 defines another shared data space, this one for passing data from CP1
to CP0. For this overlapping space, CP0 has (r-- | ---) = (r--) permission, while CP1 has
(rw- | r--) = (rw-) permission. The non-overlapped space of RGD4 defines a private data
and stack area for CP1 only.
The space defined by RGD5 is a shared data region, accessible by all four bus masters.
Finally, the slave peripheral space mapped onto the IPS bus is partitioned into two
regions:
• One containing the MPU's programming model accessible only to the two processor
cores
• The remaining peripheral region accessible to both processors and the traditional
DMA1 master
This example shows one possible application of the capabilities of the MPU in a typical
system.
16.2 Introduction
The peripheral bridge converts the crossbar switch interface to an interface that can
access most of the slave peripherals on this chip.
The peripheral bridge occupies 64 MB of the address space, which is divided into
peripheral slots of 4 KB. (It might be possible that all the peripheral slots are not used.
See the memory map chapter for details on slot assignments.) The bridge includes
separate clock enable inputs for each of the slots to accommodate slower peripherals.
16.2.1 Features
Key features of the peripheral bridge are:
• Supports peripheral slots with 8-, 16-, and 32-bit datapath width
• Programming model provides memory protection functionality
16.3.1.2.1 Offset
Register Offset
MPRA 0h
16.3.1.2.2 Function
The MPRA specifies identical 4-bit fields defining the access-privilege level associated
with a bus master to various peripherals on the chip. The register provides one field per
bus master.
A register field that maps to an unimplemented master or peripheral behaves as read-
only-zero.
Each master is assigned a logical ID from 0 to 15. See the master logical ID assignment
table in the chip-specific AIPS information.
16.3.1.2.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R
0
0
MTW0
MTW1
MTW2
MTW3
MTR0
MTR1
MTR2
MTR3
MPL0
MPL1
MPL2
MPL3
W
Reset 0 0 1 0 1 1 0 0 0 0 1 1 0 1 1 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
Reserved Reserved Reserved Reserved
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
16.3.1.2.4 Fields
Field Function
31 Reserved
—
30 Master 0 Trusted For Read
MTR0 Determines whether the master is trusted for read accesses.
0b - This master is not trusted for read accesses.
1b - This master is trusted for read accesses.
29 Master 0 Trusted For Writes
MTW0 Determines whether the master is trusted for write accesses.
0b - This master is not trusted for write accesses.
1b - This master is trusted for write accesses.
28 Master 0 Privilege Level
MPL0 Specifies how the privilege level of the master is determined.
0b - Accesses from this master are forced to user-mode.
1b - Accesses from this master are not forced to user-mode.
27 Reserved
—
26 Master 1 Trusted for Read
MTR1 Determines whether the master is trusted for read accesses.
0b - This master is not trusted for read accesses.
1b - This master is trusted for read accesses.
25 Master 1 Trusted for Writes
MTW1 Determines whether the master is trusted for write accesses.
0b - This master is not trusted for write accesses.
1b - This master is trusted for write accesses.
24 Master 1 Privilege Level
MPL1 Specifies how the privilege level of the master is determined.
0b - Accesses from this master are forced to user-mode.
1b - Accesses from this master are not forced to user-mode.
Field Function
23 Reserved
—
22 Master 2 Trusted For Read
MTR2 Determines whether the master is trusted for read accesses.
0b - This master is not trusted for read accesses.
1b - This master is trusted for read accesses.
21 Master 2 Trusted For Writes
MTW2 Determines whether the master is trusted for write accesses.
0b - This master is not trusted for write accesses.
1b - This master is trusted for write accesses.
20 Master 2 Privilege Level
MPL2 Specifies how the privilege level of the master is determined.
0b - Accesses from this master are forced to user-mode.
1b - Accesses from this master are not forced to user-mode.
19 Reserved
—
18 Master 3 Trusted For Read
MTR3 Determines whether the master is trusted for read accesses.
0b - This master is not trusted for read accesses.
1b - This master is trusted for read accesses.
17 Master 3 Trusted For Writes
MTW3 Determines whether the master is trusted for write accesses.
0b - This master is not trusted for write accesses.
1b - This master is trusted for write accesses.
16 Master 3 Privilege Level
MPL3 Specifies how the privilege level of the master is determined.
0b - Accesses from this master are forced to user-mode.
1b - Accesses from this master are not forced to user-mode.
15 Reserved
—
14-12 Reserved
—
11 Reserved
—
10-8 Reserved
—
7 Reserved
—
6-4 Reserved
—
3 Reserved
—
2-0 Reserved
Field Function
—
16.3.1.3.1 Offset
Register Offset
PACRA 20h
16.3.1.3.2 Function
Each PACR register consists of eight 4-bit PACR fields. Each PACR field defines the
access levels for a particular on-platform peripheral. The peripheral assignment to each
PACR field is defined by the memory map slot of the peripheral. See the chip-specific
AIPS information for the field assignment of a particular peripheral.
Every PACR field to which no peripheral is assigned is reserved. Reads to reserved
locations return zeros, and writes are ignored.
16.3.1.3.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1
W
Reset 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
16.3.1.3.4 Fields
Field Function
31 Reserved
Table continues on the next page...
Field Function
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19-16 Reserved
—
15-12 Reserved
—
11-8 Reserved
Table continues on the next page...
Field Function
—
7-4 Reserved
—
3-0 Reserved
—
16.3.1.4.1 Offset
Register Offset
PACRB 24h
16.3.1.4.2 Function
Each PACR register consists of eight 4-bit PACR fields. Each PACR field defines the
access levels for a particular on-platform peripheral. The peripheral assignment to each
PACR field is defined by the memory map slot of the peripheral. See the chip-specific
AIPS information for the field assignment of a particular peripheral.
Every PACR field to which no peripheral is assigned is reserved. Reads to reserved
locations return zeros, and writes are ignored.
16.3.1.4.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1
W
Reset 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP5 WP5 TP5
W
Reset 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
16.3.1.4.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19-16 Reserved
—
15-12 Reserved
Table continues on the next page...
Field Function
—
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7-4 Reserved
—
3-0 Reserved
—
16.3.1.5.1 Offset
Register Offset
PACRD 2Ch
16.3.1.5.2 Function
Each PACR register consists of eight 4-bit PACR fields. Each PACR field defines the
access levels for a particular on-platform peripheral. The peripheral assignment to each
PACR field is defined by the memory map slot of the peripheral. See the chip-specific
AIPS information for the field assignment of a particular peripheral.
16.3.1.5.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1
W
Reset 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
16.3.1.5.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
26 Supervisor Protect
SP1
Table continues on the next page...
Field Function
Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19-16 Reserved
—
15-12 Reserved
—
11-8 Reserved
—
7-4 Reserved
—
3-0 Reserved
—
16.3.1.6.1 Offset
Register Offset
OPACRA 40h
16.3.1.6.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.6.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1
W
Reset 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP4 WP4 TP4 SP5 WP5 TP5 SP6 WP6 TP6 SP7 WP7 TP7
W
Reset 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0
16.3.1.6.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
Field Function
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19-16 Reserved
—
15 Reserved
—
14 Supervisor Protect
SP4 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
13 Write Protect
WP4 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
12 Trusted Protect
TP4 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
11 Reserved
—
10 Supervisor Protect
SP5
Table continues on the next page...
Field Function
Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3 Reserved
—
2 Supervisor Protect
SP7 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
1 Write Protect
WP7
Table continues on the next page...
Field Function
Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
0 Trusted Protect
TP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
16.3.1.7.1 Offset
Register Offset
OPACRB 44h
16.3.1.7.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.7.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP3 WP3 TP3
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP4 WP4 TP4 SP5 WP5 TP5 SP6 WP6 TP6
W
Reset 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0
16.3.1.7.4 Fields
Field Function
31-28 Reserved
—
27-24 Reserved
—
23-20 Reserved
—
19 Reserved
—
18 Supervisor Protect
SP3 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
17 Write Protect
WP3 Determines whether the peripheral allows write access. When this bit is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
16 Trusted Protect
TP3 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
15 Reserved
—
14 Supervisor Protect
SP4 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
13 Write Protect
WP4 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
12 Trusted Protect
TP4 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
Table continues on the next page...
Field Function
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3-0 Reserved
—
16.3.1.8.1 Offset
Register Offset
OPACRC 48h
16.3.1.8.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.8.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP1 WP1 TP1 SP2 WP2 TP2
W
Reset 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP6 WP6 TP6 SP7 WP7 TP7
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0
16.3.1.8.4 Fields
Field Function
31-28 Reserved
—
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23 Reserved
—
22 Supervisor Protect
SP2 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
21 Write Protect
WP2 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
20 Trusted Protect
TP2 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
19-16 Reserved
—
15-12 Reserved
—
11-8 Reserved
—
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3 Reserved
—
2 Supervisor Protect
SP7 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
1 Write Protect
WP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
0 Trusted Protect
TP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
16.3.1.9.1 Offset
Register Offset
OPACRD 4Ch
16.3.1.9.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.9.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1 SP2 WP2 TP2 SP3 WP3 TP3
W
Reset 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP5 WP5 TP5
W
Reset 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
16.3.1.9.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
Field Function
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23 Reserved
—
22 Supervisor Protect
SP2 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
21 Write Protect
WP2 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
20 Trusted Protect
TP2 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
19 Reserved
—
18 Supervisor Protect
SP3 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
17 Write Protect
WP3 Determines whether the peripheral allows write access. When this bit is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
16 Trusted Protect
TP3 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
15-12 Reserved
—
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7-4 Reserved
—
3-0 Reserved
—
16.3.1.10.1 Offset
Register Offset
OPACRE 50h
16.3.1.10.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.10.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0
W
Reset 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP6 WP6 TP6
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
16.3.1.10.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
Field Function
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27-24 Reserved
—
23-20 Reserved
—
19-16 Reserved
—
15-12 Reserved
—
11-8 Reserved
—
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3-0 Reserved
—
16.3.1.11.1 Offset
Register Offset
OPACRF 54h
16.3.1.11.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.11.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1 SP2 WP2 TP2 SP3 WP3 TP3
W
Reset 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP4 WP4 TP4 SP5 WP5 TP5
W
Reset 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0
16.3.1.11.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
Field Function
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23 Reserved
—
22 Supervisor Protect
SP2 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
21 Write Protect
WP2 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
20 Trusted Protect
TP2 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
19 Reserved
Table continues on the next page...
Field Function
—
18 Supervisor Protect
SP3 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
17 Write Protect
WP3 Determines whether the peripheral allows write access. When this bit is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
16 Trusted Protect
TP3 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
15 Reserved
—
14 Supervisor Protect
SP4 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
13 Write Protect
WP4 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
12 Trusted Protect
TP4 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7-4 Reserved
—
3-0 Reserved
—
16.3.1.12.1 Offset
Register Offset
OPACRG 58h
16.3.1.12.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.12.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP2 WP2 TP2
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP4 WP4 TP4 SP5 WP5 TP5
W
Reset 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0
16.3.1.12.4 Fields
Field Function
31-28 Reserved
—
27-24 Reserved
—
23 Reserved
—
22 Supervisor Protect
SP2 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
21 Write Protect
WP2 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
20 Trusted Protect
TP2 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
19-16 Reserved
—
15 Reserved
—
14 Supervisor Protect
Table continues on the next page...
Field Function
SP4 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
13 Write Protect
WP4 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
12 Trusted Protect
TP4 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7-4 Reserved
—
3-0 Reserved
—
16.3.1.13.1 Offset
Register Offset
OPACRH 5Ch
16.3.1.13.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.13.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP2 WP2 TP2
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
16.3.1.13.4 Fields
Field Function
31-28 Reserved
—
27-24 Reserved
—
23 Reserved
—
22 Supervisor Protect
SP2 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
21 Write Protect
WP2 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
20 Trusted Protect
TP2 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
19-16 Reserved
—
15-12 Reserved
—
11-8 Reserved
—
7-4 Reserved
—
3-0 Reserved
—
16.3.1.14.1 Offset
Register Offset
OPACRI 60h
16.3.1.14.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.14.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP1 WP1 TP1 SP3 WP3 TP3
W
Reset 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP4 WP4 TP4 SP5 WP5 TP5 SP6 WP6 TP6 SP7 WP7 TP7
W
Reset 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0
16.3.1.14.4 Fields
Field Function
31-28 Reserved
—
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19 Reserved
—
18 Supervisor Protect
SP3
Table continues on the next page...
Field Function
Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
17 Write Protect
WP3 Determines whether the peripheral allows write access. When this bit is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
16 Trusted Protect
TP3 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
15 Reserved
—
14 Supervisor Protect
SP4 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
13 Write Protect
WP4 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
12 Trusted Protect
TP4 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5
Table continues on the next page...
Field Function
Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3 Reserved
—
2 Supervisor Protect
SP7 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
1 Write Protect
WP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
0 Trusted Protect
TP7
Field Function
Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
16.3.1.15.1 Offset
Register Offset
OPACRJ 64h
16.3.1.15.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.15.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP2 WP2 TP2 SP3 WP3 TP3
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP4 WP4 TP4 SP6 WP6 TP6 SP7 WP7 TP7
W
Reset 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0
16.3.1.15.4 Fields
Field Function
31-28 Reserved
Table continues on the next page...
Field Function
—
27-24 Reserved
—
23 Reserved
—
22 Supervisor Protect
SP2 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
21 Write Protect
WP2 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
20 Trusted Protect
TP2 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
19 Reserved
—
18 Supervisor Protect
SP3 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
17 Write Protect
WP3 Determines whether the peripheral allows write access. When this bit is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
16 Trusted Protect
TP3 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
15 Reserved
—
14 Supervisor Protect
Table continues on the next page...
Field Function
SP4 Determines whether the peripheral requires supervisor privilege level for access. When this bit is set, the
master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control bit for
the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
13 Write Protect
WP4 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
12 Trusted Protect
TP4 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
11-8 Reserved
—
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3 Reserved
—
2 Supervisor Protect
SP7 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
1 Write Protect
WP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
0 Trusted Protect
TP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
16.3.1.16.1 Offset
Register Offset
OPACRK 68h
16.3.1.16.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.16.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP0 WP0 TP0 SP1 WP1 TP1 SP3 WP3 TP3
W
Reset 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP6 WP6 TP6
W
Reset 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
16.3.1.16.4 Fields
Field Function
31 Reserved
—
30 Supervisor Protect
SP0 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
29 Write Protect
WP0 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
28 Trusted Protect
TP0 Determines whether the peripheral allows accesses from an untrusted master. When this bit is set and an
access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19 Reserved
—
Field Function
18 Supervisor Protect
SP3 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
17 Write Protect
WP3 Determines whether the peripheral allows write access. When this bit is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
16 Trusted Protect
TP3 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
15-12 Reserved
—
11-8 Reserved
—
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3-0 Reserved
—
16.3.1.17.1 Offset
Register Offset
OPACRL 6Ch
16.3.1.17.2 Function
Each OPACR register consists of eight 4-bit OPACR fields. Each OPACR field defines
the access levels for a particular off-platform peripheral. The peripheral assignment to
each OPACR field is defined by the memory map slot of the peripheral. See the chip-
specific AIPS information for the field assignment of a particular peripheral.
16.3.1.17.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0 0 0 0
SP1 WP1 TP1
W
Reset 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 0 0 0
SP5 WP5 TP5 SP6 WP6 TP6 SP7 WP7 TP7
W
Reset 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0
16.3.1.17.4 Fields
Field Function
31-28 Reserved
—
27 Reserved
—
26 Supervisor Protect
SP1 Determines whether the peripheral requires supervisor privilege level for access. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
25 Write Protect
WP1 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
24 Trusted Protect
TP1 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
23-20 Reserved
—
19-16 Reserved
—
15-12 Reserved
—
11 Reserved
—
10 Supervisor Protect
SP5 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
9 Write Protect
WP5 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
8 Trusted Protect
TP5 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
7 Reserved
—
6 Supervisor Protect
SP6 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
Field Function
5 Write Protect
WP6 Determines whether the peripheral allows write accesses. When this field is set and a write access is
attempted, access terminates with an error response and no peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
4 Trusted Protect
TP6 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
3 Reserved
—
2 Supervisor Protect
SP7 Determines whether the peripheral requires supervisor privilege level for accesses. When this field is set,
the master privilege level must indicate the supervisor access attribute, and the MPRx[MPLn] control field
for the master must be set. If not, access terminates with an error response and no peripheral access
initiates.
0b - This peripheral does not require supervisor privilege level for accesses.
1b - This peripheral requires supervisor privilege level for accesses.
1 Write Protect
WP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - This peripheral allows write accesses.
1b - This peripheral is write protected.
0 Trusted Protect
TP7 Determines whether the peripheral allows accesses from an untrusted master. When this field is set and
an access is attempted by an untrusted master, the access terminates with an error response and no
peripheral access initiates.
0b - Accesses from an untrusted master are allowed.
1b - Accesses from an untrusted master are not allowed.
17.2 Introduction
17.2.1 Overview
The Direct Memory Access Multiplexer (DMAMUX) routes DMA sources, called slots,
to any of the 16 DMA channels. See the chip-specific information to know the detailed
source numbers. This process is illustrated in the following figure.
DMA channel #0
Source #1 DMAMUX
DMA channel #1
Source #2
Source #3
Source #x
Always #1
Always #y
Trigger #1
DMA channel #n
Trigger #z
17.2.2 Features
The DMAMUX module provides these features:
• Up to 61 peripheral slots and up to 2 always-on slots can be routed to 16 channels.
• 16 independently selectable DMA channel routers.
17.3.1.2.1 Offset
For a = 0 to 15:
Register Offset
CHCFGa 0h + (a × 1h)
17.3.1.2.2 Function
Each of the DMA channels can be independently enabled/disabled and associated with
one of the DMA slots (peripheral slots or always-on slots) in the system.
NOTE
Setting multiple CHCFG registers with the same source value
will result in unpredictable behavior. This is true, even if a
channel is disabled (ENBL==0).
Before changing the trigger or source settings, a DMA channel
must be disabled via CHCFGn[ENBL].
17.3.1.2.3 Diagram
Bits 7 6 5 4 3 2 1 0
R
SOURC
TRIG
ENB
W
L
Reset 0 0 0 0 0 0 0 0
17.3.1.2.4 Fields
Field Function
7 DMA Channel Enable
ENBL Enables the DMA channel.
0b - DMA channel is disabled. This mode is primarily used during configuration of the DMAMux.
The DMA has separate channel enables/disables, which should be used to disable or reconfigure a
DMA channel.
1b - DMA channel is enabled
6 DMA Channel Trigger Enable
TRIG Enables the periodic trigger capability for the triggered DMA channel.
0b - Triggering is disabled. If triggering is disabled and ENBL is set, the DMA Channel will simply
route the specified source to the DMA channel. (Normal mode)
1b - Triggering is enabled. If triggering is enabled and ENBL is set, the DMAMUX is in Periodic
Trigger mode.
5-0 DMA Channel Source (Slot)
SOURCE Specifies which DMA source, if any, is routed to a particular DMA channel. See the chip-specific
DMAMUX information for details about the peripherals and their slot numbers.
The trigger is generated by an external periodic interrupt timer (for example, PIT); as
such, the configuration of the periodic triggering interval is done via configuring the
external periodic timer.
Note
Because of the dynamic nature of the system (due to DMA
channel priorities, bus arbitration, interrupt service routine
lengths, etc.), the number of clock cycles between a trigger and
the actual DMA transfer cannot be guaranteed.
Source #1
Source #2
Source #3
DMA channel #0
Trigger #1
Source #x
DMA channel #m-1
Trigger #m
Always #1
Always #y
The DMA channel triggering capability allows the system to schedule regular DMA
transfers, usually on the transmit side of certain peripherals, without the intervention of
the processor. This trigger works by gating the request from the peripheral to the DMA
until a trigger event has been seen. This is illustrated in the following figure.
Peripheral request
Trigger
DMA request
After the DMA request has been serviced, the peripheral will negate its request,
effectively resetting the gating mechanism until the peripheral reasserts its request and
the next trigger event is seen. This means that if a trigger is seen, but the peripheral is not
requesting a transfer, then that trigger will be ignored. This situation is illustrated in the
following figure.
Peripheral request
Trigger
DMA request
This triggering capability may be used with any peripheral that supports DMA transfers,
and is most useful for two types of situations:
• Periodically polling external devices on a particular bus
As an example, the transmit side of an SPI is assigned to a DMA channel with a
trigger, as described above. After it has been set up, the SPI will request DMA
transfers, presumably from memory, as long as its transmit buffer is empty. By using
a trigger on this channel, the SPI transfers can be automatically performed every 5 μs
(as an example). On the receive side of the SPI, the SPI and DMA can be configured
to transfer receive data into memory, effectively implementing a method to
periodically read data from external devices and transfer the results into memory
without processor intervention.
• Using the GPIO ports to drive or sample waveforms
By configuring the DMA to transfer data to one or more GPIO ports, it is possible to
create complex waveforms using tabular data stored in on-chip memory. Conversely,
using the DMA to periodically transfer data from one or more GPIO ports, it is
possible to sample complex waveforms and store the results in tabular form in on-
chip memory.
In cases where software should initiate the start of a DMA transfer, an always-enabled
DMA source can be used to provide maximum flexibility. When activating a DMA
channel via software, subsequent executions of the minor loop require that a new start
event be sent. This can either be a new software activation, or a transfer request from the
DMA channel MUX. The options for doing this are:
• Transfer all data in a single minor loop.
By configuring the DMA to transfer all of the data in a single minor loop (that is,
major loop counter = 1), no reactivation of the channel is necessary. The
disadvantage to this option is the reduced granularity in determining the load that the
DMA transfer will impose on the system. For this option, the DMA channel must be
disabled in the DMA channel MUX.
• Use explicit software reactivation.
In this option, the DMA is configured to transfer the data using both minor and major
loops, but the processor is required to reactivate the channel by writing to the DMA
registers after every minor loop. For this option, the DMA channel must be disabled
in the DMA channel MUX.
• Use an always-enabled DMA source.
In this option, the DMA is configured to transfer the data using both minor and major
loops, and the DMA channel MUX does the channel reactivation. For this option, the
DMA channel should be enabled and pointing to an "always enabled" source. Note
that the reactivation of the channel can be continuous (DMA triggering is disabled)
or can use the DMA triggering capability. In this manner, it is possible to execute
periodic transfers of packets of data from one source to another, without processor
intervention.
17.5.1 Reset
The reset state of each individual bit is shown in Memory map/register definition. In
summary, after reset, all channels are disabled and must be explicitly enabled before use.
NOTE
The following is an example. See the chip-specific information
for the number of this device's DMA channels that have
triggering capability.
To configure source #5 transmit for use with DMA channel 1, with periodic triggering
capability:
1. Write 0x00 to CHCFG1.
2. Configure channel 1 in the DMA, including enabling the channel.
3. Configure a timer for the desired trigger interval.
4. Write 0xC5 to CHCFG1.
The following code example illustrates steps 1 and 4 above:
void DMAMUX_Init(uint8_t DMA_CH, uint8_t DMAMUX_SOURCE)
{
DMAMUX_0.CHCFG[DMA_CH].B.SOURCE = DMAMUX_SOURCE;
DMAMUX_0.CHCFG[DMA_CH].B.ENBL = 1;
DMAMUX_0.CHCFG[DMA_CH].B.TRIG = 1;
}
In File main.c:
#include "registers.h"
:
:
*CHCFG1 = 0x00;
*CHCFG1 = 0x85;
To disable a source:
A particular DMA source may be disabled by not writing the corresponding source value
into any of the CHCFG registers. Additionally, some module-specific configuration may
be necessary. See the appropriate section for more details.
To switch the source of a DMA channel:
1. Disable the DMA channel in the DMA and reconfigure the channel for the new
source.
2. Clear the CHCFG[ENBL] and CHCFG[TRIG] bits of the DMA channel.
3. Select the source to be routed to the DMA channel. Write to the corresponding
CHCFG register, ensuring that the CHCFG[ENBL] and CHCFG[TRIG] fields are
set.
To switch DMA channel 8 from source #5 transmit to source #7 transmit:
1. In the DMA configuration registers, disable DMA channel 8 and reconfigure it to
handle the transfers to peripheral slot 7. This example assumes channel 8 doesn't
have triggering capability.
2. Write 0x00 to CHCFG8.
3. Write 0x87 to CHCFG8. (In this example, setting CHCFG[TRIG] would have no
effect due to the assumption that channel 8 does not support the periodic triggering
functionality.)
The following code example illustrates steps 2 and 3 above:
In File registers.h:
#define DMAMUX_BASE_ADDR 0x40021000/* Example only ! */
/* Following example assumes char is 8-bits */
volatile unsigned char *CHCFG0 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0000);
volatile unsigned char *CHCFG1 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0001);
volatile unsigned char *CHCFG2 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0002);
volatile unsigned char *CHCFG3 = (volatile unsigned char *) (DMAMUX_BASE_ADDR+0x0003);
In File main.c:
#include "registers.h"
:
:
*CHCFG8 = 0x00;
*CHCFG8 = 0x87;
18.2 Introduction
The enhanced direct memory access (eDMA) controller is a second-generation module
capable of performing complex data transfers with minimal intervention from a host
processor. The hardware microarchitecture includes:
• A DMA engine that performs:
• Source address and destination address calculations
• Data-movement operations
• Local memory containing transfer control descriptors for each of the 16 channels
Write Data
0
1
2
Transfer Control
Descriptor (TCD) n-1
64
eDMA e ngine
Program Model/
Read Data
Channel Arbitration
Read Data
Address Path
Control
Data Path
Write Data
Address
eDMA Peripheral
eDMA Done
Request
18.2.3 Features
The eDMA is a highly programmable data-transfer engine optimized to minimize any
required intervention from the host processor. It is intended for use in applications where
the data size to be transferred is statically known and not defined within the transferred
data itself. The eDMA module features:
• All data movement via dual-address transfers: read from source, write to destination
• Programmable source and destination addresses and transfer size
• Support for enhanced addressing modes
0000h SADDR
0008h
{ NBYTES {
{
DMA_CR[EMLM] disabled
DMLOE
SMLOE
000Ch SLAST
0010h DADDR
CITER.E_LINK
CITER or
0014h CITER DOFF
CITER.LINKCH
0018h DLAST_SGA
MAJOR.E_LINK
BITER.E_LINK
MAJOR.LINKCH
INT_HALF
Reserved
INT_MAJ
ACTIVE
D_REQ
START
DONE
E_SG
BITER or
001Ch BITER BWC
BITER.LINKCH
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
18.4.5.2.1 Offset
Register Offset
CR 0h
18.4.5.2.2 Function
The CR defines the basic operating configuration of the DMA.
Arbitration can be configured to use either a fixed-priority or a round-robin scheme. For
fixed-priority arbitration, the highest priority channel requesting service is selected to
execute. The channel priority registers assign the priorities; see the DCHPRIn registers.
For round-robin arbitration, the channel priorities are ignored and channels are cycled
through (from high to low channel number) without regard to priority.
NOTE
For correct operation, writes to the CR register must be
performed only when the DMA channels are inactive; that is,
when TCDn_CSR[ACTIVE] bits are cleared.
Minor loop offsets are address offset values added to the final source address
(TCDn_SADDR) or destination address (TCDn_DADDR) upon minor loop completion.
When minor loop offsets are enabled, the minor loop offset (MLOFF) is added to the
final source address (TCDn_SADDR), to the final destination address (TCDn_DADDR),
or to both prior to the addresses being written back into the TCD. If the major loop is
complete, the minor loop offset is ignored and the major loop address offsets
(TCDn_SLAST and TCDn_DLAST_SGA) are used to compute the next TCDn_SADDR
and TCDn_DADDR values.
When minor loop mapping is enabled (EMLM is 1), TCDn word2 is redefined. A portion
of TCDn word2 is used to specify multiple fields: a source enable bit (SMLOE) to
specify the minor loop offset should be applied to the source address (TCDn_SADDR)
upon minor loop completion, a destination enable bit (DMLOE) to specify the minor loop
offset should be applied to the destination address (TCDn_DADDR) upon minor loop
completion, and the sign extended minor loop offset value (MLOFF). The same offset
value (MLOFF) is used for both source and destination minor loop offsets. When either
minor loop offset is enabled (SMLOE set or DMLOE set), the NBYTES field is reduced
to 10 bits. When both minor loop offsets are disabled (SMLOE cleared and DMLOE
cleared), the NBYTES field is a 30-bit vector.
When minor loop mapping is disabled (EMLM is 0), all 32 bits of TCDn word2 are
assigned to the NBYTES field.
18.4.5.2.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
Reserved
ACTIVE
R
0
CX
EC
X
W
Reset 0 u u u u u u u 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
0
Reserved
Reserved
ERCA
EMLM
HALT
HOE
CLM
EDB
W
G
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
18.4.5.2.4 Fields
Field Function
31 DMA Active Status
0b - eDMA is idle.
ACTIVE
1b - eDMA is executing a channel.
30-24 eDMA version number
— Reserved
23-18 Reserved
—
17 Cancel Transfer
0b - Normal operation
CX
1b - Cancel the remaining data transfer. Stop the executing channel and force the minor loop to
finish. The cancel takes effect after the last write of the current read/write sequence. The CX bit
clears itself after the cancel has been honored. This cancel retires the channel normally as if the
minor loop was completed.
16 Error Cancel Transfer
0b - Normal operation
ECX
1b - Cancel the remaining data transfer in the same fashion as the CX bit. Stop the executing
channel and force the minor loop to finish. The cancel takes effect after the last write of the current
read/write sequence. The ECX bit clears itself after the cancel is honored. In addition to cancelling
the transfer, ECX treats the cancel as an error condition, thus updating the Error Status register
(DMAx_ES) and generating an optional error interrupt.
15-8 Reserved
—
7 Enable Minor Loop Mapping
0b - Disabled. TCDn.word2 is defined as a 32-bit NBYTES field.
EMLM
1b - Enabled. TCDn.word2 is redefined to include individual enable fields, an offset field, and the
NBYTES field. The individual enable fields allow the minor loop offset to be applied to the source
address, the destination address, or both. The NBYTES field is reduced when either offset is
enabled.
6 Continuous Link Mode
CLM NOTE: Do not use continuous link mode with a channel linking to itself if there is only one minor loop
iteration per service request, for example, if the channel's NBYTES value is the same as either
the source or destination size. The same data transfer profile can be achieved by simply
increasing the NBYTES value, which provides more efficient, faster processing.
0b - A minor loop channel link made to itself goes through channel arbitration before being
activated again.
1b - A minor loop channel link made to itself does not go through channel arbitration before being
activated again. Upon minor loop completion, the channel activates again if that channel has a
minor loop channel link enabled and the link channel is itself. This effectively applies the minor loop
offsets and restarts the next minor loop.
5 Halt DMA Operations
0b - Normal operation
HALT
1b - Stall the start of any new channels. Executing channels are allowed to complete. Channel
execution resumes when this bit is cleared.
4 Halt On Error
0b - Normal operation
HOE
1b - Any error causes the HALT bit to set. Subsequently, all service requests are ignored until the
HALT bit is cleared.
Field Function
3 Reserved
— Reserved
2 Enable Round Robin Channel Arbitration
0b - Fixed priority arbitration is used for channel selection .
ERCA
1b - Round robin arbitration is used for channel selection .
1 Enable Debug
0b - When in debug mode, the DMA continues to operate.
EDBG
1b - When in debug mode, the DMA stalls the start of a new channel. Executing channels are
allowed to complete. Channel execution resumes when the system exits debug mode or the EDBG
bit is cleared.
0 Reserved
— Reserved
18.4.5.3.1 Offset
Register Offset
ES 4h
18.4.5.3.2 Function
The ES provides information concerning the last recorded channel error. Channel errors
can be caused by:
• A configuration error, that is:
• An illegal setting in the transfer-control descriptor, or
• An illegal priority register setting in fixed-arbitration
• An error termination to a bus master read or write cycle
• A cancel transfer with error bit that will be set when a transfer is canceled via the
corresponding cancel transfer control bit
See Fault reporting and handling for more details.
18.4.5.3.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R VLD 0 ECX
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R 0 CPE 0 ERRCHN SAE SOE DAE DOE NCE SGE SBE DBE
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
18.4.5.3.4 Fields
Field Function
31 VLD
VLD Logical OR of all ERR status bits
0b - No ERR bits are set.
1b - At least one ERR bit is set indicating a valid error exists that has not been cleared.
30-17 Reserved
—
16 Transfer Canceled
0b - No canceled transfers
ECX
1b - The last recorded entry was a canceled transfer by the error cancel transfer input
15 Reserved
—
14 Channel Priority Error
0b - No channel priority error
CPE
1b - The last recorded error was a configuration error in the channel priorities . Channel priorities
are not unique.
13-12 Reserved
—
11-8 Error Channel Number or Canceled Channel Number
ERRCHN The channel number of the last recorded error, excluding CPE errors, or last recorded error canceled
transfer.
7 Source Address Error
0b - No source address configuration error.
SAE
1b - The last recorded error was a configuration error detected in the TCDn_SADDR field.
TCDn_SADDR is inconsistent with TCDn_ATTR[SSIZE].
6 Source Offset Error
0b - No source offset configuration error
SOE
1b - The last recorded error was a configuration error detected in the TCDn_SOFF field.
TCDn_SOFF is inconsistent with TCDn_ATTR[SSIZE].
5 Destination Address Error
0b - No destination address configuration error
DAE
Table continues on the next page...
Field Function
1b - The last recorded error was a configuration error detected in the TCDn_DADDR field.
TCDn_DADDR is inconsistent with TCDn_ATTR[DSIZE].
4 Destination Offset Error
0b - No destination offset configuration error
DOE
1b - The last recorded error was a configuration error detected in the TCDn_DOFF field.
TCDn_DOFF is inconsistent with TCDn_ATTR[DSIZE].
3 NBYTES/CITER Configuration Error
0b - No NBYTES/CITER configuration error
NCE
1b - The last recorded error was a configuration error detected in the TCDn_NBYTES or
TCDn_CITER fields. TCDn_NBYTES is not a multiple of TCDn_ATTR[SSIZE] and
TCDn_ATTR[DSIZE], orTCDn_CITER[CITER] is equal to zero, orTCDn_CITER[ELINK] is not equal
to TCDn_BITER[ELINK]
2 Scatter/Gather Configuration Error
0b - No scatter/gather configuration error
SGE
1b - The last recorded error was a configuration error detected in the TCDn_DLASTSGA field. This
field is checked at the beginning of a scatter/gather operation after major loop completion if
TCDn_CSR[ESG] is enabled. TCDn_DLASTSGA is not on a 32 byte boundary.
1 Source Bus Error
0b - No source bus error
SBE
1b - The last recorded error was a bus error on a source read
0 Destination Bus Error
0b - No destination bus error
DBE
1b - The last recorded error was a bus error on a destination write
18.4.5.4.1 Offset
Register Offset
ERQ Ch
18.4.5.4.2 Function
The ERQ register provides a bit map for the 16 channels to enable the request signal for
each channel. The state of any given channel enable is directly affected by writes to this
register; it is also affected by writes to the SERQ and CERQ registers. These registers are
provided so the request enable for a single channel can easily be modified without
needing to perform a read-modify-write sequence to this register.
DMA request input signals and this enable request flag must be asserted before a
channel's hardware service request is accepted. The state of the DMA enable request flag
does not affect a channel service request made explicitly through software or a linked
channel request.
S32K1xx Series Reference Manual, Rev. 11, 06/2019
344 NXP Semiconductors
Chapter 18 Enhanced Direct Memory Access (eDMA)
NOTE
Disable a channel's hardware service request at the source
before clearing the channel's ERQ bit.
18.4.5.4.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
ERQ15
ERQ14
ERQ13
ERQ12
ERQ11
ERQ10
ERQ9
ERQ8
ERQ7
ERQ6
ERQ5
ERQ4
ERQ3
ERQ2
ERQ1
ERQ0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
18.4.5.4.4 Fields
Field Function
31-16 Reserved
—
15 Enable DMA Request 15
0b - The DMA request signal for the corresponding channel is disabled
ERQ15
1b - The DMA request signal for the corresponding channel is enabled
14 Enable DMA Request 14
0b - The DMA request signal for the corresponding channel is disabled
ERQ14
1b - The DMA request signal for the corresponding channel is enabled
13 Enable DMA Request 13
0b - The DMA request signal for the corresponding channel is disabled
ERQ13
1b - The DMA request signal for the corresponding channel is enabled
12 Enable DMA Request 12
0b - The DMA request signal for the corresponding channel is disabled
ERQ12
1b - The DMA request signal for the corresponding channel is enabled
11 Enable DMA Request 11
0b - The DMA request signal for the corresponding channel is disabled
ERQ11
1b - The DMA request signal for the corresponding channel is enabled
10 Enable DMA Request 10
0b - The DMA request signal for the corresponding channel is disabled
ERQ10
1b - The DMA request signal for the corresponding channel is enabled
9 Enable DMA Request 9
0b - The DMA request signal for the corresponding channel is disabled
ERQ9
1b - The DMA request signal for the corresponding channel is enabled
8 Enable DMA Request 8
0b - The DMA request signal for the corresponding channel is disabled
ERQ8
1b - The DMA request signal for the corresponding channel is enabled
Field Function
7 Enable DMA Request 7
0b - The DMA request signal for the corresponding channel is disabled
ERQ7
1b - The DMA request signal for the corresponding channel is enabled
6 Enable DMA Request 6
0b - The DMA request signal for the corresponding channel is disabled
ERQ6
1b - The DMA request signal for the corresponding channel is enabled
5 Enable DMA Request 5
0b - The DMA request signal for the corresponding channel is disabled
ERQ5
1b - The DMA request signal for the corresponding channel is enabled
4 Enable DMA Request 4
0b - The DMA request signal for the corresponding channel is disabled
ERQ4
1b - The DMA request signal for the corresponding channel is enabled
3 Enable DMA Request 3
0b - The DMA request signal for the corresponding channel is disabled
ERQ3
1b - The DMA request signal for the corresponding channel is enabled
2 Enable DMA Request 2
0b - The DMA request signal for the corresponding channel is disabled
ERQ2
1b - The DMA request signal for the corresponding channel is enabled
1 Enable DMA Request 1
0b - The DMA request signal for the corresponding channel is disabled
ERQ1
1b - The DMA request signal for the corresponding channel is enabled
0 Enable DMA Request 0
0b - The DMA request signal for the corresponding channel is disabled
ERQ0
1b - The DMA request signal for the corresponding channel is enabled
18.4.5.5.1 Offset
Register Offset
EEI 14h
18.4.5.5.2 Function
The EEI register provides a bit map for the 16 channels to enable the error interrupt
signal for each channel. The state of any given channel's error interrupt enable is directly
affected by writes to this register; it is also affected by writes to the SEEI and CEEI.
These registers are provided so that the error interrupt enable for a single channel can
easily be modified without the need to perform a read-modify-write sequence to the EEI
register.
The DMA error indicator and the error interrupt enable flag must be asserted before an
error interrupt request for a given channel is asserted to the interrupt controller.
18.4.5.5.3 Diagram
Bits 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
R 0
W
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
R
EEI15
EEI14
EEI13
EEI12
EEI11
EEI10
EEI
EEI
EEI
EEI
EEI
EEI
EEI
EEI
EEI
EEI
W
0
Reset 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
18.4.5.5.4 Fields
Field Function
31-16 Reserved
—
15 Enable Error Interrupt 15
0b - The error signal for corresponding channel does not generate an error interrupt
EEI15
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
14 Enable Error Interrupt 14
0b - The error signal for corresponding channel does not generate an error interrupt
EEI14
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
13 Enable Error Interrupt 13
0b - The error signal for corresponding channel does not generate an error interrupt
EEI13
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
12 Enable Error Interrupt 12
0b - The error signal for corresponding channel does not generate an error interrupt
EEI12
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
11 Enable Error Interrupt 11
0b - The error signal for corresponding channel does not generate an error interrupt
EEI11
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
10 Enable Error Interrupt 10
0b - The error signal for corresponding channel does not generate an error interrupt
EEI10
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
9 Enable Error Interrupt 9
0b - The error signal for corresponding channel does not generate an error interrupt
EEI9
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
8 Enable Error Interrupt 8
0b - The error signal for corresponding channel does not generate an error interrupt
EEI8
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
7 Enable Error Interrupt 7
Table continues on the next page...
Field Function
EEI7 0b - The error signal for corresponding channel does not generate an error interrupt
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
6 Enable Error Interrupt 6
0b - The error signal for corresponding channel does not generate an error interrupt
EEI6
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
5 Enable Error Interrupt 5
0b - The error signal for corresponding channel does not generate an error interrupt
EEI5
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
4 Enable Error Interrupt 4
0b - The error signal for corresponding channel does not generate an error interrupt
EEI4
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
3 Enable Error Interrupt 3
0b - The error signal for corresponding channel does not generate an error interrupt
EEI3
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
2 Enable Error Interrupt 2
0b - The error signal for corresponding channel does not generate an error interrupt
EEI2
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
1 Enable Error Interrupt 1
0b - The error signal for corresponding channel does not generate an error interrupt
EEI1
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
0 Enable Error Interrupt 0
0b - The error signal for corresponding channel does not generate an error interrupt
EEI0
1b - The assertion of the error signal for corresponding channel generates an error interrupt request
18.4.5.6.1 Offset
Register Offset
CEEI 18h
18.4.5.6.2 Function
The CEEI provides a simple memory-mapped mechanism to clear a given bit in the EEI
to disable the error interrupt for a given channel. The data value on a register write causes
the corresponding bit in the EEI to be cleared. Setting the CAEE bit provides a global
clear function, forcing the EEI contents to be cleared, disabling all DMA request inputs.
If the NOP bit is set, the command is ignored. This allows you to set a single, byte-wide
register with a 32-bit write while not affecting the other registers addressed in the write.
In such a case the other three bytes of the word would all have their NOP bit set so that
that these register will not be affected by the write.
18.4.5.6.3 Diagram
Bits 7 6 5 4 3 2 1 0
R
0
0
NOP
CEE
CAE
W
0
E
I
Reset 0 0 0 0 0 0 0 0
18.4.5.6.4 Fields
Field Function
7 No Op enable
0b - Normal operation
NOP
1b - No operation, ignore the other bits in this register
6 Clear All Enable Error Interrupts
0b - Clear only the EEI bit specified in the CEEI field
CAEE
1b - Clear all bits in EEI
5-4 Reserved
—
3-0 Clear Enable Error Interrupt
CEEI Clears the corresponding bit in EEI
18.4.5.7.1 Offset
Register Offset
SEEI 19h
18.4.5.7.2 Function
The SEEI provides a simple memory-mapped mechanism to set a given bit in the EEI to
enable the error interrupt for a given channel. The data value on a register write causes
the corresponding bit in the EEI to be set. Setting the SAEE bit provides a global set
function, forcing the entire EEI contents to be set.
If the NOP bit is set, the command is ignored. This allows you to set a single, byte-wide
register with a 32-bit write while not affecting the other registers addressed in the write.
In such a case the other three bytes of the word would all have their NOP bit set so that
that these register will not be affected by the write.
Reads of this register return all zeroes.
18.4.5.7.3 Diagram
Bits 7 6 5 4 3 2 1 0
R
NOP 0
0
SAE
SE
0
EI
E
Reset 0 0 0 0 0 0 0 0
18.4.5.7.4 Fields
Field Function
7 No Op enable
0b - Normal operation
NOP
1b - No operation, ignore the other bits in this register
6 Sets All Enable Error Interrupts
0b - Set only the EEI bit specified in the SEEI field.
SAEE
1b - Sets all bits in EEI
5-4 Reserved
—
3-0 Set Enable Error Interrupt
SEEI Sets the corresponding bit in EEI
18.4.5.8.1 Offset
Register Offset
CERQ 1Ah
18.4.5.8.2 Function
The CERQ provides a simple memory-mapped mechanism to clear a given bit in the
ERQ to disable the DMA request for a given channel. The data value on a register write
causes the corresponding bit in the ERQ to be cleared. Setting the CAER bit provides a
global clear function, forcing the entire contents of the ERQ to be cleared, disabling all
DMA request inputs.
If the NOP bit is set, the command is ignored. This allows you to set a single, byte-wide
register with a 32-bit write while not affecting the other registers addressed in the write.
In such a case the other three bytes of the word would all have their NOP bit set so that
that these register will not be affected by the write.
Reads of this register return all zeroes.
NOTE
Disable a channel's hardware service request at the source
before clearing the channel's ERQ bit.
18.4.5.8.3 Diagram
Bits 7 6 5 4 3 2 1 0
R
0
CAER 0
CERQ 0
NOP
W
0
Reset 0 0 0 0 0 0 0 0
18.4.5.8.4 Fields
Field Function
7 No Op enable
0b - Normal operation
NOP
1b - No operation, ignore the other bits in this register
6 Clear All Enable Requests
0b - Clear only the ERQ bit specified in the CERQ field
CAER
1b - Clear all bits in ERQ
5-4 Reserved
—
3-0 Clear Enable Request
CERQ Clears the corresponding bit in ERQ.
18.4.5.9.1 Offset
Register Offset
SERQ 1Bh
18.4.5.9.2 Function
The SERQ provides a simple memory-mapped mechanism to set a given bit in the ERQ
to enable the DMA request for a given channel. The data value on a register write causes
the corresponding bit in the ERQ to be set. Setting the SAER bit provides a global set
function, forcing the entire contents of ERQ to be set.
If the NOP bit is set, the command is ignored. This allows you to set a single, byte-wide
register with a 32-bit write while not affecting the other registers addressed in the write.
In such a case the other three bytes of the word would all have their NOP bit set so that
that these register will not be affected by the write.
Reads of this register return all zeroes.
18.4.5.9.3 Diagram
Bits 7 6 5 4 3 2 1 0
R
0
0
NOP
SAE
SER
W
0
R
Reset 0 0 0 0 0 0 0 0
18.4.5.9.4 Fields
Field Function
7 No Op enable
0b - Normal operation
NOP
1b - No operation, ignore the other bits in this register
6 Set All Enable Requests
0b - Set only the ERQ bit specified in the SERQ field
SAER
1b - Set all bits in ERQ
5-4 Reserved
—
Field Function
3-0 Set Enable Request
SERQ Sets the corresponding bit in ERQ.
18.4.5.10.1 Offset
Register