ST SPC564L70L3, SPC564L70L5, SPC56EL70L3, SPC56EL70L5, SPC56XL70xx 32-bit MCU family built on the embedded Power Architecture® Reference guide

  • Hello! I am an AI chatbot trained to assist you with the ST SPC564L70L3 Reference guide. I’ve already reviewed the document and can help you find the information you need or explain it in simple terms. Just ask your questions, and providing more details will help me assist you more effectively!
October 2013 Doc ID 023986 Rev 3 1/1389
RM0342
Reference manual
SPC56XL70xx 32-bit MCU family
built on the embedded Power Architecture®
Introduction
The SPC56XL70xx microcontroller is based on the Power Architecture
®
and targets the
electric power steering, chassis, and safety applications that require a high safety integrity
level.
SPC56XL70xx device is built around a dual-core safety platform with an innovative safety
concept targeting ISO26262 ASILD and IEC61508 SIL3 integrity levels
(a)
. To minimize
additional software and module level features to reach this target, on-chip redundancy is
provided for the critical components of the microcontroller (CPU core, DMA controller,
interrupt controller, crossbar bus system, memory protection unit, Flash-memory controller
and RAM controllers, peripheral bus bridge, system timers, and watchdog timer). Lock step
Redundancy Checking Units are implemented at each output of this Sphere of Replication
(SoR). ECC is available for on-chip RAM and Flash memories. A programmable fault
collection and control unit monitors the integrity status of the device and provides flexible
safe state control.
The host processor core of the SPC56XL70xx is a CPU from the e200z4 family of
compatible Power Architecture cores. The device’s 5-stage pipeline dual issue core
provides a high efficiency allowing high performance with minimum power dissipation.
The peripheral set is compatible with the SPC560P device family and provides high-end
electrical motor control capability with very low CPU intervention due to the on-chip cross-
triggering unit.
The SPC56XL70xx is developed with high-performance 90-nm embedded Flash-memory
technology that provides substantial cost reduction per feature and significant performance
improvement.
a. All statements on functional safety in this chapter are under the condition that the requirements given in the
Safety Application Guide are followed.
www.st.com
Contents RM0342
2/1389 DocID023986 Rev 2
Contents
1 Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1.2 Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1.3 Chapter organization and device-specific information . . . . . . . . . . . . . . . 65
1.4 Information about different device versions (“cuts”) . . . . . . . . . . . . . . . . . 65
1.5 Acronyms and abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.1 SPC56XL70 microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.2 SPC56XL70 device summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.3 Device block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.4 Feature summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.5 Feature details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.5.1 High-performance e200z4d core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
2.5.2 Crossbar switch (XBAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.5.3 Memory Protection Unit (MPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.5.4 Enhanced Direct Memory Access (eDMA) . . . . . . . . . . . . . . . . . . . . . . 75
2.5.5 On-chip flash memory with ECC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
2.5.6 On-chip SRAM with ECC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
2.5.7 Platform flash memory controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.5.8 Platform Static RAM Controller (SRAMC) . . . . . . . . . . . . . . . . . . . . . . . 77
2.5.9 Memory subsystem access time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.5.10 Error Correction Status Module (ECSM) . . . . . . . . . . . . . . . . . . . . . . . . 78
2.5.11 Peripheral Bridge (PBRIDGE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.5.12 Interrupt Controller (INTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.5.13 System clocks and clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.5.14 Frequency Modulated Phase Locked Loop (FMPLL) . . . . . . . . . . . . . . 80
2.5.15 Main oscillator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
2.5.16 Internal Reference Clock (RC) oscillator . . . . . . . . . . . . . . . . . . . . . . . . 81
2.5.17 Clock, reset, power, mode and test control modules (MC_CGM,
MC_RGM, MC_PCU, and MC_ME) . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.5.18 Periodic Interrupt Timer (PIT Module) . . . . . . . . . . . . . . . . . . . . . . . . . . 82
DocID023986 Rev 2 3/1389
RM0342 Contents
30
2.5.19 System Timer Module (STM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.5.20 Software Watchdog Timer (SWT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
2.5.21 Fault Collection and Control Unit (FCCU) . . . . . . . . . . . . . . . . . . . . . . . 83
2.5.22 System Integration Unit Lite (SIUL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.5.23 Non-Maskable Interrupt (NMI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.5.24 Boot Assist Module (BAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.5.25 System Status and Configuration Module (SSCM) . . . . . . . . . . . . . . . . 84
2.5.26 FlexCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2.5.27 FlexRay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.5.28 Serial communication interface module (LINFlexD) . . . . . . . . . . . . . . . 87
2.5.29 Deserial Serial Peripheral Interface (DSPI) . . . . . . . . . . . . . . . . . . . . . . 87
2.5.30 FlexPWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2.5.31 eTimer module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.5.32 Sine Wave Generator (SWG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.5.33 Analog-to-Digital Converter module (ADC) . . . . . . . . . . . . . . . . . . . . . . 90
2.5.34 Cross Triggering Unit (CTU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.5.35 Cyclic Redundancy Checker (CRC) Unit . . . . . . . . . . . . . . . . . . . . . . . . 92
2.5.36 Redundancy Control and Checker Unit (RCCU) . . . . . . . . . . . . . . . . . . 92
2.5.37 Junction temperature sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.5.38 Nexus Port Controller (NPC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.5.39 IEEE 1149.1 JTAG Controller (JTAGC) . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.5.40 Voltage regulator/Power Management Unit (PMU) . . . . . . . . . . . . . . . . 94
2.5.41 Built-In Self-Test (BIST) capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
3 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4 Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.1 Package pinouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2 Supply pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.3 System pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.4 Pin muxing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.5 Mapping of ports to PGPDO/I registers . . . . . . . . . . . . . . . . . . . . . . . . . 143
5 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.2 Lock Step Mode (LSM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Contents RM0342
4/1389 DocID023986 Rev 2
5.3 Decoupled Parallel Mode (DPM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.4 Selecting LSM or DPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.4.1 Entering LSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.4.2 Entering DPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
6 Device Boot Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.1 Boot mode functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.2 Hardware configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.2.1 Single chip boot mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.3 Boot-sector search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
6.3.1 Potential boot sectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
6.3.2 Reset Configuration Half-Word (RCHW) . . . . . . . . . . . . . . . . . . . . . . . 150
6.3.3 Boot and alternate boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.4 Device behavior by boot mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.4.1 Single chip mode — Unsecured . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.4.2 Single chip mode — Secured . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.4.3 Serial boot loader mode — Public password enabled . . . . . . . . . . . . . 151
6.4.4 Serial boot loader mode — Flash memory password enabled . . . . . . 152
6.4.5 Standby boot mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
6.4.6 Static mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
7 Device Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
7.1 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
7.1.1 Securing the microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
7.1.2 Unsecuring the microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
7.2 Serial access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8 Functional Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.2 Redundancy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.3 Built-In Self-Test (BIST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.3.1 BIST during boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.3.2 Software-triggered BIST during operation . . . . . . . . . . . . . . . . . . . . . . 157
8.3.3 Software-triggered self-tests after boot . . . . . . . . . . . . . . . . . . . . . . . . 157
8.4 Memory error detection and correction . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.5 Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
DocID023986 Rev 2 5/1389
RM0342 Contents
30
8.6 Software measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.7 Fault reaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8.8 External measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
9 Analog-to-Digital Converter (ADC) . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
9.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
9.3 Memory map and register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . 160
9.3.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
9.3.2 Control logic registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
9.3.3 Interrupt registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
9.3.4 Watchdog Threshold Interrupt Status Register (WTISR) . . . . . . . . . . . 170
9.3.5 Watchdog Threshold Interrupt Mask Register (WTIMR) . . . . . . . . . . . 171
9.3.6 DMA Enable Register (DMAE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
9.3.7 DMA Channel Select Register 0 (DMAR0) . . . . . . . . . . . . . . . . . . . . . 172
9.3.8 Threshold Registers (THRHLRn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.3.9 Presampling registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.3.10 Conversion timing registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
9.3.11 Mask registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
9.3.12 Power Down Exit Delay Register (PDEDR) . . . . . . . . . . . . . . . . . . . . . 178
9.3.13 Channel Data Registers (CDRn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
9.3.14 Channel Watchdog Selection Registers (CWSELn) . . . . . . . . . . . . . . 180
9.3.15 Channel Watchdog Enable Register 0 (CWENR0) . . . . . . . . . . . . . . . 181
9.3.16 Analog Watchdog Out Of Range Register 0 (AWORR0) . . . . . . . . . . . 181
9.3.17 Self test registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
9.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
9.4.1 Inter-module communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
9.4.2 Analog channel conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
9.4.3 Analog clock generator and conversion timings . . . . . . . . . . . . . . . . . 201
9.4.4 ADC sampling and conversion timing . . . . . . . . . . . . . . . . . . . . . . . . . 201
9.4.5 Presampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
9.4.6 Programmable analog watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
9.4.7 DMA functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
9.4.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
9.4.9 Power-down mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
9.4.10 Auto-clock-off mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Contents RM0342
6/1389 DocID023986 Rev 2
9.4.11 Self testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
10 Boot Assist Module (BAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
10.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
10.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
10.3 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
10.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
10.4.1 Entering boot modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
10.4.2 Boot through BAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
10.4.3 UART Boot — autobaud disabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
10.4.4 CAN Boot — autobaud disabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
10.4.5 Boot with autobaud feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
10.4.6 Reading from test flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
10.4.7 Inhibiting BAM operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
10.4.8 Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
11 Clock Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
11.1 Clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
11.2 Clock distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
11.3 Detailed module descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
12 Clock Generation Module (MC_CGM) . . . . . . . . . . . . . . . . . . . . . . . . . 235
12.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
12.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
12.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
12.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
12.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
12.3.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
12.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
12.4.1 System clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
12.4.2 Auxiliary clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
12.4.3 Functional description of dividers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
12.4.4 Output clock multiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
12.4.5 Output clock division selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
13 Clock Monitor Unit (CMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
DocID023986 Rev 2 7/1389
RM0342 Contents
30
13.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
13.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
13.3 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 258
13.3.1 Control Status Register (CMU_CSR) . . . . . . . . . . . . . . . . . . . . . . . . . . 259
13.3.2 Frequency Display Register (CMU_FDR) . . . . . . . . . . . . . . . . . . . . . . 260
13.3.3 High Frequency Reference Register A (CMU_HFREFR_A) . . . . . . . . 261
13.3.4 Low Frequency Reference Register A (CMU_LFREFR_A) . . . . . . . . . 261
13.3.5 Interrupt Status Register (CMU_ISR) . . . . . . . . . . . . . . . . . . . . . . . . . 262
13.3.6 Measurement Duration Register (CMU_MDR) . . . . . . . . . . . . . . . . . . 263
13.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
13.4.1 XOSC clock monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
14 Cross-Triggering Unit (CTU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
14.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
14.2 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
14.3 CTU overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
14.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
14.4.1 Interaction with other peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
14.4.2 Trigger events features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
14.4.3 Trigger Generator Subunit (TGS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
14.4.4 TGS in triggered mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
14.4.5 TGS in sequential mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
14.4.6 TGS counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
14.5 Scheduler subunit (SU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
14.5.1 ADC commands list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
14.5.2 ADC commands list format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
14.5.3 ADC results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
14.6 Reload mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
14.7 Power safety mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
14.7.1 MDIS bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
14.7.2 STOP mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
14.8 Interrupts and DMA requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
14.8.1 DMA support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
14.8.2 CTU faults and errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
14.8.3 CTU interrupt/DMA requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
14.9 Conversion time evaluate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Contents RM0342
8/1389 DocID023986 Rev 2
14.10 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
14.10.1 Trigger Generator Subunit Input Selection Register (TGSISR) . . . . . . 283
14.10.2 Trigger Generator Subunit Control Register (TGSCR) . . . . . . . . . . . . 285
14.10.3 TxCR - Trigger x Compare Register (x = 0,...,7) . . . . . . . . . . . . . . . . . 285
14.10.4 TGS Counter Compare Register (TGSCCR) . . . . . . . . . . . . . . . . . . . . 286
14.10.5 TGS Counter Reload Register (TGSCRR) . . . . . . . . . . . . . . . . . . . . . 286
14.10.6 Commands List Control Register 1 (CLCR1) . . . . . . . . . . . . . . . . . . . . 287
14.10.7 Commands List Control Register 2 (CLCR2) . . . . . . . . . . . . . . . . . . . . 287
14.10.8 Trigger handler control registers (THCR1 and THCR2) . . . . . . . . . . . . 288
14.10.9 Commands List Register x (x = 1,...,24) (CLRx) . . . . . . . . . . . . . . . . . 289
14.10.10 Cross Triggering Unit Error Flag Register (CTUEFR) . . . . . . . . . . . . . 291
14.10.11 Cross Triggering Unit Interrupt Flag Register (CTUIFR) . . . . . . . . . . . 292
14.10.12 Cross Triggering Unit Interrupt/DMA Register (CTUIR) . . . . . . . . . . . . 293
14.10.13 Control On Time Register (COTR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
14.10.14 Cross Triggering Unit Control Register (CTUCR) . . . . . . . . . . . . . . . . 294
14.10.15 Cross Triggering Unit Digital Filter (CTUDF) . . . . . . . . . . . . . . . . . . . . 296
14.10.16 Cross Triggering Unit Expected Value A (CTU_EXP_A) . . . . . . . . . . . 296
14.10.17 Cross Triggering Unit Expected Value B (CTU_EXP_B) . . . . . . . . . . . 297
14.10.18 Cross Triggering Unit Counter Range (CTU_CNTRNG) . . . . . . . . . . . 297
14.10.19 FIFO DMA Control Register (FDCR) . . . . . . . . . . . . . . . . . . . . . . . . . . 297
14.10.20 FIFO Control Register (FCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
14.10.21 FIFO Threshold (FTH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
14.10.22 FIFO Status Register (FST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
14.10.23 FIFO Right aligned data x (x = 0,...,3) (FRx) . . . . . . . . . . . . . . . . . . . . 302
14.10.24 FIFO signed left aligned data x (x = 0,...,3) (FLx) . . . . . . . . . . . . . . . . 302
15 Crossbar Switch (XBAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
15.1 Information specific to this device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
15.1.1 Register availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
15.1.2 MPR reset value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
15.1.3 max_halt signal unavailable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
15.1.4 Logical master IDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
15.1.5 Master port allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
15.1.6 Slave port allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
15.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
15.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
15.2.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
DocID023986 Rev 2 9/1389
RM0342 Contents
30
15.2.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
15.2.4 General operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
15.3 XBAR registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
15.3.1 Register summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
15.3.2 XBAR register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
15.3.3 Coherency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.4 Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.4.1 Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
15.4.2 Priority assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
15.4.3 Master port functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
15.4.4 Slave port functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
15.5 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
15.6 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
15.6.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
15.6.2 Master ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
15.6.3 Slave ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
16 Cyclic Redundancy Checker (CRC) Unit . . . . . . . . . . . . . . . . . . . . . . . 329
16.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
16.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
16.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
16.3 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
16.4 Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
16.5 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
16.5.1 CRC Configuration Register (CRC_CFG) . . . . . . . . . . . . . . . . . . . . . . 330
16.5.2 CRC Input Register (CRC_INP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
16.5.3 CRC Current Status Register (CRC_CSTAT) . . . . . . . . . . . . . . . . . . . 332
16.5.4 CRC Output Register (CRC_OUTP) . . . . . . . . . . . . . . . . . . . . . . . . . . 333
16.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
16.7 Use cases and limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
17 Deserial Serial Peripheral Interface (DSPI) . . . . . . . . . . . . . . . . . . . . . 338
17.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
17.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
17.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
17.1.3 DSPI configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Contents RM0342
10/1389 DocID023986 Rev 2
17.1.4 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
17.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
17.2.1 PCS[0]/SS — Peripheral Chip Select/Slave Select . . . . . . . . . . . . . . . 342
17.2.2 PCS[1] - PCS[3] — Peripheral Chip Selects 1–3 . . . . . . . . . . . . . . . . . 343
17.2.3 PCS[4] — Peripheral Chip Select 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.2.4 PCS[5]/PCSS — Peripheral Chip Select 5/Peripheral Chip Select Strobe
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.2.5 PCS[6] - PCS[7] — Peripheral Chip Selects 6–7 . . . . . . . . . . . . . . . . . 343
17.2.6 SIN — Serial Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.2.7 SOUT — Serial Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.2.8 SCK — Serial Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.3.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
17.3.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
17.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
17.4.1 Start and stop of DSPI transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
17.4.2 Serial Peripheral Interface (SPI) configuration . . . . . . . . . . . . . . . . . . 364
17.4.3 DSPI baud rate and clock delay generation . . . . . . . . . . . . . . . . . . . . 366
17.4.4 Transfer formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
17.4.5 Continuous serial communications clock . . . . . . . . . . . . . . . . . . . . . . . 377
17.4.6 Interrupts/DMA requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
17.4.7 Power saving features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
17.5 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
17.5.1 How to manage DSPI queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
17.5.2 Switching master and slave mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
17.5.3 Baud rate settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
17.5.4 Delay settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
17.5.5 Calculation of FIFO pointer addresses . . . . . . . . . . . . . . . . . . . . . . . . 383
18 e200z4d Core Complex Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
18.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
18.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
18.2.1 Execution unit features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
18.2.2 L1 Cache features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
18.2.3 Memory management unit features . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
18.2.4 Exernal core complex interface features . . . . . . . . . . . . . . . . . . . . . . . 390
18.2.5 Nexus 3+ features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
DocID023986 Rev 2 11/1389
RM0342 Contents
30
18.3 Programming model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
18.3.1 Register set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
18.3.2 Instruction set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
18.3.3 Interrupts and exception handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
18.4 Microarchitecture summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
18.5 Availability of detailed documentation . . . . . . . . . . . . . . . . . . . . . . . . . . 398
19 eDMA Channel Mux (DMA_MUX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
19.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
19.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
19.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
19.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
19.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
19.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
19.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
19.3.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
19.4 DMA_MUX request source slot mapping . . . . . . . . . . . . . . . . . . . . . . . . 402
19.5 DMA_MUX trigger inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
19.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
19.6.1 DMA channels with periodic triggering capability . . . . . . . . . . . . . . . . 403
19.6.2 DMA channels with no triggering capability . . . . . . . . . . . . . . . . . . . . . 405
19.6.3 "Always Enabled" DMA sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
19.7 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
19.7.1 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
19.7.2 Enabling and configuring sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
20 Enhanced Direct Memory Access (eDMA) . . . . . . . . . . . . . . . . . . . . . 411
20.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .411
20.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
20.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
20.2 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
20.2.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
20.3 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
20.3.1 eDMA microarchitecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
20.3.2 eDMA basic data flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
20.3.3 eDMA performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Contents RM0342
12/1389 DocID023986 Rev 2
20.4 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
20.4.1 eDMA initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
20.4.2 eDMA programming errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
20.4.3 eDMA arbitration mode considerations . . . . . . . . . . . . . . . . . . . . . . . . 452
20.4.4 eDMA transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
20.4.5 TCD status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
20.4.6 Channel linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
20.4.7 Dynamic programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
21 Enhanced Motor Control Timer (eTimer) . . . . . . . . . . . . . . . . . . . . . . 458
21.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
21.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
21.3 External signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
21.3.1 TIO[5:0] - Timer Input/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
21.3.2 TAI[2:0] - Timer Auxiliary Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
21.4 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
21.4.1 Module memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
21.4.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
21.4.3 Timer channel registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
21.4.4 Watchdog timer registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
21.4.5 Configuration registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
21.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
21.5.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
21.5.2 Counting modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
21.5.3 Other features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
21.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
21.7 DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
22 Error Correction Status Module (ECSM) . . . . . . . . . . . . . . . . . . . . . . . 491
22.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
22.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
22.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
22.4 Memory map and registers description . . . . . . . . . . . . . . . . . . . . . . . . . 491
22.4.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
22.4.2 Registers description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
DocID023986 Rev 2 13/1389
RM0342 Contents
30
23 Fault Collection and Control Unit (FCCU) . . . . . . . . . . . . . . . . . . . . . . 518
23.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
23.1.1 Glossary and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
23.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
23.2.1 Standard features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
23.3 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
23.4 Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
23.5 Register interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
23.6 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 521
23.6.1 FCCU Control Register (FCCU_CTRL) . . . . . . . . . . . . . . . . . . . . . . . . 523
23.6.2 FCCU CTRL Key Register (FCCU_CTRLK) . . . . . . . . . . . . . . . . . . . . 526
23.6.3 FCCU Configuration Register (FCCU_CFG) . . . . . . . . . . . . . . . . . . . . 526
23.6.4 FCCU CF Configuration Register (FCCU_CF_CFG0..3) . . . . . . . . . . 528
23.6.5 FCCU NCF Configuration Register (FCCU_NCF_CFG0..3) . . . . . . . . 529
23.6.6 FCCU CFS Configuration Register (FCCU_CFS_CFG0..7) . . . . . . . . 530
23.6.7 FCCU NCFS Configuration Register (FCCU_NCFS_CFG0..7) . . . . . 532
23.6.8 FCCU CF Status Register (FCCU_CF_S0..3) . . . . . . . . . . . . . . . . . . . 532
23.6.9 FCCU CF Key Register (FCCU_CFK) . . . . . . . . . . . . . . . . . . . . . . . . . 534
23.6.10 FCCU NCF Status Register (FCCU_NCF_S0..3) . . . . . . . . . . . . . . . . 534
23.6.11 FCCU NCF Key Register (FCCU_NCFK) . . . . . . . . . . . . . . . . . . . . . . 536
23.6.12 FCCU NCF Enable register (FCCU_NCF_E0..3) . . . . . . . . . . . . . . . . 537
23.6.13 FCCU NCF Time-out Enable Register (FCCU_NCF_TOE0..3) . . . . . . 538
23.6.14 FCCU NCF Time-out Register (FCCU_NCF_TO) . . . . . . . . . . . . . . . . 538
23.6.15 FCCU CFG Time-out register (FCCU_CFG_TO) . . . . . . . . . . . . . . . . 539
23.6.16 FCCU IO Control Register (FCCU_EINOUT) . . . . . . . . . . . . . . . . . . . 540
23.6.17 FCCU Status Register (FCCU_STAT) . . . . . . . . . . . . . . . . . . . . . . . . . 541
23.6.18 FCCU SC Freeze Status Register (FCCU_SCFS) . . . . . . . . . . . . . . . 542
23.6.19 FCCU CF Fake Register (FCCU_CFF) . . . . . . . . . . . . . . . . . . . . . . . . 543
23.6.20 FCCU NCF Fake Register (FCCU_NCFF) . . . . . . . . . . . . . . . . . . . . . 544
23.6.21 FCCU IRQ Status Register (FCCU_IRQ_STAT) . . . . . . . . . . . . . . . . . 545
23.6.22 FCCU IRQ Enable Register (FCCU_IRQ_EN) . . . . . . . . . . . . . . . . . . 546
23.6.23 FCCU XTMR Register (FCCU_XTMR) . . . . . . . . . . . . . . . . . . . . . . . . 547
23.6.24 FCCU MCS Register (FCCU_MCS) . . . . . . . . . . . . . . . . . . . . . . . . . . 548
23.7 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
23.7.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
23.7.2 FSM description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
Contents RM0342
14/1389 DocID023986 Rev 2
23.7.3 Self checking capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
23.7.4 Reset interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
23.7.5 Fault priority scheme and nesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
23.7.6 Fault recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
23.7.7 WKUP/NMI interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
23.7.8 STCU interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
23.7.9 NVM interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
23.7.10 FCCU_F interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
23.7.11 Fault mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
24 Flash Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
24.1 Flash memory block (C90FL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
24.1.1 C90FL block overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
24.1.2 C90FL block features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
24.1.3 C90FL modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
24.1.4 C90FL block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
24.1.5 C90FL memory map and register definition . . . . . . . . . . . . . . . . . . . . . 574
24.1.6 C90FL flash memory functional description (User mode) . . . . . . . . . . 596
24.1.7 User option bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604
24.1.8 Test flash memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
24.2 Dual port platform flash memory controller (PFLASH2P) . . . . . . . . . . . . 606
24.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606
24.2.2 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
24.2.3 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
25 FlexCAN Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
25.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
25.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
25.1.2 FlexCAN module features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
25.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622
25.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
25.2.1 CAN Rx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
25.2.2 CAN Tx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
25.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
25.3.1 FlexCAN memory mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
25.3.2 Message buffer structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
25.3.3 Rx FIFO structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
DocID023986 Rev 2 15/1389
RM0342 Contents
30
25.3.4 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
25.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
25.4.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
25.4.2 Transmit process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647
25.4.3 Arbitration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
25.4.4 Receive process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
25.4.5 Matching process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
25.4.6 Data coherence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
25.4.7 Rx FIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
25.4.8 CAN protocol related features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
25.4.9 Modes of operation details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
25.4.10 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
25.4.11 Bus interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
25.5 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
25.5.1 FlexCAN initialization sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
25.5.2 FlexCAN addressing and RAM size configurations . . . . . . . . . . . . . . . 663
26 Flexible Motor Control Pulse Width Modulator Module (FlexPWM) 664
26.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
26.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
26.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
26.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
26.1.4 Block diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
26.2 External signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
26.2.1 PWMA[n] and PWMB[n] - External PWM pair . . . . . . . . . . . . . . . . . . . 668
26.2.2 PWMX[n] - Auxiliary PWM signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
26.2.3 FAULT[n] - Fault inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
26.2.4 EXT_SYNC - External synchronization signal . . . . . . . . . . . . . . . . . . . 669
26.2.5 EXT_FORCE - External output force signal . . . . . . . . . . . . . . . . . . . . 669
26.2.6 EXTA[n] and EXTB[n] - Alternate PWM control signals . . . . . . . . . . . . 669
26.2.7 OUT_TRIG0[n] and OUT_TRIG1[n] - Output triggers . . . . . . . . . . . . . 669
26.2.8 EXT_CLK - External clock signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
26.3 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
26.3.1 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
26.3.2 PWM capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669
26.3.3 Functional details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
26.3.4 PWM generator loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
Contents RM0342
16/1389 DocID023986 Rev 2
26.4 Memory map and registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698
26.4.1 Module memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698
26.4.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
26.4.3 Submodule registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
26.4.4 Configuration registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
26.4.5 Fault channel registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722
26.5 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
26.6 DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
27 FlexRay Communication Controller . . . . . . . . . . . . . . . . . . . . . . . . . . 728
27.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
27.1.1 Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
27.1.2 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
27.1.3 Color coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729
27.1.4 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729
27.1.5 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731
27.1.6 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732
27.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733
27.2.1 Detailed signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733
27.3 Controller host interface clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
27.4 Protocol engine clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
27.4.1 Oscillator clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
27.4.2 FMPLL clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
27.5 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 734
27.5.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735
27.5.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 738
27.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820
27.6.1 Message buffer concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821
27.6.2 Physical message buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 821
27.6.3 Message buffer types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822
27.6.4 FlexRay memory area layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827
27.6.5 Physical message buffer description . . . . . . . . . . . . . . . . . . . . . . . . . . 830
27.6.6 Individual message buffer functional description . . . . . . . . . . . . . . . . . 840
27.6.7 Individual message buffer search . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865
27.6.8 Individual message buffer reconfiguration . . . . . . . . . . . . . . . . . . . . . . 868
27.6.9 Receive FIFOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 869
DocID023986 Rev 2 17/1389
RM0342 Contents
30
27.6.10 Channel device modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875
27.6.11 External clock synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877
27.6.12 Sync frame ID and sync frame deviation tables . . . . . . . . . . . . . . . . . 878
27.6.13 MTS generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881
27.6.14 Key slot transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882
27.6.15 Sync frame filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882
27.6.16 Strobe signal support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883
27.6.17 Timer support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884
27.6.18 Slot status monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
27.6.19 System bus access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889
27.6.20 Interrupt support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
27.6.21 Lower bit rate support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894
27.6.22 PE data memory (PE DRAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895
27.6.23 CHI lookup table memory (CHI LRAM) . . . . . . . . . . . . . . . . . . . . . . . . 896
27.6.24 Memory content error detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897
27.6.25 Memory error injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901
27.7 Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902
27.7.1 Initialization sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902
27.7.2 CHI LRAM error injection out of POC:default config . . . . . . . . . . . . . . 904
27.7.3 PE DRAM error injection out of POC:default config . . . . . . . . . . . . . . 904
27.7.4 Shut down sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904
27.7.5 Number of usable message buffers . . . . . . . . . . . . . . . . . . . . . . . . . . . 904
27.7.6 Protocol control command execution . . . . . . . . . . . . . . . . . . . . . . . . . . 905
27.7.7 Message buffer search on simple message buffer configuration . . . . . 906
28 Frequency Modulated Phase Locked Loop (FMPLL) . . . . . . . . . . . . . 909
28.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
28.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
28.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
28.4 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
28.5 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
28.5.1 Control Register (CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
28.5.2 Modulation Register (MR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 913
28.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914
28.6.1 Normal mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914
28.6.2 Progressive clock switching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915
Contents RM0342
18/1389 DocID023986 Rev 2
28.6.3 Normal Mode with frequency modulation . . . . . . . . . . . . . . . . . . . . . . 916
28.6.4 Powerdown mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917
28.7 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917
28.8 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917
29 Interrupt Controller (INTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919
29.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919
29.1.1 Module overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919
29.1.2 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919
29.1.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920
29.2 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
29.2.1 Normal mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921
29.2.2 Debug mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
29.2.3 Stop mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
29.2.4 Factory test mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
29.3 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
29.4 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
29.4.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
29.4.2 Register information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923
29.4.3 INTC Block Configuration Register (INTC_BCR) . . . . . . . . . . . . . . . . 923
29.4.4 INTC Current Priority Register for Processor 0 (INTC_CPR_PRC0) . 924
29.4.5 INTC Interrupt Acknowledge Register for Processor 0
(INTC_IACKR_PRC0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925
29.4.6 INTC End of Interrupt Register for Processor 0 (INTC_EOIR_PRC0) . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
29.4.7 INTC Software Set/Clear Interrupt Registers (INTC_SSCIR0_3 -
INTC_SSCIR4_7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
29.4.8 INTC Priority Select Registers (INTC_PSR0_3 - INTC_PSR252_255) 928
29.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929
29.5.1 Interrupt request sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929
29.5.2 Priority management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930
29.5.3 Handshaking with processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931
29.6 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933
29.6.1 Initialization flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933
29.6.2 Interrupt exception handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934
29.6.3 Impact of code compression on vector table . . . . . . . . . . . . . . . . . . . . 936
29.6.4 ISR, RTOS, and task hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936
DocID023986 Rev 2 19/1389
RM0342 Contents
30
29.6.5 Order of execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936
29.6.6 Priority ceiling protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937
29.6.7 Selecting priorities according to request rates and deadlines . . . . . . . 938
29.6.8 Software settable interrupt requests . . . . . . . . . . . . . . . . . . . . . . . . . . 939
29.6.9 Lowering priority within an ISR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940
29.6.10 Negating an interrupt request outside of its ISR . . . . . . . . . . . . . . . . . 940
29.6.11 Examining LIFO contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941
29.7 Interrupt sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941
30 JTAG Controller (JTAGC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
30.1 IIntroduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
30.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
30.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952
30.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952
30.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
30.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
30.2.2 Detailed signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953
30.3 Register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
30.3.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
30.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
30.4.1 JTAGC reset configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
30.4.2 IEEE 1149.1-2001 (JTAG) test access port . . . . . . . . . . . . . . . . . . . . . 957
30.4.3 TAP controller state machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
30.4.4 JTAGC block instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960
30.4.5 Boundary scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962
30.5 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962
31 LIN Controller (LINFlexD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
31.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
31.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
31.2.1 LIN mode features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
31.2.2 UART mode features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
31.3 LIN protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
31.3.1 Dominant and recessive logic levels . . . . . . . . . . . . . . . . . . . . . . . . . . 965
31.3.2 LIN frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
31.3.3 LIN header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966
Contents RM0342
20/1389 DocID023986 Rev 2
31.3.4 Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 967
31.4 LINFlexD and software intervention . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
31.5 Summary of operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
31.6 Controller-level operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969
31.6.1 Initialization mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969
31.6.2 Normal mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
31.6.3 Sleep (low-power) mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
31.7 LIN modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
31.7.1 Master mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
31.7.2 Slave mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971
31.7.3 Slave mode with identifier filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974
31.7.4 Slave mode with automatic resynchronization . . . . . . . . . . . . . . . . . . . 976
31.8 Test modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
31.8.1 Loop back mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
31.8.2 Self test mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
31.9 UART mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979
31.9.1 Data frame structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979
31.9.2 Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980
31.9.3 UART transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981
31.9.4 UART receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982
31.10 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 984
31.10.1 LIN Control Register 1 (LINCR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985
31.10.2 LIN Interrupt Enable Register (LINIER) . . . . . . . . . . . . . . . . . . . . . . . . 988
31.10.3 LIN Status Register (LINSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990
31.10.4 LIN Error Status Register (LINESR) . . . . . . . . . . . . . . . . . . . . . . . . . . 993
31.10.5 UART Mode Control Register (UARTCR) . . . . . . . . . . . . . . . . . . . . . . 995
31.10.6 UART Mode Status Register (UARTSR) . . . . . . . . . . . . . . . . . . . . . . . 997
31.10.7 LIN Timeout Control Status Register (LINTCSR) . . . . . . . . . . . . . . . . 1000
31.10.8 LIN Output Compare Register (LINOCR) . . . . . . . . . . . . . . . . . . . . . 1001
31.10.9 LIN Timeout Control Register (LINTOCR) . . . . . . . . . . . . . . . . . . . . . 1002
31.10.10 LIN Fractional Baud Rate Register (LINFBRR) . . . . . . . . . . . . . . . . . 1003
31.10.11 LIN Integer Baud Rate Register (LINIBRR) . . . . . . . . . . . . . . . . . . . . 1003
31.10.12 LIN Checksum Field Register (LINCFR) . . . . . . . . . . . . . . . . . . . . . . 1004
31.10.13 LIN Control Register 2 (LINCR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1005
31.10.14 Buffer Identifier Register (BIDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006
31.10.15 Buffer Data Register Least Significant (BDRL) . . . . . . . . . . . . . . . . . 1007
/