SPC56EC70B3

STMicroelectronics SPC56EC70B3 Reference guide

  • Hello! I am an AI chatbot trained to assist you with the STMicroelectronics SPC56EC70B3 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!
January 2015 DocID18196 Rev 6 1/1439
1
RM0070
Reference manual
SPC564Bxx, SPC56ECxx
32-bit MCU family built on the embedded Power Architecture®
Introduction
The SPC564Bxx and SPC56ECxx is a family of Power Architecture® based microcontrollers
that target automotive vehicle body and gateway applications such as:
ï‚·Central body controller
ï‚·Smart junction boxes
ï‚·Front modules
ï‚·High end gateway
ï‚·Combined Body controller and gateway
The SPC564Bxx and SPC56ECxx family expands the range of the SPC560B/C
microcontroller family. It provides the scalability needed to implement platform approaches
and delivers the performance required by increasingly sophisticated software architectures.
The advanced and cost-efficient host processor core of the SPC564Bxx and SPC56ECxx
automotive controller family complies with the Power Architecture embedded category,
which is 100 percent user-mode compatible with the original Power Architecture user
instruction set architecture (UISA). It operates at speeds of up to 120 MHz and offers high
performance processing optimized for low power consumption. It also capitalizes on the
nominal available development infrastructure of current Power Architecture devices and is
supported with software drivers, operating systems and configuration code to assist with
users implementations.
www.st.com
Contents RM0070
2/1439 DocID18196 Rev 6
Contents
1 Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
1.2 Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
1.3 Guide to this reference manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
1.4 Register description conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
1.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
1.6 How to use the SPC564Bxx and SPC56ECxx documents . . . . . . . . . . . 66
1.6.1 The SPC564Bxx and SPC56ECxx document set . . . . . . . . . . . . . . . . . 66
1.6.2 Reference manual content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
1.7 Using the SPC564Bxx and SPC56ECxx . . . . . . . . . . . . . . . . . . . . . . . . . 68
1.7.1 Hardware design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
1.7.2 Input/output pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
1.7.3 Software design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
1.7.4 Other features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.1 The SPC564Bxx and SPC56ECxx microcontroller family . . . . . . . . . . . . 72
2.2 SPC564Bxx and SPC56ECxx device comparison . . . . . . . . . . . . . . . . . . 72
2.3 Device block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
2.4 Feature summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
2.4.1 High-performance e200z4d core processor . . . . . . . . . . . . . . . . . . . . . 76
2.4.2 e200z0h core processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.4.3 Memory Built-In Self Test (MBIST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.4.4 Enhanced Direct Memory Access Controller (eDMA) . . . . . . . . . . . . . . 77
2.4.5 Error Correction Status Module (ECSM) . . . . . . . . . . . . . . . . . . . . . . . . 78
2.4.6 Crossbar Switch (XBAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.4.7 Memory Protection Unit (MPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.4.8 Interrupt Controller (INTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
2.4.9 System clocks and clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.4.10 System Integration Unit Lite (SIUL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.4.11 Software Watchdog Timer (SWT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.4.12 Flash memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.4.13 On-chip SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
DocID18196 Rev 6 3/1439
RM0070 Contents
26
2.4.14 Boot Assist Module (BAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
2.4.15 System Status and Configuration Module (SSCM) . . . . . . . . . . . . . . . . 84
2.4.16 Enhanced Modular Input Output System (eMIOS) . . . . . . . . . . . . . . . . 84
2.4.17 Analog-to-Digital Converter (ADC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.4.18 Cross Triggering Unit (CTU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
2.4.19 Deserial Serial Peripheral Interface (DSPI) . . . . . . . . . . . . . . . . . . . . . . 87
2.4.20 Serial communication interface (LINFlexD) . . . . . . . . . . . . . . . . . . . . . . 88
2.4.21 Controller Area Network (FlexCAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.4.22 Fast Ethernet Controller (FEC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.4.23 Cryptographic Services Engine (CSE) . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.4.24 Dual-Channel FlexRay Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.4.25 Inter-IC Communications (I2C) module . . . . . . . . . . . . . . . . . . . . . . . . . 93
2.4.26 Periodic Interrupt Timer with Real-Time Interrupt (PIT_RTI) . . . . . . . . . 93
2.4.27 System Timer Module (STM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.4.28 Real Time Counter/ Autonomous Periodic Interrupt (RTC/API) . . . . . . . 94
2.4.29 Nexus Development Interface (NDI) . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
2.4.30 JTAG controller (JTAGC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2.4.31 On-chip voltage regulator (VREG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
3 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4 Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.1 Package pinouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.2 Pad configuration during reset phases . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.3 Pad configuration during standby mode exit . . . . . . . . . . . . . . . . . . . . . 105
4.4 Voltage supply pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.5 Pad types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.6 System pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.7 Functional ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.8 Nexus 3+ pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5 Microcontroller Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.1 Boot mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.1.1 Flash memory boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
5.1.2 Serial boot mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.1.3 Censorship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Contents RM0070
4/1439 DocID18196 Rev 6
5.2 Boot Assist Module (BAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
5.2.1 BAM software flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
5.2.2 LINFlexD (RS232) boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
5.2.3 FlexCAN boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
5.3 System Status and Configuration Module (SSCM) . . . . . . . . . . . . . . . . 159
5.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
5.3.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
5.3.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
5.3.4 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . 161
6 Clock Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
6.1 Clock architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
6.2 Clock gating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6.3 Fast external crystal oscillator (FXOSC) digital interface . . . . . . . . . . . . 175
6.3.1 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
6.3.2 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
6.3.3 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
6.4 Slow external crystal oscillator (SXOSC) digital interface . . . . . . . . . . . 178
6.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
6.4.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
6.4.3 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
6.4.4 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
6.5 Slow internal RC oscillator (SIRC) digital interface . . . . . . . . . . . . . . . . 180
6.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.5.2 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.5.3 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
6.6 Fast internal RC oscillator (FIRC) digital interface . . . . . . . . . . . . . . . . . 182
6.6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
6.6.2 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
6.6.3 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
6.7 Frequency-modulated phase-locked loop (FMPLL) . . . . . . . . . . . . . . . . 184
6.7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
6.7.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
6.7.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
6.7.4 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
6.7.5 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
DocID18196 Rev 6 5/1439
RM0070 Contents
26
6.7.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
6.7.7 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
6.8 Clock monitor unit (CMU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
6.8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
6.8.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
6.8.3 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.8.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
6.8.5 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . 195
7 Clock Generation Module (MC_CGM) . . . . . . . . . . . . . . . . . . . . . . . . . 200
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
7.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.3 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.4 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.4.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
7.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
7.5.1 System clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
7.5.2 Auxiliary clock generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
7.5.3 Dividers functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
7.5.4 Output Clock Multiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
7.5.5 Output Clock Division Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
8 Mode Entry Module (MC_ME) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
8.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
8.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
8.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
8.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
8.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
8.3.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
8.3.2 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
8.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
8.4.1 Mode transition request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
8.4.2 Mode details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
8.4.3 Mode transition process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
8.4.4 Protection of mode configuration registers . . . . . . . . . . . . . . . . . . . . . 273
Contents RM0070
6/1439 DocID18196 Rev 6
8.4.5 Mode transition interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
8.4.6 Peripheral clock gating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
8.4.7 Application example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
9 Reset Generation Module (MC_RGM) . . . . . . . . . . . . . . . . . . . . . . . . . 278
9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
9.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
9.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
9.1.3 Reset sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
9.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
9.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
9.3.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
9.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
9.4.1 Reset state machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
9.4.2 Destructive Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
9.4.3 External Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
9.4.4 Functional Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
9.4.5 STANDBY entry sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
9.4.6 Alternate event generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
9.4.7 Boot mode capturing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
10 Power Control Unit (MC_PCU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
10.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
10.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
10.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
10.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . 303
10.3.1 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
10.3.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
10.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
10.4.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
10.4.2 Reset / Power-On Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
10.4.3 MC_PCU configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
10.4.4 Mode transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
10.5 Initialization information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .311
10.6 Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .311
DocID18196 Rev 6 7/1439
RM0070 Contents
26
10.6.1 STANDBY mode considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
11 Voltage Regulators and Power Supplies . . . . . . . . . . . . . . . . . . . . . . . 312
11.1 Voltage regulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
11.1.1 High power regulator (HPREG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
11.1.2 Low power regulator (LPREG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
11.1.3 LVDs and POR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
11.1.4 VREG digital interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
11.1.5 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
11.1.6 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
11.2 Power supply strategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
11.3 Power domain organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
12 Wakeup Unit (WKPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
12.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
12.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
12.3 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 321
12.3.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
12.3.2 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
12.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
12.4.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
12.4.2 Non-maskable interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
12.4.3 External wakeups/interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
12.4.4 On-chip wakeups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
13 Real Time Clock / Autonomous Periodic Interrupt (RTC/API) . . . . . . 332
13.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
13.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
13.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
13.3.1 Functional mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
13.3.2 Debug mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
13.4 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
13.4.1 RTC Supervisor Control Register (RTCSUPV) . . . . . . . . . . . . . . . . . . 335
13.4.2 RTC Control Register (RTCC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
13.4.3 RTC Status Register (RTCS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
13.4.4 RTC Counter Register (RTCCNT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Contents RM0070
8/1439 DocID18196 Rev 6
13.5 RTC functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
13.6 API functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
14 CAN Sampler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
14.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
14.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
14.3 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 342
14.3.1 Control Register (CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
14.3.2 CAN Sampler Sample Registers 0–11 . . . . . . . . . . . . . . . . . . . . . . . . . 343
14.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
14.4.1 Enabling/disabling the CAN sampler . . . . . . . . . . . . . . . . . . . . . . . . . . 344
14.4.2 Selecting the Rx port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
14.4.3 Baudrate generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
15 e200z0h Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
15.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
15.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
15.2.1 Microarchitecture summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
15.3 Core registers and programmer’s model . . . . . . . . . . . . . . . . . . . . . . . . 350
15.3.1 Unimplemented SPRs and read-only SPRs . . . . . . . . . . . . . . . . . . . . 352
15.4 Instruction summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
16 e200z4d Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
16.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
16.1.1 Execution Unit Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
16.1.2 L1 Cache features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
16.1.3 Memory management unit features . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
16.1.4 External core complex interface features . . . . . . . . . . . . . . . . . . . . . . 358
16.1.5 Nexus 3+ features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
16.2 Programming model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
16.2.1 Register set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
16.2.2 Instruction set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
16.2.3 Interrupts and Exception Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
16.3 Microarchitecture summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
16.4 Availability of detailed documentation . . . . . . . . . . . . . . . . . . . . . . . . . . 365
DocID18196 Rev 6 9/1439
RM0070 Contents
26
17 Enhanced Direct Memory Access (eDMA) . . . . . . . . . . . . . . . . . . . . . 366
17.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
17.2 General features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
17.3 Device-specific features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
17.4 Memory map/register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
17.4.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
17.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
17.5.1 eDMA Basic data flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
17.5.2 eDMA performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
17.6 Initialization / Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
17.6.1 eDMA Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
17.6.2 DMA programming errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
17.6.3 DMA request assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
17.6.4 DMA Arbitration Mode Considerations . . . . . . . . . . . . . . . . . . . . . . . . 402
17.6.5 DMA transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
17.6.6 TCD status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
17.6.7 Channel linking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
17.6.8 Dynamic programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
18 eDMA Channel Multiplexer (DMA_MUX) . . . . . . . . . . . . . . . . . . . . . . . 412
18.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
18.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
18.2.1 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
18.3 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
18.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
18.4 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
18.4.1 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
18.4.2 DMA_MUX inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
18.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
18.5.1 DMA Channels with periodic triggering capability . . . . . . . . . . . . . . . . 417
18.5.2 DMA Channels with no triggering capability . . . . . . . . . . . . . . . . . . . . 419
18.5.3 "Always Enabled" DMA Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
18.6 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
18.6.1 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
18.6.2 Enabling and Configuring Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Contents RM0070
10/1439 DocID18196 Rev 6
19 Interrupt Controller (INTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
19.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
19.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
19.3 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
19.4 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
19.4.1 Software Vector mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
19.4.2 Hardware Vector mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
19.5 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 433
19.5.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
19.5.2 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
19.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
19.7 SIUL external interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
19.8 Wakeup line interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
19.9 Non-maskable interrupt (NMI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
19.9.1 Interrupt Request sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
19.9.2 Priority management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
19.9.3 Handshaking with processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
19.10 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
19.10.1 Initialization flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
19.10.2 Interrupt exception handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
19.10.3 ISR, RTOS, and Task hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
19.10.4 Priority Ceiling protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
19.10.5 Selecting Priorities According to Request Rates and Deadlines . . . . . 471
19.10.6 Software configurable Interrupt Requests . . . . . . . . . . . . . . . . . . . . . . 472
19.10.7 Lowering Priority Within an ISR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
19.10.8 Negating an Interrupt Request Outside of its ISR . . . . . . . . . . . . . . . . 473
19.10.9 Examining LIFO contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
20 Crossbar Switch (XBAR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
20.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
20.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
20.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
20.2.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
20.2.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
20.2.4 General operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
DocID18196 Rev 6 11/1439
RM0070 Contents
26
20.3 XBAR registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
20.3.1 Register summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
20.3.2 XBAR register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
20.3.3 Coherency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
20.4 Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
20.4.1 Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
20.4.2 Priority assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
20.4.3 Master Port Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
20.4.4 Slave Port Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
20.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
20.6 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
20.6.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
20.6.2 Master Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
20.6.3 Slave Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
21 Memory protection unit (MPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
21.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
21.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
21.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
21.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
21.1.4 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
21.2 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 499
21.2.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
21.2.2 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
21.3 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
21.3.1 Access evaluation macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
21.3.2 Putting it all together and AHB error terminations . . . . . . . . . . . . . . . . 516
21.4 Initialization information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
21.5 Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
22 Semaphores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
22.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
22.1.1 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
22.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
22.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
22.2 Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
Contents RM0070
12/1439 DocID18196 Rev 6
22.3 Memory map and registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
22.3.1 Module memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
22.3.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
22.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
22.4.1 Semaphore usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
22.5 Initialization information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
22.6 Application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
22.7 DMA requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
22.8 Interrupt requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
23 Performance Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
23.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
23.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
23.3 Configuring hardware features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
23.3.1 Branch target buffer (BTB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
23.3.2 Frequency-modulated PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
23.3.3 Flash memory bus interface unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
23.3.4 Crossbar switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
23.3.5 Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
23.3.6 e200z4d Memory Management Unit (MMU) . . . . . . . . . . . . . . . . . . . . 536
23.4 Application software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
23.4.1 Compiler optimizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
23.4.2 e200z4d Signal Processing Extension . . . . . . . . . . . . . . . . . . . . . . . . 538
23.4.3 Hardware single precision floating point . . . . . . . . . . . . . . . . . . . . . . . 539
23.4.4 Variable Length Encoding (VLE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
23.5 Peripherals and general application guidelines . . . . . . . . . . . . . . . . . . . 540
23.6 Performance optimization checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
23.6.1 Hardware configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
23.6.2 Software configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
23.6.3 Peripherals and general application guidelines . . . . . . . . . . . . . . . . . . 541
24 System Integration Unit Lite (SIUL) . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
24.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
24.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
24.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
DocID18196 Rev 6 13/1439
RM0070 Contents
26
24.4 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
24.4.1 Detailed signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
24.5 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 545
24.5.1 SIUL memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
24.5.2 Register protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546
24.5.3 Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546
24.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
24.6.1 Pad control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
24.6.2 General purpose input and output pads (GPIO) . . . . . . . . . . . . . . . . . 577
24.6.3 External interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
24.7 Pin muxing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
25 Inter-Integrated Circuit Bus Controller Module (I2C) . . . . . . . . . . . . . 580
25.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
25.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
25.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
25.1.3 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
25.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
25.2.1 SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
25.2.2 SDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
25.3 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 581
25.3.1 Module memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
25.3.2 I2C Bus Address Register (IBAD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
25.3.3 I2C Bus Frequency Divider Register (IBFD) . . . . . . . . . . . . . . . . . . . . 582
25.3.4 I2C Bus Control Register (IBCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
25.3.5 I2C Bus Status Register (IBSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
25.3.6 I2C Bus Data I/O Register (IBDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
25.3.7 I2C Bus Interrupt Config Register (IBIC) . . . . . . . . . . . . . . . . . . . . . . . 592
25.4 DMA Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
25.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593
25.5.1 I-Bus protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593
25.5.2 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
25.6 Initialization/application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598
25.6.1 I2C programming examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598
25.6.2 DMA application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
Contents RM0070
14/1439 DocID18196 Rev 6
26 LIN Controller (LINFlexD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
26.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
26.2 Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
26.2.1 LIN mode features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
26.2.2 UART mode features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
26.3 The LIN protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
26.3.1 Dominant and recessive logic levels . . . . . . . . . . . . . . . . . . . . . . . . . . 610
26.3.2 LIN frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
26.3.3 LIN header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
26.3.4 Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612
26.4 LINFlexD and software intervention . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
26.5 Summary of operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
26.6 Controller-level operating modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
26.6.1 Initialization mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
26.6.2 Normal mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
26.6.3 Sleep (low-power) mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
26.7 LIN modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
26.7.1 Master mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615
26.7.2 Slave mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617
26.7.3 Slave mode with identifier filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619
26.7.4 Slave mode with automatic resynchronization . . . . . . . . . . . . . . . . . . . 622
26.8 Test modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
26.8.1 Loop Back mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623
26.8.2 Self Test mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
26.9 UART mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
26.9.1 Data frame structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624
26.9.2 Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625
26.9.3 UART transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
26.9.4 UART receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
26.10 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . . . 629
26.10.1 LIN control register 1 (LINCR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631
26.10.2 LIN interrupt enable register (LINIER) . . . . . . . . . . . . . . . . . . . . . . . . . 634
26.10.3 LIN status register (LINSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
26.10.4 LIN error status register (LINESR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638
26.10.5 UART mode control register (UARTCR) . . . . . . . . . . . . . . . . . . . . . . . 639
26.10.6 UART mode status register (UARTSR) . . . . . . . . . . . . . . . . . . . . . . . . 642
DocID18196 Rev 6 15/1439
RM0070 Contents
26
26.10.7 LIN timeout control status register (LINTCSR) . . . . . . . . . . . . . . . . . . 644
26.10.8 LIN output compare register (LINOCR) . . . . . . . . . . . . . . . . . . . . . . . . 645
26.10.9 LIN timeout control register (LINTOCR) . . . . . . . . . . . . . . . . . . . . . . . . 645
26.10.10 LIN fractional baud rate register (LINFBRR) . . . . . . . . . . . . . . . . . . . . 646
26.10.11 LIN integer baud rate register (LINIBRR) . . . . . . . . . . . . . . . . . . . . . . 646
26.10.12 LIN checksum field register (LINCFR) . . . . . . . . . . . . . . . . . . . . . . . . . 647
26.10.13 LIN control register 2 (LINCR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
26.10.14 Buffer identifier register (BIDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
26.10.15 Buffer data register least significant (BDRL) . . . . . . . . . . . . . . . . . . . . 650
26.10.16 Buffer data register most significant (BDRM) . . . . . . . . . . . . . . . . . . . . 651
26.10.17 Identifier filter enable register (IFER) . . . . . . . . . . . . . . . . . . . . . . . . . . 651
26.10.18 Identifier filter match index (IFMI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
26.10.19 Identifier filter mode register (IFMR) . . . . . . . . . . . . . . . . . . . . . . . . . . 653
26.10.20 Identifier filter control registers (IFCR0–IFCR15) . . . . . . . . . . . . . . . . 654
26.10.21 Global control register (GCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655
26.10.22 UART preset timeout register (UARTPTO) . . . . . . . . . . . . . . . . . . . . . 656
26.10.23 UART current timeout register (UARTCTO) . . . . . . . . . . . . . . . . . . . . 656
26.10.24 DMA Tx enable register (DMATXE) . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
26.10.25 DMA Rx enable register (DMARXE) . . . . . . . . . . . . . . . . . . . . . . . . . . 658
26.11 DMA interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
26.11.1 Master node, TX mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
26.11.2 Master node, RX mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662
26.11.3 Slave node, TX mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
26.11.4 Slave node, RX mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667
26.11.5 UART node, TX mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670
26.11.6 UART node, RX mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
26.11.7 Use cases and limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675
26.12 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676
26.12.1 8-bit timeout counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676
26.12.2 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677
26.12.3 Fractional baud rate generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
26.13 Programming considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680
26.13.1 Master node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
26.13.2 Slave node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682
26.13.3 Extended frames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685
26.13.4 Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
26.13.5 UART mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686
Contents RM0070
16/1439 DocID18196 Rev 6
27 FlexCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
27.1 Information specific to this device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
27.1.1 Device-specific features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
27.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687
27.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688
27.2.2 FlexCAN module features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
27.2.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690
27.3 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690
27.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690
27.3.2 Signal descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
27.4 Memory map/register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
27.4.1 FlexCAN memory mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
27.4.2 Message Buffer Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
27.4.3 Rx FIFO structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696
27.4.4 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698
27.5 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
27.5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
27.5.2 Local Priority Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717
27.5.3 Transmit process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717
27.5.4 Arbitration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 717
27.5.5 Receive process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718
27.5.6 Data coherence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
27.5.7 Rx FIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721
27.5.8 CAN Protocol Related Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722
27.5.9 Modes of operation details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
27.5.10 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
27.5.11 Bus interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
27.6 Initialization/application information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
27.6.1 FlexCAN initialization sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
27.6.2 FlexCAN Addressing and RAM size configurations . . . . . . . . . . . . . . . 729
28 Deserial Serial Peripheral Interface (DSPI) . . . . . . . . . . . . . . . . . . . . . 730
28.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730
28.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731
28.1.2 DSPI configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732
28.1.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733
DocID18196 Rev 6 17/1439
RM0070 Contents
26
28.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
28.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
28.2.2 Detailed signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734
28.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735
28.3.1 Memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735
28.3.2 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737
28.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759
28.4.1 Start and Stop of DSPI Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760
28.4.2 Serial Peripheral Interface (SPI) Configuration . . . . . . . . . . . . . . . . . . 761
28.4.3 Deserial Serial Interface (DSI) Configuration . . . . . . . . . . . . . . . . . . . . 763
28.4.4 Combined Serial Interface (CSI) Configuration . . . . . . . . . . . . . . . . . . 768
28.4.5 DSPI Baud Rate and Clock Delay Generation . . . . . . . . . . . . . . . . . . 769
28.4.6 Transfer Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772
28.4.7 Continuous Serial Communications Clock . . . . . . . . . . . . . . . . . . . . . . 781
28.4.8 Slave Mode Operation Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . 782
28.4.9 Timed Serial Bus (TSB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783
28.4.10 Parity Generation and Check. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786
28.4.11 Interrupts/DMA Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787
28.4.12 Power Saving Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788
28.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789
28.5.1 How to Manage DSPI Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789
28.5.2 Switching Master and Slave Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 790
28.5.3 Baud Rate Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790
28.5.4 Delay Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791
28.5.5 Calculation of FIFO Pointer Addresses . . . . . . . . . . . . . . . . . . . . . . . . 792
29 FlexRay Communication Controller (FLEXRAY) . . . . . . . . . . . . . . . . 795
29.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795
29.1.1 Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795
29.1.2 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795
29.1.3 Color Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
29.1.4 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
29.1.5 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
29.1.6 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
29.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 800
29.2.1 Detailed Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 800
Contents RM0070
18/1439 DocID18196 Rev 6
29.3 Controller Host Interface Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
29.4 Protocol Engine Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
29.4.1 Oscillator Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
29.4.2 PLL Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
29.5 Memory Map and Register Description . . . . . . . . . . . . . . . . . . . . . . . . . 801
29.5.1 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802
29.5.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805
29.6 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884
29.6.1 Message Buffer Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884
29.6.2 Physical Message Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884
29.6.3 Message Buffer Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
29.6.4 Flexray Memory Area Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891
29.6.5 Physical Message Buffer Description . . . . . . . . . . . . . . . . . . . . . . . . . 894
29.6.6 Individual Message Buffer Functional Description . . . . . . . . . . . . . . . . 903
29.6.7 Individual Message Buffer Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919
29.6.8 Individual Message Buffer Reconfiguration . . . . . . . . . . . . . . . . . . . . . 922
29.6.9 Receive FIFOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923
29.6.10 Channel Device Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929
29.6.11 External Clock Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931
29.6.12 Sync Frame ID and Sync Frame Deviation Tables . . . . . . . . . . . . . . . 932
29.6.13 MTS Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935
29.6.14 Key Slot Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936
29.6.15 Sync Frame Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936
29.6.16 Strobe Signal Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937
29.6.17 Timer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938
29.6.18 Slot Status Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939
29.6.19 System Bus Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943
29.6.20 Interrupt Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944
29.6.21 Lower Bit Rate Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948
29.6.22 PE Data Memory (PE DRAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949
29.6.23 CHI Lookup-Table Memory (CHI LRAM) . . . . . . . . . . . . . . . . . . . . . . . 950
29.6.24 Memory Content Error Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
29.6.25 Memory Error Injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955
29.7 Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
29.7.1 Module Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
29.7.2 Initialization Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958
DocID18196 Rev 6 19/1439
RM0070 Contents
26
29.7.3 Memory Error Injection out of POC:default config . . . . . . . . . . . . . . . . 959
29.7.4 Shut Down Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960
29.7.5 Number of Usable Message Buffers . . . . . . . . . . . . . . . . . . . . . . . . . . 960
29.7.6 Protocol Control Command Execution . . . . . . . . . . . . . . . . . . . . . . . . . 961
29.7.7 Message Buffer Search on Simple Message Buffer Configuration . . . 962
30 Fast Ethernet Controller (FEC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
30.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
30.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
30.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
30.2.1 Full and Half Duplex Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966
30.2.2 Interface Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966
30.2.3 Address Recognition Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966
30.2.4 Internal Loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966
30.3 FEC Top-Level Functional Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966
30.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
30.4.1 Initialization Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
30.4.2 User Initialization (Prior to Asserting ECR[ETHER_EN]) . . . . . . . . . . . 969
30.4.3 Microcontroller Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
30.4.4 User Initialization (After Asserting ECR[ETHER_EN]) . . . . . . . . . . . . . 970
30.4.5 Network Interface Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970
30.4.6 FEC Frame Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971
30.4.7 FEC Frame Reception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 972
30.4.8 Ethernet Address Recognition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973
30.4.9 Hash Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975
30.4.10 Full Duplex Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
30.4.11 Inter-Packet Gap (IPG) Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
30.4.12 Collision Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979
30.4.13 Internal and External Loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979
30.4.14 Ethernet Error-Handling Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 979
30.5 Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981
30.5.1 Top Level Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981
30.5.2 Register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981
30.5.3 MIB Block Counters Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982
30.5.4 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984
30.6 Buffer Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000
Contents RM0070
20/1439 DocID18196 Rev 6
30.6.1 Driver/DMA Operation with Buffer Descriptors . . . . . . . . . . . . . . . . . 1000
30.6.2 Ethernet Receive Buffer Descriptor (RxBD) . . . . . . . . . . . . . . . . . . . . 1002
30.6.3 Ethernet Transmit Buffer Descriptor (TxBD) . . . . . . . . . . . . . . . . . . . 1003
31 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006
31.1 Technical overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006
31.1.1 Overview of the STM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008
31.1.2 Overview of the eMIOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008
31.1.3 Overview of the PIT_RTI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010
31.2 System Timer Module (STM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010
31.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010
31.2.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011
31.2.3 Memory map and register definition . . . . . . . . . . . . . . . . . . . . . . . . . 1011
31.2.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014
31.3 Enhanced Modular IO Subsystem (eMIOS) . . . . . . . . . . . . . . . . . . . . . 1015
31.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015
31.3.2 External signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018
31.3.3 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . 1018
31.3.4 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029
31.3.5 Initialization/Application information . . . . . . . . . . . . . . . . . . . . . . . . . . 1059
31.4 Periodic Interrupt Timer with Real-Time Interrupt (PIT_RTI) . . . . . . . . 1063
31.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1063
31.4.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064
31.4.3 Modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064
31.4.4 Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064
31.4.5 Memory map and register description . . . . . . . . . . . . . . . . . . . . . . . . 1064
31.4.6 Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1068
31.4.7 Initialization and application information . . . . . . . . . . . . . . . . . . . . . . 1070
32 Analog-to-Digital Converter (ADC) . . . . . . . . . . . . . . . . . . . . . . . . . . 1071
32.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071
32.1.1 Device-specific pin configuration features . . . . . . . . . . . . . . . . . . . . . 1071
32.1.2 Device-specific implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1072
32.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1075
32.3 Register descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076
32.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1076
/