Upload
others
View
18
Download
0
Embed Size (px)
Citation preview
EFR32xG22 Wireless GeckoReference Manual
The EFR32xG22 Wireless Gecko SoC includes the EFR32BG22, EFR32FG22, andEFR32MG22 Wireless Gecko families. The EFR32xG22 improves processing capabilitywith a Cortex M33 core, while providing for lower active current for both the MCU andradio. This low power and application optimized device supports Bluetooth 5.2 (includingDirection Finding), Proprietary 2.4 GHz & Zigbee PRO/Green Power protocols.
The EFR32xG22 solution provides industry-leading energy efficiency, processing capa-bility, and RF performance in a small form factor for IoT connected applications.
KEY FEATURES
• 32-bit ARM® Cortex M33 core with up to76.8 MHz maximum operating frequency
• Scalable Memory and Radio configurationoptions available in QFN packaging
• Energy-efficient radio core with low activeand sleep currents
• Secure Boot with Root of Trust andSecure Loader (RTSL)
• Integrated PA with up to 6 dBm transmitpower
Timers and Triggers
32-bit bus
Peripheral Reflex System
Serial Interfaces
I/O Ports Analog I/F
Lowest power mode with peripheral operational:
USART
EUART
External Interrupts
General Purpose I/O
Pin Reset
Pin Wakeup
ADC
EM4—Shutoff
Energy Management
Brown-Out Detector
Voltage Regulator
Power-On Reset
SecurityClock Management
HF Crystal Oscillator
LF Crystal Oscillator
Precision LFRC Oscillator
HFRC Oscillator
Crypto Acceleration
Ultra LF RC Oscillator
Core / Memory
ARM CortexTM M33 processorwith DSP extensions,FPU and TrustZone
ETM Debug Interface RAM Memory LDMA Controller
Flash Program Memory
Real Time Capture Counter
Timer/Counter
Low Energy Timer Watchdog Timer
Protocol Timer
EM3—StopEM2—Deep SleepEM1—SleepEM0—Active
True Random Number Generator
Fast StartupRC Oscillator
Back-Up Real Time Counter
I2C
PDM
DC-DC Converter
Temperature Sensor
Radio Subsystem
RFSENSEw/ OOK Detect
RX/TX Frontend with Integrated PA
Frequency Synthesizer
ARM CortexTM M0+ Radio Controller
CRC
BUFC RAM
FRC
DEMOD
AGC
IFADC
MOD
silabs.com | Building a more connected world. Rev. 1.0
Table of Contents1. About This Document . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.2 Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
1.3 Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . .26
2. System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
2.2 Block Diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
2.3 MCU Features overview . . . . . . . . . . . . . . . . . . . . . . . . . . .29
3. System Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
3.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
3.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . .323.3.1 Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . .333.3.2 TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333.3.3 Interrupt Request lines (IRQ) . . . . . . . . . . . . . . . . . . . . . . . .34
4. Memory and Bus System . . . . . . . . . . . . . . . . . . . . . . . . . . 364.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
4.2 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . .374.2.1 Bus Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .384.2.2 Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .394.2.3 SRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .394.2.4 Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
5. Radio Transceiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
5.1.1 RF Frequency Synthesizer . . . . . . . . . . . . . . . . . . . . . . . .465.1.2 Modulation Modes . . . . . . . . . . . . . . . . . . . . . . . . . . .475.1.3 Transmit Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . .475.1.4 Receive Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . .475.1.5 Data Buffering. . . . . . . . . . . . . . . . . . . . . . . . . . . . .475.1.6 Unbuffered Data Transfer . . . . . . . . . . . . . . . . . . . . . . . . .475.1.7 Frame Format Support . . . . . . . . . . . . . . . . . . . . . . . . . .485.1.8 Hardware CRC Support . . . . . . . . . . . . . . . . . . . . . . . . .485.1.9 Convolutional Encoding / Decoding . . . . . . . . . . . . . . . . . . . . .485.1.10 Binary Block Encoding / Decoding . . . . . . . . . . . . . . . . . . . . .485.1.11 Data Encryption and Authentication . . . . . . . . . . . . . . . . . . . . .495.1.12 RFSENSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .495.1.13 RF Test Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
6. MSC - Memory System Controller . . . . . . . . . . . . . . . . . . . . . . 506.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
silabs.com | Building a more connected world. Rev. 1.0 | 2
6.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
6.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . .516.3.1 Ram Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . .516.3.2 Instruction Cache. . . . . . . . . . . . . . . . . . . . . . . . . . . .526.3.3 Device Information (DI) Page . . . . . . . . . . . . . . . . . . . . . . .526.3.4 User Data (UD) Page Description . . . . . . . . . . . . . . . . . . . . . .526.3.5 Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .526.3.6 Post-reset Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . .526.3.7 Flash Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . .526.3.8 Flash EM0 / EM1 Power Down . . . . . . . . . . . . . . . . . . . . . . .536.3.9 Wait-states . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .536.3.10 Cortex-M33 If-Then Block Folding. . . . . . . . . . . . . . . . . . . . . .536.3.11 Line Buffering (Prefetch) . . . . . . . . . . . . . . . . . . . . . . . . .536.3.12 Erase and Write Operations. . . . . . . . . . . . . . . . . . . . . . . .54
6.4 DEVINFO - Device Info Page . . . . . . . . . . . . . . . . . . . . . . . . .556.4.1 DEVINFO Register Map . . . . . . . . . . . . . . . . . . . . . . . . .566.4.2 DEVINFO Register Description . . . . . . . . . . . . . . . . . . . . . . .57
6.5 ICACHE - Instruction Cache . . . . . . . . . . . . . . . . . . . . . . . . .836.5.1 Cache Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . .846.5.2 Performance Measurement . . . . . . . . . . . . . . . . . . . . . . . .846.5.3 ICACHE Register Map . . . . . . . . . . . . . . . . . . . . . . . . . .856.5.4 ICACHE Register Description . . . . . . . . . . . . . . . . . . . . . . .86
6.6 SYSCFG - System Configuration . . . . . . . . . . . . . . . . . . . . . . . .926.6.1 Ram Retention . . . . . . . . . . . . . . . . . . . . . . . . . . . .926.6.2 ECC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .936.6.3 Software Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . .936.6.4 Bus faults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .936.6.5 SYSCFG Register Map. . . . . . . . . . . . . . . . . . . . . . . . . .946.6.6 SYSCFG Register Description . . . . . . . . . . . . . . . . . . . . . . .97
6.7 MSC Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .110
6.8 MSC Register Description . . . . . . . . . . . . . . . . . . . . . . . . .1126.8.1 MSC_IPVERSION - IP version ID . . . . . . . . . . . . . . . . . . . . .1126.8.2 MSC_READCTRL - Read Control Register . . . . . . . . . . . . . . . . . . 1136.8.3 MSC_WRITECTRL - Write Control Register. . . . . . . . . . . . . . . . . . 1146.8.4 MSC_WRITECMD - Write Command Register . . . . . . . . . . . . . . . . . 1156.8.5 MSC_ADDRB - Page Erase/Write Address Buffer . . . . . . . . . . . . . . . . 1166.8.6 MSC_WDATA - Write Data Register . . . . . . . . . . . . . . . . . . . .1166.8.7 MSC_STATUS - Status Register . . . . . . . . . . . . . . . . . . . . .1176.8.8 MSC_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . . .1186.8.9 MSC_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . . . . 1196.8.10 MSC_USERDATASIZE - User Data Region Size Register . . . . . . . . . . . .1206.8.11 MSC_CMD - Command Register . . . . . . . . . . . . . . . . . . . . . 1206.8.12 MSC_LOCK - Configuration Lock Register . . . . . . . . . . . . . . . . . . 1216.8.13 MSC_MISCLOCKWORD - Mass erase and User data page lock word . . . . . . . .1216.8.14 MSC_PWRCTRL - Power control register . . . . . . . . . . . . . . . . . . 1226.8.15 MSC_PAGELOCK0 - Main space page 0-31 lock word . . . . . . . . . . . . .1236.8.16 MSC_PAGELOCK1 - Main space page 32-63 lock word . . . . . . . . . . . . . 123
silabs.com | Building a more connected world. Rev. 1.0 | 3
7. DBG - Debug Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . 1247.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . .1257.3.1 Debug Pins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1257.3.2 Embedded Trace Macrocell V3.5 (ETM) . . . . . . . . . . . . . . . . . . . 1257.3.3 Debug and EM2/EM3 . . . . . . . . . . . . . . . . . . . . . . . . . 125
7.4 DBG Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .126
7.5 DBG Register Description . . . . . . . . . . . . . . . . . . . . . . . . .1267.5.1 DBG_DCIWDATA - Write Data . . . . . . . . . . . . . . . . . . . . . . 1267.5.2 DBG_DCIRDATA - Read Data . . . . . . . . . . . . . . . . . . . . . .1267.5.3 DBG_DCISTATUS - Status . . . . . . . . . . . . . . . . . . . . . . .1277.5.4 DBG_DCIID - Identification . . . . . . . . . . . . . . . . . . . . . . .1277.5.5 DBG_SYSCOM0 - Communication Status . . . . . . . . . . . . . . . . . .1287.5.6 DBG_SYSCOM1 - Communication Status . . . . . . . . . . . . . . . . . .1297.5.7 DBG_SYSPWR0 - Power Status . . . . . . . . . . . . . . . . . . . . .1307.5.8 DBG_SYSCLK0 - Clocking Status . . . . . . . . . . . . . . . . . . . . . 1317.5.9 DBG_SYSID - Identification . . . . . . . . . . . . . . . . . . . . . . .133
8. CMU - Clock Management Unit . . . . . . . . . . . . . . . . . . . . . . . . 1348.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
8.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
8.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . .1358.3.1 System Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . .1378.3.2 Switching Clock Source . . . . . . . . . . . . . . . . . . . . . . . .1408.3.3 RC Oscillator Calibration . . . . . . . . . . . . . . . . . . . . . . . .1428.3.4 Energy Modes . . . . . . . . . . . . . . . . . . . . . . . . . . .1458.3.5 Clock Output on a Pin . . . . . . . . . . . . . . . . . . . . . . . . .1458.3.6 Clock Input from a Pin . . . . . . . . . . . . . . . . . . . . . . . . . 1468.3.7 Clock Output on PRS . . . . . . . . . . . . . . . . . . . . . . . . .1468.3.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1468.3.9 Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . .146
8.4 CMU Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .147
8.5 CMU Register Description . . . . . . . . . . . . . . . . . . . . . . . . .1508.5.1 CMU_IPVERSION - IP version ID . . . . . . . . . . . . . . . . . . . . . 1508.5.2 CMU_STATUS - Status Register . . . . . . . . . . . . . . . . . . . . .1518.5.3 CMU_LOCK - Configuration Lock Register . . . . . . . . . . . . . . . . . . 1528.5.4 CMU_WDOGLOCK - WDOG Configuration Lock Register . . . . . . . . . . . . . 1528.5.5 CMU_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . . .1538.5.6 CMU_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . . . . 1538.5.7 CMU_CALCMD - Calibration Command Register . . . . . . . . . . . . . . . . 1548.5.8 CMU_CALCTRL - Calibration Control Register . . . . . . . . . . . . . . . . . 1558.5.9 CMU_CALCNT - Calibration Result Counter Register . . . . . . . . . . . . . .1568.5.10 CMU_CLKEN0 - Clock Enable Register 0 . . . . . . . . . . . . . . . . . . 1578.5.11 CMU_CLKEN1 - Clock Enable Register 1 . . . . . . . . . . . . . . . . . . 1598.5.12 CMU_SYSCLKCTRL - System Clock Control . . . . . . . . . . . . . . . . . 161
silabs.com | Building a more connected world. Rev. 1.0 | 4
8.5.13 CMU_TRACECLKCTRL - Debug Trace Clock Control . . . . . . . . . . . . . . 1628.5.14 CMU_EXPORTCLKCTRL - Export Clock Control . . . . . . . . . . . . . . .1638.5.15 CMU_DPLLREFCLKCTRL - Digital PLL Reference Clock Control . . . . . . . . . . 1658.5.16 CMU_EM01GRPACLKCTRL - EM01 Peripheral Group A Clock Control . . . . . . . . 1658.5.17 CMU_EM01GRPBCLKCTRL - EM01 Peripheral Group B Clock Control . . . . . . . . 1668.5.18 CMU_EM23GRPACLKCTRL - EM23 Peripheral Group A Clock Control . . . . . . . . 1678.5.19 CMU_EM4GRPACLKCTRL - EM4 Peripheral Group A Clock Control . . . . . . . . . 1678.5.20 CMU_IADCCLKCTRL - IADC Clock Control . . . . . . . . . . . . . . . . .1688.5.21 CMU_WDOG0CLKCTRL - Watchdog0 Clock Control . . . . . . . . . . . . . . 1688.5.22 CMU_EUART0CLKCTRL - UART Clock Control . . . . . . . . . . . . . . . . 1698.5.23 CMU_RTCCCLKCTRL - RTCC Clock Control. . . . . . . . . . . . . . . . . 1698.5.24 CMU_CRYPTOACCCLKCTRL - CRYPTOACC Clock Control . . . . . . . . . . .1708.5.25 CMU_RADIOCLKCTRL - Radio Clock Control . . . . . . . . . . . . . . . .170
9. Oscillators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1719.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
9.2 HFXO - High Frequency Crystal Oscillator . . . . . . . . . . . . . . . . . . . . 1719.2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .1719.2.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1719.2.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 1729.2.4 HFXO Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . 1759.2.5 HFXO Register Description . . . . . . . . . . . . . . . . . . . . . . .176
9.3 HFRCO - High-Frequency RC Oscillator . . . . . . . . . . . . . . . . . . . .1879.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .1879.3.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1879.3.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 1879.3.4 HFRCO Register Map . . . . . . . . . . . . . . . . . . . . . . . . . 1909.3.5 HFRCO Register Description . . . . . . . . . . . . . . . . . . . . . . . 191
9.4 DPLL - Digital Phased Locked Loop . . . . . . . . . . . . . . . . . . . . . . 1959.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .1959.4.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1959.4.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 1959.4.4 DPLL Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . 1979.4.5 DPLL Register Description . . . . . . . . . . . . . . . . . . . . . . .198
9.5 LFXO - Low-Frequency Crystal Oscillator . . . . . . . . . . . . . . . . . . . . 2039.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .2039.5.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2039.5.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 2039.5.4 LFXO Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . 2059.5.5 LFXO Register Description . . . . . . . . . . . . . . . . . . . . . . .206
9.6 LFRCO - Low-Frequency RC Oscillator . . . . . . . . . . . . . . . . . . . .2139.6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .2139.6.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2139.6.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 2139.6.4 LFRCO Register Map . . . . . . . . . . . . . . . . . . . . . . . . .2169.6.5 LFRCO Register Description . . . . . . . . . . . . . . . . . . . . . . . 217
9.7 FSRCO - Fast Start RCO . . . . . . . . . . . . . . . . . . . . . . . . .224
silabs.com | Building a more connected world. Rev. 1.0 | 5
9.7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .2249.7.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2249.7.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 2249.7.4 FSRCO Register Map . . . . . . . . . . . . . . . . . . . . . . . . .2249.7.5 FSRCO Register Description . . . . . . . . . . . . . . . . . . . . . . . 225
9.8 ULFRCO - Ultra Low Frequency RC Oscillator . . . . . . . . . . . . . . . . . .2259.8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .2259.8.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2259.8.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . 225
10. SMU - Security Management Unit . . . . . . . . . . . . . . . . . . . . . .22610.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226
10.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226
10.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 22710.3.1 Bus Level Security . . . . . . . . . . . . . . . . . . . . . . . . . . 22710.3.2 Privileged Access Control . . . . . . . . . . . . . . . . . . . . . . .22810.3.3 Secure Access Control . . . . . . . . . . . . . . . . . . . . . . . .22810.3.4 ARM TrustZone . . . . . . . . . . . . . . . . . . . . . . . . . . . 22910.3.5 Configuring Masters . . . . . . . . . . . . . . . . . . . . . . . . .22910.3.6 Configuring Peripherals . . . . . . . . . . . . . . . . . . . . . . . .22910.3.7 Configuring Memory . . . . . . . . . . . . . . . . . . . . . . . . .23010.3.8 Cortex-M33 Integration . . . . . . . . . . . . . . . . . . . . . . . .23010.3.9 Exception Handling . . . . . . . . . . . . . . . . . . . . . . . . .23110.3.10 SMU Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . .231
10.4 SMU Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .232
10.5 SMU Register Description . . . . . . . . . . . . . . . . . . . . . . . . . 23410.5.1 SMU_IPVERSION - IP Version . . . . . . . . . . . . . . . . . . . . .23410.5.2 SMU_STATUS - Status . . . . . . . . . . . . . . . . . . . . . . . .23510.5.3 SMU_LOCK - Lock. . . . . . . . . . . . . . . . . . . . . . . . . . 23510.5.4 SMU_IF - Interrupt Flag . . . . . . . . . . . . . . . . . . . . . . . . 23610.5.5 SMU_IEN - Interrupt Enable . . . . . . . . . . . . . . . . . . . . . .23710.5.6 SMU_M33CTRL - M33 Control. . . . . . . . . . . . . . . . . . . . . . 23810.5.7 SMU_PPUPATD0 - PPU PATD Register 0. . . . . . . . . . . . . . . . . . 23910.5.8 SMU_PPUPATD1 - PPU PATD Register 1. . . . . . . . . . . . . . . . . . 24110.5.9 SMU_PPUSATD0 - PPU SATD Register 0. . . . . . . . . . . . . . . . . . 24310.5.10 SMU_PPUSATD1 - PPU SATD Register 1 . . . . . . . . . . . . . . . . .24510.5.11 SMU_PPUFS - PPU Fault Status . . . . . . . . . . . . . . . . . . . .24610.5.12 SMU_BMPUPATD0 - BMPU PATD Register 0 . . . . . . . . . . . . . . . . 24710.5.13 SMU_BMPUSATD0 - BMPU SATD Register 0 . . . . . . . . . . . . . . . . 24810.5.14 SMU_BMPUFS - BMPU Fault Status . . . . . . . . . . . . . . . . . . .24910.5.15 SMU_BMPUFSADDR - BMPU Fault Status Address . . . . . . . . . . . . . . 24910.5.16 SMU_ESAURTYPES0 - ESAU Region Types Register 0 . . . . . . . . . . . .25010.5.17 SMU_ESAURTYPES1 - ESAU Region Types Register 1 . . . . . . . . . . . .25010.5.18 SMU_ESAUMRB01 - ESAU Movable Region Boundary 0-1 . . . . . . . . . . .25110.5.19 SMU_ESAUMRB12 - ESAU Movable Region Boundary 1-2 . . . . . . . . . . .25110.5.20 SMU_ESAUMRB45 - ESAU Movable Region Boundary 4-5 . . . . . . . . . . .25210.5.21 SMU_ESAUMRB56 - ESAU Movable Region Boundary 5-6 . . . . . . . . . . .252
silabs.com | Building a more connected world. Rev. 1.0 | 6
11. CRYPTOACC - Cryptographic Accelerator . . . . . . . . . . . . . . . . . . . 25311.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
11.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
11.3 Cryptographic Functions . . . . . . . . . . . . . . . . . . . . . . . . .25311.3.1 CRYPTOACC_PKCTRL Register Map . . . . . . . . . . . . . . . . . . . 25411.3.2 CRYPTOACC_PKCTRL Register Description. . . . . . . . . . . . . . . . . 254
11.4 DMA Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25911.4.1 CRYPTOACC Register Map . . . . . . . . . . . . . . . . . . . . . .25911.4.2 CRYPTOACC Register Description . . . . . . . . . . . . . . . . . . . .260
11.5 Random Number Generation . . . . . . . . . . . . . . . . . . . . . . . . 27311.5.1 CRYPTOACC_RNGCTRL Register Map . . . . . . . . . . . . . . . . . .27311.5.2 CRYPTOACC_RNGCTRL Register Description . . . . . . . . . . . . . . . . 274
12. EMU - Energy Management Unit . . . . . . . . . . . . . . . . . . . . . .28512.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
12.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .286
12.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 28712.3.1 Energy Modes . . . . . . . . . . . . . . . . . . . . . . . . . . .28812.3.2 Entering Low Energy Modes . . . . . . . . . . . . . . . . . . . . . .29212.3.3 Exiting a Low Energy Mode . . . . . . . . . . . . . . . . . . . . . .29312.3.4 Power Domains . . . . . . . . . . . . . . . . . . . . . . . . . . . 29412.3.5 Voltage Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . 29412.3.6 EM0 / EM1 Peripheral Register Retention . . . . . . . . . . . . . . . . . . 29512.3.7 Power Configurations . . . . . . . . . . . . . . . . . . . . . . . . . 29512.3.8 DC-to-DC Interface . . . . . . . . . . . . . . . . . . . . . . . . .29812.3.9 EFP Communication . . . . . . . . . . . . . . . . . . . . . . . . .30112.3.10 Brown Out Detector (BOD) . . . . . . . . . . . . . . . . . . . . . .30212.3.11 Reset Management Unit . . . . . . . . . . . . . . . . . . . . . . .30312.3.12 Temperature Sensor . . . . . . . . . . . . . . . . . . . . . . . . . 30512.3.13 Register Resets . . . . . . . . . . . . . . . . . . . . . . . . . .30512.3.14 Register Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
12.4 EMU Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .307
12.5 EMU Register Description . . . . . . . . . . . . . . . . . . . . . . . . . 30912.5.1 EMU_DECBOD - DECOUPLE LVBOD Control register . . . . . . . . . . . . .30912.5.2 EMU_BOD3SENSE - BOD3SENSE Control register . . . . . . . . . . . . . .31012.5.3 EMU_VREGVDDCMPCTRL - DC-DC VREGVDD Comparator Control Register . . . . . 31012.5.4 EMU_PD1PARETCTRL - PD1 Partial Retention Control . . . . . . . . . . . . . 31112.5.5 EMU_LOCK - EMU Configuration lock register . . . . . . . . . . . . . . . .31112.5.6 EMU_IF - Interrupt Flags . . . . . . . . . . . . . . . . . . . . . . . . 31212.5.7 EMU_IEN - Interrupt Enables . . . . . . . . . . . . . . . . . . . . . .31312.5.8 EMU_EM4CTRL - EM4 Control . . . . . . . . . . . . . . . . . . . . .31412.5.9 EMU_CMD - EMU Command register . . . . . . . . . . . . . . . . . . .31512.5.10 EMU_CTRL - EMU Control register . . . . . . . . . . . . . . . . . . . . 31612.5.11 EMU_TEMPLIMITS - EMU Temperature thresholds . . . . . . . . . . . . . .31712.5.12 EMU_STATUS - EMU Status register . . . . . . . . . . . . . . . . . . . 31812.5.13 EMU_TEMP - Temperature . . . . . . . . . . . . . . . . . . . . . .319
silabs.com | Building a more connected world. Rev. 1.0 | 7
12.5.14 EMU_RSTCTRL - Reset Management Control register . . . . . . . . . . . . . 32012.5.15 EMU_RSTCAUSE - Reset cause . . . . . . . . . . . . . . . . . . . .32212.5.16 EMU_DGIF - Interrupt Flags Debug . . . . . . . . . . . . . . . . . . .32312.5.17 EMU_DGIEN - Interrupt Enables Debug . . . . . . . . . . . . . . . . . . 32412.5.18 EMU_EFPIF - EFP Interrupt Register . . . . . . . . . . . . . . . . . . . 32412.5.19 EMU_EFPIEN - EFP Interrupt Enable Register . . . . . . . . . . . . . . . . 325
12.6 DCDC Register Map . . . . . . . . . . . . . . . . . . . . . . . . . .326
12.7 DCDC Register Description . . . . . . . . . . . . . . . . . . . . . . . .32712.7.1 DCDC_IPVERSION - IPVERSION . . . . . . . . . . . . . . . . . . . .32712.7.2 DCDC_EN - Enable . . . . . . . . . . . . . . . . . . . . . . . . .32712.7.3 DCDC_CTRL - Control . . . . . . . . . . . . . . . . . . . . . . . .32812.7.4 DCDC_EM01CTRL0 - EM01 Control. . . . . . . . . . . . . . . . . . . . 32912.7.5 DCDC_EM23CTRL0 - EM23 Control. . . . . . . . . . . . . . . . . . . . 33012.7.6 DCDC_IF - Interrupt Flags . . . . . . . . . . . . . . . . . . . . . . .33112.7.7 DCDC_IEN - Interrupt Enable . . . . . . . . . . . . . . . . . . . . . . 33212.7.8 DCDC_STATUS - Status Register . . . . . . . . . . . . . . . . . . . .33312.7.9 DCDC_LOCK - Lock Register . . . . . . . . . . . . . . . . . . . . . . 33412.7.10 DCDC_LOCKSTATUS - Lock Status Register . . . . . . . . . . . . . . . . 334
13. PRS - Peripheral Reflex System . . . . . . . . . . . . . . . . . . . . . . . 33513.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
13.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .335
13.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 33613.3.1 Asynchronous Channel Functions. . . . . . . . . . . . . . . . . . . . . 33613.3.2 Configurable Logic . . . . . . . . . . . . . . . . . . . . . . . . . . 33713.3.3 Producers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33813.3.4 Consumers . . . . . . . . . . . . . . . . . . . . . . . . . . . .343
13.4 PRS Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .344
13.5 PRS Register Description . . . . . . . . . . . . . . . . . . . . . . . . . 35713.5.1 PRS_IPVERSION - IP version ID . . . . . . . . . . . . . . . . . . . . . 35713.5.2 PRS_ASYNC_SWPULSE - Software Pulse Register . . . . . . . . . . . . . .35813.5.3 PRS_ASYNC_SWLEVEL - Software Level Register . . . . . . . . . . . . . .35913.5.4 PRS_ASYNC_PEEK - Async Channel Values . . . . . . . . . . . . . . . .36013.5.5 PRS_SYNC_PEEK - Sync Channel Values . . . . . . . . . . . . . . . . .36113.5.6 PRS_ASYNC_CHx_CTRL - Async Channel Control Register . . . . . . . . . . .36213.5.7 PRS_SYNC_CHx_CTRL - Sync Channel Control Register . . . . . . . . . . . .36313.5.8 PRS_CONSUMER_CMU_CALDN - CMU CALDN Consumer Selection . . . . . . . . 36413.5.9 PRS_CONSUMER_CMU_CALUP - CMU CALUP Consumer Selection . . . . . . . . 36413.5.10 PRS_CONSUMER_IADC0_SCANTRIGGER - IADC0 SCANTRIGGER Consumer Selection 36513.5.11 PRS_CONSUMER_IADC0_SINGLETRIGGER - IADC0 SINGLETRIGGER Consumer
Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36513.5.12 PRS_CONSUMER_LDMAXBAR_DMAREQ0 - DMAREQ0 Consumer Selection . . . .36613.5.13 PRS_CONSUMER_LDMAXBAR_DMAREQ1 - DMAREQ1 Consumer Selection . . . .36613.5.14 PRS_CONSUMER_LETIMER0_CLEAR - LETIMER CLEAR Consumer Selection . . . . 36713.5.15 PRS_CONSUMER_LETIMER0_START - LETIMER START Consumer Selection . . . . 36713.5.16 PRS_CONSUMER_LETIMER0_STOP - LETIMER STOP Consumer Selection . . . . . 36813.5.17 PRS_CONSUMER_EUART0_RX - EUART0 RX consumer register . . . . . . . . . 368
silabs.com | Building a more connected world. Rev. 1.0 | 8
13.5.18 PRS_CONSUMER_EUART0_TRIGGER - EUART0 TRIGGER Consumer register . . . . 36913.5.19 PRS_CONSUMER_MODEM_DIN - MODEM DIN Consumer Selection. . . . . . . . 36913.5.20 PRS_CONSUMER_RAC_CLR - RAC CLR Consumer Selection . . . . . . . . . . 37013.5.21 PRS_CONSUMER_RAC_CTIIN0 - RAC CTIIN0 Consumer Selection . . . . . . . . 37013.5.22 PRS_CONSUMER_RAC_CTIIN1 - RAC CTIIN1 Consumer Selection . . . . . . . . 37113.5.23 PRS_CONSUMER_RAC_CTIIN2 - RAC CTIIN2 Consumer Selection . . . . . . . . 37113.5.24 PRS_CONSUMER_RAC_CTIIN3 - RAC CTIIN3 Consumer Selection . . . . . . . . 37213.5.25 PRS_CONSUMER_RAC_FORCETX - RAC FORCETX Consumer Selection . . . . .37213.5.26 PRS_CONSUMER_RAC_RXDIS - RAC RXDIS Consumer Selection . . . . . . . .37313.5.27 PRS_CONSUMER_RAC_RXEN - RAC RXEN Consumer Selection . . . . . . . . . 37313.5.28 PRS_CONSUMER_RAC_SEQ - RAC SEQ Consumer Selection . . . . . . . . . . 37413.5.29 PRS_CONSUMER_RAC_TXEN - RAC TXEN Consumer Selection . . . . . . . . . 37413.5.30 PRS_CONSUMER_RTCC_CC0 - RTCC CC0 Consumer Selection . . . . . . . . . 37513.5.31 PRS_CONSUMER_RTCC_CC1 - RTCC CC1 Consumer Selection . . . . . . . . . 37513.5.32 PRS_CONSUMER_RTCC_CC2 - RTCC CC2 Consumer Selection . . . . . . . . . 37613.5.33 PRS_CONSUMER_CORE_CTIIN0 - CTI0 Consumer Selection . . . . . . . . . . 37613.5.34 PRS_CONSUMER_CORE_CTIIN1 - CTI1 Consumer Selection . . . . . . . . . . 37713.5.35 PRS_CONSUMER_CORE_CTIIN2 - CTI2 Consumer Selection . . . . . . . . . . 37713.5.36 PRS_CONSUMER_CORE_CTIIN3 - CTI3 Consumer Selection . . . . . . . . . . 37813.5.37 PRS_CONSUMER_CORE_M33RXEV - M33 Consumer Selection . . . . . . . . .37813.5.38 PRS_CONSUMER_TIMER0_CC0 - TIMER0 CC0 Consumer Selection . . . . . . .37913.5.39 PRS_CONSUMER_TIMER0_CC1 - TIMER0 CC1 Consumer Selection . . . . . . .37913.5.40 PRS_CONSUMER_TIMER0_CC2 - TIMER0 CC2 Consumer Selection . . . . . . .38013.5.41 PRS_CONSUMER_TIMER0_DTI - TIMER0 DTI Consumer Selection . . . . . . . . 38013.5.42 PRS_CONSUMER_TIMER0_DTIFS1 - TIMER0 DTIFS1 Consumer Selection . . . . .38113.5.43 PRS_CONSUMER_TIMER0_DTIFS2 - TIMER0 DTIFS2 Consumer Selection . . . . .38113.5.44 PRS_CONSUMER_TIMER1_CC0 - TIMER1 CC0 Consumer Selection . . . . . . .38213.5.45 PRS_CONSUMER_TIMER1_CC1 - TIMER1 CC1 Consumer Selection . . . . . . .38213.5.46 PRS_CONSUMER_TIMER1_CC2 - TIMER1 CC2 Consumer Selection . . . . . . .38313.5.47 PRS_CONSUMER_TIMER1_DTI - TIMER1 DTI Consumer Selection . . . . . . . . 38313.5.48 PRS_CONSUMER_TIMER1_DTIFS1 - TIMER1 DTIFS1 Consumer Selection . . . . .38413.5.49 PRS_CONSUMER_TIMER1_DTIFS2 - TIMER1 DTIFS2 Consumer Selection . . . . .38413.5.50 PRS_CONSUMER_TIMER2_CC0 - TIMER2 CC0 Consumer Selection . . . . . . .38513.5.51 PRS_CONSUMER_TIMER2_CC1 - TIMER2 CC1 Consumer Selection . . . . . . .38513.5.52 PRS_CONSUMER_TIMER2_CC2 - TIMER2 CC2 Consumer Selection . . . . . . .38613.5.53 PRS_CONSUMER_TIMER2_DTI - TIMER2 DTI Consumer Selection . . . . . . . . 38613.5.54 PRS_CONSUMER_TIMER2_DTIFS1 - TIMER2 DTIFS1 Consumer Selection . . . . .38713.5.55 PRS_CONSUMER_TIMER2_DTIFS2 - TIMER2 DTIFS2 Consumer Selection . . . . .38713.5.56 PRS_CONSUMER_TIMER3_CC0 - TIMER3 CC0 Consumer Selection . . . . . . .38813.5.57 PRS_CONSUMER_TIMER3_CC1 - TIMER3 CC1 Consumer Selection . . . . . . .38813.5.58 PRS_CONSUMER_TIMER3_CC2 - TIMER3 CC2 Consumer Selection . . . . . . .38913.5.59 PRS_CONSUMER_TIMER3_DTI - TIMER3 DTI Consumer Selection . . . . . . . . 38913.5.60 PRS_CONSUMER_TIMER3_DTIFS1 - TIMER3 DTIFS1 Consumer Selection . . . . .39013.5.61 PRS_CONSUMER_TIMER3_DTIFS2 - TIMER3 DTIFS2 Consumer Selection . . . . .39013.5.62 PRS_CONSUMER_TIMER4_CC0 - TIMER4 CC0 Consumer Selection . . . . . . .39113.5.63 PRS_CONSUMER_TIMER4_CC1 - TIMER4 CC1 Consumer Selection . . . . . . .39113.5.64 PRS_CONSUMER_TIMER4_CC2 - TIMER4 CC2 Consumer Selection . . . . . . .39213.5.65 PRS_CONSUMER_TIMER4_DTI - TIMER4 DTI Consumer Selection . . . . . . . . 392
silabs.com | Building a more connected world. Rev. 1.0 | 9
13.5.66 PRS_CONSUMER_TIMER4_DTIFS1 - TIMER4 DTIFS1 Consumer Selection . . . . .39313.5.67 PRS_CONSUMER_TIMER4_DTIFS2 - TIMER4 DTIFS2 Consumer Selection . . . . .39313.5.68 PRS_CONSUMER_USART0_CLK - USART0 CLK Consumer Selection . . . . . . .39413.5.69 PRS_CONSUMER_USART0_IR - USART0 IR Consumer Selection . . . . . . . .39413.5.70 PRS_CONSUMER_USART0_RX - USART0 RX Consumer Selection . . . . . . . . 39513.5.71 PRS_CONSUMER_USART0_TRIGGER - USART0 TRIGGER Consumer Selection . . . 39513.5.72 PRS_CONSUMER_USART1_CLK - USART1 CLK Consumer Selection . . . . . . .39613.5.73 PRS_CONSUMER_USART1_IR - USART1 IR Consumer Selection . . . . . . . .39613.5.74 PRS_CONSUMER_USART1_RX - USART1 RX Consumer Selection . . . . . . . . 39713.5.75 PRS_CONSUMER_USART1_TRIGGER - USART1 TRIGGER Consumer Selection . . . 39713.5.76 PRS_CONSUMER_WDOG0_SRC0 - WDOG0 SRC0 Consumer Selection . . . . . .39813.5.77 PRS_CONSUMER_WDOG0_SRC1 - WDOG0 SRC1 Consumer Selection . . . . . .398
14. GPCRC - General Purpose Cyclic Redundancy Check . . . . . . . . . . . . . .39914.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
14.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .399
14.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 40014.3.1 Polynomial Specification . . . . . . . . . . . . . . . . . . . . . . . . 40114.3.2 Input and Output Specification . . . . . . . . . . . . . . . . . . . . . . 40114.3.3 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . .40114.3.4 DMA Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40114.3.5 Byte-Level Bit Reversal and Byte Reordering . . . . . . . . . . . . . . . . . 402
14.4 GPCRC Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . 405
14.5 GPCRC Register Description . . . . . . . . . . . . . . . . . . . . . . . . 40614.5.1 GPCRC_IPVERSION - IP Version ID . . . . . . . . . . . . . . . . . . .40614.5.2 GPCRC_EN - CRC Enable . . . . . . . . . . . . . . . . . . . . . . . 40714.5.3 GPCRC_CTRL - Control Register . . . . . . . . . . . . . . . . . . . . . 40814.5.4 GPCRC_CMD - Command Register . . . . . . . . . . . . . . . . . . . . 40914.5.5 GPCRC_INIT - CRC Init Value . . . . . . . . . . . . . . . . . . . . . . 40914.5.6 GPCRC_POLY - CRC Polynomial Value . . . . . . . . . . . . . . . . . .41014.5.7 GPCRC_INPUTDATA - Input 32-bit Data Register . . . . . . . . . . . . . . . 41014.5.8 GPCRC_INPUTDATAHWORD - Input 16-bit Data Register . . . . . . . . . . . . 41114.5.9 GPCRC_INPUTDATABYTE - Input 8-bit Data Register . . . . . . . . . . . . .41114.5.10 GPCRC_DATA - CRC Data Register . . . . . . . . . . . . . . . . . . .41214.5.11 GPCRC_DATAREV - CRC Data Reverse Register . . . . . . . . . . . . . .41214.5.12 GPCRC_DATABYTEREV - CRC Data Byte Reverse Register . . . . . . . . . . . 413
15. RTCC - Real Time Clock with Capture. . . . . . . . . . . . . . . . . . . . . 41415.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
15.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .414
15.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 41515.3.1 RTCC Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . 41615.3.2 Capture/Compare Channels . . . . . . . . . . . . . . . . . . . . . .41815.3.3 Interrupts and PRS Output . . . . . . . . . . . . . . . . . . . . . . . 41915.3.4 Register Lock . . . . . . . . . . . . . . . . . . . . . . . . . . .42015.3.5 Programmer's Model . . . . . . . . . . . . . . . . . . . . . . . . . 42015.3.6 Debug Features and Description . . . . . . . . . . . . . . . . . . . . . 420
silabs.com | Building a more connected world. Rev. 1.0 | 10
15.4 RTCC Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
15.5 RTCC Register Description . . . . . . . . . . . . . . . . . . . . . . . .42315.5.1 RTCC_IPVERSION - IP VERSION . . . . . . . . . . . . . . . . . . . .42315.5.2 RTCC_EN - Module Enable Register . . . . . . . . . . . . . . . . . . .42315.5.3 RTCC_CFG - Configuration Register . . . . . . . . . . . . . . . . . . .42415.5.4 RTCC_CMD - Command Register . . . . . . . . . . . . . . . . . . . .42515.5.5 RTCC_STATUS - Status register . . . . . . . . . . . . . . . . . . . . . 42615.5.6 RTCC_IF - RTCC Interrupt Flags . . . . . . . . . . . . . . . . . . . . . 42715.5.7 RTCC_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . . . 42815.5.8 RTCC_PRECNT - Pre-Counter Value Register . . . . . . . . . . . . . . . .42915.5.9 RTCC_CNT - Counter Value Register . . . . . . . . . . . . . . . . . . .42915.5.10 RTCC_COMBCNT - Combined Pre-Counter and Counter Valu... . . . . . . . . . . 43015.5.11 RTCC_SYNCBUSY - Synchronization Busy Register . . . . . . . . . . . . . . 43015.5.12 RTCC_LOCK - Configuration Lock Register . . . . . . . . . . . . . . . . . 43115.5.13 RTCC_CCx_CTRL - CC Channel Control Register . . . . . . . . . . . . . .43215.5.14 RTCC_CCx_OCVALUE - Output Compare Value Register . . . . . . . . . . . . 43315.5.15 RTCC_CCx_ICVALUE - Input Capture Value Register . . . . . . . . . . . . .433
16. BURTC - Back-Up Real Time Counter . . . . . . . . . . . . . . . . . . . . . 43416.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
16.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .434
16.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 43516.3.1 Clock Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . 43516.3.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . .43516.3.3 Debug Features and Description . . . . . . . . . . . . . . . . . . . . . 43516.3.4 Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43616.3.5 Compare Channel . . . . . . . . . . . . . . . . . . . . . . . . . . 43616.3.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43716.3.7 Register Lock . . . . . . . . . . . . . . . . . . . . . . . . . . .437
16.4 BURTC Register Map . . . . . . . . . . . . . . . . . . . . . . . . . .438
16.5 BURTC Register Description . . . . . . . . . . . . . . . . . . . . . . . . 43916.5.1 BURTC_IPVERSION - IP version ID . . . . . . . . . . . . . . . . . . . . 43916.5.2 BURTC_EN - Module Enable Register . . . . . . . . . . . . . . . . . . . 44016.5.3 BURTC_CFG - Configuration Register . . . . . . . . . . . . . . . . . . . 44116.5.4 BURTC_CMD - Command Register . . . . . . . . . . . . . . . . . . . . 44216.5.5 BURTC_STATUS - Status Register . . . . . . . . . . . . . . . . . . . . 44316.5.6 BURTC_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . . 44316.5.7 BURTC_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . .44416.5.8 BURTC_PRECNT - Pre-Counter Value Register . . . . . . . . . . . . . . . . 44416.5.9 BURTC_CNT - Counter Value Register . . . . . . . . . . . . . . . . . . . 44516.5.10 BURTC_EM4WUEN - EM4 wakeup request Enable Register . . . . . . . . . . . 44516.5.11 BURTC_SYNCBUSY - Synchronization Busy Register . . . . . . . . . . . . .44616.5.12 BURTC_LOCK - Configuration Lock Register . . . . . . . . . . . . . . . .44716.5.13 BURTC_COMP - Compare Value Register . . . . . . . . . . . . . . . . . 447
17. BURAM - Backup RAM . . . . . . . . . . . . . . . . . . . . . . . . . .44817.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
silabs.com | Building a more connected world. Rev. 1.0 | 11
17.2 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 448
17.3 BURAM Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . 448
17.4 BURAM Register Description . . . . . . . . . . . . . . . . . . . . . . . . 44917.4.1 BURAM_RETx_REG - Retention Register . . . . . . . . . . . . . . . . . . 449
18. LETIMER - Low Energy Timer . . . . . . . . . . . . . . . . . . . . . . . . 45018.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
18.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .450
18.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 45118.3.1 Internal Overview . . . . . . . . . . . . . . . . . . . . . . . . . .45218.3.2 Free Running Mode . . . . . . . . . . . . . . . . . . . . . . . . .45318.3.3 One-shot Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 45418.3.4 Buffered Mode . . . . . . . . . . . . . . . . . . . . . . . . . . .45518.3.5 Double Mode . . . . . . . . . . . . . . . . . . . . . . . . . . .456
18.4 Clock Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
18.5 PRS Input Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
18.6 Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .458
18.7 Output Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
18.8 PRS Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . .459
18.9 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .459
18.10 Using the LETIMER in EM3 . . . . . . . . . . . . . . . . . . . . . . . . 459
18.11 Register access . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
18.12 Programmer's Model . . . . . . . . . . . . . . . . . . . . . . . . . . 46018.12.1 FREE Running Mode . . . . . . . . . . . . . . . . . . . . . . . .46118.12.2 One Shot Mode . . . . . . . . . . . . . . . . . . . . . . . . . .46218.12.3 DOUBLE Mode . . . . . . . . . . . . . . . . . . . . . . . . . .46218.12.4 BUFFERED Mode . . . . . . . . . . . . . . . . . . . . . . . . .46318.12.5 Continuous Output Generation . . . . . . . . . . . . . . . . . . . . .46418.12.6 PWM Output . . . . . . . . . . . . . . . . . . . . . . . . . . .465
18.13 LETIMER Register Map . . . . . . . . . . . . . . . . . . . . . . . . . 466
18.14 LETIMER Register Description . . . . . . . . . . . . . . . . . . . . . . . 46818.14.1 LETIMER_IPVERSION - IP version. . . . . . . . . . . . . . . . . . . . 46818.14.2 LETIMER_EN - module en . . . . . . . . . . . . . . . . . . . . . .46818.14.3 LETIMER_CTRL - Control Register . . . . . . . . . . . . . . . . . . . . 46918.14.4 LETIMER_CMD - Command Register . . . . . . . . . . . . . . . . . . . 47118.14.5 LETIMER_STATUS - Status Register . . . . . . . . . . . . . . . . . . . 47218.14.6 LETIMER_CNT - Counter Value Register. . . . . . . . . . . . . . . . . . 47218.14.7 LETIMER_COMP0 - Compare Value Register 0 . . . . . . . . . . . . . . .47318.14.8 LETIMER_COMP1 - Compare Value Register 1 . . . . . . . . . . . . . . .47318.14.9 LETIMER_TOP - Counter TOP Value Register . . . . . . . . . . . . . . . . 47418.14.10 LETIMER_TOPBUFF - Buffered Counter TOP Value . . . . . . . . . . . . .47418.14.11 LETIMER_REP0 - Repeat Counter Register 0. . . . . . . . . . . . . . . . 47518.14.12 LETIMER_REP1 - Repeat Counter Register 1. . . . . . . . . . . . . . . . 47518.14.13 LETIMER_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . .476
silabs.com | Building a more connected world. Rev. 1.0 | 12
18.14.14 LETIMER_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . 47718.14.15 LETIMER_SYNCBUSY - Synchronization Busy Register . . . . . . . . . . . . 47818.14.16 LETIMER_PRSMODE - PRS Input mode select Register . . . . . . . . . . . . 479
19. TIMER - Timer/Counter . . . . . . . . . . . . . . . . . . . . . . . . . .48119.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
19.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .482
19.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 48319.3.1 Register Access. . . . . . . . . . . . . . . . . . . . . . . . . . . 48319.3.2 Counter Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . 48419.3.3 Compare/Capture Channels . . . . . . . . . . . . . . . . . . . . . .49019.3.4 Dead-Time Insertion Unit . . . . . . . . . . . . . . . . . . . . . . .50119.3.5 Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50519.3.6 Interrupts, DMA and PRS Output . . . . . . . . . . . . . . . . . . . . . 50519.3.7 GPIO Input/Output . . . . . . . . . . . . . . . . . . . . . . . . . . 505
19.4 TIMER Register Map . . . . . . . . . . . . . . . . . . . . . . . . . .506
19.5 TIMER Register Description . . . . . . . . . . . . . . . . . . . . . . . . 50919.5.1 TIMER_IPVERSION - IP version ID . . . . . . . . . . . . . . . . . . . . 50919.5.2 TIMER_CFG - Configuration Register . . . . . . . . . . . . . . . . . . .51019.5.3 TIMER_CTRL - Control Register . . . . . . . . . . . . . . . . . . . . . 51319.5.4 TIMER_CMD - Command Register . . . . . . . . . . . . . . . . . . . .51419.5.5 TIMER_STATUS - Status Register . . . . . . . . . . . . . . . . . . . .51519.5.6 TIMER_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . .51819.5.7 TIMER_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . . . 52019.5.8 TIMER_TOP - Counter Top Value Register . . . . . . . . . . . . . . . . .52119.5.9 TIMER_TOPB - Counter Top Value Buffer Register . . . . . . . . . . . . . . . 52119.5.10 TIMER_CNT - Counter Value Register . . . . . . . . . . . . . . . . . .52219.5.11 TIMER_LOCK - TIMER Configuration Lock Register . . . . . . . . . . . . . . 52219.5.12 TIMER_EN - module en . . . . . . . . . . . . . . . . . . . . . . .52319.5.13 TIMER_CCx_CFG - CC Channel Configuration Register . . . . . . . . . . . .52419.5.14 TIMER_CCx_CTRL - CC Channel Control Register . . . . . . . . . . . . . .52619.5.15 TIMER_CCx_OC - OC Channel Value Register . . . . . . . . . . . . . . .52719.5.16 TIMER_CCx_OCB - OC Channel Value Buffer Register . . . . . . . . . . . . . 52819.5.17 TIMER_CCx_ICF - IC Channel Value Register . . . . . . . . . . . . . . . . 52819.5.18 TIMER_CCx_ICOF - IC Channel Value Overflow Register . . . . . . . . . . . . 52819.5.19 TIMER_DTCFG - DTI Configuration Register . . . . . . . . . . . . . . . .52919.5.20 TIMER_DTTIMECFG - DTI Time Configuration Register . . . . . . . . . . . .53019.5.21 TIMER_DTFCFG - DTI Fault Configuration Register . . . . . . . . . . . . . . 53119.5.22 TIMER_DTCTRL - DTI Control Register . . . . . . . . . . . . . . . . . .53219.5.23 TIMER_DTOGEN - DTI Output Generation Enable Register . . . . . . . . . . .53319.5.24 TIMER_DTFAULT - DTI Fault Register . . . . . . . . . . . . . . . . . .53419.5.25 TIMER_DTFAULTC - DTI Fault Clear Register . . . . . . . . . . . . . . . . 53519.5.26 TIMER_DTLOCK - DTI Configuration Lock Register . . . . . . . . . . . . . . 536
20. PDM - PDM Interface . . . . . . . . . . . . . . . . . . . . . . . . . . .53720.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
20.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .538
silabs.com | Building a more connected world. Rev. 1.0 | 13
20.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 53820.3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53920.3.2 PDM Clock Generation . . . . . . . . . . . . . . . . . . . . . . . .53920.3.3 Filter Order . . . . . . . . . . . . . . . . . . . . . . . . . . . .53920.3.4 Down Sample Rate . . . . . . . . . . . . . . . . . . . . . . . . .54020.3.5 Multi Channel Operation . . . . . . . . . . . . . . . . . . . . . . . . 54020.3.6 Output Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 54020.3.7 FIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54020.3.8 DMA Support . . . . . . . . . . . . . . . . . . . . . . . . . . .54120.3.9 PRS Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54120.3.10 PDM Energy Modes . . . . . . . . . . . . . . . . . . . . . . . . . 54120.3.11 Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . .54120.3.12 Pin Configurations . . . . . . . . . . . . . . . . . . . . . . . . .54120.3.13 Programmer's Model. . . . . . . . . . . . . . . . . . . . . . . . . 542
20.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54420.4.1 PDM Microphones . . . . . . . . . . . . . . . . . . . . . . . . . . 54420.4.2 Isolated Sigma Delta Modulators . . . . . . . . . . . . . . . . . . . . . 545
20.5 PDM Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . .546
20.6 PDM Register Description . . . . . . . . . . . . . . . . . . . . . . . . . 54720.6.1 PDM_IPVERSION - IP Version ID . . . . . . . . . . . . . . . . . . . .54720.6.2 PDM_EN - PDM Module enable Register . . . . . . . . . . . . . . . . . .54820.6.3 PDM_CTRL - PDM Core Control Register . . . . . . . . . . . . . . . . . . 54820.6.4 PDM_CMD - PDM Core Command Register . . . . . . . . . . . . . . . . . 54920.6.5 PDM_STATUS - PDM Status register . . . . . . . . . . . . . . . . . . .55020.6.6 PDM_CFG0 - PDM Core Configuration Register0 . . . . . . . . . . . . . . .55120.6.7 PDM_CFG1 - PDM Core Configuration Register1 . . . . . . . . . . . . . . .55320.6.8 PDM_RXDATA - PDM Received Data Register . . . . . . . . . . . . . . . . 55320.6.9 PDM_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . . . 55420.6.10 PDM_IEN - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . . 55420.6.11 PDM_SYNCBUSY - Synchronization Busy Register . . . . . . . . . . . . . . 555
21. USART - Universal Synchronous Asynchronous Receiver/Transmitter . . . . . . . .55621.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556
21.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .557
21.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 55821.3.1 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . .55921.3.2 Asynchronous Operation . . . . . . . . . . . . . . . . . . . . . . . . 55921.3.3 Synchronous Operation . . . . . . . . . . . . . . . . . . . . . . . . 57521.3.4 Hardware Flow Control . . . . . . . . . . . . . . . . . . . . . . . .58121.3.5 Debug Halt . . . . . . . . . . . . . . . . . . . . . . . . . . . .58121.3.6 PRS-triggered Transmissions . . . . . . . . . . . . . . . . . . . . . . 58121.3.7 PRS RX Input . . . . . . . . . . . . . . . . . . . . . . . . . . .58121.3.8 PRS CLK Input . . . . . . . . . . . . . . . . . . . . . . . . . . . 58221.3.9 DMA Support . . . . . . . . . . . . . . . . . . . . . . . . . . .58221.3.10 Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58321.3.11 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . .58821.3.12 IrDA Modulator/ Demodulator . . . . . . . . . . . . . . . . . . . . . . 589
silabs.com | Building a more connected world. Rev. 1.0 | 14
21.4 USART Register Map . . . . . . . . . . . . . . . . . . . . . . . . . .590
21.5 USART Register Description . . . . . . . . . . . . . . . . . . . . . . . . 59321.5.1 USART_IPVERSION - IPVERSION . . . . . . . . . . . . . . . . . . . . 59321.5.2 USART_EN - USART Enable . . . . . . . . . . . . . . . . . . . . . .59321.5.3 USART_CTRL - Control Register . . . . . . . . . . . . . . . . . . . . . 59421.5.4 USART_FRAME - USART Frame Format Register . . . . . . . . . . . . . . . 59921.5.5 USART_TRIGCTRL - USART Trigger Control register . . . . . . . . . . . . . . 60121.5.6 USART_CMD - Command Register . . . . . . . . . . . . . . . . . . . . 60221.5.7 USART_STATUS - USART Status Register . . . . . . . . . . . . . . . . .60321.5.8 USART_CLKDIV - Clock Control Register . . . . . . . . . . . . . . . . . . 60421.5.9 USART_RXDATAX - RX Buffer Data Extended Register . . . . . . . . . . . . . 60521.5.10 USART_RXDATA - RX Buffer Data Register . . . . . . . . . . . . . . . .60521.5.11 USART_RXDOUBLEX - RX Buffer Double Data Extended Register . . . . . . . . . 60621.5.12 USART_RXDOUBLE - RX FIFO Double Data Register . . . . . . . . . . . . . 60721.5.13 USART_RXDATAXP - RX Buffer Data Extended Peek Register . . . . . . . . . . 60721.5.14 USART_RXDOUBLEXP - RX Buffer Double Data Extended Peek R... . . . . . . . . 60821.5.15 USART_TXDATAX - TX Buffer Data Extended Register . . . . . . . . . . . . . 60921.5.16 USART_TXDATA - TX Buffer Data Register . . . . . . . . . . . . . . . . . 61021.5.17 USART_TXDOUBLEX - TX Buffer Double Data Extended Register . . . . . . . . . 61121.5.18 USART_TXDOUBLE - TX Buffer Double Data Register . . . . . . . . . . . . . 61221.5.19 USART_IF - Interrupt Flag Register. . . . . . . . . . . . . . . . . . . . 61321.5.20 USART_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . .61521.5.21 USART_IRCTRL - IrDA Control Register . . . . . . . . . . . . . . . . . . 61621.5.22 USART_I2SCTRL - I2S Control Register . . . . . . . . . . . . . . . . . . 61721.5.23 USART_TIMING - Timing Register . . . . . . . . . . . . . . . . . . . . 61921.5.24 USART_CTRLX - Control Register Extended . . . . . . . . . . . . . . . .62121.5.25 USART_TIMECMP0 - Used to generate interrupts and vario... . . . . . . . . . .62321.5.26 USART_TIMECMP1 - Used to generate interrupts and vario... . . . . . . . . . .62521.5.27 USART_TIMECMP2 - Used to generate interrupts and vario... . . . . . . . . . .627
22. EUART - Enhanced Universal Asynchronous Receiver/Transmitter . . . . . . . . .62922.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
22.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .630
22.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 63122.3.1 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . .63122.3.2 Frame Format . . . . . . . . . . . . . . . . . . . . . . . . . . .63222.3.3 Parity bit Calculation and Handling . . . . . . . . . . . . . . . . . . . .63322.3.4 Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . .63422.3.5 Auto Baud Detection . . . . . . . . . . . . . . . . . . . . . . . . .63522.3.6 Data Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . 63622.3.7 Transmit FIFO Operation . . . . . . . . . . . . . . . . . . . . . . .63722.3.8 Frame Transmission Control . . . . . . . . . . . . . . . . . . . . . .63822.3.9 Transmission Delay . . . . . . . . . . . . . . . . . . . . . . . . .63822.3.10 Data Reception . . . . . . . . . . . . . . . . . . . . . . . . . .63822.3.11 Receive FIFO Operation . . . . . . . . . . . . . . . . . . . . . . .63922.3.12 Blocking Incoming Data. . . . . . . . . . . . . . . . . . . . . . . . 64022.3.13 Data Sampling and Filtering . . . . . . . . . . . . . . . . . . . . . .64122.3.14 Parity Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
silabs.com | Building a more connected world. Rev. 1.0 | 15
22.3.15 Framing Error and Break Detection . . . . . . . . . . . . . . . . . . . . 64222.3.16 Programmable Start Frame . . . . . . . . . . . . . . . . . . . . . .64322.3.17 Programmable Signal Frame . . . . . . . . . . . . . . . . . . . . . . 64322.3.18 Local Loopback . . . . . . . . . . . . . . . . . . . . . . . . . .64322.3.19 Half Duplex Communication . . . . . . . . . . . . . . . . . . . . . .64322.3.20 Single Data-link . . . . . . . . . . . . . . . . . . . . . . . . . .64422.3.21 Single Data-link with External Driver . . . . . . . . . . . . . . . . . . .64422.3.22 Two Data-links . . . . . . . . . . . . . . . . . . . . . . . . . . . 64422.3.23 Multi-Processor Mode . . . . . . . . . . . . . . . . . . . . . . . .64522.3.24 Collision Detection . . . . . . . . . . . . . . . . . . . . . . . . .64522.3.25 Hardware Flow Control . . . . . . . . . . . . . . . . . . . . . . . . 64522.3.26 Debug Halt . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64622.3.27 PRS-triggered Transmissions. . . . . . . . . . . . . . . . . . . . . . 64622.3.28 PRS RX Input . . . . . . . . . . . . . . . . . . . . . . . . . . . 64622.3.29 DMA Support . . . . . . . . . . . . . . . . . . . . . . . . . . .64622.3.30 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . .64722.3.31 EM2 Operation (LF Mode Only) . . . . . . . . . . . . . . . . . . . . . 64722.3.32 IrDA Modulator/ Demodulator . . . . . . . . . . . . . . . . . . . . . . 648
22.4 EUSART Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . 649
22.5 EUSART Register Description . . . . . . . . . . . . . . . . . . . . . . .65122.5.1 EUSART_IPVERSION - IP version ID . . . . . . . . . . . . . . . . . . .65122.5.2 EUSART_EN - Enable Register . . . . . . . . . . . . . . . . . . . . .65222.5.3 EUSART_CFG0 - Configuration 0 Register . . . . . . . . . . . . . . . . .65322.5.4 EUSART_CFG1 - Configuration 1 Register . . . . . . . . . . . . . . . . .65622.5.5 EUSART_FRAMECFG - Frame Format Register . . . . . . . . . . . . . . .65922.5.6 EUSART_IRHFCFG - HF IrDA Mod Config Register . . . . . . . . . . . . . .66022.5.7 EUSART_IRLFCFG - LF IrDA Pulse Config Register . . . . . . . . . . . . . .66122.5.8 EUSART_TIMINGCFG - Timing Register . . . . . . . . . . . . . . . . . .66122.5.9 EUSART_STARTFRAMECFG - Start Frame Register . . . . . . . . . . . . . . 66222.5.10 EUSART_SIGFRAMECFG - Signal Frame Register . . . . . . . . . . . . . .66222.5.11 EUSART_CLKDIV - Clock Divider Register . . . . . . . . . . . . . . . . . 66322.5.12 EUSART_TRIGCTRL - Trigger Control Register . . . . . . . . . . . . . . .66322.5.13 EUSART_CMD - Command Register . . . . . . . . . . . . . . . . . . . 66422.5.14 EUSART_RXDATA - RX Data Register . . . . . . . . . . . . . . . . . .66522.5.15 EUSART_RXDATAP - RX Data Peek Register . . . . . . . . . . . . . . . . 66522.5.16 EUSART_TXDATA - TX Data Register . . . . . . . . . . . . . . . . . .66622.5.17 EUSART_STATUS - Status Register . . . . . . . . . . . . . . . . . . .66722.5.18 EUSART_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . .66922.5.19 EUSART_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . .67122.5.20 EUSART_SYNCBUSY - Synchronization Busy Register . . . . . . . . . . . . . 673
23. I2C - Inter-Integrated Circuit Interface . . . . . . . . . . . . . . . . . . . . . 67523.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675
23.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .675
23.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 67623.3.1 I2C-Bus Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 67723.3.2 Enable and Reset . . . . . . . . . . . . . . . . . . . . . . . . . . 681
silabs.com | Building a more connected world. Rev. 1.0 | 16
23.3.3 Pin Configuration . . . . . . . . . . . . . . . . . . . . . . . . . .68123.3.4 Safely Disabling and Changing Slave Configuration. . . . . . . . . . . . . . . 68123.3.5 Clock Generation . . . . . . . . . . . . . . . . . . . . . . . . . .68223.3.6 Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68223.3.7 Buffers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68223.3.8 Master Operation . . . . . . . . . . . . . . . . . . . . . . . . . .68523.3.9 Bus States . . . . . . . . . . . . . . . . . . . . . . . . . . . .69323.3.10 Slave Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 69323.3.11 Transfer Automation . . . . . . . . . . . . . . . . . . . . . . . . . 69723.3.12 Using 10-bit Addresses . . . . . . . . . . . . . . . . . . . . . . . . 69823.3.13 Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 69823.3.14 DMA Support . . . . . . . . . . . . . . . . . . . . . . . . . . .70023.3.15 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . .70023.3.16 Wake-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700
23.4 I2C Register Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . 701
23.5 I2C Register Description . . . . . . . . . . . . . . . . . . . . . . . . .70323.5.1 I2C_IPVERSION - IP VERSION Register . . . . . . . . . . . . . . . . . .70323.5.2 I2C_EN - Enable Register . . . . . . . . . . . . . . . . . . . . . . .70323.5.3 I2C_CTRL - Control Register . . . . . . . . . . . . . . . . . . . . . .70423.5.4 I2C_CMD - Command Register . . . . . . . . . . . . . . . . . . . . .70823.5.5 I2C_STATE - State Register . . . . . . . . . . . . . . . . . . . . . .70923.5.6 I2C_STATUS - Status Register . . . . . . . . . . . . . . . . . . . . .71023.5.7 I2C_CLKDIV - Clock Division Register . . . . . . . . . . . . . . . . . . .71123.5.8 I2C_SADDR - Slave Address Register . . . . . . . . . . . . . . . . . . . 71123.5.9 I2C_SADDRMASK - Slave Address Mask Register . . . . . . . . . . . . . . . 71223.5.10 I2C_RXDATA - Receive Buffer Data Register . . . . . . . . . . . . . . . .71223.5.11 I2C_RXDOUBLE - Receive Buffer Double Data Register . . . . . . . . . . . .71323.5.12 I2C_RXDATAP - Receive Buffer Data Peek Register . . . . . . . . . . . . . . 71323.5.13 I2C_RXDOUBLEP - Receive Buffer Double Data Peek Register . . . . . . . . . . 71423.5.14 I2C_TXDATA - Transmit Buffer Data Register . . . . . . . . . . . . . . . .71423.5.15 I2C_TXDOUBLE - Transmit Buffer Double Data Register . . . . . . . . . . . .71523.5.16 I2C_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . . . 71623.5.17 I2C_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . . .718
24. IADC - Incremental Analog to Digital Converter . . . . . . . . . . . . . . . . .72024.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
24.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .721
24.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 72224.3.1 Register Access. . . . . . . . . . . . . . . . . . . . . . . . . . . 72324.3.2 Clocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72424.3.3 Conversion Timing . . . . . . . . . . . . . . . . . . . . . . . . . . 72524.3.4 Reference Selection and Analog Gain . . . . . . . . . . . . . . . . . . .73224.3.5 Input and Configuration Selection . . . . . . . . . . . . . . . . . . . . . 73224.3.6 Gain and Offset Correction . . . . . . . . . . . . . . . . . . . . . . . 73724.3.7 Output Data FIFOs . . . . . . . . . . . . . . . . . . . . . . . . . . 74124.3.8 Window Compare . . . . . . . . . . . . . . . . . . . . . . . . . . 74424.3.9 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
silabs.com | Building a more connected world. Rev. 1.0 | 17
24.4 IADC Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
24.5 IADC Register Description. . . . . . . . . . . . . . . . . . . . . . . . . 74924.5.1 IADC_IPVERSION - IPVERSION . . . . . . . . . . . . . . . . . . . . . 74924.5.2 IADC_EN - Enable . . . . . . . . . . . . . . . . . . . . . . . . . . 74924.5.3 IADC_CTRL - Control . . . . . . . . . . . . . . . . . . . . . . . .75024.5.4 IADC_CMD - Command . . . . . . . . . . . . . . . . . . . . . . . . 75224.5.5 IADC_TIMER - Timer . . . . . . . . . . . . . . . . . . . . . . . . . 75324.5.6 IADC_STATUS - Status . . . . . . . . . . . . . . . . . . . . . . . . 75424.5.7 IADC_MASKREQ - Mask Request . . . . . . . . . . . . . . . . . . . .75524.5.8 IADC_STMASK - Scan Table Mask . . . . . . . . . . . . . . . . . . . . 75624.5.9 IADC_CMPTHR - Digital Window Comparator Threshold . . . . . . . . . . . . . 75624.5.10 IADC_IF - Interrupt Flags . . . . . . . . . . . . . . . . . . . . . . .75724.5.11 IADC_IEN - Interrupt Enable . . . . . . . . . . . . . . . . . . . . . . 75924.5.12 IADC_TRIGGER - Trigger . . . . . . . . . . . . . . . . . . . . . . . 76124.5.13 IADC_CFGx - Configuration . . . . . . . . . . . . . . . . . . . . . .76424.5.14 IADC_SCALEx - Scaling . . . . . . . . . . . . . . . . . . . . . . .76624.5.15 IADC_SCHEDx - Scheduling . . . . . . . . . . . . . . . . . . . . . . 76624.5.16 IADC_SINGLEFIFOCFG - Single FIFO Configuration . . . . . . . . . . . . .76724.5.17 IADC_SINGLEFIFODATA - Single FIFO Read Data . . . . . . . . . . . . . . 76824.5.18 IADC_SINGLEFIFOSTAT - Single FIFO Status . . . . . . . . . . . . . . . . 76824.5.19 IADC_SINGLEDATA - Single Data . . . . . . . . . . . . . . . . . . . . 76924.5.20 IADC_SCANFIFOCFG - Scan FIFO Configuration . . . . . . . . . . . . . . . 77024.5.21 IADC_SCANFIFODATA - Scan FIFO Read Data . . . . . . . . . . . . . . .77124.5.22 IADC_SCANFIFOSTAT - Scan FIFO Status . . . . . . . . . . . . . . . . . 77124.5.23 IADC_SCANDATA - Scan Data . . . . . . . . . . . . . . . . . . . . . 77224.5.24 IADC_SINGLE - Single Queue Port Selection . . . . . . . . . . . . . . . . 77324.5.25 IADC_SCANx - SCAN Entry . . . . . . . . . . . . . . . . . . . . . . 775
25. GPIO - General Purpose Input/Output . . . . . . . . . . . . . . . . . . . . . 77725.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . .777
25.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .778
25.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 77925.3.1 Pin Configuration . . . . . . . . . . . . . . . . . . . . . . . . . .78025.3.2 Alternate Port Control . . . . . . . . . . . . . . . . . . . . . . . .78225.3.3 Slew Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78225.3.4 Input Disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78225.3.5 Configuration Lock . . . . . . . . . . . . . . . . . . . . . . . . . . 78225.3.6 EM2 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . 78225.3.7 EM4 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . 78225.3.8 EM4 Wakeup . . . . . . . . . . . . . . . . . . . . . . . . . . .78325.3.9 Debug Connections . . . . . . . . . . . . . . . . . . . . . . . . .78325.3.10 Interrupt Generation . . . . . . . . . . . . . . . . . . . . . . . . . 78425.3.11 Output to PRS . . . . . . . . . . . . . . . . . . . . . . . . . . . 78525.3.12 Peripheral Resource Routing . . . . . . . . . . . . . . . . . . . . . . 785
25.4 Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . .790
25.5 GPIO Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . . 791
25.6 GPIO Register Description . . . . . . . . . . . . . . . . . . . . . . . .811
silabs.com | Building a more connected world. Rev. 1.0 | 18
25.6.1 GPIO_PORTA_CTRL - Port control . . . . . . . . . . . . . . . . . . . . 81125.6.2 GPIO_PORTA_MODEL - mode low . . . . . . . . . . . . . . . . . . . . 81225.6.3 GPIO_PORTA_MODEH - mode high . . . . . . . . . . . . . . . . . . .81725.6.4 GPIO_PORTA_DOUT - data out . . . . . . . . . . . . . . . . . . . . . 81825.6.5 GPIO_PORTA_DIN - data in . . . . . . . . . . . . . . . . . . . . . .81825.6.6 GPIO_PORTB_CTRL - Port control . . . . . . . . . . . . . . . . . . . . 81925.6.7 GPIO_PORTB_MODEL - mode low . . . . . . . . . . . . . . . . . . . . 82025.6.8 GPIO_PORTB_DOUT - data out . . . . . . . . . . . . . . . . . . . . . 82325.6.9 GPIO_PORTB_DIN - data in . . . . . . . . . . . . . . . . . . . . . .82325.6.10 GPIO_PORTC_CTRL - Port control . . . . . . . . . . . . . . . . . . .82425.6.11 GPIO_PORTC_MODEL - mode low . . . . . . . . . . . . . . . . . . .82525.6.12 GPIO_PORTC_DOUT - data out . . . . . . . . . . . . . . . . . . . .83025.6.13 GPIO_PORTC_DIN - data in . . . . . . . . . . . . . . . . . . . . . . 83025.6.14 GPIO_PORTD_CTRL - Port control . . . . . . . . . . . . . . . . . . .83125.6.15 GPIO_PORTD_MODEL - mode low . . . . . . . . . . . . . . . . . . .83225.6.16 GPIO_PORTD_DOUT - data out . . . . . . . . . . . . . . . . . . . .83425.6.17 GPIO_PORTD_DIN - data in . . . . . . . . . . . . . . . . . . . . . . 83525.6.18 GPIO_LOCK - Lock Register . . . . . . . . . . . . . . . . . . . . . . 83525.6.19 GPIO_GPIOLOCKSTATUS - Lock Status . . . . . . . . . . . . . . . . .83625.6.20 GPIO_ABUSALLOC - A Bus allocation . . . . . . . . . . . . . . . . . .83725.6.21 GPIO_BBUSALLOC - B Bus allocation . . . . . . . . . . . . . . . . . .83925.6.22 GPIO_CDBUSALLOC - CD Bus allocation . . . . . . . . . . . . . . . . .84125.6.23 GPIO_EXTIPSELL - External Interrupt Port Select Low . . . . . . . . . . . . . 84325.6.24 GPIO_EXTIPSELH - External interrupt Port Select High . . . . . . . . . . . . . 84625.6.25 GPIO_EXTIPINSELL - External Interrupt Pin Select Low . . . . . . . . . . . .84825.6.26 GPIO_EXTIPINSELH - External Interrupt Pin Select High . . . . . . . . . . . .85125.6.27 GPIO_EXTIRISE - External Interrupt Rising Edge Trigger . . . . . . . . . . . .85225.6.28 GPIO_EXTIFALL - External Interrupt Falling Edge Trigger . . . . . . . . . . . . 85325.6.29 GPIO_IF - Interrupt Flag . . . . . . . . . . . . . . . . . . . . . . .85425.6.30 GPIO_IEN - Interrupt Enable . . . . . . . . . . . . . . . . . . . . . . 85625.6.31 GPIO_EM4WUEN - EM4 wakeup enable . . . . . . . . . . . . . . . . . . 85825.6.32 GPIO_EM4WUPOL - EM4 wakeup polarity . . . . . . . . . . . . . . . . . 85825.6.33 GPIO_DBGROUTEPEN - Debugger Route Pin enable . . . . . . . . . . . . .85925.6.34 GPIO_TRACEROUTEPEN - Trace Route Pin Enable . . . . . . . . . . . . .86025.6.35 GPIO_CMU_ROUTEEN - CMU pin enable . . . . . . . . . . . . . . . . .86125.6.36 GPIO_CMU_CLKIN0ROUTE - CLKIN0 port/pin select . . . . . . . . . . . . .86125.6.37 GPIO_CMU_CLKOUT0ROUTE - CLKOUT0 port/pin select . . . . . . . . . . .86225.6.38 GPIO_CMU_CLKOUT1ROUTE - CLKOUT1 port/pin select . . . . . . . . . . .86225.6.39 GPIO_CMU_CLKOUT2ROUTE - CLKOUT2 port/pin select . . . . . . . . . . .86325.6.40 GPIO_DCDC_ROUTEEN - DCDC pin enable . . . . . . . . . . . . . . . .86325.6.41 GPIO_FRC_ROUTEEN - FRC pin enable . . . . . . . . . . . . . . . . .86425.6.42 GPIO_FRC_DCLKROUTE - DCLK port/pin select . . . . . . . . . . . . . . . 86425.6.43 GPIO_FRC_DFRAMEROUTE - DFRAME port/pin select . . . . . . . . . . . .86525.6.44 GPIO_FRC_DOUTROUTE - DOUT port/pin select . . . . . . . . . . . . . .86525.6.45 GPIO_I2C0_ROUTEEN - I2C0 pin enable . . . . . . . . . . . . . . . . .86625.6.46 GPIO_I2C0_SCLROUTE - SCL port/pin select . . . . . . . . . . . . . . . . 86625.6.47 GPIO_I2C0_SDAROUTE - SDA port/pin select . . . . . . . . . . . . . . . . 86725.6.48 GPIO_I2C1_ROUTEEN - I2C1 pin enable . . . . . . . . . . . . . . . . .867
silabs.com | Building a more connected world. Rev. 1.0 | 19
25.6.49 GPIO_I2C1_SCLROUTE - SCL port/pin select . . . . . . . . . . . . . . . . 86825.6.50 GPIO_I2C1_SDAROUTE - SDA port/pin select . . . . . . . . . . . . . . . . 86825.6.51 GPIO_LETIMER0_ROUTEEN - LETIMER pin enable . . . . . . . . . . . . .86925.6.52 GPIO_LETIMER0_OUT0ROUTE - OUT0 port/pin select . . . . . . . . . . . .86925.6.53 GPIO_LETIMER0_OUT1ROUTE - OUT1 port/pin select . . . . . . . . . . . .87025.6.54 GPIO_EUART0_ROUTEEN - EUART pin enable . . . . . . . . . . . . . . . 87025.6.55 GPIO_EUART0_CTSROUTE - CTS port/pin select . . . . . . . . . . . . . .87125.6.56 GPIO_EUART0_RTSROUTE - RTS port/pin select . . . . . . . . . . . . . .87125.6.57 GPIO_EUART0_RXROUTE - RX port/pin select . . . . . . . . . . . . . . .87225.6.58 GPIO_EUART0_TXROUTE - TX port/pin select . . . . . . . . . . . . . . .87225.6.59 GPIO_MODEM_ROUTEEN - MODEM pin enable . . . . . . . . . . . . . . . 87325.6.60 GPIO_MODEM_ANT0ROUTE - ANT0 port/pin select . . . . . . . . . . . . .87425.6.61 GPIO_MODEM_ANT1ROUTE - ANT1 port/pin select . . . . . . . . . . . . .87525.6.62 GPIO_MODEM_ANTROLLOVERROUTE - ANTROLLOVER port/pin select . . . . . . 87525.6.63 GPIO_MODEM_ANTRR0ROUTE - ANTRR0 port/pin select . . . . . . . . . . .87625.6.64 GPIO_MODEM_ANTRR1ROUTE - ANTRR1 port/pin select . . . . . . . . . . .87625.6.65 GPIO_MODEM_ANTRR2ROUTE - ANTRR2 port/pin select . . . . . . . . . . .87725.6.66 GPIO_MODEM_ANTRR3ROUTE - ANTRR3 port/pin select . . . . . . . . . . .87725.6.67 GPIO_MODEM_ANTRR4ROUTE - ANTRR4 port/pin select . . . . . . . . . . .87825.6.68 GPIO_MODEM_ANTRR5ROUTE - ANTRR5 port/pin select . . . . . . . . . . .87825.6.69 GPIO_MODEM_ANTSWENROUTE - ANTSWEN port/pin select . . . . . . . . . . 87925.6.70 GPIO_MODEM_ANTSWUSROUTE - ANTSWUS port/pin select . . . . . . . . . . 87925.6.71 GPIO_MODEM_ANTTRIGROUTE - ANTTRIG port/pin select . . . . . . . . . . . 88025.6.72 GPIO_MODEM_ANTTRIGSTOPROUTE - ANTTRIGSTOP port/pin select . . . . . .88025.6.73 GPIO_MODEM_DCLKROUTE - DCLK port/pin select . . . . . . . . . . . . .88125.6.74 GPIO_MODEM_DINROUTE - DIN port/pin select . . . . . . . . . . . . . . . 88125.6.75 GPIO_MODEM_DOUTROUTE - DOUT port/pin select . . . . . . . . . . . . .88225.6.76 GPIO_PDM_ROUTEEN - PDM pin enable . . . . . . . . . . . . . . . . .88225.6.77 GPIO_PDM_CLKROUTE - CLK port/pin select . . . . . . . . . . . . . . . . 88325.6.78 GPIO_PDM_DAT0ROUTE - DAT0 port/pin select . . . . . . . . . . . . . . . 88325.6.79 GPIO_PDM_DAT1ROUTE - DAT1 port/pin select . . . . . . . . . . . . . . . 88425.6.80 GPIO_PRS0_ROUTEEN - PRS0 pin enable. . . . . . . . . . . . . . . . . 88525.6.81 GPIO_PRS0_ASYNCH0ROUTE - ASYNCH0 port/pin select . . . . . . . . . . .88625.6.82 GPIO_PRS0_ASYNCH1ROUTE - ASYNCH1 port/pin select . . . . . . . . . . .88725.6.83 GPIO_PRS0_ASYNCH2ROUTE - ASYNCH2 port/pin select . . . . . . . . . . .88725.6.84 GPIO_PRS0_ASYNCH3ROUTE - ASYNCH3 port/pin select . . . . . . . . . . .88825.6.85 GPIO_PRS0_ASYNCH4ROUTE - ASYNCH4 port/pin select . . . . . . . . . . .88825.6.86 GPIO_PRS0_ASYNCH5ROUTE - ASYNCH5 port/pin select . . . . . . . . . . .88925.6.87 GPIO_PRS0_ASYNCH6ROUTE - ASYNCH6 port/pin select . . . . . . . . . . .88925.6.88 GPIO_PRS0_ASYNCH7ROUTE - ASYNCH7 port/pin select . . . . . . . . . . .89025.6.89 GPIO_PRS0_ASYNCH8ROUTE - ASYNCH8 port/pin select . . . . . . . . . . .89025.6.90 GPIO_PRS0_ASYNCH9ROUTE - ASYNCH9 port/pin select . . . . . . . . . . .89125.6.91 GPIO_PRS0_ASYNCH10ROUTE - ASYNCH10 port/pin select . . . . . . . . . .89125.6.92 GPIO_PRS0_ASYNCH11ROUTE - ASYNCH11 port/pin select . . . . . . . . . .89225.6.93 GPIO_PRS0_SYNCH0ROUTE - SYNCH0 port/pin select . . . . . . . . . . . .89225.6.94 GPIO_PRS0_SYNCH1ROUTE - SYNCH1 port/pin select . . . . . . . . . . . .89325.6.95 GPIO_PRS0_SYNCH2ROUTE - SYNCH2 port/pin select . . . . . . . . . . . .89325.6.96 GPIO_PRS0_SYNCH3ROUTE - SYNCH3 port/pin select . . . . . . . . . . . .894
silabs.com | Building a more connected world. Rev. 1.0 | 20
25.6.97 GPIO_TIMER0_ROUTEEN - TIMER0 pin enable . . . . . . . . . . . . . . . 89525.6.98 GPIO_TIMER0_CC0ROUTE - CC0 port/pin select . . . . . . . . . . . . . .89625.6.99 GPIO_TIMER0_CC1ROUTE - CC1 port/pin select . . . . . . . . . . . . . .89625.6.100 GPIO_TIMER0_CC2ROUTE - CC2 port/pin select . . . . . . . . . . . . . .89725.6.101 GPIO_TIMER0_CCC0ROUTE - CCC0 port/pin select . . . . . . . . . . . . . 89725.6.102 GPIO_TIMER0_CCC1ROUTE - CCC1 port/pin select . . . . . . . . . . . . . 89825.6.103 GPIO_TIMER0_CCC2ROUTE - CCC2 port/pin select . . . . . . . . . . . . . 89825.6.104 GPIO_TIMER1_ROUTEEN - TIMER1 pin enable . . . . . . . . . . . . . .89925.6.105 GPIO_TIMER1_CC0ROUTE - CC0 port/pin select . . . . . . . . . . . . . .90025.6.106 GPIO_TIMER1_CC1ROUTE - CC1 port/pin select . . . . . . . . . . . . . .90025.6.107 GPIO_TIMER1_CC2ROUTE - CC2 port/pin select . . . . . . . . . . . . . .90125.6.108 GPIO_TIMER1_CCC0ROUTE - CCC0 port/pin select . . . . . . . . . . . . . 90125.6.109 GPIO_TIMER1_CCC1ROUTE - CCC1 port/pin select . . . . . . . . . . . . . 90225.6.110 GPIO_TIMER1_CCC2ROUTE - CCC2 port/pin select . . . . . . . . . . . . . 90225.6.111 GPIO_TIMER2_ROUTEEN - TIMER2 pin enable . . . . . . . . . . . . . .90325.6.112 GPIO_TIMER2_CC0ROUTE - CC0 port/pin select . . . . . . . . . . . . . .90425.6.113 GPIO_TIMER2_CC1ROUTE - CC1 port/pin select . . . . . . . . . . . . . .90425.6.114 GPIO_TIMER2_CC2ROUTE - CC2 port/pin select . . . . . . . . . . . . . .90525.6.115 GPIO_TIMER2_CCC0ROUTE - CCC0 port/pin select . . . . . . . . . . . . . 90525.6.116 GPIO_TIMER2_CCC1ROUTE - CCC1 port/pin select . . . . . . . . . . . . . 90625.6.117 GPIO_TIMER2_CCC2ROUTE - CCC2 port/pin select . . . . . . . . . . . . . 90625.6.118 GPIO_TIMER3_ROUTEEN - TIMER3 pin enable . . . . . . . . . . . . . .90725.6.119 GPIO_TIMER3_CC0ROUTE - CC0 port/pin select . . . . . . . . . . . . . .90825.6.120 GPIO_TIMER3_CC1ROUTE - CC1 port/pin select . . . . . . . . . . . . . .90825.6.121 GPIO_TIMER3_CC2ROUTE - CC2 port/pin select . . . . . . . . . . . . . .90925.6.122 GPIO_TIMER3_CCC0ROUTE - CCC0 port/pin select . . . . . . . . . . . . . 90925.6.123 GPIO_TIMER3_CCC1ROUTE - CCC1 port/pin select . . . . . . . . . . . . . 91025.6.124 GPIO_TIMER3_CCC2ROUTE - CCC2 port/pin select . . . . . . . . . . . . . 91025.6.125 GPIO_TIMER4_ROUTEEN - TIMER4 pin enable . . . . . . . . . . . . . .91125.6.126 GPIO_TIMER4_CC0ROUTE - CC0 port/pin select . . . . . . . . . . . . . .91225.6.127 GPIO_TIMER4_CC1ROUTE - CC1 port/pin select . . . . . . . . . . . . . .91225.6.128 GPIO_TIMER4_CC2ROUTE - CC2 port/pin select . . . . . . . . . . . . . .91325.6.129 GPIO_TIMER4_CCC0ROUTE - CCC0 port/pin select . . . . . . . . . . . . . 91325.6.130 GPIO_TIMER4_CCC1ROUTE - CCC1 port/pin select . . . . . . . . . . . . . 91425.6.131 GPIO_TIMER4_CCC2ROUTE - CCC2 port/pin select . . . . . . . . . . . . . 91425.6.132 GPIO_USART0_ROUTEEN - USART0 pin enable . . . . . . . . . . . . . .91525.6.133 GPIO_USART0_CSROUTE - CS port/pin select . . . . . . . . . . . . . . . 91625.6.134 GPIO_USART0_CTSROUTE - CTS port/pin select . . . . . . . . . . . . . . 91625.6.135 GPIO_USART0_RTSROUTE - RTS port/pin select . . . . . . . . . . . . . . 91725.6.136 GPIO_USART0_RXROUTE - RX port/pin select . . . . . . . . . . . . . . . 91725.6.137 GPIO_USART0_CLKROUTE - SCLK port/pin select . . . . . . . . . . . . .91825.6.138 GPIO_USART0_TXROUTE - TX port/pin select . . . . . . . . . . . . . . . 91825.6.139 GPIO_USART1_ROUTEEN - USART1 pin enable . . . . . . . . . . . . . .91925.6.140 GPIO_USART1_CSROUTE - CS port/pin select . . . . . . . . . . . . . . . 92025.6.141 GPIO_USART1_CTSROUTE - CTS port/pin select . . . . . . . . . . . . . . 92025.6.142 GPIO_USART1_RTSROUTE - RTS port/pin select . . . . . . . . . . . . . . 92125.6.143 GPIO_USART1_RXROUTE - RX port/pin select . . . . . . . . . . . . . . . 92125.6.144 GPIO_USART1_CLKROUTE - SCLK port/pin select . . . . . . . . . . . . .922
silabs.com | Building a more connected world. Rev. 1.0 | 21
25.6.145 GPIO_USART1_TXROUTE - TX port/pin select . . . . . . . . . . . . . . . 922
26. LDMA - Linked DMA . . . . . . . . . . . . . . . . . . . . . . . . . . .92326.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923
26.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . .924
26.2 Block Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925
26.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 92626.3.1 Channel Descriptor . . . . . . . . . . . . . . . . . . . . . . . . .92626.3.2 Channel Configuration . . . . . . . . . . . . . . . . . . . . . . . .93126.3.3 Channel Select Configuration . . . . . . . . . . . . . . . . . . . . . .93126.3.4 Starting a transfer . . . . . . . . . . . . . . . . . . . . . . . . . . 93126.3.5 Managing Transfer Errors . . . . . . . . . . . . . . . . . . . . . . .93226.3.6 Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93226.3.7 Channel descriptor data structure . . . . . . . . . . . . . . . . . . . . . 93426.3.8 Interaction with the EMU . . . . . . . . . . . . . . . . . . . . . . . . 93726.3.9 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93826.3.10 Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938
26.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93826.4.1 Single Direct Register DMA Transfer . . . . . . . . . . . . . . . . . . . . 93826.4.2 Descriptor Linked List . . . . . . . . . . . . . . . . . . . . . . . . . 93926.4.3 Single Descriptor Looped Transfer . . . . . . . . . . . . . . . . . . . .94126.4.4 Descriptor List with Looping . . . . . . . . . . . . . . . . . . . . . . . 94226.4.5 Simple Inter-Channel Synchronization . . . . . . . . . . . . . . . . . . .94326.4.6 2D Copy . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94526.4.7 Ping-Pong . . . . . . . . . . . . . . . . . . . . . . . . . . . .94726.4.8 Scatter-Gather . . . . . . . . . . . . . . . . . . . . . . . . . . .948
26.5 LDMA Source Selection Details . . . . . . . . . . . . . . . . . . . . . . . 94826.5.1 LDMA Source Selection Details . . . . . . . . . . . . . . . . . . . . .949
26.6 LDMA Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . . 951
26.7 LDMA Register Description . . . . . . . . . . . . . . . . . . . . . . . .95426.7.1 LDMA_IPVERSION - DMA Channel Request Clear Register . . . . . . . . . . .95426.7.2 LDMA_EN - DMA module enable disable Register . . . . . . . . . . . . . . . 95426.7.3 LDMA_CTRL - DMA Control Register . . . . . . . . . . . . . . . . . . .95526.7.4 LDMA_STATUS - DMA Status Register. . . . . . . . . . . . . . . . . . . 95626.7.5 LDMA_SYNCSWSET - DMA Sync Trig Sw Set Register . . . . . . . . . . . . . 95726.7.6 LDMA_SYNCSWCLR - DMA Sync Trig Sw Clear register . . . . . . . . . . . .95726.7.7 LDMA_SYNCHWEN - DMA Sync HW trigger enable register . . . . . . . . . . .95826.7.8 LDMA_SYNCHWSEL - DMA Sync HW trigger selection register . . . . . . . . . .95926.7.9 LDMA_SYNCSTATUS - DMA Sync Trigger Status Register . . . . . . . . . . . . 96026.7.10 LDMA_CHEN - DMA Channel Enable Register . . . . . . . . . . . . . . . . 96026.7.11 LDMA_CHDIS - DMA Channel Disable Register . . . . . . . . . . . . . . .96126.7.12 LDMA_CHSTATUS - DMA Channel Status Register . . . . . . . . . . . . . . 96126.7.13 LDMA_CHBUSY - DMA Channel Busy Register . . . . . . . . . . . . . . .96226.7.14 LDMA_CHDONE - DMA Channel Linking Done Register . . . . . . . . . . . .96326.7.15 LDMA_DBGHALT - DMA Channel Debug Halt Register . . . . . . . . . . . . . 96426.7.16 LDMA_SWREQ - DMA Channel Software Transfer Request . . . . . . . . . . .96426.7.17 LDMA_REQDIS - DMA Channel Request Disable Register . . . . . . . . . . . . 965
silabs.com | Building a more connected world. Rev. 1.0 | 22
26.7.18 LDMA_REQPEND - DMA Channel Requests Pending Register . . . . . . . . . .96526.7.19 LDMA_LINKLOAD - DMA Channel Link Load Register . . . . . . . . . . . . .96626.7.20 LDMA_REQCLEAR - DMA Channel Request Clear Register . . . . . . . . . . .96626.7.21 LDMA_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . .96726.7.22 LDMA_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . .96826.7.23 LDMA_CHx_CFG - Channel Configuration Register . . . . . . . . . . . . . .96926.7.24 LDMA_CHx_LOOP - Channel Loop Counter Register . . . . . . . . . . . . .97026.7.25 LDMA_CHx_CTRL - Channel Descriptor Control Word Register . . . . . . . . . . 97126.7.26 LDMA_CHx_SRC - Channel Descriptor Source Address . . . . . . . . . . . .97426.7.27 LDMA_CHx_DST - Channel Descriptor Destination Address . . . . . . . . . . .97426.7.28 LDMA_CHx_LINK - Channel Descriptor Link Address . . . . . . . . . . . . .975
26.8 LDMAXBAR Register Map . . . . . . . . . . . . . . . . . . . . . . . .975
26.9 LDMAXBAR Register Description . . . . . . . . . . . . . . . . . . . . . .97626.9.1 LDMAXBAR_CHx_REQSEL - Channel Peripheral Request Select Reg... . . . . . . .976
27. WDOG - Watch Dog Timer . . . . . . . . . . . . . . . . . . . . . . . . . 97727.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . .977
27.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .977
27.3 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . 97727.3.1 Clock Source . . . . . . . . . . . . . . . . . . . . . . . . . . .97827.3.2 Debug Functionality . . . . . . . . . . . . . . . . . . . . . . . . .97827.3.3 Energy Mode Handling . . . . . . . . . . . . . . . . . . . . . . . .97827.3.4 Warning Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . .97827.3.5 Window Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . .97927.3.6 PRS as Watchdog Clear . . . . . . . . . . . . . . . . . . . . . . . . 98027.3.7 PRS Rising Edge Monitoring . . . . . . . . . . . . . . . . . . . . . .980
27.4 WDOG Register Map . . . . . . . . . . . . . . . . . . . . . . . . . .981
27.5 WDOG Register Description . . . . . . . . . . . . . . . . . . . . . . . . 98227.5.1 WDOG_IPVERSION - IP Version Register . . . . . . . . . . . . . . . . . . 98227.5.2 WDOG_EN - Enable Register . . . . . . . . . . . . . . . . . . . . . . 98227.5.3 WDOG_CFG - Configuration Register . . . . . . . . . . . . . . . . . . .98327.5.4 WDOG_CMD - Command Register . . . . . . . . . . . . . . . . . . . .98627.5.5 WDOG_STATUS - Status Register . . . . . . . . . . . . . . . . . . . .98627.5.6 WDOG_IF - Interrupt Flag Register . . . . . . . . . . . . . . . . . . . .98727.5.7 WDOG_IEN - Interrupt Enable Register . . . . . . . . . . . . . . . . . . . 98827.5.8 WDOG_LOCK - Lock Register . . . . . . . . . . . . . . . . . . . . . . 98927.5.9 WDOG_SYNCBUSY - Synchronization Busy Register . . . . . . . . . . . . . . 989
28. Revision History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990
Appendix 1. Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . .991
silabs.com | Building a more connected world. Rev. 1.0 | 23
1. About This Document
1.1 Introduction
This document contains reference material for the EFR32xG22 devices. All modules and peripherals in the EFR32xG22 devices aredescribed in general terms. Not all modules are present in all devices and the feature set for each device might vary. Such differences,including pinout, are covered in the device data sheets.
Reference ManualAbout This Document
silabs.com | Building a more connected world. Rev. 1.0 | 24
1.2 Conventions
Register Names
Register names are given with a module name prefix followed by the short register name:
TIMERn_CTRL - Control Register
The "n" denotes the module number for modules which can exist in more than one instance.
Some registers are grouped which leads to a group name following the module prefix:
GPIO_Px_DOUT - Port Data Out Register
The "x" denotes the different ports.
Bit Fields
Registers contain one or more bit fields which can be 1 to 32 bits wide. Bit fields wider than 1 bit are given with start (x) and stop (y) bit[y:x].
Bit fields containing more than one bit are unsigned integers unless otherwise is specified.
Unspecified bit field settings must not be used, as this may lead to unpredictable behaviour.
Address
The address for each register can be found by adding the base address of the module found in the Memory Map (see Figure 4.1 Sys-tem Address Space with Core and Code Space Listing on page 37), and the offset address for the register (found in module RegisterMap).
Access Type
The register access types used in the register descriptions are explained in Table 1.1 Register Access Types on page 25.
Table 1.1. Register Access Types
Access Type Description
R Read only. Writes are ignored
RW Readable and writable
RW1 Readable and writable. Only writes to 1 have effect
(R)W1 Sometimes readable. Only writes to 1 have effect. Currently onlyused for IF_CLEAR registers (see 3.3.1 Interrupt Operation)
W1 Read value undefined. Only writes to 1 have effect
W Write only. Read value undefined.
RWH Readable, writable, and updated by hardware
RW(nB), RWH(nB), etc. "(nB)" suffix indicates that register explicitly does not support pe-ripheral bit set or clear (see 4. Memory and Bus System)
RW(a), R(a), etc. "(a)" suffix indicates that reading the register cause an action anday alter the register value.
Number format
0x prefix is used for hexadecimal numbers
0b prefix is used for binary numbers
Numbers without prefix are in decimal representation.
Reserved
Registers and bit fields marked with reserved are reserved for future use. These should be written to 0 unless otherwise stated in theRegister Description. Reserved bits might be read as 1 in