RM0486-STM32N6x5-x7
This document is addressed to application developers. It provides complete information on how to use the STM32N645xx, STM32N647xx, STM32N655xx, and STM32N657xx (referred to as STM32N6x5/x7xx) microcontrollers memory and peripherals.
For ordering information, mechanical and electrical device characteristics, refer to the datasheet.
For information on the Arm ® Cortex ® -M55 core, refer to the corresponding Arm ® Technical Reference Manual available on http://infocenter.arm.com .
STM32N6x5/x7xx microcontrollers include ST state-of-the-art patented technology.
Related documents
- • STM32N6x5/x7xx datasheet (DS14791)
- • STM32 Cortex ® -M55 MCUs programming manual (PM0273)
- • UM3234 “How to proceed with boot ROM on STM32N6 MCUs”
- • STM32N6xx MCU errata sheet (ES0621)
Contents
- 1 Documentation conventions . . . . . 156
- 1.1 General information . . . . . 156
- 1.2 List of abbreviations for registers . . . . . 156
- 1.3 Register reset value . . . . . 157
- 1.4 Glossary . . . . . 157
- 1.5 Availability of peripherals . . . . . 157
- 2 Memory and bus architecture . . . . . 158
- 2.1 System architecture . . . . . 158
- 2.1.1 Introduction . . . . . 158
- 2.1.2 Bus architecture . . . . . 158
- 2.2 Bus network-on-chip (NoC) . . . . . 162
- 2.2.1 STNoC AXI . . . . . 162
- 2.2.2 NPU_NIC network interconnect . . . . . 162
- 2.2.3 Multi-layer AHB interconnect (AHBM) . . . . . 162
- 2.3 Memory organization . . . . . 163
- 2.3.1 Introduction . . . . . 163
- 2.3.2 Memory map and register boundary addresses . . . . . 164
- 2.1 System architecture . . . . . 158
- 3 System security . . . . . 182
- 3.1 Key security features . . . . . 182
- 3.2 Secure boot . . . . . 183
- 3.3 Secure provisioning . . . . . 183
- 3.4 Temporal isolation . . . . . 184
- 3.5 Resource isolation . . . . . 184
- 3.5.1 Trustzone filtering using IDAU/SAU . . . . . 185
- 3.5.2 Privileged OS-controlled isolation . . . . . 186
- 3.5.3 RIF infrastructure . . . . . 186
- 3.5.4 Multi-tenancy . . . . . 187
- 3.5.5 NPU timeslicing . . . . . 188
- 3.5.6 NPU cache (CACHEAXI) management . . . . . 189
- 3.5.7 Memory firewalls . . . . . 189
- 3.5.8 RIF-aware peripherals . . . . . 190
| 3.6 | Secure storage . . . . . | 193 |
| 3.6.1 | Battery backup registers . . . . . | 193 |
| 3.6.2 | Secure RAM and registers . . . . . | 193 |
| 3.6.3 | Fuse secrets . . . . . | 193 |
| 3.6.4 | Hardware key management . . . . . | 193 |
| 3.6.5 | Unique ID . . . . . | 195 |
| 3.7 | Tamper detection and response . . . . . | 195 |
| 3.8 | Crypto engines . . . . . | 197 |
| 3.8.1 | Accelerators . . . . . | 197 |
| 3.8.2 | Memory cipher engine (MCE) . . . . . | 199 |
| 3.8.3 | NPU encryption . . . . . | 199 |
| 3.9 | Access controlled debug . . . . . | 200 |
| 4 | Boot and security control (BSEC) . . . . . | 201 |
| 4.1 | Introduction . . . . . | 201 |
| 4.2 | BSEC main features . . . . . | 201 |
| 4.3 | BSEC functional description . . . . . | 202 |
| 4.3.1 | BSEC block diagram . . . . . | 202 |
| 4.3.2 | BSEC internal signals . . . . . | 202 |
| 4.3.3 | BSEC reset and clocks . . . . . | 203 |
| 4.3.4 | Organization and use of fuses . . . . . | 204 |
| 4.3.5 | Operations on fuses . . . . . | 205 |
| 4.3.6 | BSEC read and programming status reporting . . . . . | 207 |
| 4.3.7 | Lifecycle management . . . . . | 208 |
| 4.3.8 | Epoch registers . . . . . | 209 |
| 4.3.9 | BSEC local access control . . . . . | 210 |
| 4.3.10 | Temporal isolation in BSEC . . . . . | 210 |
| 4.3.11 | BSEC debug and trace control . . . . . | 211 |
| 4.3.12 | Device features control . . . . . | 212 |
| 4.3.13 | Scratch registers . . . . . | 212 |
| 4.3.14 | JTAG registers . . . . . | 212 |
| 4.3.15 | STM32 root hardware unique key (RHUK) . . . . . | 212 |
| 4.3.16 | BSEC error management . . . . . | 213 |
| 4.3.17 | BSEC tamper response mechanisms . . . . . | 213 |
| 4.4 | BSEC interrupts . . . . . | 213 |
| 4.5 | BSEC registers . . . . . | 213 |
- 4.5.1 BSEC fuse word w value register (BSEC_FVRw) . . . . . . . . . . . . . . . . . . . . . 214
- 4.5.2 BSEC sticky programming lock register x (BSEC_SPLOCKx) . . . . . . . 215
- 4.5.3 BSEC sticky write lock register x (BSEC_SWLOCKx) . . . . . . . . . . . . . . . 215
- 4.5.4 BSEC sticky reload lock register x (BSEC_SRLOCKx) . . . . . . . . . . . . . . 216
- 4.5.5 BSEC OTP valid register x (BSEC_OTPVLDRx) . . . . . . . . . . . . . . . . . . . . 216
- 4.5.6 BSEC shadowed fuses status register x (BSEC_SFSRx) . . . . . . . . . . . . 217
- 4.5.7 BSEC OTP control register (BSEC_OTPCR) . . . . . . . . . . . . . . . . . . . . . . . 217
- 4.5.8 BSEC write data register (BSEC_WDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
- 4.5.9 BSEC scratch register x (BSEC_SCRATCHRx) . . . . . . . . . . . . . . . . . . . . 219
- 4.5.10 BSEC lock register (BSEC_LOCKR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
- 4.5.11 BSEC JTAG input register (BSEC_JTAGINR) . . . . . . . . . . . . . . . . . . . . . . 220
- 4.5.12 BSEC JTAG output register (BSEC_JTAGOUTR) . . . . . . . . . . . . . . . . . . . 220
- 4.5.13 BSEC unmap register (BSEC_UNMAPR) . . . . . . . . . . . . . . . . . . . . . . . . . . 220
- 4.5.14 BSEC status register (BSEC_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
- 4.5.15 BSEC OTP status register (BSEC_OTPSR) . . . . . . . . . . . . . . . . . . . . . . . . 222
- 4.5.16 BSEC epoch register (BSEC_EPOCHRx) . . . . . . . . . . . . . . . . . . . . . . . . . . 223
- 4.5.17 BSEC epoch selection control register (BSEC_EPOCHSELCR) . . . . . 224
- 4.5.18 BSEC debug control register (BSEC_DBGCR) . . . . . . . . . . . . . . . . . . . . . 224
- 4.5.19 BSEC AP unlock (BSEC_AP_UNLOCK) . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
- 4.5.20 BSEC HDPL status register (BSEC_HDPLSR) . . . . . . . . . . . . . . . . . . . . . . 226
- 4.5.21 BSEC HDPL control register (BSEC_HDPLCR) . . . . . . . . . . . . . . . . . . . . . 226
- 4.5.22 BSEC next HDPL control register (BSEC_NEXTHDPLCR) . . . . . . . . . . 227
- 4.5.23 BSEC write once scratch register x (BSEC_WOSCRx) . . . . . . . . . . . . . . 227
- 4.5.24 BSEC hot reset count register (BSEC_HRCR) . . . . . . . . . . . . . . . . . . . . . 228
- 4.5.25 BSEC warm reset count register (BSEC_WRCR) . . . . . . . . . . . . . . . . . . . 228
- 4.5.26 BSEC register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
- 5 OTP mapping (OTP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
- 6 Resource isolation framework security controller (RIFSC) . . . . . . . 248
- 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
- 6.2 RIFSC main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
- 6.3 RIFSC functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
- 6.3.1 RIFSC reset and clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
- 6.3.2 RISUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
- 6.3.3 RCC security settings for RIF-aware peripherals and RAMs . . . . . . 249
- 6.3.4 RIMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
| 6.4 | RIFSC registers . . . . . | 251 |
| 6.4.1 | RIFSC RISC slave configuration register x (RIFSC_RISC_CR) . . . . . | 251 |
| 6.4.2 | RIFSC RISC slave security configuration register x (RIFSC_RISC_SECCFGRx) . . . . . | 252 |
| 6.4.3 | RIFSC RISC slave privileged register x (RIFSC_RISC_PRIVCFG Rx) . . . . . | 252 |
| 6.4.4 | RIFSC RISC slave resource configuration lock register x (RIFSC_RISC_RCFGLOCK Rx) . . . . . | 253 |
| 6.4.5 | RIFSC RIMC master configuration register (RIFSC_RIMC_CR) . . . . . | 253 |
| 6.4.6 | RIFSC RIMC master attribute register x (RIFSC_RIMC_ATTR Rx) . . . . . | 254 |
| 6.4.7 | RIFSC peripheral protection status register 0 (RIFSC_PPSR0) . . . . . | 254 |
| 6.4.8 | RIFSC peripheral protection status register 1 (RIFSC_PPSR1) . . . . . | 255 |
| 6.4.9 | RIFSC peripheral protection status register 2 (RIFSC_PPSR2) . . . . . | 255 |
| 6.4.10 | RIFSC peripheral protection status register 3 (RIFSC_PPSR3) . . . . . | 255 |
| 6.4.11 | RIFSC peripheral protection status register 4 (RIFSC_PPSR4) . . . . . | 256 |
| 6.4.12 | RIFSC peripheral protection status register 5 (RIFSC_PPSR5) . . . . . | 256 |
| 6.4.13 | RIFSC register map . . . . . | 257 |
| 7 | Resource isolation slave unit for address space protection (full version) (RISAF) . . . . . | 258 |
| 7.1 | RISAF introduction . . . . . | 258 |
| 7.2 | RISAF main features . . . . . | 258 |
| 7.3 | RISAF implementation . . . . . | 259 |
| 7.4 | RISAF functional description . . . . . | 260 |
| 7.4.1 | RISAF block diagram . . . . . | 260 |
| 7.4.2 | RISAF internal signals . . . . . | 260 |
| 7.4.3 | RISAF reset and clocks . . . . . | 261 |
| 7.4.4 | RISAF address space management . . . . . | 261 |
| 7.4.5 | RISAF programming . . . . . | 262 |
| 7.4.6 | RISAF runtime modification of region or subregion configuration . . . . . | 263 |
| 7.4.7 | Managing illegal accesses . . . . . | 264 |
| 7.5 | RISAF registers . . . . . | 265 |
| 7.5.1 | RISAF configuration register (RISAF_CR) . . . . . | 265 |
| 7.5.2 | RISAF illegal access status register (RISAF_IASR) . . . . . | 265 |
| 7.5.3 | RISAF illegal access clear register (RISAF_IACR) . . . . . | 266 |
| 7.5.4 | RISAF illegal access error status register (RISAF_IAESR) . . . . . | 266 |
| 7.5.5 | RISAF illegal address register (RISAF_IADDR) . . . . . | 267 |
| 7.5.6 | RISAF region x configuration register (RISAF_REGx_CFGR) . . . . . | 267 |
- 7.5.7 RISAF region x start-address register (RISAF_REGx_STARTR) . . . . 268
- 7.5.8 RISAF region x end-address register (RISAF_REGx_ENDR) . . . . . 269
- 7.5.9 RISAF region x CID configuration register
(RISAF_REGx_CIDCFGR) . . . . . 269 - 7.5.10 RISAF region x subregion A configuration register
(RISAF_REGx_ACFGR) . . . . . 270 - 7.5.11 RISAF region x subregion A start-address register
(RISAF_REGx_ASTARTR) . . . . . 272 - 7.5.12 RISAF region x subregion A end-address register
(RISAF_REGx_AENDR) . . . . . 272 - 7.5.13 RISAF region x subregion A nested mode register
(RISAF_REGx_ANESTR) . . . . . 273 - 7.5.14 RISAF region x subregion B configuration register
(RISAF_REGx_BCFGR) . . . . . 274 - 7.5.15 RISAF region x subregion B start-address register
(RISAF_REGx_BSTARTR) . . . . . 275 - 7.5.16 RISAF region x subregion B end-address register
(RISAF_REGx_BENDR) . . . . . 276 - 7.5.17 RISAF region x subregion B nested mode register
(RISAF_REGx_BNESTR) . . . . . 277 - 7.5.18 RISAF register map . . . . . 278
8 Illegal access controller (IAC) . . . . . 280
- 8.1 IAC introduction . . . . . 280
- 8.2 IAC main features . . . . . 280
- 8.3 IAC implementation . . . . . 280
- 8.4 IAC functional description . . . . . 281
- 8.4.1 IAC block diagram . . . . . 281
- 8.4.2 IAC internal signals . . . . . 282
- 8.4.3 IAC reset and clocks . . . . . 282
- 8.4.4 IAC use in RIF . . . . . 282
- 8.4.5 IAC management by trusted application . . . . . 282
- 8.5 IAC interrupts . . . . . 283
- 8.6 IAC registers . . . . . 283
- 8.6.1 IAC interrupt enable register x (IAC_IERx) . . . . . 283
- 8.6.2 IAC interrupt status register x (IAC_ISRx) . . . . . 283
- 8.6.3 IAC interrupt clear register x (IAC_ICRx) . . . . . 284
- 8.6.4 IAC ILAC input status register x (IAC_IISRx) . . . . . 284
- 8.6.5 IAC register map . . . . . 285
| 9 | Boot modes ..... | 286 |
| 9.1 | Boot after system reset ..... | 286 |
| 9.1.1 | Flash boot ..... | 286 |
| 9.1.2 | Serial boot ..... | 286 |
| 9.1.3 | Development boot ..... | 286 |
| 9.2 | Boot from a low-power mode ..... | 287 |
| 10 | SRAM configuration controller (RAMCFG) ..... | 288 |
| 10.1 | RAMCFG introduction ..... | 288 |
| 10.2 | RAMCFG main features ..... | 288 |
| 10.3 | RAMCFG functional description ..... | 288 |
| 10.3.1 | Internal SRAM features ..... | 288 |
| 10.3.2 | FLEXRAM control ..... | 289 |
| 10.3.3 | ECC (BKPSRAM) ..... | 292 |
| 10.4 | RAMCFG low-power modes ..... | 293 |
| 10.5 | RAMCFG interrupts ..... | 294 |
| 10.6 | RAMCFG registers ..... | 295 |
| 10.6.1 | RAMCFG AXISRAM1 control register (RAMCFG_AXISRAM1CR) . . . | 295 |
| 10.6.2 | RAMCFG AXISRAMx interrupt status register (RAMCFG_AXISRAMxISR) ..... | 295 |
| 10.6.3 | RAMCFG AXISRAMx erase key register (RAMCFG_AXISRAMxERKEYR) ..... | 296 |
| 10.6.4 | RAMCFG AXISRAMx control register (RAMCFG_AXISRAMxCR) . . . | 296 |
| 10.6.5 | RAMCFG AHBSRAMx control register (RAMCFG_AHBSRAMxCR) . . . | 297 |
| 10.6.6 | RAMCFG AHBSRAMx interrupt status register (RAMCFG_AHBSRAMxISR) ..... | 297 |
| 10.6.7 | RAMCFG AHBSRAMx erase key register (RAMCFG_AHBSRAMxERKEYR) ..... | 298 |
| 10.6.8 | RAMCFG VENCRAM control register (RAMCFG_VENCRAMCR) . . . | 298 |
| 10.6.9 | RAMCFG VENCRAM interrupt status register (RAMCFG_VENCRAMISR) ..... | 299 |
| 10.6.10 | RAMCFG VENCRAM erase key register (RAMCFG_VENCRAMERKEYR) ..... | 299 |
| 10.6.11 | RAMCFG BKPSRAM control register (RAMCFG_BKPSRAMCR) . . . | 300 |
| 10.6.12 | RAMCFG BKPSRAM interrupt enable register (RAMCFG_BKPSRAMIER) ..... | 301 |
| 10.6.13 | RAMCFG BKPSRAM interrupt status register (RAMCFG_BKPSRAMISR) ..... | 301 |
- 10.6.14 RAMCFG BKPSRAM single error address register (RAMCFG_BKPSRAMESEAR) . . . . . 302
- 10.6.15 RAMCFG BKPSRAM double error address register (RAMCFG_BKPSRAMEDEAR) . . . . . 302
- 10.6.16 RAMCFG BKPSRAM interrupt clear register (RAMCFG_BKPSRAMICR) . . . . . 303
- 10.6.17 RAMCFG BKPSRAM ECC key register (RAMCFG_BKPSRAMECCKEYR) . . . . . 303
- 10.6.18 RAMCFG BKPSRAM erase key register (RAMCFG_BKPSRAMERKEYR) . . . . . 304
- 10.6.19 RAMCFG FLEXRAM control register (RAMCFG_FLEXRAMCR) . . . . . 304
- 10.6.20 RAMCFG FLEXRAM interrupt status register (RAMCFG_FLEXRAMISR) . . . . . 305
- 10.6.21 RAMCFG FLEXRAM erase key register (RAMCFG_FLEXRAMERKEYR) . . . . . 305
- 10.6.22 RAMCFG register map . . . . . 306
- 11 Texture cache (ICACHE) . . . . . 308
- 11.1 ICACHE introduction . . . . . 308
- 11.2 ICACHE main features . . . . . 308
- 11.3 ICACHE implementation . . . . . 309
- 11.4 ICACHE functional description . . . . . 309
- 11.4.1 ICACHE block diagram . . . . . 310
- 11.4.2 ICACHE reset and clocks . . . . . 310
- 11.4.3 ICACHE TAG memory . . . . . 311
- 11.4.4 Direct-mapped ICACHE (1-way cache) . . . . . 312
- 11.4.5 ICACHE enable . . . . . 313
- 11.4.6 Cacheable and noncacheable traffic . . . . . 313
- 11.4.7 Cacheable accesses . . . . . 314
- 11.4.8 ICACHE maintenance . . . . . 314
- 11.4.9 ICACHE performance monitoring . . . . . 315
- 11.4.10 ICACHE boot . . . . . 315
- 11.5 ICACHE low-power modes . . . . . 315
- 11.6 ICACHE error management and interrupts . . . . . 316
- 11.7 ICACHE registers . . . . . 316
- 11.7.1 ICACHE control register (ICACHE_CR) . . . . . 316
- 11.7.2 ICACHE status register (ICACHE_SR) . . . . . 317
- 11.7.3 ICACHE interrupt enable register (ICACHE_IER) . . . . . 318
| 11.7.4 | ICACHE flag clear register (ICACHE_FCR) ..... | 318 |
| 11.7.5 | ICACHE hit monitor register (ICACHE_HMONR) ..... | 319 |
| 11.7.6 | ICACHE miss monitor register (ICACHE_MMONR) ..... | 319 |
| 11.7.7 | ICACHE register map ..... | 319 |
| 12 | AXI cache (CACHEAXI) ..... | 321 |
| 12.1 | CACHEAXI introduction ..... | 321 |
| 12.2 | CACHEAXI main features ..... | 322 |
| 12.3 | CACHEAXI implementation ..... | 323 |
| 12.4 | CACHEAXI functional description ..... | 324 |
| 12.4.1 | CACHEAXI block diagram ..... | 325 |
| 12.4.2 | CACHEAXI reset and clocks ..... | 325 |
| 12.4.3 | CACHEAXI TAG memory ..... | 326 |
| 12.4.4 | CACHEAXI enable ..... | 329 |
| 12.4.5 | Cacheable and noncacheable AXI traffic to slave cache port ..... | 329 |
| 12.4.6 | Cacheable accesses ..... | 330 |
| 12.4.7 | AXI traffic to master port ..... | 331 |
| 12.4.8 | AXI traffic to slave SRAM port ..... | 332 |
| 12.4.9 | CACHEAXI security ..... | 332 |
| 12.4.10 | CACHEAXI maintenance ..... | 332 |
| 12.4.11 | CACHEAXI performance monitoring ..... | 334 |
| 12.4.12 | CACHEAXI boot ..... | 335 |
| 12.5 | CACHEAXI low-power modes ..... | 335 |
| 12.6 | CACHEAXI error management and interrupts ..... | 335 |
| 12.7 | CACHEAXI registers ..... | 337 |
| 12.7.1 | CACHEAXI control register 1 (CACHEAXI_CR1) ..... | 337 |
| 12.7.2 | CACHEAXI status register (CACHEAXI_SR) ..... | 338 |
| 12.7.3 | CACHEAXI interrupt enable register (CACHEAXI_IER) ..... | 339 |
| 12.7.4 | CACHEAXI flag clear register (CACHEAXI_FCR) ..... | 340 |
| 12.7.5 | CACHEAXI read-hit monitor register (CACHEAXI_RHMONR) ..... | 341 |
| 12.7.6 | CACHEAXI read-miss monitor register (CACHEAXI_RMMONR) ..... | 341 |
| 12.7.7 | CACHEAXI read-allocate miss monitor register (CACHEAXI_RAMMONR) ..... | 341 |
| 12.7.8 | CACHEAXI eviction monitor register (CACHEAXI_EVIMONR) ..... | 342 |
| 12.7.9 | CACHEAXI write-hit monitor register (CACHEAXI_WHMONR) ..... | 342 |
| 12.7.10 | CACHEAXI write-miss monitor register (CACHEAXI_WMMONR) ..... | 342 |
12.7.11 CACHEAXI write-allocate miss monitor register (CACHEAXI_WAMMONR) . . . . . 343
12.7.12 CACHEAXI write-through monitor register (CACHEAXI_WTMONR) . . . . . 343
12.7.13 CACHEAXI control register 2 (CACHEAXI_CR2) . . . . . 343
12.7.14 CACHEAXI command range start address register (CACHEAXI_CMDRSADDDRR) . . . . . 344
12.7.15 CACHEAXI command range end address register (CACHEAXI_CMDREADDRR) . . . . . 345
12.7.16 CACHEAXI register map . . . . . 345
13 Power control (PWR) . . . . . 347
13.1 PWR introduction . . . . . 347
13.2 PWR main features . . . . . 347
13.3 PWR block diagram . . . . . 348
13.3.1 PWR pins and internal signals . . . . . 348
13.4 Power supplies . . . . . 350
13.4.1 System supply startup . . . . . 353
13.4.2 Core domain . . . . . 355
13.4.3 PWR external supply . . . . . 356
13.4.4 Backup domain . . . . . 357
13.4.5 Retention domain . . . . . 358
13.4.6 Analog supply . . . . . 360
13.5 Power supply supervision . . . . . 360
13.5.1 Power-on reset (POR)/power-down reset (PDR) . . . . . 361
13.5.2 Brownout reset (BOR) . . . . . 361
13.5.3 Vdda18pmu_ok reset . . . . . 362
13.5.4 Vddcore_ok reset . . . . . 363
13.5.5 V DDCORE monitoring . . . . . 363
13.5.6 Programmable voltage detector (PVD) . . . . . 364
13.5.7 Peripheral voltage monitoring (PVM) . . . . . 365
13.5.8 Battery voltage thresholds . . . . . 366
13.5.9 Temperature thresholds . . . . . 367
13.6 Power management . . . . . 368
13.6.1 Operating modes . . . . . 368
13.6.2 Voltage scaling . . . . . 373
13.6.3 Power management examples . . . . . 374
13.7 Low-power modes . . . . . 376
| 13.7.1 | Slowing down system clocks . . . . . | 377 |
| 13.7.2 | Controlling peripheral clocks . . . . . | 377 |
| 13.7.3 | Entering low-power modes . . . . . | 377 |
| 13.7.4 | Exiting low-power modes . . . . . | 377 |
| 13.7.5 | Sleep mode . . . . . | 378 |
| 13.7.6 | Stop mode . . . . . | 379 |
| 13.7.7 | Standby mode . . . . . | 381 |
| 13.7.8 | Power mode output pins . . . . . | 383 |
| 13.8 | PWR security and privileged protection . . . . . | 383 |
| 13.8.1 | Secure/nonsecure access filtering . . . . . | 384 |
| 13.8.2 | Privileged/unprivileged access filtering . . . . . | 385 |
| 13.9 | PWR registers . . . . . | 385 |
| 13.9.1 | PWR control register 1 (PWR_CR1) . . . . . | 385 |
| 13.9.2 | PWR control register 2 (PWR_CR2) . . . . . | 386 |
| 13.9.3 | PWR control register 3 (PWR_CR3) . . . . . | 387 |
| 13.9.4 | PWR control register 4 (PWR_CR4) . . . . . | 387 |
| 13.9.5 | PWR voltage scaling control register (PWR_VOSCR) . . . . . | 388 |
| 13.9.6 | PWR backup domain control register 1 (PWR_BDCR1) . . . . . | 389 |
| 13.9.7 | PWR backup domain control register 2 (PWR_BDCR2) . . . . . | 390 |
| 13.9.8 | PWR disable backup protection control register (PWR_DBPCR) . . . . . | 391 |
| 13.9.9 | PWR CPU control register (PWR_CPUCR) . . . . . | 391 |
| 13.9.10 | PWR supply voltage monitoring control register 1 (PWR_SVMCR1) . . . . . | 392 |
| 13.9.11 | PWR supply voltage monitoring control register 2 (PWR_SVMCR2) . . . . . | 394 |
| 13.9.12 | PWR supply voltage monitoring control register 3 (PWR_SVMCR3) . . . . . | 395 |
| 13.9.13 | PWR wake-up clear register (PWR_WKUPCR) . . . . . | 397 |
| 13.9.14 | PWR wake-up status register (PWR_WKUPSR) . . . . . | 398 |
| 13.9.15 | PWR wake-up enable and polarity register (PWR_WKUPEPR) . . . . . | 399 |
| 13.9.16 | PWR security configuration register (PWR_SECCFGR) . . . . . | 401 |
| 13.9.17 | PWR privilege configuration register (PWR_PRIVCFGR) . . . . . | 402 |
| 13.9.18 | PWR debug control register 1 (PWR_CRCFG1) . . . . . | 405 |
| 13.9.19 | PWR debug control register 2 (PWR_CRCFG2) . . . . . | 406 |
| 13.9.20 | PWR Debug control register 3 (PWR_CRCFG3) . . . . . | 406 |
| 13.9.21 | PWR register map . . . . . | 408 |
| 14 | Reset and clock control (RCC) . . . . . | 411 |
| 14.1 | RCC main features . . . . . | 411 |
| 14.2 | RCC power domains . . . . . | 411 |
| 14.3 | RCC block diagram . . . . . | 412 |
| 14.4 | RCC pins and internal signals . . . . . | 412 |
| 14.5 | Functional description of RCC reset . . . . . | 414 |
| 14.5.1 | Reset from the PWR . . . . . | 414 |
| 14.5.2 | System and application resets (sys_rst, nreset_rstn) . . . . . | 415 |
| 14.5.3 | NRST reset . . . . . | 416 |
| 14.5.4 | Low-power mode security reset (lpwr_rst) . . . . . | 416 |
| 14.5.5 | Backup domain reset . . . . . | 417 |
| 14.5.6 | CoreSight debug reset . . . . . | 417 |
| 14.5.7 | Option-byte loading . . . . . | 417 |
| 14.5.8 | Reset of peripherals . . . . . | 418 |
| 14.5.9 | Reset pulse control (RPCTL) . . . . . | 418 |
| 14.5.10 | Reset coverage summary . . . . . | 419 |
| 14.5.11 | Reset source identification . . . . . | 420 |
| 14.5.12 | Power-on and wake-up sequences . . . . . | 420 |
| 14.6 | Functional description of RCC clocks . . . . . | 421 |
| 14.6.1 | Clock naming convention . . . . . | 424 |
| 14.6.2 | Oscillator description . . . . . | 424 |
| 14.6.3 | Clock security system (CSS) . . . . . | 432 |
| 14.6.4 | Clock output generation (MCO1/MCO2) . . . . . | 435 |
| 14.6.5 | PLL description . . . . . | 435 |
| 14.6.6 | System clocks . . . . . | 440 |
| 14.6.7 | Clock generation in Stop and Standby modes . . . . . | 443 |
| 14.6.8 | Peripheral clock distribution . . . . . | 444 |
| 14.6.9 | General clock concept overview . . . . . | 468 |
| 14.6.10 | Peripheral allocation . . . . . | 469 |
| 14.6.11 | Peripheral clock-gating control . . . . . | 470 |
| 14.6.12 | CPU and bus matrix clock-gating control . . . . . | 472 |
| 14.6.13 | Low-power emulation modes . . . . . | 473 |
| 14.7 | RCC interrupts . . . . . | 474 |
| 14.8 | RCC application information . . . . . | 474 |
| 14.8.1 | HSE crystal auto-detection . . . . . | 474 |
| 14.8.2 | Calibration and clock frequency measurement using TIMx . . . . . | 475 |
| 14.8.3 | Clock monitoring . . . . . | 476 |
| 14.8.4 | Clock frequency limits . . . . . | 476 |
| 14.9 | RCC security . . . . . | 477 |
| 14.9.1 | Internal register protection . . . . . | 478 |
| 14.9.2 | Internal register write-protection . . . . . | 479 |
| 14.10 | RCC registers . . . . . | 479 |
| 14.10.1 | RCC control register (RCC_CR) . . . . . | 479 |
| 14.10.2 | RCC status register (RCC_SR) . . . . . | 481 |
| 14.10.3 | RCC Stop mode control register (RCC_STOPCR) . . . . . | 482 |
| 14.10.4 | RCC configuration register 1 (RCC_CFGR1) . . . . . | 483 |
| 14.10.5 | RCC configuration register 2 (RCC_CFGR2) . . . . . | 484 |
| 14.10.6 | RCC backup domain protection register (RCC_BDCR) . . . . . | 486 |
| 14.10.7 | RCC reset status register for hardware (RCC_HWRCSR) . . . . . | 487 |
| 14.10.8 | RCC reset register (RCC_RSR) . . . . . | 488 |
| 14.10.9 | RCC LSE configuration register (RCC_LSECFGR) . . . . . | 490 |
| 14.10.10 | RCC MSI configuration register (RCC_MSICFGR) . . . . . | 491 |
| 14.10.11 | RCC HSI configuration register (RCC_HSI CFGR) . . . . . | 492 |
| 14.10.12 | RCC HSI monitor control register (RCC_HSIMCR) . . . . . | 493 |
| 14.10.13 | RCC HSI monitor status register (RCC_HSIMSR) . . . . . | 493 |
| 14.10.14 | RCC HSE configuration register (RCC_HSECFGR) . . . . . | 494 |
| 14.10.15 | RCC PLL1 configuration register 1 (RCC_PLL1CFGR1) . . . . . | 495 |
| 14.10.16 | RCC PLL1 configuration register 2 (RCC_PLL1CFGR2) . . . . . | 496 |
| 14.10.17 | RCC PLL1 configuration register 3 (RCC_PLL1CFGR3) . . . . . | 497 |
| 14.10.18 | RCC PLL2 configuration register 1 (RCC_PLL2CFGR1) . . . . . | 498 |
| 14.10.19 | RCC PLL2 configuration register 2 (RCC_PLL2CFGR2) . . . . . | 499 |
| 14.10.20 | RCC PLL2 configuration register 3 (RCC_PLL2CFGR3) . . . . . | 500 |
| 14.10.21 | RCC PLL3 configuration register 1 (RCC_PLL3CFGR1) . . . . . | 501 |
| 14.10.22 | RCC PLL3 configuration register 2 (RCC_PLL3CFGR2) . . . . . | 502 |
| 14.10.23 | RCC PLL3 configuration register 3 (RCC_PLL3CFGR3) . . . . . | 503 |
| 14.10.24 | RCC PLL4 configuration register 1 (RCC_PLL4CFGR1) . . . . . | 504 |
| 14.10.25 | RCC PLL4 configuration register 2 (RCC_PLL4CFGR2) . . . . . | 505 |
| 14.10.26 | RCC PLL4 configuration register 3 (RCC_PLL4CFGR3) . . . . . | 505 |
| 14.10.27 | RCC IC1 configuration register (RCC_IC1CFGR) . . . . . | 507 |
| 14.10.28 | RCC IC2 configuration register (RCC_IC2CFGR) . . . . . | 508 |
| 14.10.29 | RCC IC3 configuration register (RCC_IC3CFGR) . . . . . | 509 |
| 14.10.30 | RCC IC4 configuration register (RCC_IC4CFGR) . . . . . | 509 |
| 14.10.31 | RCC IC5 configuration register (RCC_IC5CFGR) . . . . . | 510 |
| 14.10.32 | RCC IC6 configuration register (RCC_IC6CFGR) . . . . . | 511 |
| 14.10.33 | RCC IC7 configuration register (RCC_IC7CFGR) . . . . . | 512 |
| 14.10.34 | RCC IC8 configuration register (RCC_IC8CFGR) . . . . . | 512 |
| 14.10.35 RCC IC9 configuration register (RCC_IC9CFGR) . . . . . | 513 |
| 14.10.36 RCC IC10 configuration register (RCC_IC10CFGR) . . . . . | 514 |
| 14.10.37 RCC IC11 configuration register (RCC_IC11CFGR) . . . . . | 514 |
| 14.10.38 RCC IC12 configuration register (RCC_IC12CFGR) . . . . . | 515 |
| 14.10.39 RCC IC13 configuration register (RCC_IC13CFGR) . . . . . | 516 |
| 14.10.40 RCC IC14 configuration register (RCC_IC14CFGR) . . . . . | 517 |
| 14.10.41 RCC IC15 configuration register (RCC_IC15CFGR) . . . . . | 518 |
| 14.10.42 RCC IC16 configuration register (RCC_IC16CFGR) . . . . . | 518 |
| 14.10.43 RCC IC17 configuration register (RCC_IC17CFGR) . . . . . | 519 |
| 14.10.44 RCC IC18 configuration register (RCC_IC18CFGR) . . . . . | 520 |
| 14.10.45 RCC IC19 configuration register (RCC_IC19CFGR) . . . . . | 520 |
| 14.10.46 RCC IC20 configuration register (RCC_IC20CFGR) . . . . . | 521 |
| 14.10.47 RCC clock-source interrupt enable register (RCC_CIER) . . . . . | 522 |
| 14.10.48 RCC clock-source interrupt flag register (RCC_CIFR) . . . . . | 523 |
| 14.10.49 RCC clock-source interrupt clear register (RCC_CICR) . . . . . | 525 |
| 14.10.50 RCC clock configuration for independent peripheral register 1 (RCC_CCIPR1) . . . . . | 527 |
| 14.10.51 RCC clock configuration for independent peripheral register 2 (RCC_CCIPR2) . . . . . | 528 |
| 14.10.52 RCC clock configuration for independent peripheral register 3 (RCC_CCIPR3) . . . . . | 530 |
| 14.10.53 RCC clock configuration for independent peripheral register 4 (RCC_CCIPR4) . . . . . | 530 |
| 14.10.54 RCC clock configuration for independent peripheral register 5 (RCC_CCIPR5) . . . . . | 532 |
| 14.10.55 RCC clock configuration for independent peripheral register 6 (RCC_CCIPR6) . . . . . | 534 |
| 14.10.56 RCC clock configuration for independent peripheral register 7 (RCC_CCIPR7) . . . . . | 536 |
| 14.10.57 RCC clock configuration for independent peripheral register 8 (RCC_CCIPR8) . . . . . | 537 |
| 14.10.58 RCC clock configuration for independent peripheral register 9 (RCC_CCIPR9) . . . . . | 538 |
| 14.10.59 RCC clock configuration for independent peripheral register 12 (RCC_CCIPR12) . . . . . | 540 |
| 14.10.60 RCC clock configuration for independent peripheral register 13 (RCC_CCIPR13) . . . . . | 542 |
| 14.10.61 RCC clock configuration for independent peripheral register 14 (RCC_CCIPR14) . . . . . | 544 |
| 14.10.62 RCC miscellaneous configurations reset register (RCC_MISCSTR) . . . . . | 545 |
| 14.10.63 | RCC embedded memories reset register (RCC_MEMRSTR) | 546 |
| 14.10.64 | RCC AHB1 reset register (RCC_AHB1RSTR) | 548 |
| 14.10.65 | RCC AHB2 reset register (RCC_AHB2RSTR) | 549 |
| 14.10.66 | RCC AHB3 reset register (RCC_AHB3RSTR) | 550 |
| 14.10.67 | RCC AHB4 reset register (RCC_AHB4RSTR) | 551 |
| 14.10.68 | RCC AHB5 reset register (RCC_AHB5RSTR) | 553 |
| 14.10.69 | RCC APB1L reset register (RCC_APB1LRSTR) | 556 |
| 14.10.70 | RCC APB1H reset register (RCC_APB1HRSTR) | 560 |
| 14.10.71 | RCC APB2 reset register (RCC_APB2RSTR) | 561 |
| 14.10.72 | RCC APB4L reset register (RCC_APB4LRSTR) | 563 |
| 14.10.73 | RCC APB4H reset register (RCC_APB4HRSTR) | 565 |
| 14.10.74 | RCC APB5 reset register (RCC_APB5RSTR) | 566 |
| 14.10.75 | RCC IC dividers enable register (RCC_DIVENR) | 567 |
| 14.10.76 | RCC embedded buses enable register (RCC_BUSENR) | 570 |
| 14.10.77 | RCC miscellaneous configurations enable register (RCC_MISCENR) | 572 |
| 14.10.78 | RCC embedded memories enable register (RCC_MEMENR) | 573 |
| 14.10.79 | RCC AHB1 enable register (RCC_AHB1ENR) | 575 |
| 14.10.80 | RCC AHB2 enable register (RCC_AHB2ENR) | 575 |
| 14.10.81 | RCC AHB3 enable register (RCC_AHB3ENR) | 576 |
| 14.10.82 | RCC AHB4 enable register (RCC_AHB4ENR) | 577 |
| 14.10.83 | RCC AHB5 enable register (RCC_AHB5ENR) | 580 |
| 14.10.84 | RCC APB1L enable register (RCC_APB1LENR) | 584 |
| 14.10.85 | RCC APB1H enable register (RCC_APB1HENR) | 587 |
| 14.10.86 | RCC APB2 enable register (RCC_APB2ENR) | 588 |
| 14.10.87 | RCC APB3 enable register (RCC_APB3ENR) | 591 |
| 14.10.88 | RCC APB4L enable register (RCC_APB4LENR) | 591 |
| 14.10.89 | RCC APB4H enable register (RCC_APB4HENR) | 593 |
| 14.10.90 | RCC APB5 enable register (RCC_APB5ENR) | 594 |
| 14.10.91 | RCC embedded buses sleep enable register (RCC_BUSLPENR) | 595 |
| 14.10.92 | RCC miscellaneous configurations sleep enable register (RCC_MISCLPENR) | 596 |
| 14.10.93 | RCC embedded memories sleep enable register (RCC_MEMLPENR) | 597 |
| 14.10.94 | RCC AHB1 sleep enable register (RCC_AHB1LPENR) | 599 |
| 14.10.95 | RCC AHB2 sleep enable register (RCC_AHB2LPENR) | 599 |
| 14.10.96 | RCC AHB3 sleep enable register (RCC_AHB3LPENR) | 600 |
| 14.10.97 | RCC AHB4 sleep enable register (RCC_AHB4LPENR) | 601 |
| 14.10.98 | RCC AHB5 sleep enable register (RCC_AHB5LPENR) . . . . . | 604 |
| 14.10.99 | RCC APB1L sleep enable register (RCC_APB1LLPENR) . . . . . | 607 |
| 14.10.100 | RCC APB1H sleep enable register (RCC_APB1HLPENR) . . . . . | 611 |
| 14.10.101 | RCC APB2 sleep enable register (RCC_APB2LPENR) . . . . . | 612 |
| 14.10.102 | RCC APB3 sleep enable register (RCC_APB3LPENR) . . . . . | 614 |
| 14.10.103 | RCC APB4L sleep enable register (RCC_APB4LLPENR) . . . . . | 615 |
| 14.10.104 | RCC APB4H sleep enable register (RCC_APB4HLPENR) . . . . . | 617 |
| 14.10.105 | RCC APB5 sleep enable register (RCC_APB5LPENR) . . . . . | 618 |
| 14.10.106 | RCC reset duration control register (RCC_RDCR) . . . . . | 619 |
| 14.10.107 | RCC oscillator secure configuration register 0 (RCC_SECCFGR0) . . | 620 |
| 14.10.108 | RCC oscillator privilege configuration register 0 (RCC_PRIVCFGR0) . . . . . | 620 |
| 14.10.109 | RCC oscillator lock configuration register 0 (RCC_LOCKCFGR0) . . . | 621 |
| 14.10.110 | RCC oscillator public configuration register 0 (RCC_PUBCFGR0) . . . | 622 |
| 14.10.111 | RCC PLL secure configuration register 1 (RCC_SECCFGR1) . . . . . | 623 |
| 14.10.112 | RCC PLL privilege configuration register 1 (RCC_PRIVCFGR1) . . . . | 624 |
| 14.10.113 | RCC PLL lock configuration register 1 (RCC_LOCKCFGR1) . . . . . | 624 |
| 14.10.114 | RCC PLL public configuration register 1 (RCC_PUBCFGR1) . . . . . | 625 |
| 14.10.115 | RCC divider secure configuration register 2 (RCC_SECCFGR2) . . . . | 626 |
| 14.10.116 | RCC divider privilege configuration register 2 (RCC_PRIVCFGR2) . . . | 628 |
| 14.10.117 | RCC divider lock configuration register 2 (RCC_LOCKCFGR2) . . . . . | 630 |
| 14.10.118 | RCC divider public configuration register 2 (RCC_PUBCFGR2) . . . . | 633 |
| 14.10.119 | RCC system secure configuration register 3 (RCC_SECCFGR3) . . . . | 635 |
| 14.10.120 | RCC system privilege configuration register 3 (RCC_PRIVCFGR3) . . . | 636 |
| 14.10.121 | RCC system lock configuration register 3 (RCC_LOCKCFGR3) . . . . . | 637 |
| 14.10.122 | RCC system public configuration register 3 (RCC_PUBCFGR3) . . . . | 638 |
| 14.10.123 | RCC bus secure configuration register 4 (RCC_SECCFGR4) . . . . . | 638 |
| 14.10.124 | RCC bus privilege configuration register 4 (RCC_PRIVCFGR4) . . . . | 640 |
| 14.10.125 | RCC bus lock configuration register 4 (RCC_LOCKCFGR4) . . . . . | 642 |
| 14.10.126 | RCC bus public configuration register 4 (RCC_PUBCFGR4) . . . . . | 643 |
| 14.10.127 | RCC bus public configuration register 4 (RCC_PUBCFGR5) . . . . . | 645 |
| 14.10.128 | RCC control set register (RCC_CSR) . . . . . | 647 |
| 14.10.129 | RCC Stop mode configuration set register (RCC_STOPCSR) . . . . . | 648 |
| 14.10.130 | RCC miscellaneous reset register (RCC_MISCIRSTSR) . . . . . | 648 |
| 14.10.131 | RCC memory reset register (RCC_MEMIRSTSR) . . . . . | 649 |
| 14.10.132 | RCC AHB1 reset register (RCC_AHB1RSTSR) . . . . . | 650 |
| 14.10.133 | RCC AHB2 reset register (RCC_AHB2RSTSR) . . . . . | 650 |
| 14.10.134RCC AHB3 reset register (RCC_AHB3RSTSR) . . . . . | 651 |
| 14.10.135RCC AHB4 reset register (RCC_AHB4RSTSR) . . . . . | 652 |
| 14.10.136RCC AHB5 reset register (RCC_AHB5RSTSR) . . . . . | 653 |
| 14.10.137RCC APB1L reset register (RCC_APB1LRSTSR) . . . . . | 654 |
| 14.10.138RCC APB1H reset register (RCC_APB1HRSTSR) . . . . . | 656 |
| 14.10.139RCC APB2 reset register (RCC_APB2RSTSR) . . . . . | 657 |
| 14.10.140RCC APB4L reset register (RCC_APB4LRSTSR) . . . . . | 658 |
| 14.10.141RCC APB4H reset register (RCC_APB4HRSTSR) . . . . . | 659 |
| 14.10.142RCC APB5 reset register (RCC_APB5RSTSR) . . . . . | 659 |
| 14.10.143RCC divider enable register (RCC_DIVENSR) . . . . . | 660 |
| 14.10.144RCC bus enable register (RCC_BUSENSR) . . . . . | 661 |
| 14.10.145RCC miscellaneous enable register (RCC_MISCENSR) . . . . . | 662 |
| 14.10.146RCC memory enable register (RCC_MEMENSR) . . . . . | 663 |
| 14.10.147RCC AHB1 enable register (RCC_AHB1ENSR) . . . . . | 664 |
| 14.10.148RCC AHB2 enable register (RCC_AHB2ENSR) . . . . . | 664 |
| 14.10.149RCC AHB3 enable register (RCC_AHB3ENSR) . . . . . | 665 |
| 14.10.150RCC AHB4 enable register (RCC_AHB4ENSR) . . . . . | 666 |
| 14.10.151RCC AHB5 enable register (RCC_AHB5ENSR) . . . . . | 667 |
| 14.10.152RCC APB1L enable register (RCC_APB1LENSR) . . . . . | 668 |
| 14.10.153RCC APB1H enable register (RCC_APB1HENSR) . . . . . | 670 |
| 14.10.154RCC APB2 enable register (RCC_APB2ENSR) . . . . . | 671 |
| 14.10.155RCC APB3 enable register (RCC_APB3ENSR) . . . . . | 672 |
| 14.10.156RCC APB4L enable register (RCC_APB4LENSR) . . . . . | 672 |
| 14.10.157RCC APB4H enable register (RCC_APB4HENSR) . . . . . | 674 |
| 14.10.158RCC APB5 enable register (RCC_APB5ENSR) . . . . . | 674 |
| 14.10.159RCC bus sleep enable register (RCC_BUSLPENSR) . . . . . | 675 |
| 14.10.160RCC miscellaneous sleep enable register (RCC_MISCLPENSR) . . . . . | 675 |
| 14.10.161RCC memory sleep enable register (RCC_MEMLPENSR) . . . . . | 676 |
| 14.10.162RCC AHB1 sleep enable register (RCC_AHB1LPENSR) . . . . . | 677 |
| 14.10.163RCC AHB2 sleep enable register (RCC_AHB2LPENSR) . . . . . | 677 |
| 14.10.164RCC AHB3 sleep enable register (RCC_AHB3LPENSR) . . . . . | 678 |
| 14.10.165RCC AHB4 sleep enable register (RCC_AHB4LPENSR) . . . . . | 679 |
| 14.10.166RCC AHB5 sleep enable register (RCC_AHB5LPENSR) . . . . . | 680 |
| 14.10.167RCC APB1L sleep enable register (RCC_APB1LLPENSR) . . . . . | 681 |
| 14.10.168RCC APB1H sleep enable register (RCC_APB1HLPENSR) . . . . . | 683 |
| 14.10.169RCC APB2 sleep enable register (RCC_APB2LPENSR) . . . . . | 684 |
| 14.10.170RCC APB3 sleep enable register (RCC_APB3LPENSR) . . . . . | 685 |
| 14.10.171RCC APB4L sleep enable register (RCC_APB4LLPENSR) . . . . . | 685 |
| 14.10.172RCC APB4H sleep enable register (RCC_APB4HLPENSR) . . . . . | 687 |
| 14.10.173RCC APB5 sleep enable register (RCC_APB5LPENSR) . . . . . | 687 |
| 14.10.174RCC oscillator privilege configuration set register 0 (RCC_PRIVCFGSR0) . . . . . | 688 |
| 14.10.175RCC oscillator public configuration set register 0 (RCC_PUBCFGSR0) . . . . . | 688 |
| 14.10.176RCC PLL privilege configuration set register 1 (RCC_PRIVCFGSR1) | 689 |
| 14.10.177RCC PLL public configuration set register 1 (RCC_PUBCFGSR1) . . | 690 |
| 14.10.178RCC divider privilege configuration set register 2 (RCC_PRIVCFGSR2) . . . . . | 691 |
| 14.10.179RCC divider public configuration set register 2 (RCC_PUBCFGSR2) . . . . . | 692 |
| 14.10.180RCC system privilege configuration set register 3 (RCC_PRIVCFGSR3) . . . . . | 694 |
| 14.10.181RCC system public configuration set register 3 (RCC_PUBCFGSR3) | 695 |
| 14.10.182RCC privilege configuration set register 4 (RCC_PRIVCFGSR4) . . . | 696 |
| 14.10.183RCC public configuration set register 4 (RCC_PUBCFGSR4) . . . . . | 697 |
| 14.10.184RCC public configuration set register 5 (RCC_PUBCFGSR5) . . . . . | 698 |
| 14.10.185RCC control clear register (RCC_CCR) . . . . . | 700 |
| 14.10.186RCC Stop mode configuration clear register (RCC_STOPCCR) . . . . | 700 |
| 14.10.187RCC miscellaneous reset clear register (RCC_MISCIRSTCR) . . . . . | 701 |
| 14.10.188RCC memory reset clear register (RCC_MEMIRSTCR) . . . . . | 702 |
| 14.10.189RCC AHB1 reset clear register (RCC_AHB1RSTCR) . . . . . | 703 |
| 14.10.190RCC AHB2 reset clear register (RCC_AHB2RSTCR) . . . . . | 703 |
| 14.10.191RCC AHB3 reset clear register (RCC_AHB3RSTCR) . . . . . | 704 |
| 14.10.192RCC AHB4 reset clear register (RCC_AHB4RSTCR) . . . . . | 704 |
| 14.10.193RCC AHB5 reset clear register (RCC_AHB5RSTCR) . . . . . | 705 |
| 14.10.194RCC APB1L reset clear register (RCC_APB1LRSTCR) . . . . . | 707 |
| 14.10.195RCC APB1H reset clear register (RCC_APB1HRSTCR) . . . . . | 709 |
| 14.10.196RCC APB2 reset clear register (RCC_APB2RSTCR) . . . . . | 709 |
| 14.10.197RCC APB4L reset clear register (RCC_APB4LRSTCR) . . . . . | 711 |
| 14.10.198RCC APB4H reset clear register (RCC_APB4HRSTCR) . . . . . | 712 |
| 14.10.199RCC APB5 reset clear register (RCC_APB5RSTCR) . . . . . | 712 |
| 14.10.200RCC divider enable clear register (RCC_DIVENCR) . . . . . | 713 |
| 14.10.201RCC bus enable clear register (RCC_BUSENCR) . . . . . | 714 |
| 14.10.202RCC miscellaneous enable clear register (RCC_MISCENCR) . . . . . | 715 |
| 14.10.203RCC memory enable clear register (RCC_MEMENCR) . . . . . | 715 |
| 14.10.204RCC AHB1 enable clear register (RCC_AHB1ENCR) . . . . . | 716 |
| 14.10.205RCC AHB2 enable clear register (RCC_AHB2ENCR) . . . . . | 717 |
| 14.10.206RCC AHB3 enable clear register (RCC_AHB3ENCR) . . . . . | 717 |
| 14.10.207RCC AHB4 enable clear register (RCC_AHB4ENCR) . . . . . | 718 |
| 14.10.208RCC AHB5 enable clear register (RCC_AHB5ENCR) . . . . . | 719 |
| 14.10.209RCC APB1L enable clear register (RCC_APB1LENCR) . . . . . | 721 |
| 14.10.210RCC APB1H enable clear register (RCC_APB1HENCR) . . . . . | 723 |
| 14.10.211RCC APB2 enable clear register (RCC_APB2ENCR) . . . . . | 724 |
| 14.10.212RCC APB3 enable clear register (RCC_APB3ENCR) . . . . . | 725 |
| 14.10.213RCC APB4L enable clear register (RCC_APB4LENCR) . . . . . | 725 |
| 14.10.214RCC APB4H enable clear register (RCC_APB4HENCR) . . . . . | 726 |
| 14.10.215RCC APB5 enable clear register (RCC_APB5ENCR) . . . . . | 727 |
| 14.10.216RCC bus sleep enable clear register (RCC_BUSLPENCR) . . . . . | 728 |
| 14.10.217RCC miscellaneous sleep enable clear register (RCC_MISCLPENCR) . . . . . | 728 |
| 14.10.218RCC memory sleep enable clear register (RCC_MEMLPENCR) . . . . . | 729 |
| 14.10.219RCC AHB1 sleep enable clear register (RCC_AHB1LPENCR) . . . . . | 730 |
| 14.10.220RCC AHB2 sleep enable clear register (RCC_AHB2LPENCR) . . . . . | 730 |
| 14.10.221RCC AHB3 sleep enable clear register (RCC_AHB3LPENCR) . . . . . | 731 |
| 14.10.222RCC AHB4 sleep enable clear register (RCC_AHB4LPENCR) . . . . . | 732 |
| 14.10.223RCC AHB5 sleep enable clear register (RCC_AHB5LPENCR) . . . . . | 733 |
| 14.10.224RCC APB1L sleep enable clear register (RCC_APB1LLPENCR) . . . . . | 735 |
| 14.10.225RCC APB1H sleep enable clear register (RCC_APB1HLPENCR) . . . . . | 736 |
| 14.10.226RCC APB2 sleep enable clear register (RCC_APB2LPENCR) . . . . . | 737 |
| 14.10.227RCC APB3 sleep enable clear register (RCC_APB3LPENCR) . . . . . | 738 |
| 14.10.228RCC APB4L sleep enable clear register (RCC_APB4LLPENCR) . . . . . | 739 |
| 14.10.229RCC APB4H sleep enable clear register (RCC_APB4HLPENCR) . . . . . | 740 |
| 14.10.230RCC APB5 sleep enable clear register (RCC_APB5LPENCR) . . . . . | 740 |
| 14.10.231RCC oscillator privilege configuration clear register 0 (RCC_PRIVCFGCR0) . . . . . | 741 |
| 14.10.232RCC oscillator public configuration clear register 0 (RCC_PUBCFGCR0) . . . . . | 742 |
| 14.10.233RCC PLL privilege configuration clear register 1 (RCC_PRIVCFGCR1) . . . . . | 742 |
| 14.10.234RCC PLL public configuration clear register 1 (RCC_PUBCFGCR1) . . . . . | 743 |
| 14.10.235RCC divider privilege configuration clear register 2 (RCC_PRIVCFGCR2) . . . . . | 744 |
| 14.10.236RCC divider public configuration clear register 2 (RCC_PUBCFGCR2) . . . . . | 745 |
| 14.10.237 | RCC system privilege configuration clear register 3 (RCC_PRIVCFGCR3) . . . . . | 747 |
| 14.10.238 | RCC system public configuration clear register 3 (RCC_PUBCFGCR3) . . . . . | 748 |
| 14.10.239 | RCC privilege configuration clear register 4 (RCC_PRIVCFGCR4) . . . . . | 749 |
| 14.10.240 | RCC public configuration clear register 4 (RCC_PUBCFGCR4) . . . . . | 751 |
| 14.10.241 | RCC public configuration clear register 4 (RCC_PUBCFGCR5) . . . . . | 752 |
| 14.10.242 | RCC register map . . . . . | 754 |
| 15 | General-purpose I/Os (GPIO) . . . . . | 783 |
| 15.1 | Introduction . . . . . | 783 |
| 15.2 | GPIO main features . . . . . | 783 |
| 15.3 | GPIO functional description . . . . . | 783 |
| 15.3.1 | General-purpose I/O (GPIO) . . . . . | 785 |
| 15.3.2 | I/O pin AF multiplexer and mapping . . . . . | 786 |
| 15.3.3 | I/O port control registers . . . . . | 786 |
| 15.3.4 | I/O port data registers . . . . . | 787 |
| 15.3.5 | I/O data bitwise handling . . . . . | 787 |
| 15.3.6 | GPIO locking mechanism . . . . . | 787 |
| 15.3.7 | I/O AF input/output . . . . . | 788 |
| 15.3.8 | External interrupt/wake-up lines . . . . . | 788 |
| 15.3.9 | Input configuration . . . . . | 788 |
| 15.3.10 | Output configuration . . . . . | 788 |
| 15.3.11 | AF configuration . . . . . | 789 |
| 15.3.12 | Analog configuration . . . . . | 790 |
| 15.3.13 | Using HSE or LSE oscillator pins as GPIOs . . . . . | 791 |
| 15.3.14 | Using GPIO pins in V SW supply domain . . . . . | 791 |
| 15.3.15 | Advanced I/O configurations . . . . . | 791 |
| 15.3.16 | I/O pin isolation using TrustZone . . . . . | 791 |
| 15.3.17 | I/O pin isolation using privilege . . . . . | 793 |
| 15.4 | GPIO registers . . . . . | 794 |
| 15.4.1 | GPIO port x mode register (GPIOx_MODER) (x = A to H, N to Q) . . . . . | 794 |
| 15.4.2 | GPIO port x output type register (GPIOx_OTYPER) (x = A to H, N to Q) . . . . . | 794 |
| 15.4.3 | GPIO port x output speed register (GPIOx_OSPEEDR) (x = A to H, N to Q) . . . . . | 795 |
| 15.4.4 | GPIO port x pull-up/pull-down register (GPIOx_PUPDR) (x = A to H, N to Q) . . . . . | 795 |
| 15.4.5 | GPIO port x input data register (GPIOx_IDR) (x = A to H, N to Q) . . . | 796 |
| 15.4.6 | GPIO port x output data register (GPIOx_ODR) (x = A to H, N to Q) . . . | 796 |
| 15.4.7 | GPIO port x bit set/reset register (GPIOx_BSRR) (x = A to H, N to Q) . . . | 797 |
| 15.4.8 | GPIO port x configuration lock register (GPIOx_LCKR) (x = A to H, N to Q) . . . . . | 798 |
| 15.4.9 | GPIO port x AF low register (GPIOx_AFRL) (x = A to H, N to Q) . . . . | 799 |
| 15.4.10 | GPIO port x AF high register (GPIOx_AFRH) (x = A to H, N to Q) . . . | 799 |
| 15.4.11 | GPIO port x bit reset register (GPIOx_BRR) (x = A to H, N to Q) . . . . | 800 |
| 15.4.12 | GPIO port x secure configuration register (GPIOx_SECCFGR) (x = A to H, N to Q) . . . . . | 800 |
| 15.4.13 | GPIO port x privileged configuration register (GPIOx_PRIVCFGR) (x = A to H, N to Q) . . . . . | 801 |
| 15.4.14 | GPIO port x resource configuration lock register (GPIOx_RCFGLOCKR) (x = A to H, N to Q) . . . . . | 802 |
| 15.4.15 | GPIO port x delay low register (GPIOx_DELAYRL) (x = A to H, N to Q) . . . . . | 802 |
| 15.4.16 | GPIO port x delay high register (GPIOx_DELAYRH) (x = A to H, N to Q) . . . . . | 803 |
| 15.4.17 | GPIO port x advanced configuration low register (GPIOx_ADVCFGRL) (x = A to H, N to Q) . . . . . | 803 |
| 15.4.18 | GPIO port x advanced configuration high register (GPIOx_ADVCFGHR) (x = A to H, N to Q) . . . . . | 804 |
| 15.4.19 | GPIO register map . . . . . | 806 |
| 16 | System configuration controller (SYSCFG) . . . . . | 809 |
| 16.0.1 | I/O compensation cell . . . . . | 809 |
| 16.1 | SYSCFG registers . . . . . | 810 |
| 16.1.1 | SYSCFG boot pin control register (SYSCFG_BOOTCR) . . . . . | 810 |
| 16.1.2 | SYSCFG Cortex-M55 control register (SYSCFG_CM55CR) . . . . . | 811 |
| 16.1.3 | SYSCFG Cortex-M55 TCM control register (SYSCFG_CM55TCMCR) . . . . . | 811 |
| 16.1.4 | SYSCFG Cortex-M55 memory RW margin register (SYSCFG_CM55RWMCR) . . . . . | 812 |
| 16.1.5 | SYSCFG Cortex-M55 SVTOR control register (SYSCFG_INITSVTORCR) . . . . . | 813 |
| 16.1.6 | SYSCFG Cortex-M55 NSVTOR control register (SYSCFG_INITNSVTORCR) . . . . . | 813 |
| 16.1.7 | SYSCFG Cortex-M55 reset type control register (SYSCFG_CM55RSTCR) . . . . . | 814 |
| 16.1.8 | SYSCFG Cortex-M55 P-AHB write posting control register (SYSCFG_CM55PAHBWPR) . . . . . | 814 |
| 16.1.9 | SYSCFG VENCRAM control register (SYSCFG_VENCRAMCR) . . . . | 815 |
| 16.1.10 | SYSCFG potential tamper reset register (SYSCFG_POTTAMPRSTCR) . . . . . | 815 |
| 16.1.11 | SYSCFG NPUNIC QoS control register (SYSCFG_NPUNICQOSCR) | 816 |
| 16.1.12 | SYSCFG AHB-AXI bridge early write response control register (SYSCFG_ICNEWRCR) . . . . . | 816 |
| 16.1.13 | SYSCFG ICN clock gating control register (SYSCFG_ICNCGCR) . . . | 817 |
| 16.1.14 | SYSCFG VDDIO4 compensation cell control register (SYSCFG_VDDIO4CCCR) . . . . . | 818 |
| 16.1.15 | SYSCFG VDDIO4 compensation cell status register (SYSCFG_VDDIO4CCSR) . . . . . | 818 |
| 16.1.16 | SYSCFG VDDIO5 compensation cell control register (SYSCFG_VDDIO5CCCR) . . . . . | 819 |
| 16.1.17 | SYSCFG VDDIO5 compensation cell status register (SYSCFG_VDDIO5CCSR) . . . . . | 820 |
| 16.1.18 | SYSCFG VDDIO2 compensation cell control register (SYSCFG_VDDIO2CCCR) . . . . . | 820 |
| 16.1.19 | SYSCFG VDDIO2 compensation cell status register (SYSCFG_VDDIO2CCSR) . . . . . | 821 |
| 16.1.20 | SYSCFG VDDIO3 compensation cell control register (SYSCFG_VDDIO3CCCR) . . . . . | 822 |
| 16.1.21 | SYSCFG VDDIO3 compensation cell status register (SYSCFG_VDDIO3CCSR) . . . . . | 822 |
| 16.1.22 | SYSCFG VDD compensation cell control register (SYSCFG_VDDCCCR) . . . . . | 823 |
| 16.1.23 | SYSCFG VDD compensation cell status register (SYSCFG_VDDCCSR) . . . . . | 824 |
| 16.1.24 | SYSCFG control timer break register (SYSCFG_CBR) . . . . . | 824 |
| 16.1.25 | SYSCFG DMA CID secure control register (SYSCFG_SEC_AIDCR) . | 825 |
| 16.1.26 | SYSCFG FMC retiming logic control register (SYSCFG_FMC_RETIMECR) . . . . . | 826 |
| 16.1.27 | SYSCFG NPU RAM interleaving control register (SYSCFG_NPU_ICNCR) . . . . . | 826 |
| 16.1.28 | SYSCFG boot pin status register (SYSCFG_BOOTSR) . . . . . | 827 |
| 16.1.29 | SYSCFG AHB write posting address error register (SYSCFG_AHBWP_ERROR_SR) . . . . . | 827 |
| 16.1.30 | SYSCFG SMPS observable signals through HDP selection configuration register (SYSCFG_SMPSHDPCCR) . . . . . | 828 |
| 16.1.31 | SYSCFG DMA CID nonsecure control register (SYSCFG_SECPRIV_AIDCR) . . . . . | 828 |
| 16.1.32 | SYSCFG device ID register (SYSCFG_DEVICEID) . . . . . | 829 |
| 16.1.33 | SYSCFG register map . . . . . | 829 |
| 17 | Peripherals interconnect matrix . . . . . | 833 |
| 17.1 | Introduction . . . . . | 833 |
| 17.2 | Connection summary . . . . . | 833 |
| 18 | High-performance direct memory access controller (HPDMA) . . . . . | 834 |
| 18.1 | HPDMA introduction . . . . . | 834 |
| 18.2 | HPDMA main features . . . . . | 834 |
| 18.3 | HPDMA implementation . . . . . | 835 |
| 18.3.1 | HPDMA channels . . . . . | 835 |
| 18.3.2 | HPDMA allowed AXI maximum burst length . . . . . | 836 |
| 18.3.3 | HPDMA in low-power modes . . . . . | 836 |
| 18.3.4 | HPDMA requests . . . . . | 836 |
| 18.3.5 | HPDMA block requests . . . . . | 841 |
| 18.3.6 | HPDMA channels with peripheral early termination . . . . . | 841 |
| 18.3.7 | HPDMA triggers . . . . . | 842 |
| 18.4 | HPDMA functional description . . . . . | 845 |
| 18.4.1 | HPDMA block diagram . . . . . | 845 |
| 18.4.2 | HPDMA channel state and direct programming without any linked-list . . . . . | 846 |
| 18.4.3 | HPDMA channel suspend and resume . . . . . | 847 |
| 18.4.4 | HPDMA channel abort and restart . . . . . | 848 |
| 18.4.5 | HPDMA linked-list data structure . . . . . | 849 |
| 18.4.6 | Linked-list item transfer execution . . . . . | 852 |
| 18.4.7 | HPDMA channel state and linked-list programming in run-to-completion mode . . . . . | 852 |
| 18.4.8 | HPDMA channel state and linked-list programming in link step mode . . . . . | 856 |
| 18.4.9 | HPDMA channel state and linked-list programming . . . . . | 863 |
| 18.4.10 | HPDMA FIFO-based transfers . . . . . | 865 |
| 18.4.11 | HPDMA transfer request and arbitration . . . . . | 881 |
| 18.4.12 | HPDMA triggered transfer . . . . . | 885 |
| 18.4.13 | HPDMA circular buffering with linked-list programming . . . . . | 886 |
| 18.4.14 | HPDMA transfer in peripheral flow-control mode . . . . . | 888 |
| 18.4.15 | HPDMA secure/nonsecure channel . . . . . | 889 |
| 18.4.16 | HPDMA privileged/unprivileged channel . . . . . | 890 |
| 18.4.17 | HPDMA error management . . . . . | 890 |
| 18.5 | HPDMA in debug mode . . . . . | 892 |
| 18.6 | HPDMA in low-power modes . . . . . | 892 |
| 18.7 | HPDMA interrupts . . . . . | 893 |
| 18.8 | HPDMA registers . . . . . | 894 |
| 18.8.1 | HPDMA secure configuration register (HPDMA_SECCFGR) . . . . . | 894 |
| 18.8.2 | HPDMA privileged configuration register (HPDMA_PRIVCFGR) . . . . . | 895 |
| 18.8.3 | HPDMA configuration lock register (HPDMA_RCFGLOCKR) . . . . . | 896 |
| 18.8.4 | HPDMA nonsecure masked interrupt status register (HPDMA_MISR) . . . . . | 896 |
| 18.8.5 | HPDMA secure masked interrupt status register (HPDMA_SMISR) . . . . . | 897 |
| 18.8.6 | HPDMA channel x linked-list base address register (HPDMA_CxLBAR) . . . . . | 898 |
| 18.8.7 | HPDMA channel x CID register (HPDMA_CxCIDCFGR) . . . . . | 899 |
| 18.8.8 | HPDMA channel x semaphore control register (HPDMA_CxSEMCR) . . . . . | 900 |
| 18.8.9 | HPDMA channel x flag clear register (HPDMA_CxFCR) . . . . . | 902 |
| 18.8.10 | HPDMA channel x status register (HPDMA_CxSR) . . . . . | 903 |
| 18.8.11 | HPDMA channel x control register (HPDMA_CxCR) . . . . . | 904 |
| 18.8.12 | HPDMA channel x transfer register 1 (HPDMA_CxTR1) . . . . . | 907 |
| 18.8.13 | HPDMA channel x transfer register 2 (HPDMA_CxTR2) . . . . . | 911 |
| 18.8.14 | HPDMA channel x block register 1 (HPDMA_CxBR1) . . . . . | 915 |
| 18.8.15 | HPDMA channel x alternate block register 1 (HPDMA_CxBR1) . . . . . | 916 |
| 18.8.16 | HPDMA channel x source address register (HPDMA_CxSAR) . . . . . | 919 |
| 18.8.17 | HPDMA channel x destination address register (HPDMA_CxDAR) . . . . . | 921 |
| 18.8.18 | HPDMA channel x transfer register 3 (HPDMA_CxTR3) . . . . . | 923 |
| 18.8.19 | HPDMA channel x block register 2 (HPDMA_CxBR2) . . . . . | 924 |
| 18.8.20 | HPDMA channel x linked-list address register (HPDMA_CxLLR) . . . . . | 925 |
| 18.8.21 | HPDMA channel x alternate linked-list address register (HPDMA_CxLLR) . . . . . | 927 |
| 18.8.22 | HPDMA register map . . . . . | 929 |
| 19 | General purpose direct memory access controller (GPDMA) . . . . . | 931 |
| 19.1 | GPDMA introduction . . . . . | 931 |
| 19.2 | GPDMA main features . . . . . | 931 |
| 19.3 | GPDMA implementation . . . . . | 932 |
| 19.3.1 | GPDMA channels . . . . . | 932 |
| 19.3.2 | GPDMA in low-power modes . . . . . | 933 |
| 19.3.3 | GPDMA requests . . . . . | 933 |
| 19.3.4 | GPDMA block requests . . . . . | 938 |
| 19.3.5 | GPDMA channels with peripheral early termination . . . . . | 938 |
| 19.3.6 | GPDMA triggers . . . . . | 938 |
| 19.4 | GPDMA functional description . . . . . | 942 |
| 19.4.1 | GPDMA block diagram . . . . . | 942 |
| 19.4.2 | GPDMA channel state and direct programming without any linked-list | 942 |
| 19.4.3 | GPDMA channel suspend and resume . . . . . | 943 |
| 19.4.4 | GPDMA channel abort and restart . . . . . | 944 |
| 19.4.5 | GPDMA linked-list data structure . . . . . | 945 |
| 19.4.6 | Linked-list item transfer execution . . . . . | 948 |
| 19.4.7 | GPDMA channel state and linked-list programming in run-to-completion mode . . . . . | 948 |
| 19.4.8 | GPDMA channel state and linked-list programming in link step mode | 952 |
| 19.4.9 | GPDMA channel state and linked-list programming . . . . . | 959 |
| 19.4.10 | GPDMA FIFO-based transfers . . . . . | 961 |
| 19.4.11 | GPDMA transfer request and arbitration . . . . . | 968 |
| 19.4.12 | GPDMA triggered transfer . . . . . | 972 |
| 19.4.13 | GPDMA circular buffering with linked-list programming . . . . . | 973 |
| 19.4.14 | GPDMA transfer in peripheral flow-control mode . . . . . | 975 |
| 19.4.15 | GPDMA secure/nonsecure channel . . . . . | 976 |
| 19.4.16 | GPDMA privileged/unprivileged channel . . . . . | 977 |
| 19.4.17 | GPDMA error management . . . . . | 977 |
| 19.5 | GPDMA in debug mode . . . . . | 979 |
| 19.6 | GPDMA in low-power modes . . . . . | 979 |
| 19.7 | GPDMA interrupts . . . . . | 980 |
| 19.8 | GPDMA registers . . . . . | 981 |
| 19.8.1 | GPDMA secure configuration register (GPDMA_SECCFGR) . . . . . | 981 |
| 19.8.2 | GPDMA privileged configuration register (GPDMA_PRIVCFGR) . . . . . | 982 |
| 19.8.3 | GPDMA configuration lock register (GPDMA_RCFGLOCKR) . . . . . | 982 |
| 19.8.4 | GPDMA nonsecure masked interrupt status register (GPDMA_MISR) . . . . . | 983 |
| 19.8.5 | GPDMA secure masked interrupt status register (GPDMA_SMISR) . . . . . | 984 |
| 19.8.6 | GPDMA channel x linked-list base address register (GPDMA_CxLBAR) . . . . . | 984 |
| 19.8.7 | GPDMA channel x flag clear register (GPDMA_CxFGR) . . . . . | 985 |
| 19.8.8 | GPDMA channel x status register (GPDMA_CxSR) . . . . . | 986 |
| 19.8.9 | GPDMA channel x control register (GPDMA_CxCR) . . . . . | 987 |
| 19.8.10 | GPDMA channel x transfer register 1 (GPDMA_CxTR1) . . . . . | 989 |
- 19.8.11 GPDMA channel x transfer register 2 (GPDMA_CxTR2) . . . . . 993
- 19.8.12 GPDMA channel x block register 1 (GPDMA_CxBR1) . . . . . 997
- 19.8.13 GPDMA channel x alternate block register 1 (GPDMA_CxBR1) . . . . . 998
- 19.8.14 GPDMA channel x source address register (GPDMA_CxSAR) . . . . . 1001
- 19.8.15 GPDMA channel x destination address register (GPDMA_CxDAR) . . . . . 1003
- 19.8.16 GPDMA channel x transfer register 3 (GPDMA_CxTR3) . . . . . 1004
- 19.8.17 GPDMA channel x block register 2 (GPDMA_CxBR2) . . . . . 1005
- 19.8.18 GPDMA channel x linked-list address register (GPDMA_CxLLR) . . . . . 1006
- 19.8.19 GPDMA channel x alternate linked-list address register
(GPDMA_CxLLR) . . . . . 1008 - 19.8.20 GPDMA register map . . . . . 1009
20 Neural-ART accelerator™ (NPU) . . . . . 1012
- 20.1 NPU introduction . . . . . 1012
- 20.2 NPU implementation . . . . . 1013
- 20.3 NPU functional description . . . . . 1014
- 20.3.1 NPU block diagram . . . . . 1014
- 20.3.2 NPU pins and internal signals . . . . . 1015
- 20.3.3 Configuration network . . . . . 1015
- 20.3.4 Clock/reset manager . . . . . 1016
- 20.3.5 Stream link . . . . . 1016
- 20.3.6 Stream switch . . . . . 1016
- 20.3.7 Stream engines . . . . . 1016
- 20.3.8 Encryption/Decryption unit . . . . . 1017
- 20.3.9 Decompression unit . . . . . 1017
- 20.3.10 Convolutional accelerator . . . . . 1019
- 20.3.11 Pooling unit . . . . . 1020
- 20.3.12 Activation unit . . . . . 1021
- 20.3.13 Arithmetic unit . . . . . 1023
- 20.3.14 Reconfigurable buffer . . . . . 1024
- 20.3.15 Epoch controller . . . . . 1024
- 20.3.16 Interrupt controller . . . . . 1025
- 20.4 Configuration examples . . . . . 1025
- 20.4.1 DMA transfer . . . . . 1025
- 20.4.2 Simple processing . . . . . 1025
- 20.4.3 Multiple processing . . . . . 1026
- 20.4.4 Conv-Pool-ReLU . . . . . 1026
| 20.4.5 | Chained convolutions . . . . . | 1027 |
| 20.4.6 | Split convolutions . . . . . | 1027 |
| 20.5 | Address space . . . . . | 1028 |
| 20.6 | System integration . . . . . | 1029 |
| 20.6.1 | System considerations . . . . . | 1029 |
| 20.6.2 | Architecture intent . . . . . | 1029 |
| 21 | Chrom-ART Accelerator controller (DMA2D) . . . . . | 1032 |
| 21.1 | DMA2D introduction . . . . . | 1032 |
| 21.2 | DMA2D main features . . . . . | 1032 |
| 21.3 | DMA2D functional description . . . . . | 1033 |
| 21.3.1 | General description . . . . . | 1033 |
| 21.3.2 | DMA2D internal signals . . . . . | 1034 |
| 21.3.3 | DMA2D control . . . . . | 1035 |
| 21.3.4 | DMA2D foreground and background FIFOs . . . . . | 1035 |
| 21.3.5 | DMA2D foreground and background PFC . . . . . | 1035 |
| 21.3.6 | DMA2D foreground and background CLUT interface . . . . . | 1037 |
| 21.3.7 | DMA2D blender . . . . . | 1039 |
| 21.3.8 | DMA2D output PFC . . . . . | 1039 |
| 21.3.9 | DMA2D output FIFO . . . . . | 1039 |
| 21.3.10 | DMA2D output FIFO byte reordering . . . . . | 1040 |
| 21.3.11 | DMA2D AXI master port timer . . . . . | 1042 |
| 21.3.12 | DMA2D transactions . . . . . | 1042 |
| 21.3.13 | DMA2D configuration . . . . . | 1042 |
| 21.3.14 | YCbCr support . . . . . | 1046 |
| 21.3.15 | DMA2D transfer control (start, suspend, abort, and completion) . . . . . | 1046 |
| 21.3.16 | Watermark . . . . . | 1047 |
| 21.3.17 | Error management . . . . . | 1047 |
| 21.3.18 | AXI dead time . . . . . | 1047 |
| 21.4 | DMA2D interrupts . . . . . | 1047 |
| 21.5 | DMA2D registers . . . . . | 1048 |
| 21.5.1 | DMA2D control register (DMA2D_CR) . . . . . | 1048 |
| 21.5.2 | DMA2D interrupt status register (DMA2D_ISR) . . . . . | 1050 |
| 21.5.3 | DMA2D interrupt flag clear register (DMA2D_IFCR) . . . . . | 1050 |
| 21.5.4 | DMA2D foreground memory address register (DMA2D_FGMAR) . . . . . | 1051 |
| 21.5.5 | DMA2D foreground offset register (DMA2D_FGOR) . . . . . | 1051 |
21.5.6 DMA2D background memory address register (DMA2D_BGMAR) . 1052
21.5.7 DMA2D background offset register (DMA2D_BGOR) . . . . . 1052
21.5.8 DMA2D foreground PFC control register (DMA2D_FGPFCCR) . . . . 1053
21.5.9 DMA2D foreground color register (DMA2D_FGCOLR) . . . . . 1055
21.5.10 DMA2D background PFC control register (DMA2D_BGPFCCR) . . . 1055
21.5.11 DMA2D background color register (DMA2D_BGCOLR) . . . . . 1057
21.5.12 DMA2D foreground CLUT memory address register
(DMA2D_FGCMAR) . . . . . 1057
21.5.13 DMA2D background CLUT memory address register
(DMA2D_BGCMAR) . . . . . 1058
21.5.14 DMA2D output PFC control register (DMA2D_OPFCCR) . . . . . 1058
21.5.15 DMA2D output color register (DMA2D_OCOLR) . . . . . 1059
21.5.16 DMA2D output color register [alternate] (DMA2D_OCOLR) . . . . . 1060
21.5.17 DMA2D output color register [alternate] (DMA2D_OCOLR) . . . . . 1060
21.5.18 DMA2D output color register [alternate] (DMA2D_OCOLR) . . . . . 1061
21.5.19 DMA2D output memory address register (DMA2D_OMAR) . . . . . 1061
21.5.20 DMA2D output offset register (DMA2D_OOR) . . . . . 1062
21.5.21 DMA2D number of line register (DMA2D_NLR) . . . . . 1062
21.5.22 DMA2D line watermark register (DMA2D_LWR) . . . . . 1063
21.5.23 DMA2D AXI master timer configuration register (DMA2D_AMTCR) . 1063
21.5.24 DMA2D foreground CLUT (DMA2D_FGCLUTx) . . . . . 1064
21.5.25 DMA2D background CLUT (DMA2D_BGCLUTx) . . . . . 1064
21.5.26 DMA2D register map . . . . . 1065
22 Chrom-GRC (GFXMMU) . . . . . 1067
22.1 GFXMMU introduction . . . . . 1067
22.2 GFXMMU main features . . . . . 1067
22.3 GFXMMU functional and architectural description . . . . . 1067
22.3.1 GFXMMU block diagram . . . . . 1067
22.3.2 GFXMMU internal signals . . . . . 1068
22.3.3 Virtual memory . . . . . 1068
22.3.4 Packing and unpacking . . . . . 1070
22.3.5 MMU architecture . . . . . 1071
22.4 GTZC TZIC GFXMMU interrupts . . . . . 1074
22.5 GFXMMU registers . . . . . 1075
22.5.1 GFXMMU configuration register (GFXMMU_CR) . . . . . 1075
22.5.2 GFXMMU status register (GFXMMU_SR) . . . . . 1077
| 22.5.3 | GFXMMU flag clear register (GFXMMU_FCR) . . . . . | 1077 |
| 22.5.4 | GFXMMU default value register (GFXMMU_DVR) . . . . . | 1078 |
| 22.5.5 | GFXMMU default alpha register (GFXMMU_DAR) . . . . . | 1078 |
| 22.5.6 | GFXMMU buffer x configuration register (GFXMMU_BxCR) . . . . . | 1079 |
| 22.5.7 | GFXMMU LUT entry x low (GFXMMU_LUTxL) . . . . . | 1079 |
| 22.5.8 | GFXMMU LUT entry x high (GFXMMU_LUTxH) . . . . . | 1080 |
| 22.5.9 | GFXMMU register map . . . . . | 1080 |
| 23 | Graphic timer (GFXTIM) . . . . . | 1082 |
| 23.1 | GFXTIM introduction . . . . . | 1082 |
| 23.2 | GFXTIM main features . . . . . | 1082 |
| 23.3 | GFXTIM functional description . . . . . | 1082 |
| 23.3.1 | Block diagram . . . . . | 1082 |
| 23.3.2 | GFXTIM pins and internal signals . . . . . | 1083 |
| 23.3.3 | Clock generator . . . . . | 1084 |
| 23.3.4 | Example of clock generator configuration . . . . . | 1086 |
| 23.3.5 | Absolute timers . . . . . | 1090 |
| 23.3.6 | Relative timers . . . . . | 1091 |
| 23.3.7 | Tearing-effect detection . . . . . | 1092 |
| 23.3.8 | Event generator . . . . . | 1092 |
| 23.3.9 | Watchdog timer . . . . . | 1093 |
| 23.4 | GFXTIM interrupts . . . . . | 1094 |
| 23.5 | GFXTIM registers . . . . . | 1095 |
| 23.5.1 | GFXTIM configuration register (GFXTIM_CR) . . . . . | 1095 |
| 23.5.2 | GFXTIM clock generator configuration register (GFXTIM_CGCR) . . . . . | 1096 |
| 23.5.3 | GFXTIM timers configuration register (GFXTIM_TCR) . . . . . | 1098 |
| 23.5.4 | GFXTIM timers disable register (GFXTIM_TDR) . . . . . | 1099 |
| 23.5.5 | GFXTIM events control register (GFXTIM_EVCR) . . . . . | 1100 |
| 23.5.6 | GFXTIM events selection register (GFXTIM_EVSR) . . . . . | 1100 |
| 23.5.7 | GFXTIM watchdog timer configuration register (GFXTIM_WDGTCR) . . . . . | 1102 |
| 23.5.8 | GFXTIM interrupt status register (GFXTIM_ISR) . . . . . | 1104 |
| 23.5.9 | GFXTIM interrupt clear register (GFXTIM_ICR) . . . . . | 1105 |
| 23.5.10 | GFXTIM interrupt enable register (GFXTIM_IER) . . . . . | 1107 |
| 23.5.11 | GFXTIM timers status register (GFXTIM_TSR) . . . . . | 1109 |
| 23.5.12 | GFXTIM line-clock counter reload register (GFXTIM_LCCRR) . . . . . | 1110 |
| 23.5.13 | GFXTIM frame-clock counter reload register (GFXTIM_FCCRR) . . . . . | 1110 |
| 23.5.14 | GFXTIM absolute time register (GFXTIM_ATR) . . . . . | 1110 |
| 23.5.15 | GFXTIM absolute frame counter register (GFXTIM_AFCR) . . . . . | 1111 |
| 23.5.16 | GFXTIM absolute line counter register (GFXTIM_ALCR) . . . . . | 1111 |
| 23.5.17 | GFXTIM absolute frame counter compare 1 register (GFXTIM_AFCC1R) . . . . . | 1112 |
| 23.5.18 | GFXTIM absolute line counter compare 1 register (GFXTIM_ALCC1R) . . . . . | 1112 |
| 23.5.19 | GFXTIM absolute line counter compare 2 register (GFXTIM_ALCC2R) . . . . . | 1112 |
| 23.5.20 | GFXTIM relative frame counter 1 register (GFXTIM_RFC1R) . . . . . | 1113 |
| 23.5.21 | GFXTIM relative frame counter 1 reload register (GFXTIM_RFC1RR) . . . . . | 1113 |
| 23.5.22 | GFXTIM relative frame counter 2 register (GFXTIM_RFC2R) . . . . . | 1114 |
| 23.5.23 | GFXTIM relative frame counter 2 reload register (GFXTIM_RFC2RR) . . . . . | 1114 |
| 23.5.24 | GFXTIM watchdog counter register (GFXTIM_WDGCR) . . . . . | 1114 |
| 23.5.25 | GFXTIM watchdog reload register (GFXTIM_WDGRR) . . . . . | 1115 |
| 23.5.26 | GFXTIM watchdog pre-alarm register (GFXTIM_WDGPAR) . . . . . | 1115 |
| 23.5.27 | GFXTIM register map . . . . . | 1115 |
| 24 | Nested vectored interrupt controller (NVIC) . . . . . | 1118 |
| 24.1 | NVIC features . . . . . | 1118 |
| 24.1.1 | SysTick calibration value register . . . . . | 1118 |
| 24.1.2 | Interrupt and exception vectors . . . . . | 1118 |
| 25 | Extended interrupts and event controller (EXTI) . . . . . | 1126 |
| 25.1 | EXTI main features . . . . . | 1126 |
| 25.2 | EXTI implementation . . . . . | 1127 |
| 25.3 | EXTI block diagram . . . . . | 1127 |
| 25.3.1 | EXTI connections between peripherals and CPU . . . . . | 1128 |
| 25.3.2 | EXTI wake-up interrupt list . . . . . | 1129 |
| 25.4 | EXTI functional description . . . . . | 1131 |
| 25.4.1 | EXTI configurable event input wake-up . . . . . | 1131 |
| 25.4.2 | EXTI direct event input wake-up . . . . . | 1132 |
| 25.4.3 | EXTI multiplexer selection . . . . . | 1132 |
| 25.5 | EXTI functional behavior . . . . . | 1133 |
| 25.6 | EXTI event protection . . . . . | 1134 |
| 25.6.1 | EXTI register security protection . . . . . | 1134 |
| 25.6.2 | EXTI register privilege protection . . . . . | 1135 |
| 25.7 | EXTI registers . . . . . | 1135 |
| 25.7.1 | EXTI rising trigger selection register (EXTI_RTSR1) . . . . . | 1135 |
| 25.7.2 | EXTI falling trigger selection register (EXTI_FTSR1) . . . . . | 1136 |
| 25.7.3 | EXTI software interrupt event register (EXTI_SWIER1) . . . . . | 1137 |
| 25.7.4 | EXTI rising edge pending register (EXTI_RPR1) . . . . . | 1138 |
| 25.7.5 | EXTI falling edge pending register (EXTI_FPR1) . . . . . | 1138 |
| 25.7.6 | EXTI security configuration register (EXTI_SECCFGR1) . . . . . | 1139 |
| 25.7.7 | EXTI privilege configuration register (EXTI_PRIVCFGR1) . . . . . | 1139 |
| 25.7.8 | EXTI rising trigger selection register (EXTI_RTSR2) . . . . . | 1140 |
| 25.7.9 | EXTI falling trigger selection register (EXTI_FTSR2) . . . . . | 1141 |
| 25.7.10 | EXTI software interrupt event register (EXTI_SWIER2) . . . . . | 1142 |
| 25.7.11 | EXTI rising edge pending register (EXTI_RPR2) . . . . . | 1143 |
| 25.7.12 | EXTI falling edge pending register (EXTI_FPR2) . . . . . | 1144 |
| 25.7.13 | EXTI security enable register (EXTI_SECCFGR2) . . . . . | 1145 |
| 25.7.14 | EXTI privilege enable register (EXTI_PRIVCFGR2) . . . . . | 1146 |
| 25.7.15 | EXTI rising trigger selection register (EXTI_RTSR3) . . . . . | 1146 |
| 25.7.16 | EXTI falling trigger selection register (EXTI_FTSR3) . . . . . | 1147 |
| 25.7.17 | EXTI software interrupt event register (EXTI_SWIER3) . . . . . | 1148 |
| 25.7.18 | EXTI rising edge pending register (EXTI_RPR3) . . . . . | 1149 |
| 25.7.19 | EXTI falling edge pending register (EXTI_FPR3) . . . . . | 1149 |
| 25.7.20 | EXTI security enable register (EXTI_SECCFGR3) . . . . . | 1150 |
| 25.7.21 | EXTI privilege enable register (EXTI_PRIVCFGR3) . . . . . | 1151 |
| 25.7.22 | EXTI external interrupt selection register 1 (EXTI_EXTICR1) . . . . . | 1151 |
| 25.7.23 | EXTI external interrupt selection register 2 (EXTI_EXTICR2) . . . . . | 1154 |
| 25.7.24 | EXTI external interrupt selection register 3 (EXTI_EXTICR3) . . . . . | 1157 |
| 25.7.25 | EXTI external interrupt selection register 4 (EXTI_EXTICR4) . . . . . | 1159 |
| 25.7.26 | EXTI lock register (EXTI_LOCKR) . . . . . | 1162 |
| 25.7.27 | EXTI CPU wake-up with interrupt mask register 1 (EXTI_IMR1) . . . . . | 1162 |
| 25.7.28 | EXTI CPU wake-up with event mask register 1 (EXTI_EMR1) . . . . . | 1163 |
| 25.7.29 | EXTI CPU wake-up with interrupt mask register 2 (EXTI_IMR2) . . . . . | 1163 |
| 25.7.30 | EXTI CPU wake-up with event mask register 2 (EXTI_EMR2) . . . . . | 1164 |
| 25.7.31 | EXTI CPU wake-up with interrupt mask register 3 (EXTI_IMR3) . . . . . | 1164 |
| 25.7.32 | EXTI CPU wake-up with event mask register 3 (EXTI_EMR3) . . . . . | 1165 |
| 25.7.33 | EXTI register map . . . . . | 1167 |
| 26 | Cyclic redundancy check calculation unit (CRC) . . . . . | 1170 |
| 26.1 | CRC introduction . . . . . | 1170 |
| 26.2 | CRC main features . . . . . | 1170 |
| 26.3 | CRC functional description . . . . . | 1171 |
| 26.3.1 | CRC block diagram . . . . . | 1171 |
| 26.3.2 | CRC internal signals . . . . . | 1171 |
| 26.3.3 | CRC operation . . . . . | 1171 |
| 26.4 | CRC registers . . . . . | 1173 |
| 26.4.1 | CRC data register (CRC_DR) . . . . . | 1173 |
| 26.4.2 | CRC independent data register (CRC_IDR) . . . . . | 1173 |
| 26.4.3 | CRC control register (CRC_CR) . . . . . | 1174 |
| 26.4.4 | CRC initial value (CRC_INIT) . . . . . | 1175 |
| 26.4.5 | CRC polynomial (CRC_POL) . . . . . | 1175 |
| 26.4.6 | CRC register map . . . . . | 1176 |
| 27 | Flexible memory controller (FMC) . . . . . | 1177 |
| 27.1 | FMC main features . . . . . | 1177 |
| 27.2 | FMC implementation . . . . . | 1178 |
| 27.3 | FMC block diagram . . . . . | 1179 |
| 27.4 | FMC internal signals . . . . . | 1180 |
| 27.5 | AHB interface . . . . . | 1180 |
| 27.6 | AXI interface . . . . . | 1180 |
| 27.6.1 | Supported memories and transactions . . . . . | 1181 |
| 27.7 | External device address mapping . . . . . | 1182 |
| 27.7.1 | NOR/PSRAM address mapping . . . . . | 1183 |
| 27.7.2 | NAND flash memory address mapping . . . . . | 1183 |
| 27.7.3 | SDRAM address mapping . . . . . | 1184 |
| 27.8 | NOR flash/PSRAM controller . . . . . | 1187 |
| 27.8.1 | External memory interface signals . . . . . | 1189 |
| 27.8.2 | Supported memories and transactions . . . . . | 1191 |
| 27.8.3 | General timing rules . . . . . | 1193 |
| 27.8.4 | NOR flash/PSRAM controller asynchronous transactions . . . . . | 1193 |
| 27.8.5 | Synchronous transactions . . . . . | 1212 |
| 27.8.6 | NOR/PSRAM controller registers . . . . . | 1217 |
| 27.9 | NAND flash controller . . . . . | 1226 |
| 27.9.1 | External memory interface signals . . . . . | 1227 |
| 27.9.2 | NAND flash supported memories and transactions . . . . . | 1228 |
| 27.9.3 | Timing diagrams for NAND flash memory . . . . . | 1229 |
| 27.9.4 | NAND flash operations . . . . . | 1230 |
| 27.9.5 | NAND flash prewait function . . . . . | 1231 |
| 27.9.6 | NAND ECC controller . . . . . | 1232 |
| 27.9.7 | FMC command sequencer . . . . . | 1235 |
| 27.9.8 | NAND flash controller interrupt . . . . . | 1242 |
| 27.9.9 | NAND flash controller registers . . . . . | 1243 |
| 27.10 | SDRAM controller . . . . . | 1267 |
| 27.10.1 | SDRAM controller main features . . . . . | 1267 |
| 27.10.2 | SDRAM External memory interface signals . . . . . | 1267 |
| 27.10.3 | SDRAM controller functional description . . . . . | 1268 |
| 27.10.4 | Low-power modes . . . . . | 1274 |
| 27.10.5 | SDRAM controller registers . . . . . | 1276 |
| 27.11 | FMC register map . . . . . | 1284 |
| 28 | Extended-SPI interface (XSPI) . . . . . | 1289 |
| 28.1 | XSPI introduction . . . . . | 1289 |
| 28.2 | XSPI main features . . . . . | 1289 |
| 28.3 | XSPI implementation . . . . . | 1290 |
| 28.4 | XSPI functional description . . . . . | 1291 |
| 28.4.1 | XSPI block diagram . . . . . | 1291 |
| 28.4.2 | XSPI pins and internal signals . . . . . | 1295 |
| 28.4.3 | Clock constraints . . . . . | 1296 |
| 28.4.4 | XSPI interface to memory modes . . . . . | 1296 |
| 28.4.5 | XSPI regular-command protocol . . . . . | 1296 |
| 28.4.6 | XSPI regular-command protocol signal interface . . . . . | 1300 |
| 28.4.7 | HyperBus protocol . . . . . | 1305 |
| 28.4.8 | Specific features . . . . . | 1310 |
| 28.4.9 | XSPI operating modes introduction . . . . . | 1312 |
| 28.4.10 | XSPI indirect mode . . . . . | 1312 |
| 28.4.11 | XSPI automatic status-polling mode . . . . . | 1314 |
| 28.4.12 | XSPI memory-mapped mode . . . . . | 1314 |
| 28.4.13 | XSPI configuration introduction . . . . . | 1315 |
| 28.4.14 | XSPI system configuration . . . . . | 1315 |
| 28.4.15 | XSPI device configuration . . . . . | 1316 |
| 28.4.16 | XSPI regular-command mode configuration . . . . . | 1318 |
| 28.4.17 | XSPI HyperBus protocol configuration . . . . . | 1321 |
| 28.4.18 | XSPI error management . . . . . | 1321 |
| 28.4.19 | XSPI high-speed interface and calibration . . . . . | 1322 |
| 28.4.20 | XSPI BUSY and ABORT . . . . . | 1323 |
| 28.4.21 | XSPI reconfiguration or deactivation . . . . . | 1323 |
| 28.4.22 | NCS behavior . . . . . | 1324 |
| 28.4.23 | Software control of two external memories . . . . . | 1324 |
| 28.4.24 | Hardware-controlled extended memory support . . . . . | 1325 |
| 28.5 | Address alignment and data number . . . . . | 1326 |
| 28.6 | XSPI interrupts . . . . . | 1328 |
| 28.7 | XSPI registers . . . . . | 1328 |
| 28.7.1 | XSPI control register (XSPI_CR) . . . . . | 1328 |
| 28.7.2 | XSPI device configuration register 1 (XSPI_DCR1) . . . . . | 1332 |
| 28.7.3 | XSPI device configuration register 2 (XSPI_DCR2) . . . . . | 1333 |
| 28.7.4 | XSPI device configuration register 3 (XSPI_DCR3) . . . . . | 1334 |
| 28.7.5 | XSPI device configuration register 4 (XSPI_DCR4) . . . . . | 1335 |
| 28.7.6 | XSPI status register (XSPI_SR) . . . . . | 1335 |
| 28.7.7 | XSPI flag clear register (XSPI_FCR) . . . . . | 1336 |
| 28.7.8 | XSPI data length register (XSPI_DLR) . . . . . | 1337 |
| 28.7.9 | XSPI address register (XSPI_AR) . . . . . | 1337 |
| 28.7.10 | XSPI data register (XSPI_DR) . . . . . | 1338 |
| 28.7.11 | XSPI polling status mask register (XSPI_PSMKR) . . . . . | 1339 |
| 28.7.12 | XSPI polling status match register (XSPI_PSMAR) . . . . . | 1339 |
| 28.7.13 | XSPI polling interval register (XSPI_PIR) . . . . . | 1340 |
| 28.7.14 | XSPI communication configuration register (XSPI_CCR) . . . . . | 1340 |
| 28.7.15 | XSPI timing configuration register (XSPI_TCR) . . . . . | 1342 |
| 28.7.16 | XSPI instruction register (XSPI_IR) . . . . . | 1343 |
| 28.7.17 | XSPI alternate bytes register (XSPI_ABR) . . . . . | 1343 |
| 28.7.18 | XSPI low-power timeout register (XSPI_LPTR) . . . . . | 1343 |
| 28.7.19 | XSPI wrap communication configuration register (XSPI_WPCCR) . . . . . | 1344 |
| 28.7.20 | XSPI wrap timing configuration register (XSPI_WPTCR) . . . . . | 1346 |
| 28.7.21 | XSPI wrap instruction register (XSPI_WPIR) . . . . . | 1347 |
| 28.7.22 | XSPI wrap alternate byte register (XSPI_WPABR) . . . . . | 1347 |
| 28.7.23 | XSPI write communication configuration register (XSPI_WCCR) . . . . . | 1347 |
| 28.7.24 | XSPI write timing configuration register (XSPI_WTCR) . . . . . | 1349 |
| 28.7.25 | XSPI write instruction register (XSPI_WIR) . . . . . | 1350 |
| 28.7.26 | XSPI write alternate byte register (XSPI_WABR) . . . . . | 1350 |
| 28.7.27 | XSPI HyperBus latency configuration register (XSPI_HLCR) . . . . . | 1351 |
| 28.7.28 | XSPI full-cycle calibration configuration (XSPI_CALFCR) . . . . . | 1351 |
| 28.7.29 | XSPI DLL master calibration configuration (XSPI_CALMR) . . . . . | 1352 |
| 28.7.30 | XSPI DLL slave output calibration configuration (XSPI_CALSOR) . . . . . | 1353 |
| 28.7.31 | XSPI DLL slave input calibration configuration (XSPI_CALSIR) . . . . . | 1354 |
| 28.7.32 | XSPI register map . . . . . | 1354 |
| 29 | XSPI I/O manager (XSPIM) . . . . . | 1358 |
| 29.1 | XSPIM introduction . . . . . | 1358 |
| 29.2 | XSPIM main features . . . . . | 1358 |
| 29.3 | XSPIM implementation . . . . . | 1358 |
| 29.4 | XSPIM functional description . . . . . | 1358 |
| 29.4.1 | XSPIM block diagram . . . . . | 1358 |
| 29.4.2 | XSPIM input/output pins . . . . . | 1359 |
| 29.4.3 | XSPIM matrix . . . . . | 1360 |
| 29.4.4 | XSPIM multiplexed mode . . . . . | 1360 |
| 29.5 | Use cases description . . . . . | 1361 |
| 29.5.1 | XSPIs direct octal mode . . . . . | 1361 |
| 29.5.2 | XSPI direct 16-bit mode . . . . . | 1362 |
| 29.5.3 | XSPI dual-octal mode . . . . . | 1363 |
| 29.5.4 | XSPI swapped mode . . . . . | 1364 |
| 29.5.5 | Two XSPIs multiplexed mode to Port 1 accessing two external memories, and the third XSPI accessing Port 2 . . . . . | 1365 |
| 29.5.6 | Two XSPIs multiplexed mode to Port 2 accessing two external memories, and the third XSPI accessing Port 1 . . . . . | 1366 |
| 29.5.7 | XSPI1 and XSPI2 drive a single external memory . . . . . | 1367 |
| 29.5.8 | A single XSPI drives two external memories . . . . . | 1368 |
| 29.6 | XSPIM registers . . . . . | 1370 |
| 29.6.1 | XSPIM control register (XSPIM_CR) . . . . . | 1370 |
| 29.6.2 | XSPIM register map . . . . . | 1371 |
| 30 | Secure digital input/output MultiMediaCard interface (SDMMC) . . . . . | 1372 |
| 30.1 | SDMMC main features . . . . . | 1372 |
| 30.2 | SDMMC implementation . . . . . | 1372 |
| 30.3 | SDMMC bus topology . . . . . | 1373 |
| 30.4 | SDMMC operation modes . . . . . | 1375 |
| 30.5 | SDMMC functional description . . . . . | 1376 |
| 30.5.1 | SDMMC block diagram . . . . . | 1376 |
| 30.5.2 | SDMMC pins and internal signals . . . . . | 1376 |
| 30.5.3 | General description . . . . . | 1377 |
| 30.5.4 | SDMMC adapter . . . . . | 1379 |
| 30.5.5 | SDMMC AHB slave interface . . . . . | 1401 |
| 30.5.6 | SDMMC AHB master interface . . . . . | 1402 |
| 30.5.7 | AHB and SDMMC_CK clock relation . . . . . | 1405 |
| 30.6 | Card functional description . . . . . | 1406 |
| 30.6.1 | SD I/O mode . . . . . | 1406 |
| 30.6.2 | CMD12 send timing . . . . . | 1414 |
| 30.6.3 | Sleep (CMD5) . . . . . | 1418 |
| 30.6.4 | Interrupt mode (Wait-IRQ) . . . . . | 1419 |
| 30.6.5 | Boot operation . . . . . | 1420 |
| 30.6.6 | Response R1b handling . . . . . | 1423 |
| 30.6.7 | Reset and card cycle power . . . . . | 1424 |
| 30.7 | Hardware flow control . . . . . | 1425 |
| 30.7.1 | Hardware flow control during data transfer . . . . . | 1425 |
| 30.7.2 | Block gap hardware flow control . . . . . | 1426 |
| 30.8 | Ultra-high-speed phase I (UHS-I) voltage switch . . . . . | 1427 |
| 30.9 | SDMMC interrupts . . . . . | 1431 |
| 30.10 | SDMMC registers . . . . . | 1432 |
| 30.10.1 | SDMMC power control register (SDMMC_POWER) . . . . . | 1432 |
| 30.10.2 | SDMMC clock control register (SDMMC_CLKCR) . . . . . | 1433 |
| 30.10.3 | SDMMC argument register (SDMMC_ARGR) . . . . . | 1435 |
| 30.10.4 | SDMMC command register (SDMMC_CMDR) . . . . . | 1435 |
| 30.10.5 | SDMMC command response register (SDMMC_RESPCMDR) . . . . . | 1437 |
| 30.10.6 | SDMMC response x register (SDMMC_RESPxR) . . . . . | 1438 |
| 30.10.7 | SDMMC data timer register (SDMMC_DTIMER) . . . . . | 1438 |
| 30.10.8 | SDMMC data length register (SDMMC_DLENR) . . . . . | 1439 |
| 30.10.9 | SDMMC data control register (SDMMC_DCTRL) . . . . . | 1440 |
| 30.10.10 | SDMMC data counter register (SDMMC_DCNTR) . . . . . | 1441 |
| 30.10.11 | SDMMC status register (SDMMC_STAR) . . . . . | 1442 |
| 30.10.12 | SDMMC interrupt clear register (SDMMC_ICR) . . . . . | 1445 |
| 30.10.13 | SDMMC mask register (SDMMC_MASKR) . . . . . | 1447 |
| 30.10.14 | SDMMC acknowledgment timer register (SDMMC_ACKTIMER) . . . | 1450 |
| 30.10.15 | SDMMC data FIFO threshold register (SDMMC_FIFOTHRR) . . . . . | 1450 |
| 30.10.16 | SDMMC DMA control register (SDMMC_IDMACTLRLR) . . . . . | 1451 |
| 30.10.17 | SDMMC IDMA buffer size register (SDMMC_IDMABSIZER) . . . . . | 1451 |
| 30.10.18 | SDMMC IDMA buffer base address register (SDMMC_IDMABASER) . . . . . | 1452 |
| 30.10.19 | SDMMC IDMA linked list address register (SDMMC_IDMALAR) . . . | 1452 |
| 30.10.20 | SDMMC IDMA linked list memory base register (SDMMC_IDMABAR) . . . . . | 1453 |
| 30.10.21 | SDMMC data FIFO registers x (SDMMC_FIFORx) . . . . . | 1454 |
| 30.10.22 | SDMMC register map . . . . . | 1454 |
| 31 | Delay block (DLYB) . . . . . | 1457 |
| 31.1 | DLYB introduction . . . . . | 1457 |
| 31.2 | DLYB main features . . . . . | 1457 |
| 31.3 | DLYB implementation . . . . . | 1457 |
| 31.4 | DLYB functional description . . . . . | 1457 |
| 31.4.1 | DLYB diagram . . . . . | 1457 |
| 31.4.2 | DLYB internal signals . . . . . | 1459 |
| 31.4.3 | General description . . . . . | 1461 |
| 31.4.4 | Lock mode procedure . . . . . | 1462 |
| 31.4.5 | Bypass mode procedure . . . . . | 1462 |
| 31.5 | DLYB SDMMC registers description . . . . . | 1463 |
| 31.5.1 | Delay block SDMMC DLL configuration (DLYBSD_CFG) . . . . . | 1463 |
| 31.5.2 | Delay block SDMMC DLL status (DLYBSD_STATUS) . . . . . | 1464 |
| 31.5.3 | DLYB register map . . . . . | 1464 |
| 32 | Analog-to-digital converters (ADC) . . . . . | 1466 |
| 32.1 | ADC introduction . . . . . | 1466 |
| 32.2 | ADC main features . . . . . | 1466 |
| 32.3 | ADC implementation . . . . . | 1468 |
| 32.4 | ADC functional description . . . . . | 1469 |
| 32.4.1 | ADC block diagram . . . . . | 1469 |
| 32.4.2 | ADC pins and internal signals . . . . . | 1470 |
| 32.4.3 | ADC clocks . . . . . | 1473 |
| 32.4.4 | ADC connectivity . . . . . | 1475 |
| 32.4.5 | Slave AHB interface . . . . . | 1477 |
| 32.4.6 | ADC Deep-power-down mode (DEEPPWD) . . . . . | 1477 |
| 32.4.7 | Single-ended and differential input channels . . . . . | 1477 |
| 32.4.8 | Calibration (ADCAL, CALADDOS, ADC_CALFACT) . . . . . | 1478 |
| 32.4.9 | ADC on-off control (ADEN, ADDIS, ADRDY) . . . . . | 1480 |
| 32.4.10 | Constraints when writing the ADC control bits . . . . . | 1481 |
| 32.4.11 | Channel selection (ADC_SQRY, ADC_JSQR) . . . . . | 1482 |
| 32.4.12 | Channel preselection register (ADC_PCSEL) . . . . . | 1482 |
| 32.4.13 | Channel-wise programmable sampling time (SMPR1, SMPR2) . . . . . | 1483 |
| 32.4.14 | Single conversion mode . . . . . | 1484 |
| 32.4.15 | Continuous conversion mode (CONT = 1) . . . . . | 1485 |
| 32.4.16 | Discontinuous mode (DISCEN, DISCNUM, JDISCEN) . . . . . | 1486 |
| 32.4.17 | Starting conversions (ADSTART, JADSTART) . . . . . | 1487 |
| 32.4.18 | Timing . . . . . | 1488 |
| 32.4.19 | Stopping an ongoing conversion (ADSTP, JADSTP) . . . . . | 1489 |
| 32.4.20 | Conversion on external trigger and trigger polarity (EXTSEL, EXTEN, JEXTSEL, JEXTEN) . . . . . | 1491 |
| 32.4.21 | Injected channel management . . . . . | 1492 |
| 32.4.22 | Programmable resolution (RES) - fast conversion mode . . . . . | 1493 |
| 32.4.23 | End of conversion and end of sampling phase (EOC, JEOC, EOSMP) . . . . . | 1494 |
| 32.4.24 | End of conversion sequence (EOS, JEOS) . . . . . | 1494 |
| 32.4.25 | Timing diagram examples (single/continuous modes, hardware/software triggers) . . . . . | 1495 |
| 32.4.26 | Data management . . . . . | 1497 |
| 32.4.27 | Managing conversions using the MDF . . . . . | 1505 |
| 32.4.28 | Dynamic low-power features . . . . . | 1506 |
| 32.4.29 | Analog window watchdog (AWD1EN, JAWD1EN, AWD1SGL, AWD1CH, AWDCH of ADC_AWD2CR and ADC_AWD3CR, HTR, LTR, AWDFILT) . . . . . | 1509 |
| 32.4.30 | Oversampler . . . . . | 1514 |
| 32.4.31 | Dual ADC modes . . . . . | 1520 |
| 32.4.32 | VBAT supply monitoring . . . . . | 1536 |
| 32.4.33 | Monitoring the internal voltage reference . . . . . | 1537 |
| 32.4.34 | Monitoring the supply voltage . . . . . | 1539 |
| 32.5 | ADC interrupts . . . . . | 1539 |
| 32.6 | ADC registers (for each ADC) . . . . . | 1540 |
| 32.6.1 | ADC interrupt and status register (ADC_ISR) . . . . . | 1540 |
| 32.6.2 | ADC interrupt enable register (ADC_IER) . . . . . | 1542 |
| 32.6.3 | ADC control register (ADC_CR) . . . . . | 1544 |
| 32.6.4 | ADC configuration register (ADC_CFGR1) . . . . . | 1547 |
| 32.6.5 | ADC configuration register 2 (ADC_CFGR2) . . . . . | 1550 |
| 32.6.6 | ADC sample time register 1 (ADC_SMPR1) . . . . . | 1553 |
| 32.6.7 | ADC sample time register 2 (ADC_SMPR2) . . . . . | 1554 |
| 32.6.8 | ADC channel preselection register (ADC_PCSEL) . . . . . | 1555 |
| 32.6.9 | ADC regular sequence register 1 (ADC_SQR1) . . . . . | 1555 |
| 32.6.10 | ADC regular sequence register 2 (ADC_SQR2) . . . . . | 1556 |
| 32.6.11 | ADC regular sequence register 3 (ADC_SQR3) . . . . . | 1557 |
| 32.6.12 | ADC regular sequence register 4 (ADC_SQR4) . . . . . | 1558 |
| 32.6.13 | ADC regular data register (ADC_DR) . . . . . | 1559 |
| 32.6.14 | ADC injected sequence register (ADC_JSQR) . . . . . | 1559 |
| 32.6.15 | ADC offset y configuration register (ADC_OFCFGry) . . . . . | 1561 |
| 32.6.16 | ADC offset y register (ADC_OFry) . . . . . | 1562 |
| 32.6.17 | ADC gain compensation register (ADC_GCOMP) . . . . . | 1563 |
| 32.6.18 | ADC injected channel y data register (ADC_JDry) . . . . . | 1564 |
| 32.6.19 | ADC analog watchdog 2 configuration register (ADC_AWD2CR) . . . . . | 1564 |
| 32.6.20 | ADC analog watchdog 3 configuration register (ADC_AWD3CR) . . . . . | 1565 |
| 32.6.21 | ADC analog watchdog 1 lower threshold register (ADC_AWD1LTR) . . . . . | 1565 |
| 32.6.22 | ADC analog watchdog 1 higher threshold register (ADC_AWD1HTR) . . . . . | 1566 |
| 32.6.23 | ADC analog watchdog 2 lower threshold register (ADC_AWD2LTR) . . . . . | 1566 |
| 32.6.24 | ADC analog watchdog 2 higher threshold register (ADC_AWD2HTR) . . . . . | 1567 |
| 32.6.25 | ADC analog watchdog 3 lower threshold register (ADC_AWD3LTR) . . . . . | 1567 |
| 32.6.26 | ADC analog watchdog 3 higher threshold register (ADC_AWD3HTR) . . . . . | 1567 |
| 32.6.27 | ADC differential mode selection register (ADC_DIFSEL) . . . . . | 1568 |
| 32.6.28 | ADC calibration factors (ADC_CALFACT) . . . . . | 1568 |
| 32.6.29 | ADC option register (ADC_OR) . . . . . | 1570 |
| 32.7 | ADC common registers . . . . . | 1571 |
| 32.7.1 | ADC common status register (ADCC_CSR) . . . . . | 1571 |
| 32.7.2 | ADC common control register (ADCC_CCR) . . . . . | 1572 |
| 32.7.3 | ADC common regular data register for dual mode (ADCC_CDR) . . . . . | 1574 |
| 32.7.4 | ADC common regular data register for dual mode (ADCC_CDR2) . . . . . | 1574 |
32.8 ADC register map . . . . . 1575
33 Digital temperature sensor (DTS) . . . . . 1579
33.1 Introduction . . . . . 1579
33.2 DTS main features . . . . . 1579
33.3 DTS functional description . . . . . 1580
33.3.1 DTS block diagram . . . . . 1580
33.3.2 DTS pins and internal signals . . . . . 1580
33.3.3 DTS reset and clocks . . . . . 1581
33.3.4 DTS serial data adapter (SDA) . . . . . 1583
33.3.5 Alarms . . . . . 1589
33.3.6 Main APB programming routines . . . . . 1590
33.3.7 Temperature sensor configuration . . . . . 1593
33.4 DTS interrupts . . . . . 1595
33.5 DTS registers . . . . . 1596
33.5.1 DTS PVT common registers . . . . . 1596
33.5.2 PVT IRQ registers . . . . . 1598
33.5.3 TS common registers . . . . . 1602
33.5.4 TS individual registers . . . . . 1609
33.5.5 DTS register map . . . . . 1616
34 Voltage reference buffer (VREFBUF) . . . . . 1621
34.1 VREFBUF introduction . . . . . 1621
34.2 VREFBUF implementation . . . . . 1621
34.3 VREFBUF functional description . . . . . 1621
34.4 VREFBUF trimming . . . . . 1622
34.5 VREFBUF power sequence . . . . . 1623
34.6 VREFBUF registers . . . . . 1624
34.6.1 VREFBUF control and status register (VREFBUF_CSR) . . . . . 1624
34.6.2 VREFBUF calibration control register (VREFBUF_CCR) . . . . . 1625
34.6.3 VREFBUF register map . . . . . 1625
35 Multi-function digital filter (MDF) . . . . . 1626
35.1 MDF introduction . . . . . 1626
35.2 MDF main features . . . . . 1627
35.3 MDF implementation . . . . . 1627
| 35.4 | MDF functional description . . . . . | 1629 |
| 35.4.1 | MDF block diagram . . . . . | 1629 |
| 35.4.2 | MDF pins and internal signals . . . . . | 1630 |
| 35.4.3 | Serial input interfaces (SITF) . . . . . | 1631 |
| 35.4.4 | ADC slave interface (ADCITF) . . . . . | 1636 |
| 35.4.5 | Clock generator (CKGEN) . . . . . | 1637 |
| 35.4.6 | Bitstream matrix (BSMX) . . . . . | 1639 |
| 35.4.7 | Short-circuit detectors (SCD) . . . . . | 1640 |
| 35.4.8 | Digital filter processing (DFLT) . . . . . | 1642 |
| 35.4.9 | Out-of-limit detector (OLD) . . . . . | 1652 |
| 35.4.10 | Digital filter acquisition modes . . . . . | 1655 |
| 35.4.11 | Start-up sequence examples . . . . . | 1665 |
| 35.4.12 | Break interface . . . . . | 1666 |
| 35.4.13 | Data transfer to memory . . . . . | 1667 |
| 35.4.14 | Autonomous mode . . . . . | 1672 |
| 35.4.15 | Register protection . . . . . | 1673 |
| 35.5 | MDF low-power modes . . . . . | 1674 |
| 35.6 | MDF interrupts . . . . . | 1674 |
| 35.7 | MDF application informations . . . . . | 1676 |
| 35.7.1 | MDF configuration examples for audio capture . . . . . | 1676 |
| 35.7.2 | Programming examples . . . . . | 1677 |
| 35.7.3 | Connection examples . . . . . | 1679 |
| 35.7.4 | Global frequency response . . . . . | 1680 |
| 35.7.5 | Total MDF gain . . . . . | 1681 |
| 35.8 | MDF registers . . . . . | 1685 |
| 35.8.1 | MDF global control register (MDF_GCR) . . . . . | 1685 |
| 35.8.2 | MDF clock generator control register (MDF_CKGCR) . . . . . | 1686 |
| 35.8.3 | MDF serial interface control register x (MDF_SITFxCr) . . . . . | 1688 |
| 35.8.4 | MDF bitstream matrix control register x (MDF_BSMXxCr) . . . . . | 1689 |
| 35.8.5 | MDF digital filter control register x (MDF_DFLTxCr) . . . . . | 1690 |
| 35.8.6 | MDF digital filter configuration register x (MDF_DFLTxCICR) . . . . . | 1692 |
| 35.8.7 | MDF reshape filter configuration register x (MDF_DFLTxRSFR) . . . . . | 1694 |
| 35.8.8 | MDF integrator configuration register x (MDF_DFLTxINTR) . . . . . | 1695 |
| 35.8.9 | MDF out-of limit detector control register x (MDF_OLDxCr) . . . . . | 1695 |
| 35.8.10 | MDF OLDx low threshold register x (MDF_OLDxTHLR) . . . . . | 1697 |
| 35.8.11 | MDF OLDx high threshold register x (MDF_OLDxTHHR) . . . . . | 1697 |
| 35.8.12 | MDF delay control register x (MDF_DLYxCR) . . . . . | 1698 |
| 35.8.13 | MDF short circuit detector control register x (MDF_SCDxCR) . . . . . | 1698 |
| 35.8.14 | MDF DFLT0 interrupt enable register 0 (MDF_DFLT0IER) . . . . . | 1699 |
| 35.8.15 | MDF DFLTx interrupt enable register x (MDF_DFLTxIER) . . . . . | 1701 |
| 35.8.16 | MDF DFLT0 interrupt status register 0 (MDF_DFLT0ISR) . . . . . | 1702 |
| 35.8.17 | MDF DFLTx interrupt status register x (MDF_DFLTxISR) . . . . . | 1704 |
| 35.8.18 | MDF offset error compensation control register x (MDF_OECxCR) . . . . . | 1705 |
| 35.8.19 | MDF snapshot data register x (MDF_SNPSxDR) . . . . . | 1706 |
| 35.8.20 | MDF digital filter data register x (MDF_DFLTxDR) . . . . . | 1706 |
| 35.8.21 | MDF register map . . . . . | 1707 |
| 36 | Audio digital filter (ADF) . . . . . | 1709 |
| 36.1 | ADF introduction . . . . . | 1709 |
| 36.2 | ADF main features . . . . . | 1709 |
| 36.3 | ADF implementation . . . . . | 1710 |
| 36.4 | ADF functional description . . . . . | 1711 |
| 36.4.1 | ADF block diagram . . . . . | 1711 |
| 36.4.2 | ADF pins and internal signals . . . . . | 1711 |
| 36.4.3 | Serial input interface (SITF) . . . . . | 1712 |
| 36.4.4 | ADC slave interface (ADCITF) . . . . . | 1717 |
| 36.4.5 | Clock generator (CKGEN) . . . . . | 1717 |
| 36.4.6 | Bitstream matrix (BSMX) . . . . . | 1719 |
| 36.4.7 | Digital filter processing (DFLT) . . . . . | 1720 |
| 36.4.8 | Digital filter acquisition modes . . . . . | 1730 |
| 36.4.9 | Start-up sequence examples . . . . . | 1738 |
| 36.4.10 | Sound activity detection (SAD) . . . . . | 1739 |
| 36.4.11 | Data transfer to memory . . . . . | 1747 |
| 36.4.12 | Autonomous mode . . . . . | 1750 |
| 36.4.13 | Register protection . . . . . | 1750 |
| 36.5 | ADF low-power modes . . . . . | 1751 |
| 36.6 | ADF interrupts . . . . . | 1751 |
| 36.7 | ADF application information . . . . . | 1753 |
| 36.7.1 | ADF configuration examples for audio capture . . . . . | 1753 |
| 36.7.2 | Programming examples . . . . . | 1754 |
| 36.7.3 | Connection examples . . . . . | 1756 |
| 36.7.4 | Global frequency response . . . . . | 1757 |
| 36.7.5 | Total ADF gain . . . . . | 1758 |
| 36.7.6 | How to compute SAD thresholds . . . . . | 1761 |
| 36.8 | ADF registers . . . . . | 1765 |
| 36.8.1 | ADF global control register (ADF_GCR) . . . . . | 1765 |
| 36.8.2 | ADF clock generator control register (ADF_CKGCR) . . . . . | 1765 |
| 36.8.3 | ADF serial interface control register 0 (ADF_SITF0CR) . . . . . | 1767 |
| 36.8.4 | ADF bitstream matrix control register 0 (ADF_BSMX0CR) . . . . . | 1769 |
| 36.8.5 | ADF digital filter control register 0 (ADF_DFLT0CR) . . . . . | 1769 |
| 36.8.6 | ADF digital filter configuration register 0 (ADF_DFLT0CICR) . . . . . | 1771 |
| 36.8.7 | ADF reshape filter configuration register 0 (ADF_DFLT0RSFR) . . . . . | 1772 |
| 36.8.8 | ADF delay control register 0 (ADF_DLY0CR) . . . . . | 1773 |
| 36.8.9 | ADF DFLT0 interrupt enable register (ADF_DFLT0IER) . . . . . | 1774 |
| 36.8.10 | ADF DFLT0 interrupt status register 0 (ADF_DFLT0ISR) . . . . . | 1775 |
| 36.8.11 | ADF SAD control register (ADF_SADCR) . . . . . | 1776 |
| 36.8.12 | ADF SAD configuration register (ADF_SADCFGR) . . . . . | 1778 |
| 36.8.13 | ADF SAD sound level register (ADF_SADSDLVR) . . . . . | 1779 |
| 36.8.14 | ADF SAD ambient noise level register (ADF_SADANLVR) . . . . . | 1780 |
| 36.8.15 | ADF digital filter data register 0 (ADF_DFLT0DR) . . . . . | 1780 |
| 36.8.16 | ADF register map . . . . . | 1780 |
| 37 | Camera subsystem . . . . . | 1783 |
| 37.1 | Introduction . . . . . | 1783 |
| 37.2 | Camera path main features . . . . . | 1783 |
| 37.2.1 | DCMI path main features . . . . . | 1783 |
| 37.2.2 | DCMIPP path main features . . . . . | 1784 |
| 37.3 | Camera subsystem implementation . . . . . | 1785 |
| 37.3.1 | Hardware settings . . . . . | 1785 |
| 37.4 | Camera subsystem functional description . . . . . | 1786 |
| 37.4.1 | Camera subsystem block diagram . . . . . | 1786 |
| 37.4.2 | Camera subsystem pins and external signal interface . . . . . | 1786 |
| 37.4.3 | Camera subsystem reset and clocks . . . . . | 1787 |
| 37.4.4 | Streaming from the camera subsystem to slave peripherals . . . . . | 1787 |
| 37.4.5 | Camera subsystem security . . . . . | 1788 |
| 37.5 | Camera subsystem programmable parameters . . . . . | 1789 |
| 37.5.1 | Low-resolution parallel camera and DCMI . . . . . | 1790 |
| 37.5.2 | High-resolution parallel camera and DCMIPP . . . . . | 1790 |
| 37.5.3 | High-resolution CSI2 camera and DCMIPP . . . . . | 1791 |
| 37.5.4 | Sensors over target resolution . . . . . | 1792 |
| 37.5.5 | Sensors over target pixel rate . . . . . | 1792 |
| 37.5.6 | Double sensors . . . . . | 1792 |
| 37.6 | Camera subsystem interrupts . . . . . | 1793 |
| 37.7 | Camera subsystem registers . . . . . | 1793 |
| 38 | Digital camera interface (DCMI) . . . . . | 1794 |
| 38.1 | DCMI introduction . . . . . | 1794 |
| 38.2 | DCMI main features . . . . . | 1794 |
| 38.3 | DCMI functional description . . . . . | 1794 |
| 38.3.1 | DCMI block diagram . . . . . | 1795 |
| 38.3.2 | DCMI pins and internal signals . . . . . | 1795 |
| 38.3.3 | DCMI clocks . . . . . | 1796 |
| 38.3.4 | DCMI DMA interface . . . . . | 1796 |
| 38.3.5 | DCMI physical interface . . . . . | 1796 |
| 38.3.6 | DCMI synchronization . . . . . | 1798 |
| 38.3.7 | DCMI capture modes . . . . . | 1800 |
| 38.3.8 | DCMI crop feature . . . . . | 1801 |
| 38.3.9 | DCMI JPEG format . . . . . | 1802 |
| 38.3.10 | DCMI FIFO . . . . . | 1802 |
| 38.3.11 | DCMI data format description . . . . . | 1803 |
| 38.4 | DCMI interrupts . . . . . | 1805 |
| 38.5 | DCMI registers . . . . . | 1805 |
| 38.5.1 | DCMI control register (DCMI_CR) . . . . . | 1805 |
| 38.5.2 | DCMI status register (DCMI_SR) . . . . . | 1808 |
| 38.5.3 | DCMI raw interrupt status register (DCMI_RIS) . . . . . | 1808 |
| 38.5.4 | DCMI interrupt enable register (DCMI_IER) . . . . . | 1809 |
| 38.5.5 | DCMI masked interrupt status register (DCMI_MIS) . . . . . | 1810 |
| 38.5.6 | DCMI interrupt clear register (DCMI_ICR) . . . . . | 1811 |
| 38.5.7 | DCMI embedded synchronization code register (DCMI_ESCR) . . . . . | 1812 |
| 38.5.8 | DCMI embedded synchronization unmask register (DCMI_ESUR) . . . . . | 1812 |
| 38.5.9 | DCMI crop window start (DCMI_CWSTRT) . . . . . | 1813 |
| 38.5.10 | DCMI crop window size (DCMI_CWSIZE) . . . . . | 1814 |
| 38.5.11 | DCMI data register (DCMI_DR) . . . . . | 1814 |
| 38.5.12 | DCMI register map . . . . . | 1815 |
| 39 | Digital camera interface pixel pipeline (DCMIPP) . . . . . | 1816 |
| 39.1 | DCMIPP introduction . . . . . | 1816 |
| 39.2 | DCMIPP main features . . . . . | 1819 |
| 39.3 | DCMIPP functional description . . . . . | 1821 |
| 39.3.1 | DCMIPP block diagram . . . . . | 1821 |
| 39.3.2 | DCMIPP pads and internal signals . . . . . | 1822 |
| 39.3.3 | DCMIPP reset and clocks . . . . . | 1822 |
| 39.3.4 | DCMIPP maximum resolution . . . . . | 1825 |
| 39.3.5 | DCMIPP minimum requirements for frame structure . . . . . | 1826 |
| 39.3.6 | Description of DCMIPP pixel format support . . . . . | 1826 |
| 39.4 | DCMIPP input and flow control . . . . . | 1827 |
| 39.4.1 | DCMIPP common configuration . . . . . | 1828 |
| 39.4.2 | Parallel input interface . . . . . | 1828 |
| 39.4.3 | Interface from CSI-2 host . . . . . | 1832 |
| 39.4.4 | Input selection . . . . . | 1832 |
| 39.4.5 | Flow selection . . . . . | 1832 |
| 39.4.6 | Frame counter . . . . . | 1834 |
| 39.4.7 | Frame control . . . . . | 1835 |
| 39.4.8 | Pipe deactivation . . . . . | 1840 |
| 39.5 | Pipe0 (dump pipe) . . . . . | 1841 |
| 39.5.1 | Overview . . . . . | 1841 |
| 39.5.2 | Decimation . . . . . | 1842 |
| 39.5.3 | Crop/statistics selection/suppression . . . . . | 1842 |
| 39.5.4 | Header insertion . . . . . | 1843 |
| 39.5.5 | Dump counter . . . . . | 1844 |
| 39.5.6 | Double buffer mode . . . . . | 1845 |
| 39.6 | Pipe1 (ISP part) . . . . . | 1846 |
| 39.6.1 | Overview . . . . . | 1846 |
| 39.6.2 | Byte-to-pixel conversion . . . . . | 1846 |
| 39.6.3 | Statistics removal . . . . . | 1847 |
| 39.6.4 | Bad pixel removal . . . . . | 1848 |
| 39.6.5 | Input decimation . . . . . | 1849 |
| 39.6.6 | Black level calibration . . . . . | 1850 |
| 39.6.7 | Exposure compensation and white-balance calibration . . . . . | 1851 |
| 39.6.8 | Demosaicing . . . . . | 1852 |
| 39.6.9 | Color conversion . . . . . | 1854 |
| 39.6.10 | Contrast enhancement . . . . . | 1857 |
| 39.6.11 | Statistics extraction . . . . . | 1858 |
| 39.7 | Pipe1 (post-processing part) . . . . . | 1863 |
| 39.7.1 | Overview . . . . . | 1863 |
| 39.7.2 | Pixel 2D cropping . . . . . | 1863 |
| 39.7.3 | Decimation pre-downsize . . . . . | 1864 |
| 39.7.4 | Downsize . . . . . | 1865 |
| 39.7.5 | Regions of interest (ROIs) . . . . . | 1867 |
| 39.7.6 | Gamma conversion . . . . . | 1868 |
| 39.7.7 | YUV conversion . . . . . | 1868 |
| 39.7.8 | Chroma down-sampling . . . . . | 1868 |
| 39.7.9 | Pixel packing . . . . . | 1869 |
| 39.7.10 | Overrun detection . . . . . | 1871 |
| 39.8 | Pipe2 (post-processing) . . . . . | 1872 |
| 39.8.1 | Overview . . . . . | 1872 |
| 39.8.2 | Pipe1 and Pipe2 sharing image processing functions . . . . . | 1873 |
| 39.9 | Application use cases . . . . . | 1873 |
| 39.9.1 | Parallel interface camera sensor module . . . . . | 1873 |
| 39.9.2 | CSI2 camera sensor module . . . . . | 1874 |
| 39.9.3 | Force data type format from CSI-2 data flow (pixel pipes only) . . . . . | 1881 |
| 39.10 | Pixel format description . . . . . | 1884 |
| 39.10.1 | Parallel interface formats . . . . . | 1884 |
| 39.10.2 | Pixel pipe formats . . . . . | 1886 |
| 39.10.3 | Dump pipe formats . . . . . | 1887 |
| 39.10.4 | AXI IP-Plug . . . . . | 1889 |
| 39.11 | Shadow registers . . . . . | 1895 |
| 39.12 | DCMIPP low power modes . . . . . | 1897 |
| 39.13 | DCMIPP interrupts . . . . . | 1898 |
| 39.13.1 | Free-running DCMIPP . . . . . | 1898 |
| 39.13.2 | Interrupts . . . . . | 1898 |
| 39.13.3 | Event pins . . . . . | 1901 |
| 39.14 | DCMIPP registers . . . . . | 1902 |
| 39.14.1 | DCMIPP IP-Plug global register 1 (DCMIPP_IPGR1) . . . . . | 1902 |
| 39.14.2 | DCMIPP IP-Plug global register 2 (DCMIPP_IPGR2) . . . . . | 1903 |
| 39.14.3 | DCMIPP IP-Plug global register 3 (DCMIPP_IPGR3) . . . . . | 1903 |
| 39.14.4 | DCMIPP IP-Plug identification register (DCMIPP_IPGR8) . . . . . | 1904 |
| 39.14.5 | DCMIPP IP-Plug Clientx register 1 (DCMIPP_IPCxR1) . . . . . | 1904 |
| 39.14.6 | DCMIPP IP-Plug Clientx register 2 (DCMIPP_IPCxR2) . . . . . | 1905 |
| 39.14.7 | DCMIPP IP-Plug Clientx register 3 (DCMIPP_IPCxR3) . . . . . | 1905 |
| 39.14.8 | DCMIPP parallel interface control register (DCMIPP_PRCR) . . . . . | 1906 |
| 39.14.9 | DCMIPP parallel interface embedded synchronization code register (DCMIPP_PRESCR) . . . . . | 1907 |
| 39.14.10 | DCMIPP parallel interface embedded synchronization unmask register (DCMIPP_PRESUR) . . . . . | 1908 |
| 39.14.11 | DCMIPP parallel interface interrupt enable register (DCMIPP_PRIER) . . . . . | 1909 |
| 39.14.12 | DCMIPP parallel interface status register (DCMIPP_PRSR) . . . . . | 1909 |
| 39.14.13 | DCMIPP parallel interface interrupt clear register (DCMIPP_PRFCR) . . . . . | 1910 |
| 39.14.14 | DCMIPP common configuration register (DCMIPP_CMCR) . . . . . | 1911 |
| 39.14.15 | DCMIPP common frame counter register (DCMIPP_CMFRCR) . . . . . | 1912 |
| 39.14.16 | DCMIPP common interrupt enable register (DCMIPP_CMIER) . . . . . | 1912 |
| 39.14.17 | DCMIPP common status register 1 (DCMIPP_CMSR1) . . . . . | 1913 |
| 39.14.18 | DCMIPP common status register 2 (DCMIPP_CMSR2) . . . . . | 1915 |
| 39.14.19 | DCMIPP common interrupt clear register (DCMIPP_CMFCR) . . . . . | 1917 |
| 39.14.20 | DCMIPP Pipe0 flow selection configuration register (DCMIPP_P0FSCR) . . . . . | 1919 |
| 39.14.21 | DCMIPP Pipe0 flow control configuration register (DCMIPP_P0FCTCR) . . . . . | 1919 |
| 39.14.22 | DCMIPP Pipe0 statistic/crop start register (DCMIPP_P0SCSTR) . . . . . | 1920 |
| 39.14.23 | DCMIPP Pipe0 statistic/crop size register (DCMIPP_P0SCSZR) . . . . . | 1921 |
| 39.14.24 | DCMIPP Pipe0 dump counter register (DCMIPP_P0DCCNTR) . . . . . | 1921 |
| 39.14.25 | DCMIPP Pipe0 dump limit register (DCMIPP_P0DCLMTR) . . . . . | 1922 |
| 39.14.26 | DCMIPP Pipe0 pixel packer configuration register (DCMIPP_P0PPCR) . . . . . | 1922 |
| 39.14.27 | DCMIPP Pipe0 pixel packer Memory0 address register 1 (DCMIPP_P0PPM0AR1) . . . . . | 1924 |
| 39.14.28 | DCMIPP Pipe0 pixel packer Memory0 address register 2 (DCMIPP_P0PPM0AR2) . . . . . | 1924 |
| 39.14.29 | DCMIPP Pipe0 status Memory0 address register (DCMIPP_P0STM0AR) . . . . . | 1924 |
| 39.14.30 | DCMIPP Pipe0 interrupt enable register (DCMIPP_P0IER) . . . . . | 1925 |
| 39.14.31 | DCMIPP Pipe0 status register (DCMIPP_P0SR) . . . . . | 1926 |
| 39.14.32 | DCMIPP Pipe0 interrupt clear register (DCMIPP_P0FCR) . . . . . | 1927 |
| 39.14.33 | DCMIPP Pipe0 current flow selection configuration register (DCMIPP_P0CFSCR) . . . . . | 1927 |
| 39.14.34 | DCMIPP Pipe0 current flow control configuration register (DCMIPP_P0CFCTCR) . . . . . | 1928 |
| 39.14.35 | DCMIPP Pipe0 current statistic/crop start register (DCMIPP_P0CSCSTR) . . . . . | 1929 |
| 39.14.36 | DCMIPP Pipe0 current statistic/crop size register (DCMIPP_P0CSCSZR) . . . . . | 1929 |
| 39.14.37 | DCMIPP Pipe0 current pixel packer configuration register (DCMIPP_P0CPPCR) . . . . . | 1930 |
| 39.14.38 | DCMIPP Pipe0 current pixel packer Memory0 address register 1 (DCMIPP_P0CPPM0AR1) . . . . . | 1932 |
| 39.14.39 | DCMIPP Pipe0 current pixel packer Memory0 address register 2 (DCMIPP_P0CPPM0AR2) . . . . . | 1932 |
| 39.14.40 | DCMIPP Pipe1 flow selection configuration register (DCMIPP_P1FSCR) . . . . . | 1933 |
| 39.14.41 | DCMIPP Pipe1 stat removal configuration register (DCMIPP_P1SRCR) . . . . . | 1934 |
| 39.14.42 | DCMIPP Pipe1 bad pixel removal control register (DCMIPP_P1BPRCR) . . . . . | 1935 |
| 39.14.43 | DCMIPP Pipe1 bad pixel removal status register (DCMIPP_P1BPRSR) . . . . . | 1935 |
| 39.14.44 | DCMIPP Pipe1 decimation register (DCMIPP_P1DECR) . . . . . | 1936 |
| 39.14.45 | DCMIPP Pipe1 black level calibration control register (DCMIPP_P1BLCCR) . . . . . | 1936 |
| 39.14.46 | DCMIPP Pipe1 exposure control register 1 (DCMIPP_P1EXCR1) . . . | 1937 |
| 39.14.47 | DCMIPP Pipe1 exposure control register 2 (DCMIPP_P1EXCR2) . . . | 1937 |
| 39.14.48 | DCMIPP Pipe1 statistics1 control register (DCMIPP_P1ST1CR) . . . | 1938 |
| 39.14.49 | DCMIPP Pipe1 statistics 2 control register (DCMIPP_P1ST2CR) . . . | 1939 |
| 39.14.50 | DCMIPP Pipe1 statistics 3 control register (DCMIPP_P1ST3CR) . . . | 1940 |
| 39.14.51 | DCMIPP Pipe1 statistics window start register (DCMIPP_P1STSTR) . . . . . | 1941 |
| 39.14.52 | DCMIPP Pipe1 statistics window size register (DCMIPP_P1STSZR) . . . . . | 1941 |
| 39.14.53 | DCMIPP Pipe1 statistics 1 status register (DCMIPP_P1ST1SR) . . . | 1942 |
| 39.14.54 | DCMIPP Pipe1 statistics 2 status register (DCMIPP_P1ST2SR) . . . | 1943 |
| 39.14.55 | DCMIPP Pipe1 statistics 3 status register (DCMIPP_P1ST3SR) . . . | 1943 |
| 39.14.56 | DCMIPP Pipe1 demosaicing configuration register (DCMIPP_P1DMCR) . . . . . | 1943 |
| 39.14.57 | DCMIPP Pipe1 ColorConv configuration register (DCMIPP_P1CCCR) . . . . . | 1944 |
| 39.14.58 | DCMIPP Pipe1 ColorConv red coefficient register 1 (DCMIPP_P1CCRR1) . . . . . | 1945 |
| 39.14.59 | DCMIPP Pipe1 ColorConv red coefficient register 2 (DCMIPP_P1CCRR2) | 1945 |
| 39.14.60 | DCMIPP Pipe1 ColorConv green coefficient register 1 (DCMIPP_P1CCGR1) | 1946 |
| 39.14.61 | DCMIPP Pipe1 ColorConv green coefficient register 2 (DCMIPP_P1CCGR2) | 1946 |
| 39.14.62 | DCMIPP Pipex ColorConv blue coefficient register 1 (DCMIPP_P1CCBR1) | 1947 |
| 39.14.63 | DCMIPP Pipe1 ColorConv blue coefficient register 2 (DCMIPP_P1CCBR2) | 1947 |
| 39.14.64 | DCMIPP Pipe1 contrast control register 1 (DCMIPP_P1CTCR1) | 1948 |
| 39.14.65 | DCMIPP Pipe1 contrast control register 2 (DCMIPP_P1CTCR2) | 1948 |
| 39.14.66 | DCMIPP Pipe1 contrast control register 3 (DCMIPP_P1CTCR3) | 1949 |
| 39.14.67 | DCMIPP Pipex flow control configuration register (DCMIPP_PxFCTCR) | 1949 |
| 39.14.68 | DCMIPP Pipex crop window start register (DCMIPP_PxCSTR) | 1950 |
| 39.14.69 | DCMIPP Pipex crop window size register (DCMIPP_PxCRSZR) | 1951 |
| 39.14.70 | DCMIPP Pipex decimation register (DCMIPP_PxDCCR) | 1951 |
| 39.14.71 | DCMIPP Pipex downsize configuration register (DCMIPP_PxDSCR) | 1952 |
| 39.14.72 | DCMIPP Pipex downsize ratio register (DCMIPP_PxDSRTIOR) | 1952 |
| 39.14.73 | DCMIPP Pipex downsize destination size register (DCMIPP_PxDSSZR) | 1953 |
| 39.14.74 | DCMIPP Pipex common ROI configuration register (DCMIPP_PxCMRICR) | 1953 |
| 39.14.75 | DCMIPP Pipe1 ROIx configuration register 1 (DCMIPP_P1RIxCR1) | 1955 |
| 39.14.76 | DCMIPP Pipe1 ROIx configuration register 2 (DCMIPP_P1RIxCR2) | 1955 |
| 39.14.77 | DCMIPP Pipex gamma configuration register (DCMIPP_PxGMCR) | 1956 |
| 39.14.78 | DCMIPP Pipe1 YUVConv configuration register (DCMIPP_P1YUVCR) | 1956 |
| 39.14.79 | DCMIPP Pipe1 YUVConv red coefficient register 1 (DCMIPP_P1YUVR1) | 1956 |
| 39.14.80 | DCMIPP Pipe1 YUVConv red coefficient register 2 (DCMIPP_P1YUVR2) | 1957 |
| 39.14.81 | DCMIPP Pipe1 YUVConv green coefficient register 1 (DCMIPP_P1YUVGR1) | 1957 |
| 39.14.82 | DCMIPP Pipe1 YUVConv green coefficient register 2 (DCMIPP_P1YUVGR2) | 1958 |
| 39.14.83 | DCMIPP Pipe1 YUVConv blue coefficient register 1 (DCMIPP_P1YUVBR1) | 1958 |
| 39.14.84 | DCMIPP Pipe1 YUV blue coefficient register 2 (DCMIPP_P1YUVBR2) | 1958 |
39.14.85 DCMIPP Pipe1 pixel packer configuration register
(DCMIPP_P1PPCR) . . . . . 1959
39.14.86 DCMIPP Pipe1 pixel packer Memory0 address register 1
(DCMIPP_P1PPM0AR1) . . . . . 1960
39.14.87 DCMIPP Pipe1 pixel packer Memory0 address register 2
(DCMIPP_P1PPM0AR2) . . . . . 1961
39.14.88 DCMIPP Pipex pixel packer Memory0 pitch register
(DCMIPP_PxPPM0PR) . . . . . 1961
39.14.89 DCMIPP Pipex status Memory0 address register
(DCMIPP_PxSTM0AR) . . . . . 1962
39.14.90 DCMIPP Pipex pixel packer Memory1 address register 1
(DCMIPP_PxPPM1AR1) . . . . . 1962
39.14.91 DCMIPP Pipex pixel packer Memory1 address register 2
(DCMIPP_PxPPM1AR2) . . . . . 1962
39.14.92 DCMIPP Pipex pixel packer Memory1 pitch register
(DCMIPP_PxPPM1PR) . . . . . 1963
39.14.93 DCMIPP Pipex status Memory1 address register
(DCMIPP_PxSTM1AR) . . . . . 1963
39.14.94 DCMIPP Pipex pixel packer memory2 address register 1
(DCMIPP_PxPPM2AR1) . . . . . 1964
39.14.95 DCMIPP Pipex pixel packer memory2 address register 2
(DCMIPP_PxPPM2AR2) . . . . . 1964
39.14.96 DCMIPP Pipex status Memory2 address register
(DCMIPP_PxSTM2AR) . . . . . 1964
39.14.97 DCMIPP Pipe1 interrupt enable register (DCMIPP_P1IER) . . . . . 1965
39.14.98 DCMIPP Pipe1 status register (DCMIPP_P1SR) . . . . . 1966
39.14.99 DCMIPP Pipe1 interrupt clear register (DCMIPP_P1FCR) . . . . . 1967
39.14.100DCMIPP Pipe1 current flow selection configuration register
(DCMIPP_P1CFSCR) . . . . . 1967
39.14.101DCMIPP Pipe1 current bad pixel removal register
(DCMIPP_P1CBPRCR) . . . . . 1968
39.14.102DCMIPP Pipe1 current black level calibration control register
(DCMIPP_P1CBLCCR) . . . . . 1969
39.14.103DCMIPP Pipe1 current exposure control register 1
(DCMIPP_P1CEXCR1) . . . . . 1969
39.14.104DCMIPP Pipe1 current exposure control register 2
(DCMIPP_P1CEXCR2) . . . . . 1970
39.14.105DCMIPP Pipe1 current statistics 1 control register
(DCMIPP_P1CST1CR) . . . . . 1971
39.14.106DCMIPP Pipe1 current statistics 2 control register
(DCMIPP_P1CST2CR) . . . . . 1972
39.14.107DCMIPP Pipe1 current statistics 3 control register
(DCMIPP_P1CST3CR) . . . . . 1973
| 39.14.108DCMIPP Pipe1 current statistics window start register (DCMIPP_P1CSTSTR) . . . . . | 1974 |
| 39.14.109DCMIPP Pipe1 current statistics window size register (DCMIPP_P1CSTSZR) . . . . . | 1974 |
| 39.14.110DCMIPP Pipe1 current ColorConv configuration register (DCMIPP_P1CCCCR) . . . . . | 1975 |
| 39.14.111DCMIPP Pipe1 current ColorConv red coefficient register 1 (DCMIPP_P1CCRR1) . . . . . | 1975 |
| 39.14.112DCMIPP Pipe1 current ColorConv red coefficient register 2 (DCMIPP_P1CCRR2) . . . . . | 1976 |
| 39.14.113DCMIPP Pipe1 current ColorConv green coefficient register 1 (DCMIPP_P1CCGR1) . . . . . | 1976 |
| 39.14.114DCMIPP Pipe1 current ColorConv green coefficient register 2 (DCMIPP_P1CCGR2) . . . . . | 1977 |
| 39.14.115DCMIPP Pipex current ColorConv blue coefficient register 1 (DCMIPP_P1CCBR1) . . . . . | 1977 |
| 39.14.116DCMIPP Pipe1 current ColorConv blue coefficient register 2 (DCMIPP_P1CCBR2) . . . . . | 1978 |
| 39.14.117DCMIPP Pipe1 current contrast control register 1 (DCMIPP_P1CCTCR1) . . . . . | 1978 |
| 39.14.118DCMIPP Pipe1 current contrast control register 2 (DCMIPP_P1CCTCR2) . . . . . | 1979 |
| 39.14.119DCMIPP Pipe1 current contrast control register 3 (DCMIPP_P1CCTCR3) . . . . . | 1979 |
| 39.14.120DCMIPP Pipex current flow control configuration register (DCMIPP_PxCFCTCR) . . . . . | 1980 |
| 39.14.121DCMIPP Pipex current crop window start register (DCMIPP_PxCcRSTR) . . . . . | 1981 |
| 39.14.122DCMIPP Pipex current crop window size register (DCMIPP_PxCcRSZR) . . . . . | 1981 |
| 39.14.123DCMIPP Pipex current decimation register (DCMIPP_PxCDCR) . . . . . | 1982 |
| 39.14.124DCMIPP Pipex current downsize configuration register (DCMIPP_PxCDSR) . . . . . | 1982 |
| 39.14.125DCMIPP Pipex current downsize ratio register (DCMIPP_PxCDSRTIOR) . . . . . | 1983 |
| 39.14.126DCMIPP Pipex current downsize destination size register (DCMIPP_PxCDSZR) . . . . . | 1983 |
| 39.14.127DCMIPP Pipex current common ROI configuration register (DCMIPP_PxCcMRICR) . . . . . | 1984 |
| 39.14.128DCMIPP Pipe1 current ROIx configuration register 1 (DCMIPP_P1CRICR1) . . . . . | 1985 |
| 39.14.129DCMIPP Pipe1 current ROIx configuration register 2 (DCMIPP_P1CRICR2) . . . . . | 1985 |
39.14.130 DCMIPP Pipe1 current pixel packer configuration register
(DCMIPP_P1CPPCR) . . . . . 1986
39.14.131 DCMIPP Pipe1 current pixel packer Memory0 address register 1
(DCMIPP_P1CPPM0AR1) . . . . . 1987
39.14.132 DCMIPP Pipe1 current pixel packer Memory0 address register 2
(DCMIPP_P1CPPM0AR2) . . . . . 1988
39.14.133 DCMIPP Pipex current pixel packer Memory0 pitch register
(DCMIPP_PxCPPM0PR) . . . . . 1988
39.14.134 DCMIPP Pipex current pixel packer Memory1 address register 1
(DCMIPP_PxCPPM1AR1) . . . . . 1988
39.14.135 DCMIPP Pipex current pixel packer Memory1 address register 2
(DCMIPP_PxCPPM1AR2) . . . . . 1989
39.14.136 DCMIPP Pipex current pixel packer Memory1 pitch register
(DCMIPP_PxCPPM1PR) . . . . . 1989
39.14.137 DCMIPP Pipex current pixel packer Memory2 address register 1
(DCMIPP_PxCPPM2AR1) . . . . . 1990
39.14.138 DCMIPP Pipex current pixel packer Memory2 address register 2
(DCMIPP_PxCPPM2AR2) . . . . . 1990
39.14.139 DCMIPP Pipe2 flow selection configuration register
(DCMIPP_P2FSCR) . . . . . 1990
39.14.140 DCMIPP Pipe2 ROIx configuration register 1 (DCMIPP_P2RIxCR1) 1991
39.14.141 DCMIPP Pipe2 ROIx configuration register 2 (DCMIPP_P2RIxCR2) 1992
39.14.142 DCMIPP Pipe2 pixel packer configuration register
(DCMIPP_P2PPCR) . . . . . 1992
39.14.143 DCMIPP Pipe2 pixel packer Memory0 address register 1
(DCMIPP_P2PPM0AR1) . . . . . 1994
39.14.144 DCMIPP Pipe2 pixel packer Memory0 address register 2
(DCMIPP_P2PPM0AR2) . . . . . 1994
39.14.145 DCMIPP Pipe2 interrupt enable register (DCMIPP_P2IER) . . . . . 1994
39.14.146 DCMIPP Pipe2 status register (DCMIPP_P2SR) . . . . . 1995
39.14.147 DCMIPP Pipe2 interrupt clear register (DCMIPP_P2FCR) . . . . . 1996
39.14.148 DCMIPP Pipe2 current flow selection configuration register
(DCMIPP_P2CFSCR) . . . . . 1997
39.14.149 DCMIPP Pipe2 current ROIx configuration register 1
(DCMIPP_P2CR1xCR1) . . . . . 1998
39.14.150 DCMIPP Pipe2 current ROIx configuration register 2
(DCMIPP_P2CR2xCR2) . . . . . 1998
39.14.151 DCMIPP Pipe2 current pixel packer configuration register
(DCMIPP_P2CPPCR) . . . . . 1999
39.14.152 DCMIPP Pipe2 current pixel packer Memory0 address register 1
(DCMIPP_P2CPPM0AR1) . . . . . 2000
39.14.153 DCMIPP Pipe2 current pixel packer Memory0 address register 2
(DCMIPP_P2CPPM0AR2) . . . . . 2000
| 39.15 | DCMIPP register map . . . . . | 2001 |
| 40 | CSI-2 Host (CSI) . . . . . | 2016 |
| 40.1 | CSI introduction . . . . . | 2016 |
| 40.2 | Standard and references . . . . . | 2016 |
| 40.3 | Glossary . . . . . | 2016 |
| 40.4 | CSI-2 Host main features . . . . . | 2017 |
| 40.5 | CSI-2 Host functional description . . . . . | 2017 |
| 40.5.1 | General description . . . . . | 2017 |
| 40.5.2 | System level architecture . . . . . | 2019 |
| 40.5.3 | CSI-2 Host reset and clocks . . . . . | 2020 |
| 40.5.4 | Lane merger . . . . . | 2021 |
| 40.5.5 | Clock changer . . . . . | 2022 |
| 40.5.6 | Low-level protocol (LLP) . . . . . | 2023 |
| 40.5.7 | CSI-2 Host protocol output . . . . . | 2033 |
| 40.6 | CSI-2 Host programming guide . . . . . | 2033 |
| 40.6.1 | CSI-2 PHY setup . . . . . | 2033 |
| 40.6.2 | CSI-2 Host controller setup and data reception start . . . . . | 2034 |
| 40.6.3 | Data reception stop . . . . . | 2035 |
| 40.7 | CSI-2 Host low-power modes . . . . . | 2035 |
| 40.8 | CSI-2 Host interrupts and errors . . . . . | 2035 |
| 40.8.1 | Error handling . . . . . | 2037 |
| 40.8.2 | Interrupt handling . . . . . | 2039 |
| 40.9 | CSI-2 Host registers . . . . . | 2040 |
| 40.9.1 | CSI-2 Host control register (CSI_CR) . . . . . | 2040 |
| 40.9.2 | CSI-2 Host DPHY_RX control register (CSI_PCR) . . . . . | 2042 |
| 40.9.3 | CSI-2 Host virtual channel x configuration register 1 (CSI_VCxCFGR1) . . . . . | 2043 |
| 40.9.4 | CSI-2 Host virtual channel x configuration register 2 (CSI_VCxCFGR2) . . . . . | 2045 |
| 40.9.5 | CSI-2 Host virtual channel x configuration register 3 (CSI_VCxCFGR3) . . . . . | 2046 |
| 40.9.6 | CSI-2 Host virtual channel x configuration register 4 (CSI_VCxCFGR4) . . . . . | 2047 |
| 40.9.7 | CSI-2 Host line byte x configuration register (CSI_LBxCFGR) . . . . . | 2048 |
| 40.9.8 | CSI-2 Host timer x configuration register (CSI_TIMxCFGR) . . . . . | 2049 |
| 40.9.9 | CSI-2 Host lane merger configuration register (CSI_LMCFGR) . . . . . | 2049 |
| 40.9.10 | CSI-2 Host program interrupt register (CSI_PRGITR) . . . . . | 2050 |
| 40.9.11 | CSI-2 Host watchdog register (CSI_WDR) . . . . . | 2054 |
| 40.9.12 | CSI-2 Host interrupt enable register 0 (CSI_IER0) . . . . . | 2054 |
| 40.9.13 | CSI-2 Host interrupt enable register 1 (CSI_IER1) . . . . . | 2057 |
| 40.9.14 | CSI-2 Host status register 0 (CSI_SR0) . . . . . | 2059 |
| 40.9.15 | CSI-2 Host status register 1 (CSI_SR1) . . . . . | 2061 |
| 40.9.16 | CSI-2 Host flag clear register 0 (CSI_FCR0) . . . . . | 2063 |
| 40.9.17 | CSI-2 Host flag clear register 1 (CSI_FCR1) . . . . . | 2064 |
| 40.9.18 | CSI-2 Host short packet data field register (CSI_SPDFR) . . . . . | 2065 |
| 40.9.19 | CSI-2 Host error register 1 (CSI_ERR1) . . . . . | 2066 |
| 40.9.20 | CSI-2 Host error register 2 (CSI_ERR2) . . . . . | 2067 |
| 40.10 | CSI PHY registers . . . . . | 2067 |
| 40.10.1 | CSI PHY reset control register (CSI_PRCR) . . . . . | 2067 |
| 40.10.2 | CSI PHY mode control register (CSI_PMCR) . . . . . | 2068 |
| 40.10.3 | CSI PHY frequency control register (CSI_PFCR) . . . . . | 2069 |
| 40.10.4 | CSI PHY test control register 0 (CSI_PTCR0) . . . . . | 2069 |
| 40.10.5 | CSI PHY test control register 1 (CSI_PTCR1) . . . . . | 2070 |
| 40.10.6 | CSI PHY test status register (CSI_PTSR) . . . . . | 2070 |
| 40.10.7 | CSI-2 Host and PHY register map . . . . . | 2070 |
| 41 | Parallel synchronous slave interface (PSSI) . . . . . | 2074 |
| 41.1 | PSSI introduction . . . . . | 2074 |
| 41.2 | PSSI main features . . . . . | 2074 |
| 41.3 | PSSI functional description . . . . . | 2074 |
| 41.3.1 | PSSI block diagram . . . . . | 2075 |
| 41.3.2 | PSSI pins and internal signals . . . . . | 2075 |
| 41.3.3 | PSSI clock . . . . . | 2076 |
| 41.3.4 | PSSI data management . . . . . | 2076 |
| 41.3.5 | PSSI optional control signals . . . . . | 2078 |
| 41.4 | PSSI interrupts . . . . . | 2081 |
| 41.5 | PSSI registers . . . . . | 2082 |
| 41.5.1 | PSSI control register (PSSI_CR) . . . . . | 2082 |
| 41.5.2 | PSSI status register (PSSI_SR) . . . . . | 2083 |
| 41.5.3 | PSSI raw interrupt status register (PSSI_RIS) . . . . . | 2084 |
| 41.5.4 | PSSI interrupt enable register (PSSI_IER) . . . . . | 2085 |
| 41.5.5 | PSSI masked interrupt status register (PSSI_MIS) . . . . . | 2085 |
| 41.5.6 | PSSI interrupt clear register (PSSI_ICR) . . . . . | 2086 |
| 41.5.7 | PSSI data register (PSSI_DR) . . . . . | 2086 |
| 41.5.8 | PSSI register map . . . . . | 2087 |
| 42 | Display subsystem . . . . . | 2088 |
| 42.1 | Introduction . . . . . | 2088 |
| 42.2 | Display subsystem main features . . . . . | 2088 |
| 42.3 | Display subsystem implementation . . . . . | 2088 |
| 42.4 | Display subsystem functional description . . . . . | 2088 |
| 42.4.1 | Display subsystem block diagram . . . . . | 2088 |
| 42.4.2 | Display subsystem pins and external signal interface . . . . . | 2089 |
| 42.4.3 | Display subsystem clocks . . . . . | 2089 |
| 42.4.4 | Display subsystem security . . . . . | 2089 |
| 42.5 | Display subsystem programmable parameters . . . . . | 2092 |
| 42.6 | Display subsystem interrupts . . . . . | 2093 |
| 42.7 | Display subsystem registers . . . . . | 2093 |
| 43 | LCD-TFT display controller (LTDC) . . . . . | 2094 |
| 43.1 | LTDC introduction . . . . . | 2094 |
| 43.2 | LTDC main features . . . . . | 2094 |
| 43.3 | LTDC functional description . . . . . | 2095 |
| 43.3.1 | LTDC block diagram . . . . . | 2095 |
| 43.3.2 | LTDC pins and internal signals . . . . . | 2095 |
| 43.3.3 | LTDC reset and clocks . . . . . | 2096 |
| 43.4 | LTDC configuration parameters . . . . . | 2098 |
| 43.4.1 | AXI master . . . . . | 2098 |
| 43.4.2 | Input layer definition and cropping . . . . . | 2099 |
| 43.4.3 | Input pixel format . . . . . | 2100 |
| 43.4.4 | YUV planar . . . . . | 2102 |
| 43.4.5 | YUV-to-RGB color conversion . . . . . | 2103 |
| 43.4.6 | Horizontal or vertical mirroring . . . . . | 2104 |
| 43.4.7 | Default layer color . . . . . | 2105 |
| 43.4.8 | Color look-up table (CLUT) . . . . . | 2105 |
| 43.4.9 | Transparency color keying . . . . . | 2106 |
| 43.4.10 | Display composition - windowing . . . . . | 2106 |
| 43.4.11 | Display composition - blending . . . . . | 2107 |
| 43.4.12 | Gamma correction . . . . . | 2109 |
| 43.4.13 | YUV output conversion . . . . . | 2109 |
| 43.4.14 | Dithering . . . . . | 2110 |
| 43.4.15 | CRC hashing . . . . . | 2111 |
| 43.4.16 | Display timing . . . . . | 2111 |
| 43.4.17 | Output interface polarity . . . . . | 2113 |
| 43.4.18 | Shadow registers . . . . . | 2114 |
| 43.4.19 | General control . . . . . | 2115 |
| 43.4.20 | Hardware trigger generation . . . . . | 2115 |
| 43.4.21 | Provision for a secure layer . . . . . | 2116 |
| 43.5 | LTDC interrupts . . . . . | 2117 |
| 43.6 | LTDC programming procedure . . . . . | 2118 |
| 43.7 | LTDC registers . . . . . | 2119 |
| 43.7.1 | LTDC synchronization size configuration register (LTDC_SSCR) . . . . . | 2119 |
| 43.7.2 | LTDC back porch configuration register (LTDC_BPCR) . . . . . | 2119 |
| 43.7.3 | LTDC active width configuration register (LTDC_AWCR) . . . . . | 2120 |
| 43.7.4 | LTDC total width configuration register (LTDC_TWCR) . . . . . | 2121 |
| 43.7.5 | LTDC global control register (LTDC_GCR) . . . . . | 2121 |
| 43.7.6 | LTDC shadow reload configuration register (LTDC_SRCR) . . . . . | 2123 |
| 43.7.7 | LTDC gamma correction configuration register (LTDC_GCCR) . . . . . | 2123 |
| 43.7.8 | LTDC background color configuration register (LTDC_BCCR) . . . . . | 2124 |
| 43.7.9 | LTDC interrupt enable register (LTDC_IER) . . . . . | 2125 |
| 43.7.10 | LTDC interrupt status register (LTDC_ISR) . . . . . | 2126 |
| 43.7.11 | LTDC interrupt clear register (LTDC_ICR) . . . . . | 2126 |
| 43.7.12 | LTDC line interrupt position configuration register (LTDC_LIPCR) . . . . . | 2127 |
| 43.7.13 | LTDC current position status register (LTDC_CPSR) . . . . . | 2128 |
| 43.7.14 | LTDC current display status register (LTDC_CDSR) . . . . . | 2128 |
| 43.7.15 | LTDC external display control register (LTDC_EDCR) . . . . . | 2129 |
| 43.7.16 | LTDC interrupt enable register 2 (LTDC_IER2) . . . . . | 2129 |
| 43.7.17 | LTDC interrupt status register 2 (LTDC_ISR2) . . . . . | 2130 |
| 43.7.18 | LTDC interrupt clear register 2 (LTDC_ICR2) . . . . . | 2131 |
| 43.7.19 | LTDC line interrupt position configuration register 2 (LTDC_LIPCR2) . . . . . | 2132 |
| 43.7.20 | LTDC expected CRC register (LTDC_ECRCR) . . . . . | 2132 |
| 43.7.21 | LTDC computed CRC register (LTDC_CCCRCR) . . . . . | 2133 |
| 43.7.22 | LTDC FIFO underrun threshold register (LTDC_FUTR) . . . . . | 2133 |
| 43.7.23 | LTDC layer x configuration 0 register (LTDC_LxC0R) . . . . . | 2134 |
| 43.7.24 | LTDC layer x configuration 1 register (LTDC_LxC1R) . . . . . | 2135 |
| 43.7.25 | LTDC layer x reload control register (LTDC_LxRCR) . . . . . | 2135 |
| 43.7.26 | LTDC layer x control register (LTDC_LxCR) . . . . . | 2136 |
| 43.7.27 | LTDC layer x window horizontal position configuration register (LTDC_LxWHPER) . . . . . | 2137 |
| 43.7.28 | LTDC layer x window vertical position configuration register (LTDC_LxWVPER) . . . . . | 2138 |
| 43.7.29 | LTDC layer x color keying configuration register (LTDC_LxCKCR) . . . . . | 2138 |
| 43.7.30 | LTDC layer x pixel format configuration register (LTDC_LxPFCR) . . . . . | 2139 |
| 43.7.31 | LTDC layer x constant alpha configuration register (LTDC_LxCACR) . . . . . | 2139 |
| 43.7.32 | LTDC layer x default color configuration register (LTDC_LxDCCR) . . . . . | 2140 |
| 43.7.33 | LTDC layer x blending factors configuration register (LTDC_LxBFCR) . . . . . | 2140 |
| 43.7.34 | LTDC layer x burst length configuration register (LTDC_LxBLER) . . . . . | 2141 |
| 43.7.35 | LTDC layer x planar configuration register (LTDC_LxPCR) . . . . . | 2142 |
| 43.7.36 | LTDC layer x color frame buffer address register (LTDC_LxCFBAR) . . . . . | 2143 |
| 43.7.37 | LTDC layer x color frame buffer length register (LTDC_LxCFBLER) . . . . . | 2143 |
| 43.7.38 | LTDC layer x color frame buffer line number register (LTDC_LxCFBLNR) . . . . . | 2144 |
| 43.7.39 | LTDC layer 1 auxiliary frame buffer address 0 register (LTDC_L1AFBA0R) . . . . . | 2144 |
| 43.7.40 | LTDC layer 1 auxiliary frame buffer address 1 register (LTDC_L1AFBA1R) . . . . . | 2145 |
| 43.7.41 | LTDC layer 1 auxiliary frame buffer length register (LTDC_L1AFBLER) . . . . . | 2145 |
| 43.7.42 | LTDC layer 1 auxiliary frame buffer line number register (LTDC_L1AFBLNR) . . . . . | 2146 |
| 43.7.43 | LTDC layer x CLUT write register (LTDC_LxCLUTWR) . . . . . | 2146 |
| 43.7.44 | LTDC layer x conversion YCbCr RGB 0 register (LTDC_LxCYR0R) . . . . . | 2147 |
| 43.7.45 | LTDC layer x conversion YCbCr RGB 1 register (LTDC_LxCYR1R) . . . . . | 2147 |
| 43.7.46 | LTDC layer x flexible pixel format 0 register (LTDC_LxFPF0R) . . . . . | 2148 |
| 43.7.47 | LTDC layer x flexible pixel format 1 register (LTDC_LxFPF1R) . . . . . | 2148 |
| 43.7.48 | LTDC register map . . . . . | 2149 |
| 44 | Neo-Chrom graphic processor (GPU2D) . . . . . | 2154 |
| 44.1 | GPU2D introduction . . . . . | 2154 |
| 44.2 | GPU2D main features . . . . . | 2154 |
| 44.3 | GPU2D general description . . . . . | 2155 |
| 44.3.1 | GPU2D block diagram . . . . . | 2155 |
| 44.3.2 | GPU2D pins and internal signals . . . . . | 2155 |
| 45 | Video encoder (VENC) . . . . . | 2157 |
| 45.1 | VENC introduction . . . . . | 2157 |
| 45.2 | VENC main features . . . . . | 2157 |
| 45.3 | VENC implementation . . . . . | 2157 |
| 45.4 | VENC functional description . . . . . | 2158 |
| 45.4.1 | VENC block diagram . . . . . | 2158 |
| 45.4.2 | VENC pins and internal signals . . . . . | 2158 |
| 45.4.3 | VENC reset and clocks . . . . . | 2159 |
| 45.4.4 | VENC pre-processor . . . . . | 2159 |
| 45.4.5 | VENC H264 encoder . . . . . | 2159 |
| 45.4.6 | VENC JPEG encoder . . . . . | 2160 |
| 45.4.7 | VENC synchronization . . . . . | 2160 |
| 45.4.8 | VENC security . . . . . | 2161 |
| 45.4.9 | VENC power-on sequence . . . . . | 2161 |
| 45.4.10 | VENCRAM power-on sequence for AXI access . . . . . | 2162 |
| 45.5 | VENC low power modes . . . . . | 2162 |
| 45.6 | VENC interrupts . . . . . | 2162 |
| 45.7 | VENC registers . . . . . | 2162 |
| 45.7.1 | VENC ID register (VENC_SWREG0) . . . . . | 2162 |
| 45.7.2 | VENC interrupt register (VENC_SWREG1) . . . . . | 2163 |
| 45.7.3 | VENC bus interface configuration register (VENC_SWREG2) . . . . . | 2163 |
| 45.7.4 | VENC device configuration register (VENC_SWREG3) . . . . . | 2163 |
| 45.7.5 | VENC base address for output stream data register (VENC_SWREG5) . . . . . | 2164 |
| 45.7.6 | VENC base address for output control data register (VENC_SWREG6) . . . . . | 2164 |
| 45.7.7 | VENC base address for reference luma register (VENC_SWREG7) . . . . . | 2164 |
| 45.7.8 | VENC base address for reference chroma register (VENC_SWREG8) . . . . . | 2165 |
| 45.7.9 | VENC base address for reconstructed luma register (VENC_SWREG9) . . . . . | 2165 |
| 45.7.10 | VENC base address for reconstructed chroma register (VENC_SWREG10) . . . . . | 2165 |
| 45.7.11 | VENC base address for input picture luma register (VENC_SWREG11) . . . . . | 2166 |
| 45.7.12 | VENC base address for input picture cb register (VENC_SWREG12) . . . . . | 2166 |
| 45.7.13 | VENC base address for input picture cr register (VENC_SWREG13) . . . . . | 2166 |
| 45.7.14 | VENC encoder control register 0 (VENC_SWREG14) . . . . . | 2167 |
| 45.7.15 | VENC encoder control register 1 (VENC_SWREG15) . . . . . | 2167 |
| 45.7.16 | VENC encoder control register 2 (VENC_SWREG16) . . . . . | 2167 |
| 45.7.17 | VENC encoder control register 3 (VENC_SWREG17) . . . . . | 2168 |
| 45.7.18 | VENC encoder control register 4 (VENC_SWREG18) . . . . . | 2168 |
| 45.7.19 | VENC encoder control register 5 (VENC_SWREG19) . . . . . | 2168 |
| 45.7.20 | VENC encoder control register 6 (VENC_SWREG20) . . . . . | 2169 |
| 45.7.21 | VENC encoder control register 7 (VENC_SWREG21) . . . . . | 2169 |
| 45.7.22 | VENC stream header remainder MSB bits register (VENC_SWREG22) . . . . . | 2169 |
| 45.7.23 | VENC stream header remainder LSB bits register (VENC_SWREG23) . . . . . | 2170 |
| 45.7.24 | VENC stream buffer limit/output stream size register (VENC_SWREG24) . . . . . | 2170 |
| 45.7.25 | VENC encoder control register 8 (VENC_SWREG25) . . . . . | 2170 |
| 45.7.26 | VENC intra-slice bitmap register (VENC_SWREG26) . . . . . | 2171 |
| 45.7.27 | VENC encoder control register 9 (VENC_SWREG27) . . . . . | 2171 |
| 45.7.28 | VENC encoder control register 10 (VENC_SWREG28) . . . . . | 2171 |
| 45.7.29 | VENC encoder control register 11 (VENC_SWREG29) . . . . . | 2172 |
| 45.7.30 | VENC encoder control register 12 (VENC_SWREG30) . . . . . | 2172 |
| 45.7.31 | VENC encoder control register 13 (VENC_SWREG31) . . . . . | 2172 |
| 45.7.32 | VENC encoder control register 14 (VENC_SWREG32) . . . . . | 2173 |
| 45.7.33 | VENC encoder control register 15 (VENC_SWREG33) . . . . . | 2173 |
| 45.7.34 | VENC encoder control register 16 (VENC_SWREG34) . . . . . | 2173 |
| 45.7.35 | VENC H.264 checkpoint word error 5-6/encoder control register 17 (VENC_SWREG35) . . . . . | 2174 |
| 45.7.36 | VENC H.264 checkpoint delta QP 1-8/encoder control register 18 (VENC_SWREG36) . . . . . | 2174 |
| 45.7.37 | VENC encoder control register 19, stream start offset (VENC_SWREG37) . . . . . | 2174 |
| 45.7.38 | VENC macroblock count output register (VENC_SWREG38) . . . . . | 2175 |
| 45.7.39 | VENC base address for next pic luminance register (VENC_SWREG39) . . . . . | 2175 |
| 45.7.40 | VENC stabilization mode control register (VENC_SWREG40) . . . . . | 2175 |
| 45.7.41 | VENC stabilization motion sum div8 output register (VENC_SWREG41) . . . . . | 2176 |
| 45.7.42 | VENC stabilization GMV output, matrix 1, up-left position output register (VENC_SWREG42) . . . . . | 2176 |
| 45.7.43 | VENC stabilization GMV output, matrix 2, up position output register (VENC_SWREG43) . . . . . | 2176 |
| 45.7.44 | VENC stabilization matrix 3, up-right position output register (VENC_SWREG44) . . . . . | 2177 |
| 45.7.45 | VENC stabilization matrix 4, left position output register (VENC_SWREG45) . . . . . | 2177 |
| 45.7.46 | VENC stabilization matrix 5, GMV position output register (VENC_SWREG46) . . . . . | 2177 |
| 45.7.47 | VENC stabilization matrix 6, right position output register (VENC_SWREG47) . . . . . | 2178 |
| 45.7.48 | VENC stabilization matrix 7, down-left position output register (VENC_SWREG48) . . . . . | 2178 |
| 45.7.49 | VENC stabilization matrix 8, down position output register (VENC_SWREG49) . . . . . | 2178 |
| 45.7.50 | VENC stabilization matrix 9, down-right position output register (VENC_SWREG50) . . . . . | 2179 |
| 45.7.51 | VENC base address for cabac context tables H264 register (VENC_SWREG51) . . . . . | 2179 |
| 45.7.52 | VENC base address for MV output writing register (VENC_SWREG52) . . . . . | 2179 |
| 45.7.53 | VENC RGB to YUV conversion coefficient A - B register (VENC_SWREG53) . . . . . | 2180 |
| 45.7.54 | VENC RGB to YUV conversion coefficient C - E register (VENC_SWREG54) . . . . . | 2180 |
| 45.7.55 | VENC RGB to YUV conversion coefficient F, RGB mask MSB bit position register (VENC_SWREG55) . . . . . | 2180 |
| 45.7.56 | VENC intra area register (VENC_SWREG56) . . . . . | 2181 |
| 45.7.57 | VENC CIR intra mb position register (VENC_SWREG57) . . . . . | 2181 |
| 45.7.58 | VENC intra slice bitmap for slices 0..31/base address for 1st DCT partition register (VENC_SWREG58) . . . . . | 2181 |
| 45.7.59 | VENC intra slice bitmap for slices 32..63/base address for 2nd DCT partition register (VENC_SWREG59) . . . . . | 2182 |
| 45.7.60 | VENC 1st ROI area register (VENC_SWREG60) . . . . . | 2182 |
| 45.7.61 | VENC 2nd ROI area register (VENC_SWREG61) . . . . . | 2182 |
| 45.7.62 | VENC ROI area delta QP, MV register (VENC_SWREG62) . . . . . | 2183 |
| 45.7.63 | VENC synthesis configuration register encoder 0 register (VENC_SWREG63) . . . . . | 2183 |
| 45.7.64 | VENC JPEG luma quantization 1/intra 16x16 mode 0-1 penalty register (VENC_SWREG64) . . . . . | 2183 |
| 45.7.65 | VENC JPEG luma quantization 2/intra 16x16 mode 2-3 penalty register (VENC_SWREG65) . . . . . | 2184 |
| 45.7.66 | VENC JPEG luma quantization 3/intra 4x4 mode 0-1 penalty register (VENC_SWREG66) . . . . . | 2184 |
| 45.7.67 | VENC JPEG luma quantization 4/intra 4x4 mode 2-3 penalty register (VENC_SWREG67) . . . . . | 2184 |
| 45.7.68 | VENC JPEG luma quantization 5/intra 4x4 mode 4-5 penalty register (VENC_SWREG68) . . . . . | 2185 |
| 45.7.69 | VENC JPEG luma quantization 6/intra 4x4 mode 6-7 penalty register (VENC_SWREG69) . . . . . | 2185 |
| 45.7.70 | VENC JPEG luma quantization 7/intra 4x4 mode 8-9 penalty register (VENC_SWREG70) . . . . . | 2185 |
| 45.7.71 | VENC JPEG luma quantization 8/base address for segmentation map register (VENC_SWREG71) . . . . . | 2186 |
| 45.7.72 | VENC JPEG luma quantization 9/segment1 parameter register (VENC_SWREG72) . . . . . | 2186 |
| 45.7.73 | VENC JPEG luma quantization 10/segment1 parameter register (VENC_SWREG73) . . . . . | 2186 |
| 45.7.74 | VENC JPEG luma quantization 11/segment1 parameter register (VENC_SWREG74) . . . . . | 2187 |
| 45.7.75 | VENC JPEG luma quantization 12/segment1 parameter register (VENC_SWREG75) . . . . . | 2187 |
| 45.7.76 | VENC JPEG luma quantization 13/segment1 parameter register (VENC_SWREG76) . . . . . | 2187 |
| 45.7.77 | VENC JPEG luma quantization 14/segment1 parameter register (VENC_SWREG77) . . . . . | 2188 |
| 45.7.78 | VENC JPEG luma quantization 15/segment1 parameter register (VENC_SWREG78) . . . . . | 2188 |
| 45.7.79 | VENC JPEG luma quantization 16/segment2 parameter register (VENC_SWREG79) . . . . . | 2188 |
| 45.7.80 | VENC JPEG chroma quantization 1/segment2 parameter register (VENC_SWREG80) . . . . . | 2189 |
| 45.7.81 | VENC JPEG chroma quantization 2/segment2 parameter register (VENC_SWREG81) . . . . . | 2189 |
| 45.7.82 | VENC JPEG chroma quantization 3/segment2 parameter register (VENC_SWREG82) . . . . . | 2189 |
| 45.7.83 | VENC JPEG chroma quantization 4/segment2 parameter register (VENC_SWREG83) . . . . . | 2190 |
| 45.7.84 | VENC JPEG chroma quantization 5/segment2 parameter register (VENC_SWREG84) ..... | 2190 |
| 45.7.85 | VENC JPEG chroma quantization 6/segment2 parameter register (VENC_SWREG85) ..... | 2190 |
| 45.7.86 | VENC JPEG chroma quantization 7/segment2 parameter register (VENC_SWREG86) ..... | 2191 |
| 45.7.87 | VENC JPEG chroma quantization 8/segment2 parameter register (VENC_SWREG87) ..... | 2191 |
| 45.7.88 | VENC JPEG chroma quantization 9/segment3 parameter register (VENC_SWREG88) ..... | 2191 |
| 45.7.89 | VENC JPEG chroma quantization 10/segment3 parameter register (VENC_SWREG89) ..... | 2192 |
| 45.7.90 | VENC JPEG chroma quantization 11/segment3 parameter register (VENC_SWREG90) ..... | 2192 |
| 45.7.91 | VENC JPEG chroma quantization 12/segment3 parameter register (VENC_SWREG91) ..... | 2192 |
| 45.7.92 | VENC JPEG chroma quantization 13/segment3 parameter register (VENC_SWREG92) ..... | 2193 |
| 45.7.93 | VENC JPEG chroma quantization 14/segment3 parameter register (VENC_SWREG93) ..... | 2193 |
| 45.7.94 | VENC JPEG chroma quantization 15/segment3 parameter register (VENC_SWREG94) ..... | 2193 |
| 45.7.95 | VENC JPEG chroma quantization 16/segment3 parameter register (VENC_SWREG95) ..... | 2194 |
| 45.7.96 | VENC DMV 4p/1p penalty values 0-3 register (VENC_SWREG96) . | 2194 |
| 45.7.97 | VENC DMV 4p/1p penalty values 4-7 register (VENC_SWREG97) . | 2194 |
| 45.7.98 | VENC DMV 4p/1p penalty values register (VENC_SWREGx) . . . . | 2195 |
| 45.7.99 | VENC DMV 4p/1p penalty values 124-127 register (VENC_SWREG127) ..... | 2195 |
| 45.7.100 | VENC DMV qpel penalty values 0-3 register (VENC_SWREG128) ..... | 2195 |
| 45.7.101 | VENC DMV qpel penalty values 4-7 register (VENC_SWREG129) ..... | 2196 |
| 45.7.102 | VENC DMV qpel penalty values register (VENC_SWREGx) . . . . | 2196 |
| 45.7.103 | VENC DMV qpel penalty values 124-127 register (VENC_SWREG159) ..... | 2196 |
| 45.7.104 | VENC base address for output of down-scaled encoder image in YUYV 4:2:2 format register (VENC_SWREG231) ..... | 2197 |
| 45.7.105 | VENC scaling control register (VENC_SWREGx) ..... | 2197 |
| 45.7.106 | VENC squared error output calculated for 13x13 pixels per macroblock register (VENC_SWREG236) ..... | 2197 |
| 45.7.107 | VENC MAD 2 control and output register (VENC_SWREG237) . . . . | 2198 |
| 45.7.108 | VENC MAD 3 control and output register (VENC_SWREG238) . . . . | 2198 |
| 45.7.109 | VENC segment 1: intra 16x16 mode 0-2 penalty register (VENC_SWREG256) . . . . . | 2198 |
| 45.7.110 | VENC segment 1: intra 16x16 mode 3, intra 4x4 0-1 penalty register (VENC_SWREG257) . . . . . | 2199 |
| 45.7.111 | VENC segment 1: intra 4x4 mode 2-4 penalty register (VENC_SWREG258) . . . . . | 2199 |
| 45.7.112 | VENC segment 1: intra 4x4 mode 5-7 penalty register (VENC_SWREG259) . . . . . | 2199 |
| 45.7.113 | VENC segment 1: intra 4x4 mode 8-9 penalty, previous mode favor for H.264 register (VENC_SWREG260) . . . . . | 2200 |
| 45.7.114 | VENC segment 1: bit cost of inter type, intra 16x16 mode favor register (VENC_SWREG261) . . . . . | 2200 |
| 45.7.115 | VENC segment 1: inter MB mode favor, skip mode penalty, penalty value for 2nd reference frame register (VENC_SWREG262) | 2200 |
| 45.7.116 | VENC segment 1: penalty value register (VENC_SWREGx) . . . . . | 2201 |
| 45.7.117 | VENC segment 1: deadzone rate multiplier for plane 0-1 register (VENC_SWREG265) . . . . . | 2201 |
| 45.7.118 | VENC segment 1: deadzone rate multiplier for plane 2-3 register (VENC_SWREG266) . . . . . | 2201 |
| 45.7.119 | VENC segment 1: deadzone rate for macroblock skip token 0-1, dmv penalty coefficient register (VENC_SWREG267) . . . . . | 2202 |
| 45.7.120 | VENC segment 2: intra 16x16 mode 0-2 penalty register (VENC_SWREG268) . . . . . | 2202 |
| 45.7.121 | VENC segment 2: intra 16x16 mode 3 penalty, intra 4x4 mode 0-1 penalty register (VENC_SWREG269) . . . . . | 2202 |
| 45.7.122 | VENC segment 2: intra 4x4 mode 2-4 penalty register (VENC_SWREG270) . . . . . | 2203 |
| 45.7.123 | VENC segment 2: intra 4x4 mode 5-7 penalty register (VENC_SWREG271) . . . . . | 2203 |
| 45.7.124 | VENC segment 2: intra 4x4 mode 8-9 penalty, intra 4x4 previous mode favor for H.264 register (VENC_SWREG272) . . . . . | 2203 |
| 45.7.125 | VENC segment 2: bit cost of inter type, intra 16x16 mode favor register (VENC_SWREG273) . . . . . | 2204 |
| 45.7.126 | VENC segment 2: inter MB mode favor, skip mode penalty, penalty value register (VENC_SWREG274) . . . . . | 2204 |
| 45.7.127 | VENC segment 2: penalty value register (VENC_SWREGx) . . . . . | 2204 |
| 45.7.128 | VENC segment 2: deadzone rate multiplier for plane 0-1 register (VENC_SWREG277) . . . . . | 2205 |
| 45.7.129 | VENC segment 2: deadzone rate multiplier for plane 2-3 register (VENC_SWREG278) . . . . . | 2205 |
| 45.7.130 | VENC segment 2: deadzone rate for macroblock skip token 0-1, dmv penalty coefficient register (VENC_SWREG279) . . . . . | 2205 |
| 45.7.131 | VENC segment 3: intra 16x16 mode 0-2 penalty register (VENC_SWREG280) . . . . . | 2206 |
| 45.7.132 | VENC segment 3: intra 16x16 mode 3 penalty, intra 4x4 mode 0-1 penalty register (VENC_SWREG281) . . . . . | 2206 |
| 45.7.133 | VENC segment 3: intra 4x4 mode 2-4 penalty register (VENC_SWREG282) . . . . . | 2206 |
| 45.7.134 | VENC segment 3: intra 4x4 mode 5-7 penalty register (VENC_SWREG283) . . . . . | 2207 |
| 45.7.135 | VENC segment 3: intra 4x4 mode 8-9 penalty, intra 4x4 previous mode favor for H.264 register (VENC_SWREG284) . . . . . | 2207 |
| 45.7.136 | VENC segment 3: bit cost of inter type, intra 16x16 mode favor register (VENC_SWREG285) . . . . . | 2207 |
| 45.7.137 | VENC segment 3: inter MB mode favor in intra/inter selection, inter MB mode favor, penalty value for second reference frame register (VENC_SWREG286) . . . . . | 2208 |
| 45.7.138 | VENC segment 3: penalty value register (VENC_SWREGx) . . . . . | 2208 |
| 45.7.139 | VENC segment 3: deadzone rate multiplier for plane 0-1 register (VENC_SWREG289) . . . . . | 2208 |
| 45.7.140 | VENC segment 3: deadzone rate multiplier for plane 2-3 register (VENC_SWREG290) . . . . . | 2209 |
| 45.7.141 | VENC segment 3: deadzone rate for macroblock skip token 0-1, dmv penalty coefficient register (VENC_SWREG291) . . . . . | 2209 |
| 45.7.142 | VENC Mb boost register (VENC_SWREG294) . . . . . | 2209 |
| 45.7.143 | VENC variance control, Pskop condoning mode register (VENC_SWREG295) . . . . . | 2210 |
| 45.7.144 | VENC synthesis configuration register encoder 1 read only register (VENC_SWREG296) . . . . . | 2210 |
| 45.7.145 | VENC MBRC control register (VENC_SWREG297) . . . . . | 2210 |
| 45.7.146 | VENC segment 4: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG298) . . . . . | 2211 |
| 45.7.147 | VENC segment 4: skip mode penalty, inter MB mode favor register (VENC_SWREG299) . . . . . | 2211 |
| 45.7.148 | VENC segment 4: penalty value register (VENC_SWREGx) . . . . . | 2211 |
| 45.7.149 | VENC segment 5: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG302) . . . . . | 2212 |
| 45.7.150 | VENC segment 5: skip mode penalty, inter MB mode favor register (VENC_SWREG303) . . . . . | 2212 |
| 45.7.151 | VENC segment 5: penalty value register (VENC_SWREGx) . . . . . | 2212 |
| 45.7.152 | VENC segment 6: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG306) . . . . . | 2213 |
| 45.7.153 VENC segment 6: skip mode penalty, inter MB mode favor register (VENC_SWREG307) ..... | 2213 |
| 45.7.154 VENC segment 6: penalty value register (VENC_SWREGx) ..... | 2213 |
| 45.7.155 VENC segment 7: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG310) ..... | 2214 |
| 45.7.156 VENC segment 7: skip mode penalty, inter MB mode favor register (VENC_SWREG311) ..... | 2214 |
| 45.7.157 VENC segment 7: penalty value register (VENC_SWREGx) ..... | 2214 |
| 45.7.158 VENC segment 8: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG314) ..... | 2215 |
| 45.7.159 VENC segment 8: skip mode penalty, inter MB mode favor register (VENC_SWREG315) ..... | 2215 |
| 45.7.160 VENC segment 8: penalty value register (VENC_SWREGx) ..... | 2215 |
| 45.7.161 VENC segment 9: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG318) ..... | 2216 |
| 45.7.162 VENC segment 9: skip mode penalty, inter MB mode favor register (VENC_SWREG319) ..... | 2216 |
| 45.7.163 VENC segment 9: penalty value register (VENC_SWREGx) ..... | 2216 |
| 45.7.164 VENC segment 10: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG322) ..... | 2217 |
| 45.7.165 VENC segment 10: skip mode penalty, inter MB mode favor register (VENC_SWREG323) ..... | 2217 |
| 45.7.166 VENC segment 10: penalty value register (VENC_SWREGx) ..... | 2217 |
| 45.7.167 VENC segment 11: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG326) ..... | 2218 |
| 45.7.168 VENC segment 11: skip mode penalty, inter MB mode favor register (VENC_SWREG327) ..... | 2218 |
| 45.7.169 VENC segment 11: penalty value register (VENC_SWREGx) ..... | 2218 |
| 45.7.170 VENC segment 12: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG330) ..... | 2219 |
| 45.7.171 VENC segment 12: skip mode penalty, inter MB mode favor register (VENC_SWREG331) ..... | 2219 |
| 45.7.172 VENC segment 12: penalty value register (VENC_SWREGx) ..... | 2219 |
| 45.7.173 VENC segment 13: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG334) ..... | 2220 |
| 45.7.174 | VENC segment 13: skip mode penalty, inter MB mode favor register (VENC_SWREG335) . . . . . | 2220 |
| 45.7.175 | VENC segment 13: penalty value register (VENC_SWREGx) . . . . . | 2220 |
| 45.7.176 | VENC segment 14: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG338) . . . . . | 2221 |
| 45.7.177 | VENC segment 14: skip mode penalty, inter MB mode favor register (VENC_SWREG339) . . . . . | 2221 |
| 45.7.178 | VENC segment 14: penalty value register (VENC_SWREGx) . . . . . | 2221 |
| 45.7.179 | VENC segment 15: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG342) . . . . . | 2222 |
| 45.7.180 | VENC segment 15: skip mode penalty, inter MB mode favor register (VENC_SWREG343) . . . . . | 2222 |
| 45.7.181 | VENC segment 15: penalty value register (VENC_SWREGx) . . . . . | 2222 |
| 45.7.182 | VENC segment 16: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG346) . . . . . | 2223 |
| 45.7.183 | VENC segment 16: skip mode penalty, inter MB mode favor register (VENC_SWREG347) . . . . . | 2223 |
| 45.7.184 | VENC segment 16: penalty value register (VENC_SWREGx) . . . . . | 2223 |
| 45.7.185 | VENC segment 17: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG350) . . . . . | 2224 |
| 45.7.186 | VENC segment 17: skip mode penalty, inter MB mode favor register (VENC_SWREG351) . . . . . | 2224 |
| 45.7.187 | VENC segment 17: penalty value register (VENC_SWREGx) . . . . . | 2224 |
| 45.7.188 | VENC segment 18: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG354) . . . . . | 2225 |
| 45.7.189 | VENC segment 18: skip mode penalty, inter MB mode favor register (VENC_SWREG355) . . . . . | 2225 |
| 45.7.190 | VENC segment 18: penalty value register (VENC_SWREGx) . . . . . | 2225 |
| 45.7.191 | VENC segment 19: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG358) . . . . . | 2226 |
| 45.7.192 | VENC segment 19: skip mode penalty, inter MB mode favor register (VENC_SWREG359) . . . . . | 2226 |
| 45.7.193 | VENC segment 19: penalty value register (VENC_SWREGx) . . . . . | 2226 |
| 45.7.194 | VENC segment 20: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG362) . . . . . | 2227 |
| 45.7.195 | VENC segment 20: skip mode penalty, inter MB mode favor register (VENC_SWREG363) . . . . . | 2227 |
| 45.7.196 | VENC segment 20: penalty value register (VENC_SWREGx) . . . . . | 2227 |
| 45.7.197 | VENC segment 21: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG366) . . . . . | 2228 |
| 45.7.198 | VENC segment 21: skip mode penalty, inter MB mode favor register (VENC_SWREG367) . . . . . | 2228 |
| 45.7.199 | VENC segment 21: penalty value register (VENC_SWREGx) . . . . . | 2228 |
| 45.7.200 | VENC segment 22: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG370) . . . . . | 2229 |
| 45.7.201 | VENC segment 22: skip mode penalty, inter MB mode favor register (VENC_SWREG371) . . . . . | 2229 |
| 45.7.202 | VENC segment 22: penalty value register (VENC_SWREGx) . . . . . | 2229 |
| 45.7.203 | VENC segment 23: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG374) . . . . . | 2230 |
| 45.7.204 | VENC segment 23: skip mode penalty, inter MB mode favor register (VENC_SWREG375) . . . . . | 2230 |
| 45.7.205 | VENC segment 23: penalty value register (VENC_SWREGx) . . . . . | 2230 |
| 45.7.206 | VENC segment 24: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG378) . . . . . | 2231 |
| 45.7.207 | VENC segment 24: skip mode penalty, inter MB mode favor register (VENC_SWREG379) . . . . . | 2231 |
| 45.7.208 | VENC segment 24: penalty value register (VENC_SWREGx) . . . . . | 2231 |
| 45.7.209 | VENC segment 25: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG382) . . . . . | 2232 |
| 45.7.210 | VENC segment 25: skip mode penalty, inter MB mode favor register (VENC_SWREG383) . . . . . | 2232 |
| 45.7.211 | VENC segment 25: penalty value register (VENC_SWREGx) . . . . . | 2232 |
| 45.7.212 | VENC segment 26: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG386) . . . . . | 2233 |
| 45.7.213 | VENC segment 26: skip mode penalty, inter MB mode favor register (VENC_SWREG387) . . . . . | 2233 |
| 45.7.214 | VENC segment 26: penalty value register (VENC_SWREGx) . . . . . | 2233 |
| 45.7.215 | VENC segment 27: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG390) . . . . . | 2234 |
| 45.7.216 | VENC segment 27: skip mode penalty, inter MB mode favor register (VENC_SWREG391) . . . . . | 2234 |
| 45.7.217 | VENC segment 27: penalty value register (VENC_SWREGx) . . . . . | 2234 |
| 45.7.218 | VENC segment 28: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG394) . . . . . | 2235 |
| 45.7.219 | VENC segment 28: skip mode penalty, inter MB mode favor register (VENC_SWREG395) . . . . . | 2235 |
| 45.7.220 | VENC segment 28: penalty value register (VENC_SWREGx) . . . . . | 2235 |
| 45.7.221 | VENC segment 29: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG398) . . . . . | 2236 |
| 45.7.222 | VENC segment 29: skip mode penalty, inter MB mode favor register (VENC_SWREG399) . . . . . | 2236 |
| 45.7.223 | VENC segment 29: penalty value register (VENC_SWREGx) . . . . . | 2236 |
| 45.7.224 | VENC segment 30: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG402) . . . . . | 2237 |
| 45.7.225 | VENC segment 30: skip mode penalty, inter MB mode favor register (VENC_SWREG403) . . . . . | 2237 |
| 45.7.226 | VENC segment 30: penalty value register (VENC_SWREGx) . . . . . | 2237 |
| 45.7.227 | VENC segment 31: intra 4x4 previous mode favor, intra 16x16 mode favor, penalty value for second reference frame register (VENC_SWREG406) . . . . . | 2238 |
| 45.7.228 | VENC segment 31: skip mode penalty, inter MB mode favor register (VENC_SWREG407) . . . . . | 2238 |
| 45.7.229 | VENC segment 31: penalty value register (VENC_SWREGx) . . . . . | 2238 |
| 45.7.230 | VENC MBRC control, QP, offset, enable register (VENC_SWREG410) . . . . . | 2239 |
| 45.7.231 | VENC gain of MB QP delta. 8.8 format register (VENC_SWREG411) . . . . . | 2239 |
| 45.7.232 | VENC average of MB complexity register (VENC_SWREG412) . . . . . | 2239 |
| 45.7.233 | VENC reference compression control register (VENC_SWREG413) . . . . . | 2240 |
| 45.7.234 | VENC base address for reference luma register (VENC_SWREG414) . . . . . | 2240 |
| 45.7.235 | VENC base address for reference chroma register (VENC_SWREG415) . . . . . | 2240 |
| 45.7.236 | VENC base address for reconstructed luma register (VENC_SWREG416) . . . . . | 2241 |
| 45.7.237 | VENC base address for reconstructed chroma register (VENC_SWREG417) . . . . . | 2241 |
| 45.7.238 VENC base address for second reference luma register (VENC_SWREG418) . . . . . | 2241 |
| 45.7.239 VENC base address for second reference chroma register (VENC_SWREG419) . . . . . | 2242 |
| 45.7.240 VENC limit of chroma RFC buffer register (VENC_SWREG420) . . . . . | 2242 |
| 45.7.241 VENC reorder control register (VENC_SWREG421) . . . . . | 2242 |
| 45.7.242 VENC AXI read ID register (VENC_SWREG422) . . . . . | 2243 |
| 45.7.243 VENC base address MSB for reference luma compression table register (VENC_SWREG423) . . . . . | 2243 |
| 45.7.244 VENC base address MSB for reference chroma compression table register (VENC_SWREG424) . . . . . | 2243 |
| 45.7.245 VENC base address MSB for reconstructed luma compression table register (VENC_SWREG425) . . . . . | 2244 |
| 45.7.246 VENC base address for reconstructed chroma compression table register (VENC_SWREG426) . . . . . | 2244 |
| 45.7.247 VENC base address MSB for second reference luma compression table register (VENC_SWREG427) . . . . . | 2244 |
| 45.7.248 VENC base address MSB for second reference chroma compression table register (VENC_SWREG428) . . . . . | 2245 |
| 45.7.249 VENC high 32 bits of base address for output stream data register (VENC_SWREG429) . . . . . | 2245 |
| 45.7.250 VENC high 32 bits of base address for output control data register (VENC_SWREG430) . . . . . | 2245 |
| 45.7.251 VENC high 32 bits of base address for reference luma register (VENC_SWREG431) . . . . . | 2246 |
| 45.7.252 VENC high 32 bits of base address for reference chroma register (VENC_SWREG432) . . . . . | 2246 |
| 45.7.253 VENC high 32 bits of base address for reconstructed luma register (VENC_SWREG433) . . . . . | 2246 |
| 45.7.254 VENC high 32 bits of base address for reconstructed chroma register (VENC_SWREG434) . . . . . | 2247 |
| 45.7.255 VENC high 32 bits of base address for input picture luma register (VENC_SWREG435) . . . . . | 2247 |
| 45.7.256 VENC high 32 bits of base address for input picture cb register (VENC_SWREG436) . . . . . | 2247 |
| 45.7.257 VENC high 32 bits of base address for input picture cr register (VENC_SWREG437) . . . . . | 2248 |
| 45.7.258 VENC high 32 bits of base address for second reference luma register (VENC_SWREG438) . . . . . | 2248 |
| 45.7.259 VENC high 32 bits of base address for second reference chroma register (VENC_SWREG439) . . . . . | 2248 |
| 45.7.260 | VENC high 32 bits of H264 secondary ref pic base register (VENC_SWREGx) . . . . . | 2249 |
| 45.7.261 | VENC high 32 bits of base address for next pic luminance register (VENC_SWREG442) . . . . . | 2249 |
| 45.7.262 | VENC high 32 bits of base address for cabac context tables H264 register (VENC_SWREG443) . . . . . | 2249 |
| 45.7.263 | VENC high 32 bits of base address for MV output writing register (VENC_SWREG444) . . . . . | 2250 |
| 45.7.264 | VENC high 32 bits of base address for output of down-scaled encoder image in YUYV 4:2:2 format register (VENC_SWREG449) | 2250 |
| 45.7.265 | VENC low-latency control register (VENC_SWREG497) . . . . . | 2250 |
| 45.7.266 | VENC encoder line buffer offset register (VENC_SWREG498) . . . . . | 2251 |
| 45.7.267 | VENC register map . . . . . | 2251 |
| 46 | JPEG codec (JPEG) . . . . . | 2265 |
| 46.1 | JPEG introduction . . . . . | 2265 |
| 46.2 | JPEG codec main features . . . . . | 2265 |
| 46.3 | JPEG codec block functional description . . . . . | 2266 |
| 46.3.1 | General description . . . . . | 2266 |
| 46.3.2 | JPEG internal signals . . . . . | 2266 |
| 46.3.3 | JPEG decoding procedure . . . . . | 2267 |
| 46.3.4 | JPEG encoding procedure . . . . . | 2269 |
| 46.4 | JPEG codec interrupts . . . . . | 2272 |
| 46.5 | JPEG codec registers . . . . . | 2272 |
| 46.5.1 | JPEG codec control register (JPEG_CONF0) . . . . . | 2272 |
| 46.5.2 | JPEG codec configuration register 1 (JPEG_CONF1) . . . . . | 2273 |
| 46.5.3 | JPEG codec configuration register 2 (JPEG_CONF2) . . . . . | 2274 |
| 46.5.4 | JPEG codec configuration register 3 (JPEG_CONF3) . . . . . | 2274 |
| 46.5.5 | JPEG codec configuration register x (JPEG_CONFx) . . . . . | 2275 |
| 46.5.6 | JPEG control register (JPEG_CR) . . . . . | 2276 |
| 46.5.7 | JPEG status register (JPEG_SR) . . . . . | 2277 |
| 46.5.8 | JPEG clear flag register (JPEG_CFR) . . . . . | 2278 |
| 46.5.9 | JPEG data input register (JPEG_DIR) . . . . . | 2279 |
| 46.5.10 | JPEG data output register (JPEG_DOR) . . . . . | 2279 |
| 46.5.11 | JPEG quantization memory x (JPEG_QMEMx_y) . . . . . | 2280 |
| 46.5.12 | JPEG Huffman min (JPEG_HUFFMINx_y) . . . . . | 2280 |
| 46.5.13 | JPEG Huffman min x (JPEG_HUFFMINx_y) . . . . . | 2281 |
| 46.5.14 | JPEG Huffman base (JPEG_HUFFBASEx) | 2281 |
| 46.5.15 | JPEG Huffman symbol (JPEG_HUFFSYMBx) | 2282 |
| 46.5.16 | JPEG DHT memory (JPEG_DHTMEMx) | 2283 |
| 46.5.17 | JPEG Huffman encoder ACx (JPEG_HUFFENC_ACx_y) | 2283 |
| 46.5.18 | JPEG Huffman encoder DCx (JPEG_HUFFENC_DCx_y) | 2284 |
| 46.5.19 | JPEG codec register map | 2285 |
| 47 | True random number generator (RNG) | 2287 |
| 47.1 | RNG introduction | 2287 |
| 47.2 | RNG main features | 2287 |
| 47.3 | RNG functional description | 2288 |
| 47.3.1 | RNG block diagram | 2288 |
| 47.3.2 | RNG internal signals | 2288 |
| 47.3.3 | Random number generation | 2288 |
| 47.3.4 | RNG initialization | 2291 |
| 47.3.5 | RNG operation | 2292 |
| 47.3.6 | RNG clocking | 2294 |
| 47.3.7 | Error management | 2294 |
| 47.3.8 | RNG low-power use | 2295 |
| 47.4 | RNG interrupts | 2296 |
| 47.5 | RNG processing time | 2296 |
| 47.6 | RNG entropy source validation | 2297 |
| 47.6.1 | Introduction | 2297 |
| 47.6.2 | Validation conditions | 2297 |
| 47.7 | RNG registers | 2298 |
| 47.7.1 | RNG control register (RNG_CR) | 2298 |
| 47.7.2 | RNG status register (RNG_SR) | 2300 |
| 47.7.3 | RNG data register (RNG_DR) | 2301 |
| 47.7.4 | RNG noise source control register (RNG_NSCR) | 2302 |
| 47.7.5 | RNG health test control register (RNG_HTCR) | 2303 |
| 47.7.6 | RNG register map | 2303 |
| 48 | Secure AES coprocessor (SAES) | 2304 |
| 48.1 | SAES introduction | 2304 |
| 48.2 | SAES main features | 2304 |
| 48.3 | SAES implementation | 2305 |
| 48.4 | SAES functional description . . . . . | 2305 |
| 48.4.1 | SAES block diagram . . . . . | 2305 |
| 48.4.2 | SAES internal signals . . . . . | 2306 |
| 48.4.3 | SAES reset and clocks . . . . . | 2307 |
| 48.4.4 | SAES symmetric cipher implementation . . . . . | 2307 |
| 48.4.5 | SAES encryption or decryption typical usage . . . . . | 2308 |
| 48.4.6 | SAES authenticated encryption, decryption, and cipher-based message authentication . . . . . | 2310 |
| 48.4.7 | SAES ciphertext stealing and data padding . . . . . | 2311 |
| 48.4.8 | SAES suspend and resume operations . . . . . | 2311 |
| 48.4.9 | SAES basic chaining modes (ECB, CBC) . . . . . | 2312 |
| 48.4.10 | SAES counter (CTR) mode . . . . . | 2316 |
| 48.4.11 | SAES Galois/counter mode (GCM) . . . . . | 2318 |
| 48.4.12 | SAES Galois message authentication code (GMAC) . . . . . | 2322 |
| 48.4.13 | SAES counter with CBC-MAC (CCM) . . . . . | 2324 |
| 48.4.14 | SAES operation with wrapped keys . . . . . | 2329 |
| 48.4.15 | SAES operation with shared keys . . . . . | 2333 |
| 48.4.16 | SAES data registers and data swapping . . . . . | 2334 |
| 48.4.17 | SAES key registers . . . . . | 2337 |
| 48.4.18 | SAES initialization vector registers . . . . . | 2338 |
| 48.4.19 | SAES error management . . . . . | 2339 |
| 48.5 | SAES interrupts . . . . . | 2341 |
| 48.6 | SAES DMA requests . . . . . | 2341 |
| 48.7 | SAES processing latency . . . . . | 2342 |
| 48.8 | SAES registers . . . . . | 2344 |
| 48.8.1 | SAES control register (SAES_CR) . . . . . | 2344 |
| 48.8.2 | SAES status register (SAES_SR) . . . . . | 2347 |
| 48.8.3 | SAES data input register (SAES_DINR) . . . . . | 2348 |
| 48.8.4 | SAES data output register (SAES_DOUTr) . . . . . | 2349 |
| 48.8.5 | SAES key register 0 (SAES_KEYR0) . . . . . | 2349 |
| 48.8.6 | SAES key register 1 (SAES_KEYR1) . . . . . | 2350 |
| 48.8.7 | SAES key register 2 (SAES_KEYR2) . . . . . | 2350 |
| 48.8.8 | SAES key register 3 (SAES_KEYR3) . . . . . | 2350 |
| 48.8.9 | SAES initialization vector register 0 (SAES_IVR0) . . . . . | 2351 |
| 48.8.10 | SAES initialization vector register 1 (SAES_IVR1) . . . . . | 2351 |
| 48.8.11 | SAES initialization vector register 2 (SAES_IVR2) . . . . . | 2351 |
| 48.8.12 | SAES initialization vector register 3 (SAES_IVR3) . . . . . | 2352 |
| 48.8.13 | SAES key register 4 (SAES_KEYR4) . . . . . | 2352 |
| 48.8.14 | SAES key register 5 (SAES_KEYR5) . . . . . | 2352 |
| 48.8.15 | SAES key register 6 (SAES_KEYR6) . . . . . | 2353 |
| 48.8.16 | SAES key register 7 (SAES_KEYR7) . . . . . | 2353 |
| 48.8.17 | SAES suspend registers (SAES_SUSPRx) . . . . . | 2353 |
| 48.8.18 | SAES interrupt enable register (SAES_IER) . . . . . | 2354 |
| 48.8.19 | SAES interrupt status register (SAES_ISR) . . . . . | 2355 |
| 48.8.20 | SAES interrupt clear register (SAES_ICR) . . . . . | 2356 |
| 48.8.21 | SAES register map . . . . . | 2357 |
| 49 | Cryptographic processor (CRYP) . . . . . | 2359 |
| 49.1 | CRYP introduction . . . . . | 2359 |
| 49.2 | CRYP main features . . . . . | 2359 |
| 49.3 | CRYP implementation . . . . . | 2360 |
| 49.4 | CRYP functional description . . . . . | 2361 |
| 49.4.1 | CRYP block diagram . . . . . | 2361 |
| 49.4.2 | CRYP internal signals . . . . . | 2362 |
| 49.4.3 | CRYP reset and clocks . . . . . | 2362 |
| 49.4.4 | CRYP symmetric cipher implementation . . . . . | 2362 |
| 49.4.5 | CRYP encryption/ decryption typical usage . . . . . | 2363 |
| 49.4.6 | CRYP authenticated encryption, decryption, and cipher-based message authentication . . . . . | 2366 |
| 49.4.7 | CRYP ciphertext stealing and data padding . . . . . | 2366 |
| 49.4.8 | CRYP suspend and resume operations . . . . . | 2367 |
| 49.4.9 | CRYP basic chaining modes (ECB, CBC) . . . . . | 2367 |
| 49.4.10 | CRYP counter mode (CTR) . . . . . | 2372 |
| 49.4.11 | CRYP AES Galois/counter mode (GCM) . . . . . | 2374 |
| 49.4.12 | CRYP AES Galois message authentication code (GMAC) . . . . . | 2380 |
| 49.4.13 | CRYP AES Counter with CBC-MAC (CCM) . . . . . | 2381 |
| 49.4.14 | AES key sharing with secure AES co-processor . . . . . | 2386 |
| 49.4.15 | CRYP data registers and data swapping . . . . . | 2387 |
| 49.4.16 | CRYP key registers . . . . . | 2390 |
| 49.4.17 | CRYP initialization vector registers . . . . . | 2390 |
| 49.4.18 | CRYP error management . . . . . | 2391 |
| 49.5 | CRYP interrupts . . . . . | 2391 |
| 49.6 | CRYP DMA requests . . . . . | 2392 |
| 49.7 | CRYP processing time . . . . . | 2393 |
| 49.8 | CRYP registers . . . . . | 2394 |
| 49.8.1 | CRYP control register (CRYP_CR) . . . . . | 2394 |
| 49.8.2 | CRYP status register (CRYP_SR) . . . . . | 2396 |
| 49.8.3 | CRYP data input register (CRYP_DINR) . . . . . | 2398 |
| 49.8.4 | CRYP data output register (CRYP_DOUTR) . . . . . | 2398 |
| 49.8.5 | CRYP DMA control register (CRYP_DMACR) . . . . . | 2399 |
| 49.8.6 | CRYP interrupt mask set/clear register (CRYP_IMSCR) . . . . . | 2399 |
| 49.8.7 | CRYP raw interrupt status register (CRYP_RISR) . . . . . | 2400 |
| 49.8.8 | CRYP masked interrupt status register (CRYP_MISR) . . . . . | 2400 |
| 49.8.9 | CRYP key register 0L (CRYP_K0LR) . . . . . | 2401 |
| 49.8.10 | CRYP key register 0R (CRYP_K0RR) . . . . . | 2402 |
| 49.8.11 | CRYP key register 1L (CRYP_K1LR) . . . . . | 2402 |
| 49.8.12 | CRYP key register 1R (CRYP_K1RR) . . . . . | 2402 |
| 49.8.13 | CRYP key register 2L (CRYP_K2LR) . . . . . | 2403 |
| 49.8.14 | CRYP key register 2R (CRYP_K2RR) . . . . . | 2403 |
| 49.8.15 | CRYP key register 3L (CRYP_K3LR) . . . . . | 2404 |
| 49.8.16 | CRYP key register 3R (CRYP_K3RR) . . . . . | 2404 |
| 49.8.17 | CRYP initialization vector register 0L (CRYP_IV0LR) . . . . . | 2404 |
| 49.8.18 | CRYP initialization vector register 0R (CRYP_IV0RR) . . . . . | 2405 |
| 49.8.19 | CRYP initialization vector register 1L (CRYP_IV1LR) . . . . . | 2405 |
| 49.8.20 | CRYP initialization vector register 1R (CRYP_IV1RR) . . . . . | 2406 |
| 49.8.21 | CRYP context swap GCM-CCM registers (CRYP_CSGCMCCMxR) . . . . . | 2406 |
| 49.8.22 | CRYP context swap GCM registers (CRYP_CSGCMxR) . . . . . | 2407 |
| 49.8.23 | CRYP register map . . . . . | 2407 |
| 50 | Hash processor (HASH) . . . . . | 2409 |
| 50.1 | HASH introduction . . . . . | 2409 |
| 50.2 | HASH main features . . . . . | 2409 |
| 50.3 | HASH implementation . . . . . | 2410 |
| 50.4 | HASH functional description . . . . . | 2410 |
| 50.4.1 | HASH block diagram . . . . . | 2410 |
| 50.4.2 | HASH internal signals . . . . . | 2410 |
| 50.4.3 | About secure hash algorithms . . . . . | 2411 |
| 50.4.4 | Message data feeding . . . . . | 2411 |
| 50.4.5 | Message digest computing . . . . . | 2412 |
| 50.4.6 | Message padding . . . . . | 2414 |
| 50.4.7 | HMAC operation . . . . . | 2416 |
| 50.4.8 | HASH suspend/resume operations . . . . . | 2417 |
| 50.4.9 | HASH DMA interface . . . . . | 2419 |
| 50.4.10 | HASH error management . . . . . | 2420 |
| 50.4.11 | HASH processing time . . . . . | 2420 |
| 50.5 | HASH interrupts . . . . . | 2421 |
| 50.6 | HASH registers . . . . . | 2421 |
| 50.6.1 | HASH control register (HASH_CR) . . . . . | 2421 |
| 50.6.2 | HASH data input register (HASH_DIN) . . . . . | 2423 |
| 50.6.3 | HASH start register (HASH_STR) . . . . . | 2424 |
| 50.6.4 | HASH digest registers . . . . . | 2425 |
| 50.6.5 | HASH interrupt enable register (HASH_IMR) . . . . . | 2427 |
| 50.6.6 | HASH status register (HASH_SR) . . . . . | 2427 |
| 50.6.7 | HASH context swap registers . . . . . | 2428 |
| 50.6.8 | HASH register map . . . . . | 2429 |
| 51 | Memory cipher engine (MCE) . . . . . | 2431 |
| 51.1 | MCE introduction . . . . . | 2431 |
| 51.2 | MCE main features . . . . . | 2431 |
| 51.3 | MCE implementation . . . . . | 2432 |
| 51.4 | MCE functional description . . . . . | 2432 |
| 51.4.1 | MCE block diagram . . . . . | 2432 |
| 51.4.2 | MCE internal signals . . . . . | 2432 |
| 51.4.3 | MCE programming . . . . . | 2433 |
| 51.4.4 | MCE reset and clocks . . . . . | 2434 |
| 51.4.5 | MCE block cipher encryption mode . . . . . | 2434 |
| 51.4.6 | MCE stream cipher encryption mode . . . . . | 2436 |
| 51.4.7 | MCE AXI traffic management . . . . . | 2437 |
| 51.4.8 | MCE encryption disable options . . . . . | 2437 |
| 51.4.9 | MCE error management . . . . . | 2438 |
| 51.5 | MCE interrupts . . . . . | 2438 |
| 51.6 | MCE registers . . . . . | 2439 |
| 51.6.1 | MCE configuration register (MCE_CR) . . . . . | 2439 |
| 51.6.2 | MCE status register (MCE_SR) . . . . . | 2440 |
| 51.6.3 | MCE illegal access status register (MCE_IASR) . . . . . | 2441 |
| 51.6.4 | MCE illegal access clear register (MCE_IACR) . . . . . | 2441 |
| 51.6.5 | MCE illegal access interrupt enable register (MCE_IAIER) . . . . . | 2441 |
| 51.6.6 | MCE illegal address register (MCE_IADDR) . . . . . | 2442 |
| 51.6.7 | MCE region x configuration register (MCE_REGCRx) . . . . . | 2442 |
| 51.6.8 | MCE start address for region x register (MCE_SADDRx) . . . . . | 2444 |
| 51.6.9 | MCE end address for region x register (MCE_EADDRx) . . . . . | 2444 |
| 51.6.10 | MCE master key x (MCE_MKEYRx) . . . . . | 2445 |
| 51.6.11 | MCE fast master key x (MCE_FMKEYRx) . . . . . | 2445 |
| 51.6.12 | MCE cipher context z configuration register (MCE_CCzCFGR) . . . . . | 2446 |
| 51.6.13 | MCE cipher context z nonce register 0 (MCE_CCzNR0) . . . . . | 2447 |
| 51.6.14 | MCE cipher context z nonce register 1 (MCE_CCzNR1) . . . . . | 2448 |
| 51.6.15 | MCE cipher context z key register 0 (MCE_CCzKEYR0) . . . . . | 2448 |
| 51.6.16 | MCE cipher context z key register 1 (MCE_CCzKEYR1) . . . . . | 2449 |
| 51.6.17 | MCE cipher context z key register 2 (MCE_CCzKEYR2) . . . . . | 2449 |
| 51.6.18 | MCE cipher context z key register 3 (MCE_CCzKEYR3) . . . . . | 2449 |
| 51.6.19 | MCE register map . . . . . | 2450 |
| 52 | Public key accelerator (PKA) . . . . . | 2452 |
| 52.1 | PKA introduction . . . . . | 2452 |
| 52.2 | PKA main features . . . . . | 2452 |
| 52.3 | PKA functional description . . . . . | 2453 |
| 52.3.1 | PKA block diagram . . . . . | 2453 |
| 52.3.2 | PKA internal signals . . . . . | 2453 |
| 52.3.3 | PKA reset and clocks . . . . . | 2453 |
| 52.3.4 | PKA public key acceleration . . . . . | 2454 |
| 52.3.5 | Typical applications for PKA . . . . . | 2456 |
| 52.3.6 | PKA procedure to perform an operation . . . . . | 2458 |
| 52.3.7 | PKA error management . . . . . | 2459 |
| 52.4 | PKA operating modes . . . . . | 2460 |
| 52.4.1 | Introduction . . . . . | 2460 |
| 52.4.2 | Montgomery parameter computation . . . . . | 2461 |
| 52.4.3 | Modular addition . . . . . | 2461 |
| 52.4.4 | Modular subtraction . . . . . | 2462 |
| 52.4.5 | Modular and Montgomery multiplication . . . . . | 2462 |
| 52.4.6 | Modular exponentiation . . . . . | 2463 |
| 52.4.7 | Modular inversion . . . . . | 2465 |
| 52.4.8 | Modular reduction . . . . . | 2465 |
| 52.4.9 | Arithmetic addition . . . . . | 2466 |
| 52.4.10 | Arithmetic subtraction . . . . . | 2466 |
| 52.4.11 | Arithmetic multiplication . . . . . | 2467 |
| 52.4.12 | Arithmetic comparison . . . . . | 2467 |
| 52.4.13 | RSA CRT exponentiation . . . . . | 2467 |
| 52.4.14 | Point on elliptic curve Fp check . . . . . | 2468 |
| 52.4.15 | ECC Fp scalar multiplication . . . . . | 2469 |
| 52.4.16 | ECDSA sign . . . . . | 2470 |
| 52.4.17 | ECDSA verification . . . . . | 2472 |
| 52.4.18 | ECC complete addition . . . . . | 2473 |
| 52.4.19 | ECC double base ladder . . . . . | 2473 |
| 52.4.20 | ECC projective to affine . . . . . | 2474 |
| 52.5 | Example of configurations and processing times . . . . . | 2475 |
| 52.5.1 | Supported elliptic curves . . . . . | 2475 |
| 52.5.2 | Computation times . . . . . | 2477 |
| 52.6 | PKA interrupts . . . . . | 2479 |
| 52.7 | PKA registers . . . . . | 2480 |
| 52.7.1 | PKA control register (PKA_CR) . . . . . | 2480 |
| 52.7.2 | PKA status register (PKA_SR) . . . . . | 2482 |
| 52.7.3 | PKA clear flag register (PKA_CLRFR) . . . . . | 2483 |
| 52.7.4 | PKA RAM . . . . . | 2483 |
| 52.7.5 | PKA register map . . . . . | 2484 |
| 53 | Advanced-control timers (TIM1/TIM8) . . . . . | 2485 |
| 53.1 | TIM1/TIM8 introduction . . . . . | 2485 |
| 53.2 | TIM1/TIM8 main features . . . . . | 2485 |
| 53.3 | TIM1/TIM8 functional description . . . . . | 2486 |
| 53.3.1 | Block diagram . . . . . | 2486 |
| 53.3.2 | TIM1/TIM8 pins and internal signals . . . . . | 2487 |
| 53.3.3 | Time-base unit . . . . . | 2491 |
| 53.3.4 | Counter modes . . . . . | 2493 |
| 53.3.5 | Repetition counter . . . . . | 2505 |
| 53.3.6 | External trigger input . . . . . | 2506 |
| 53.3.7 | Clock selection . . . . . | 2507 |
| 53.3.8 | Capture/compare channels . . . . . | 2511 |
| 53.3.9 | Input capture mode . . . . . | 2513 |
| 53.3.10 | PWM input mode . . . . . | 2514 |
| 53.3.11 | Forced output mode . . . . . | 2515 |
| 53.3.12 | Output compare mode . . . . . | 2516 |
| 53.3.13 | PWM mode . . . . . | 2517 |
| 53.3.14 | Asymmetric PWM mode . . . . . | 2525 |
| 53.3.15 | Combined PWM mode . . . . . | 2526 |
| 53.3.16 | Combined 3-phase PWM mode . . . . . | 2527 |
| 53.3.17 | Complementary outputs and dead-time insertion . . . . . | 2528 |
| 53.3.18 | Using the break function . . . . . | 2531 |
| 53.3.19 | Bidirectional break inputs . . . . . | 2537 |
| 53.3.20 | Clearing the tim_ocxref signal on an external event . . . . . | 2538 |
| 53.3.21 | 6-step PWM generation . . . . . | 2539 |
| 53.3.22 | One-pulse mode . . . . . | 2540 |
| 53.3.23 | Retriggerable One-pulse mode . . . . . | 2542 |
| 53.3.24 | Pulse on compare mode . . . . . | 2543 |
| 53.3.25 | Encoder interface mode . . . . . | 2545 |
| 53.3.26 | Direction bit output . . . . . | 2562 |
| 53.3.27 | UIF bit remapping . . . . . | 2563 |
| 53.3.28 | Timer input XOR function . . . . . | 2563 |
| 53.3.29 | Interfacing with Hall sensors . . . . . | 2563 |
| 53.3.30 | Timer synchronization . . . . . | 2565 |
| 53.3.31 | ADC triggers . . . . . | 2570 |
| 53.3.32 | ADC synchronization . . . . . | 2570 |
| 53.3.33 | DMA burst mode . . . . . | 2571 |
| 53.3.34 | TIM1/TIM8 DMA requests . . . . . | 2572 |
| 53.3.35 | Debug mode . . . . . | 2572 |
| 53.4 | TIM1/TIM8 low-power modes . . . . . | 2573 |
| 53.5 | TIM1/TIM8 interrupts . . . . . | 2573 |
| 53.6 | TIM1/TIM8 registers . . . . . | 2574 |
| 53.6.1 | TIMx control register 1 (TIMx_CR1)(x = 1, 8) . . . . . | 2574 |
| 53.6.2 | TIMx control register 2 (TIMx_CR2)(x = 1, 8) . . . . . | 2575 |
| 53.6.3 | TIMx slave mode control register (TIMx_SMCR)(x = 1, 8) . . . . . | 2579 |
| 53.6.4 | TIMx DMA/interrupt enable register (TIMx_DIER)(x = 1, 8) . . . . . | 2583 |
| 53.6.5 | TIMx status register (TIMx_SR)(x = 1, 8) . . . . . | 2584 |
| 53.6.6 | TIMx event generation register (TIMx_EGR)(x = 1, 8) . . . . . | 2587 |
| 53.6.7 | TIMx capture/compare mode register 1 (TIMx_CCMR1) (x = 1, 8) . . . . . | 2588 |
| 53.6.8 | TIMx capture/compare mode register 1 [alternate] (TIMx_CCMR1)(x = 1, 8) . . . . . | 2590 |
| 53.6.9 | TIMx capture/compare mode register 2 (TIMx_CCMR2) (x = 1, 8) . . . . . | 2593 |
| 53.6.10 | TIMx capture/compare mode register 2 [alternate] (TIMx_CCMR2)(x = 1, 8) . . . . . | 2594 |
| 53.6.11 | TIMx capture/compare enable register (TIMx_CCER)(x = 1, 8) . . . . . | 2597 |
| 53.6.12 | TIMx counter (TIMx_CNT)(x = 1, 8) . . . . . | 2601 |
| 53.6.13 | TIMx prescaler (TIMx_PSC)(x = 1, 8) . . . . . | 2601 |
| 53.6.14 | TIMx autoreload register (TIMx_ARR)(x = 1, 8) . . . . . | 2602 |
| 53.6.15 | TIMx repetition counter register (TIMx_RCR)(x = 1, 8) . . . . . | 2602 |
| 53.6.16 | TIMx capture/compare register 1 (TIMx_CCR1)(x = 1, 8) . . . . . | 2603 |
| 53.6.17 | TIMx capture/compare register 2 (TIMx_CCR2)(x = 1, 8) . . . . . | 2603 |
| 53.6.18 | TIMx capture/compare register 3 (TIMx_CCR3)(x = 1, 8) . . . . . | 2604 |
| 53.6.19 | TIMx capture/compare register 4 (TIMx_CCR4)(x = 1, 8) . . . . . | 2605 |
| 53.6.20 | TIMx break and dead-time register (TIMx_BDTR)(x = 1, 8) . . . . . | 2606 |
| 53.6.21 | TIMx capture/compare register 5 (TIMx_CCR5)(x = 1, 8) . . . . . | 2610 |
| 53.6.22 | TIMx capture/compare register 6 (TIMx_CCR6)(x = 1, 8) . . . . . | 2611 |
| 53.6.23 | TIMx capture/compare mode register 3 (TIMx_CCMR3) (x = 1, 8) . . . . . | 2612 |
| 53.6.24 | TIMx timer deadtime register 2 (TIMx_DTR2)(x = 1, 8) . . . . . | 2613 |
| 53.6.25 | TIMx timer encoder control register (TIMx_ECR)(x = 1, 8) . . . . . | 2614 |
| 53.6.26 | TIMx timer input selection register (TIMx_TISEL)(x = 1, 8) . . . . . | 2615 |
| 53.6.27 | TIMx alternate function option register 1 (TIMx_AF1)(x = 1, 8) . . . . . | 2616 |
| 53.6.28 | TIMx alternate function register 2 (TIMx_AF2)(x = 1, 8) . . . . . | 2619 |
| 53.6.29 | TIMx DMA control register (TIMx_DCR)(x = 1, 8) . . . . . | 2621 |
| 53.6.30 | TIMx DMA address for full transfer (TIMx_DMAR)(x = 1, 8) . . . . . | 2623 |
| 53.6.31 | TIMx register map . . . . . | 2623 |
| 54 | General-purpose timers (TIM2/TIM3/TIM4/TIM5) . . . . . | 2626 |
| 54.1 | TIM2/TIM3/TIM4/TIM5 introduction . . . . . | 2626 |
| 54.2 | TIM2/TIM3/TIM4/TIM5 main features . . . . . | 2626 |
| 54.3 | TIM2/TIM3/TIM4/TIM5 implementation . . . . . | 2627 |
| 54.4 | TIM2/TIM3/TIM4/TIM5 functional description . . . . . | 2628 |
| 54.4.1 | Block diagram . . . . . | 2628 |
| 54.4.2 | TIM2/TIM3/TIM4/TIM5 pins and internal signals . . . . . | 2629 |
| 54.4.3 | Time-base unit . . . . . | 2632 |
| 54.4.4 | Counter modes . . . . . | 2634 |
| 54.4.5 | Clock selection . . . . . | 2646 |
| 54.4.6 | Capture/compare channels . . . . . | 2650 |
| 54.4.7 | Input capture mode . . . . . | 2652 |
| 54.4.8 | PWM input mode . . . . . | 2653 |
| 54.4.9 | Forced output mode . . . . . | 2654 |
| 54.4.10 | Output compare mode . . . . . | 2654 |
| 54.4.11 | PWM mode . . . . . | 2656 |
| 54.4.12 | Asymmetric PWM mode . . . . . | 2664 |
| 54.4.13 | Combined PWM mode . . . . . | 2665 |
| 54.4.14 | Clearing the tim_ocxref signal on an external event . . . . . | 2666 |
| 54.4.15 | One-pulse mode . . . . . | 2668 |
| 54.4.16 | Retriggerable one-pulse mode . . . . . | 2669 |
| 54.4.17 | Pulse on compare mode . . . . . | 2670 |
| 54.4.18 | Encoder interface mode . . . . . | 2672 |
| 54.4.19 | Direction bit output . . . . . | 2690 |
| 54.4.20 | UIF bit remapping . . . . . | 2691 |
| 54.4.21 | Timer input XOR function . . . . . | 2691 |
| 54.4.22 | Timers and external trigger synchronization . . . . . | 2691 |
| 54.4.23 | Timer synchronization . . . . . | 2695 |
| 54.4.24 | ADC triggers . . . . . | 2700 |
| 54.4.25 | ADC synchronization . . . . . | 2701 |
| 54.4.26 | DMA burst mode . . . . . | 2702 |
| 54.4.27 | TIM2/TIM3/TIM4/TIM5 DMA requests . . . . . | 2703 |
| 54.4.28 | Debug mode . . . . . | 2703 |
| 54.4.29 | TIM2/TIM3/TIM4/TIM5 low-power modes . . . . . | 2703 |
| 54.4.30 | TIM2/TIM3/TIM4/TIM5 interrupts . . . . . | 2704 |
| 54.5 | TIM2/TIM3/TIM4/TIM5 registers . . . . . | 2705 |
| 54.5.1 | TIMx control register 1 (TIMx_CR1)(x = 2 to 5) . . . . . | 2705 |
| 54.5.2 | TIMx control register 2 (TIMx_CR2)(x = 2 to 5) . . . . . | 2706 |
| 54.5.3 | TIMx slave mode control register (TIMx_SMCR)(x = 2 to 5) . . . . . | 2708 |
| 54.5.4 | TIMx DMA/Interrupt enable register (TIMx_DIER)(x = 2 to 5) . . . . . | 2712 |
| 54.5.5 | TIMx status register (TIMx_SR)(x = 2 to 5) . . . . . | 2713 |
| 54.5.6 | TIMx event generation register (TIMx_EGR)(x = 2 to 5) . . . . . | 2715 |
| 54.5.7 | TIMx capture/compare mode register 1 (TIMx_CCMR1)(x = 2 to 5) . . . . . | 2716 |
| 54.5.8 | TIMx capture/compare mode register 1 [alternate] (TIMx_CCMR1)(x = 2 to 5) . . . . . | 2718 |
| 54.5.9 | TIMx capture/compare mode register 2 (TIMx_CCMR2)(x = 2 to 5) . . . . . | 2720 |
| 54.5.10 | TIMx capture/compare mode register 2 [alternate] (TIMx_CCMR2)(x = 2 to 5) . . . . . | 2721 |
| 54.5.11 | TIMx capture/compare enable register (TIMx_CCER)(x = 2 to 5) . . . . . | 2724 |
| 54.5.12 | TIMx counter (TIMx_CNT)(x = 2 to 5) . . . . . | 2726 |
| 54.5.13 | TIMx prescaler (TIMx_PSC)(x = 2 to 5) . . . . . | 2726 |
| 54.5.14 | TIMx autoreload register (TIMx_ARR)(x = 2 to 5) . . . . . | 2727 |
| 54.5.15 | TIMx capture/compare register 1 (TIMx_CCR1)(x = 2 to 5) . . . . . | 2727 |
| 54.5.16 | TIMx capture/compare register 2 (TIMx_CCR2)(x = 2 to 5) . . . . . | 2728 |
| 54.5.17 | TIMx capture/compare register 3 (TIMx_CCR3)(x = 2 to 5) . . . . . | 2729 |
| 54.5.18 | TIMx capture/compare register 4 (TIMx_CCR4)(x = 2 to 5) . . . . . | 2730 |
| 54.5.19 | TIMx timer encoder control register (TIMx_ECR)(x = 2 to 5) . . . . . | 2731 |
| 54.5.20 | TIMx timer input selection register (TIMx_TISEL)(x = 2 to 5) . . . . . | 2732 |
| 54.5.21 | TIMx alternate function register 1 (TIMx_AF1)(x = 2 to 5) . . . . . | 2733 |
| 54.5.22 | TIMx alternate function register 2 (TIMx_AF2)(x = 2 to 5) . . . . . | 2734 |
| 54.5.23 | TIMx DMA control register (TIMx_DCR)(x = 2 to 5) . . . . . | 2735 |
| 54.5.24 | TIMx DMA address for full transfer (TIMx_DMAR)(x = 2 to 5) . . . . . | 2736 |
| 54.5.25 | TIMx register map . . . . . | 2737 |
| 55 | Basic timers (TIM6/TIM7/TIM18) . . . . . | 2740 |
| 55.1 | TIM6/TIM7/TIM18 introduction . . . . . | 2740 |
| 55.2 | TIM6/TIM7/TIM18 main features . . . . . | 2740 |
| 55.3 | TIM6/TIM7/TIM18 functional description . . . . . | 2740 |
| 55.3.1 | TIM6/TIM7/TIM18 block diagram . . . . . | 2740 |
| 55.3.2 | TIM6/TIM7/TIM18 internal signals . . . . . | 2741 |
| 55.3.3 | TIM6/TIM7/TIM18 clocks . . . . . | 2741 |
| 55.3.4 | Time-base unit . . . . . | 2742 |
| 55.3.5 | Counting mode . . . . . | 2744 |
| 55.3.6 | UIF bit remapping . . . . . | 2750 |
| 55.3.7 | ADC triggers . . . . . | 2751 |
| 55.3.8 | ADC synchronization . . . . . | 2751 |
| 55.3.9 | TIM6/TIM7/TIM18 DMA requests . . . . . | 2752 |
| 55.3.10 | Debug mode . . . . . | 2752 |
| 55.3.11 | TIM6/TIM7/TIM18 low-power modes . . . . . | 2752 |
| 55.3.12 | TIM6/TIM7/TIM18 interrupts . . . . . | 2752 |
| 55.4 | TIM6/TIM7/TIM18 registers . . . . . | 2753 |
| 55.4.1 | TIMx control register 1 (TIMx_CR1)(x = 6, 7, 18) . . . . . | 2753 |
| 55.4.2 | TIMx control register 2 (TIMx_CR2)(x = 6, 7, 18) . . . . . | 2755 |
| 55.4.3 | TIMx DMA/Interrupt enable register (TIMx_DIER)(x = 6, 7, 18) . . . . | 2755 |
| 55.4.4 | TIMx status register (TIMx_SR)(x = 6, 7, 18) . . . . . | 2756 |
| 55.4.5 | TIMx event generation register (TIMx_EGR)(x = 6, 7, 18) . . . . . | 2756 |
| 55.4.6 | TIMx counter (TIMx_CNT)(x = 6, 7, 18) . . . . . | 2757 |
| 55.4.7 | TIMx prescaler (TIMx_PSC)(x = 6, 7, 18) . . . . . | 2757 |
| 55.4.8 | TIMx autoreload register (TIMx_ARR)(x = 6, 7, 18) . . . . . | 2758 |
| 55.4.9 | TIMx register map . . . . . | 2759 |
| 56 | General-purpose timers (TIM9/TIM10/TIM11/TIM12/TIM13/TIM14) . | 2760 |
| 56.1 | TIM9/TIM10/TIM11/TIM12/TIM13/TIM14 introduction . . . . . | 2760 |
| 56.2 | TIM9/TIM12 main features . . . . . | 2760 |
| 56.3 | TIM10/TIM11/TIM13/TIM14 main features . . . . . | 2761 |
| 56.4 | TIM9/TIM10/TIM11/TIM12/TIM13/TIM14 functional description . . . . . | 2762 |
| 56.4.1 | Block diagram . . . . . | 2762 |
| 56.4.2 | TIM9/TIM10/TIM11/TIM12/TIM13/TIM14 pins and internal signals . . | 2763 |
| 56.4.3 | Time-base unit . . . . . | 2765 |
| 56.4.4 | Counter modes . . . . . | 2767 |
| 56.4.5 | Clock selection . . . . . | 2770 |
| 56.4.6 | Capture/compare channels . . . . . | 2772 |
| 56.4.7 | Input capture mode . . . . . | 2774 |
| 56.4.8 | PWM input mode (TIM9/TIM12 only) . . . . . | 2775 |
| 56.4.9 | Forced output mode . . . . . | 2776 |
| 56.4.10 | Output compare mode . . . . . | 2777 |
| 56.4.11 | PWM mode . . . . . | 2778 |
| 56.4.12 | Combined PWM mode (TIM9/TIM12 only) . . . . . | 2783 |
| 56.4.13 | One-pulse mode . . . . . | 2784 |
| 56.4.14 | Retriggerable one pulse mode (TIM9/TIM12 only) . . . . . | 2786 |
| 56.4.15 | UIF bit remapping . . . . . | 2787 |
| 56.4.16 | Timer input XOR function . . . . . | 2787 |
| 56.4.17 | TIM9/TIM12 external trigger synchronization . . . . . | 2787 |
| 56.4.18 | Slave mode – combined reset + trigger mode . . . . . | 2790 |
| 56.4.19 | Slave mode – combined reset + gated mode . . . . . | 2790 |
| 56.4.20 | Timer synchronization (TIM9/TIM12 only) . . . . . | 2790 |
| 56.4.21 | Using timer output as trigger for other timers (TIM10/TIM11/TIM13/TIM14 only) . . . . . | 2790 |
| 56.4.22 | ADC triggers (TIM9/TIM12 only) . . . . . | 2790 |
| 56.4.23 | ADC synchronization (TIM9/TIM12 only) . . . . . | 2791 |
| 56.4.24 | Debug mode ..... | 2792 |
| 56.5 | TIM9/TIM10/TIM11/TIM12/TIM13/TIM14 low-power modes ..... | 2792 |
| 56.6 | TIM9/TIM10/TIM11/TIM12/TIM13/TIM14 interrupts ..... | 2792 |
| 56.7 | TIM9/TIM12 registers ..... | 2792 |
| 56.7.1 | TIMx control register 1 (TIMx_CR1)(x = 9, 12) ..... | 2793 |
| 56.7.2 | TIM12 control register 2 (TIMx_CR2)(x = 9, 12) ..... | 2794 |
| 56.7.3 | TIMx slave mode control register (TIMx_SMCR)(x = 9, 12) ..... | 2795 |
| 56.7.4 | TIMx interrupt enable register (TIMx_DIER)(x = 9, 12) ..... | 2797 |
| 56.7.5 | TIMx status register (TIMx_SR)(x = 9, 12) ..... | 2798 |
| 56.7.6 | TIMx event generation register (TIMx_EGR)(x = 9, 12) ..... | 2799 |
| 56.7.7 | TIMx capture/compare mode register 1 (TIMx_CCMR1)(x = 9, 12) . | 2800 |
| 56.7.8 | TIMx capture/compare mode register 1 [alternate] (TIMx_CCMR1)(x = 9, 12) ..... | 2801 |
| 56.7.9 | TIMx capture/compare enable register (TIMx_CCER)(x = 9, 12) . . . | 2804 |
| 56.7.10 | TIMx counter (TIMx_CNT)(x = 9, 12) ..... | 2805 |
| 56.7.11 | TIMx prescaler (TIMx_PSC)(x = 9, 12) ..... | 2806 |
| 56.7.12 | TIMx autoreload register (TIMx_ARR)(x = 9, 12) ..... | 2806 |
| 56.7.13 | TIMx capture/compare register 1 (TIMx_CCR1)(x = 9, 12) ..... | 2807 |
| 56.7.14 | TIMx capture/compare register 2 (TIMx_CCR2)(x = 9, 12) ..... | 2807 |
| 56.7.15 | TIMx timer input selection register (TIMx_TISEL)(x = 9, 12) ..... | 2808 |
| 56.7.16 | TIM9/TIM12 register map ..... | 2809 |
| 56.8 | TIM10/TIM11/TIM13/TIM14 registers ..... | 2811 |
| 56.8.1 | TIMx control register 1 (TIMx_CR1)(x = 10, 11, 13, 14) ..... | 2811 |
| 56.8.2 | TIMx interrupt enable register (TIMx_DIER)(x = 10, 11, 13, 14) . . . | 2812 |
| 56.8.3 | TIMx status register (TIMx_SR)(x = 10, 11, 13, 14) ..... | 2812 |
| 56.8.4 | TIMx event generation register (TIMx_EGR)(x = 10, 11, 13, 14) . . . | 2813 |
| 56.8.5 | TIMx capture/compare mode register 1 (TIMx_CCMR1)(x = 10, 11, 13, 14) ..... | 2814 |
| 56.8.6 | TIMx capture/compare mode register 1 [alternate] (TIMx_CCMR1)(x = 10, 11, 13, 14) ..... | 2815 |
| 56.8.7 | TIMx capture/compare enable register (TIMx_CCER)(x = 10, 11, 13, 14) ..... | 2817 |
| 56.8.8 | TIMx counter (TIMx_CNT)(x = 10, 11, 13, 14) ..... | 2818 |
| 56.8.9 | TIMx prescaler (TIMx_PSC)(x = 10, 11, 13, 14) ..... | 2819 |
| 56.8.10 | TIMx autoreload register (TIMx_ARR)(x = 10, 11, 13, 14) ..... | 2819 |
| 56.8.11 | TIMx capture/compare register 1 (TIMx_CCR1)(x = 10, 11, 13, 14) . | 2820 |
| 56.8.12 | TIMx timer input selection register (TIMx_TISEL)(x = 10, 11, 13, 14) | 2820 |
| 56.8.13 | TIM10/TIM11/TIM13/TIM14 register map ..... | 2821 |
| 57 | General purpose timers (TIM15/TIM16/TIM17) . . . . . | 2823 |
| 57.1 | TIM15/TIM16/TIM17 introduction . . . . . | 2823 |
| 57.2 | TIM15 main features . . . . . | 2823 |
| 57.3 | TIM16/TIM17 main features . . . . . | 2824 |
| 57.4 | TIM15/TIM16/TIM17 functional description . . . . . | 2825 |
| 57.4.1 | Block diagram . . . . . | 2825 |
| 57.4.2 | TIM15/TIM16/TIM17 pins and internal signals . . . . . | 2826 |
| 57.4.3 | Time-base unit . . . . . | 2829 |
| 57.4.4 | Counter modes . . . . . | 2831 |
| 57.4.5 | Repetition counter . . . . . | 2835 |
| 57.4.6 | Clock selection . . . . . | 2836 |
| 57.4.7 | Capture/compare channels . . . . . | 2838 |
| 57.4.8 | Input capture mode . . . . . | 2840 |
| 57.4.9 | PWM input mode (only for TIM15) . . . . . | 2842 |
| 57.4.10 | Forced output mode . . . . . | 2843 |
| 57.4.11 | Output compare mode . . . . . | 2843 |
| 57.4.12 | PWM mode . . . . . | 2845 |
| 57.4.13 | Combined PWM mode (TIM15 only) . . . . . | 2850 |
| 57.4.14 | Complementary outputs and dead-time insertion . . . . . | 2851 |
| 57.4.15 | Using the break function . . . . . | 2854 |
| 57.4.16 | Bidirectional break input . . . . . | 2858 |
| 57.4.17 | Clearing the tim_ocxref signal on an external event . . . . . | 2859 |
| 57.4.18 | 6-step PWM generation . . . . . | 2860 |
| 57.4.19 | One-pulse mode . . . . . | 2862 |
| 57.4.20 | Retriggerable one pulse mode (TIM15 only) . . . . . | 2863 |
| 57.4.21 | UIF bit remapping . . . . . | 2864 |
| 57.4.22 | Timer input XOR function (TIM15 only) . . . . . | 2864 |
| 57.4.23 | External trigger synchronization (TIM15 only) . . . . . | 2864 |
| 57.4.24 | Slave mode – combined reset + trigger mode (TIM15 only) . . . . . | 2867 |
| 57.4.25 | Slave mode – combined reset + gated mode (TIM15 only) . . . . . | 2867 |
| 57.4.26 | Timer synchronization (TIM15 only) . . . . . | 2868 |
| 57.4.27 | Using timer output as trigger for other timers (TIM16/TIM17 only) . . . . . | 2868 |
| 57.4.28 | ADC triggers (TIM15 only) . . . . . | 2868 |
| 57.4.29 | ADC synchronization (TIM15 only) . . . . . | 2869 |
| 57.4.30 | DMA burst mode . . . . . | 2869 |
| 57.4.31 | TIM15/TIM16/TIM17 DMA requests . . . . . | 2870 |
| 57.4.32 | Debug mode . . . . . | 2871 |
| 57.5 | TIM15/TIM16/TIM17 low-power modes . . . . . | 2871 |
| 57.6 | TIM15/TIM16/TIM17 interrupts . . . . . | 2871 |
| 57.7 | TIM15 registers . . . . . | 2872 |
| 57.7.1 | TIM15 control register 1 (TIM15_CR1) . . . . . | 2872 |
| 57.7.2 | TIM15 control register 2 (TIM15_CR2) . . . . . | 2873 |
| 57.7.3 | TIM15 slave mode control register (TIM15_SMCR) . . . . . | 2875 |
| 57.7.4 | TIM15 DMA/interrupt enable register (TIM15_DIER) . . . . . | 2877 |
| 57.7.5 | TIM15 status register (TIM15_SR) . . . . . | 2878 |
| 57.7.6 | TIM15 event generation register (TIM15_EGR) . . . . . | 2880 |
| 57.7.7 | TIM15 capture/compare mode register 1 (TIM15_CCMR1) . . . . . | 2881 |
| 57.7.8 | TIM15 capture/compare mode register 1 [alternate] (TIM15_CCMR1) . . . . . | 2883 |
| 57.7.9 | TIM15 capture/compare enable register (TIM15_CCER) . . . . . | 2885 |
| 57.7.10 | TIM15 counter (TIM15_CNT) . . . . . | 2888 |
| 57.7.11 | TIM15 prescaler (TIM15_PSC) . . . . . | 2888 |
| 57.7.12 | TIM15 autoreload register (TIM15_ARR) . . . . . | 2889 |
| 57.7.13 | TIM15 repetition counter register (TIM15_RCR) . . . . . | 2889 |
| 57.7.14 | TIM15 capture/compare register 1 (TIM15_CCR1) . . . . . | 2890 |
| 57.7.15 | TIM15 capture/compare register 2 (TIM15_CCR2) . . . . . | 2891 |
| 57.7.16 | TIM15 break and dead-time register (TIM15_BDTR) . . . . . | 2891 |
| 57.7.17 | TIM15 timer deadtime register 2 (TIM15_DTR2) . . . . . | 2894 |
| 57.7.18 | TIM15 input selection register (TIM15_TISEL) . . . . . | 2895 |
| 57.7.19 | TIM15 alternate function register 1 (TIM15_AF1) . . . . . | 2896 |
| 57.7.20 | TIM15 alternate function register 2 (TIM15_AF2) . . . . . | 2898 |
| 57.7.21 | TIM15 DMA control register (TIM15_DCR) . . . . . | 2899 |
| 57.7.22 | TIM15 DMA address for full transfer (TIM15_DMAR) . . . . . | 2900 |
| 57.7.23 | TIM15 register map . . . . . | 2900 |
| 57.8 | TIM16/TIM17 registers . . . . . | 2903 |
| 57.8.1 | TIMx control register 1 (TIMx_CR1)(x = 16 to 17) . . . . . | 2903 |
| 57.8.2 | TIMx control register 2 (TIMx_CR2)(x = 16 to 17) . . . . . | 2904 |
| 57.8.3 | TIMx DMA/interrupt enable register (TIMx_DIER)(x = 16 to 17) . . . . . | 2905 |
| 57.8.4 | TIMx status register (TIMx_SR)(x = 16 to 17) . . . . . | 2906 |
| 57.8.5 | TIMx event generation register (TIMx_EGR)(x = 16 to 17) . . . . . | 2907 |
| 57.8.6 | TIMx capture/compare mode register 1 (TIMx_CCMR1) (x = 16 to 17) . . . . . | 2908 |
57.8.7 TIMx capture/compare mode register 1 [alternate]
(TIMx_CCMR1)(x = 16 to 17) . . . . . 2909
57.8.8 TIMx capture/compare enable register (TIMx_CCER)(x = 16 to 17) . 2911
57.8.9 TIMx counter (TIMx_CNT)(x = 16 to 17) . . . . . 2914
57.8.10 TIMx prescaler (TIMx_PSC)(x = 16 to 17) . . . . . 2914
57.8.11 TIMx auto-reautoreload register (TIMx_ARR)(x = 16 to 17) . . . . . 2915
57.8.12 TIMx repetition counter register (TIMx_RCR)(x = 16 to 17) . . . . . 2915
57.8.13 TIMx capture/compare register 1 (TIMx_CCR1)(x = 16 to 17) . . . . . 2916
57.8.14 TIMx break and dead-time register (TIMx_BDTR)(x = 16 to 17) . . . . . 2917
57.8.15 TIMx timer deadtime register 2 (TIMx_DTR2)(x = 16 to 17) . . . . . 2920
57.8.16 TIMx input selection register (TIMx_TISEL)(x = 16 to 17) . . . . . 2921
57.8.17 TIMx alternate function register 1 (TIMx_AF1)(x = 16 to 17) . . . . . 2921
57.8.18 TIMx alternate function register 2 (TIMx_AF2)(x = 16 to 17) . . . . . 2924
57.8.19 TIMx DMA control register (TIMx_DCR)(x = 16 to 17) . . . . . 2924
57.8.20 TIM16/TIM17 DMA address for full transfer
(TIMx_DMAR)(x = 16 to 17) . . . . . 2925
57.8.21 TIM16/TIM17 register map . . . . . 2927
58 Low-power timer (LPTIM) . . . . . 2929
58.1 LPTIM introduction . . . . . 2929
58.2 LPTIM main features . . . . . 2929
58.3 LPTIM implementation . . . . . 2930
58.4 LPTIM functional description . . . . . 2931
58.4.1 LPTIM block diagram . . . . . 2931
58.4.2 LPTIM pins and internal signals . . . . . 2932
58.4.3 LPTIM input and trigger mapping . . . . . 2934
58.4.4 LPTIM reset and clocks . . . . . 2935
58.4.5 Glitch filter . . . . . 2936
58.4.6 Prescaler . . . . . 2937
58.4.7 Trigger multiplexer . . . . . 2937
58.4.8 Operating mode . . . . . 2938
58.4.9 Timeout function . . . . . 2940
58.4.10 Waveform generation . . . . . 2940
58.4.11 Register update . . . . . 2941
58.4.12 Counter mode . . . . . 2942
58.4.13 Timer enable . . . . . 2942
58.4.14 Timer counter reset . . . . . 2943
| 58.4.15 | Encoder mode . . . . . | 2943 |
| 58.4.16 | Repetition counter . . . . . | 2945 |
| 58.4.17 | Capture/compare channels . . . . . | 2946 |
| 58.4.18 | Input capture mode . . . . . | 2947 |
| 58.4.19 | PWM mode . . . . . | 2949 |
| 58.4.20 | DMA requests . . . . . | 2951 |
| 58.4.21 | Debug mode . . . . . | 2952 |
| 58.5 | LPTIM low-power modes . . . . . | 2952 |
| 58.6 | LPTIM interrupts . . . . . | 2952 |
| 58.7 | LPTIM registers . . . . . | 2953 |
| 58.7.1 | LPTIMx interrupt and status register (LPTIMx_ISR)(x = 4 to 5) . . . . . | 2954 |
| 58.7.2 | LPTIMx interrupt and status register [alternate] (LPTIMx_ISR) (x = 1 to 3) . . . . . | 2955 |
| 58.7.3 | LPTIMx interrupt and status register [alternate] (LPTIMx_ISR) (x = 1 to 3) . . . . . | 2957 |
| 58.7.4 | LPTIMx interrupt clear register (LPTIMx_ICR)(x = 4 to 5) . . . . . | 2959 |
| 58.7.5 | LPTIMx interrupt clear register [alternate] (LPTIMx_ICR) (x = 1 to 3) . . . . . | 2960 |
| 58.7.6 | LPTIMx interrupt clear register [alternate] (LPTIMx_ICR) (x = 1 to 3) . . . . . | 2961 |
| 58.7.7 | LPTIMx interrupt enable register (LPTIMx_DIER)(x = 4 to 5) . . . . . | 2962 |
| 58.7.8 | LPTIMx interrupt enable register [alternate] (LPTIMx_DIER) (x = 1 to 3) . . . . . | 2964 |
| 58.7.9 | LPTIMx interrupt enable register [alternate] (LPTIMx_DIER) (x = 1 to 3) . . . . . | 2965 |
| 58.7.10 | LPTIM configuration register (LPTIM_CFGGR) . . . . . | 2967 |
| 58.7.11 | LPTIM control register (LPTIM_CR) . . . . . | 2970 |
| 58.7.12 | LPTIM compare register 1 (LPTIM_CCR1) . . . . . | 2971 |
| 58.7.13 | LPTIM autoreload register (LPTIM_ARR) . . . . . | 2972 |
| 58.7.14 | LPTIM counter register (LPTIM_CNT) . . . . . | 2972 |
| 58.7.15 | LPTIM configuration register 2 (LPTIM_CFGGR2) . . . . . | 2973 |
| 58.7.16 | LPTIM repetition register (LPTIM_RCR) . . . . . | 2974 |
| 58.7.17 | LPTIM capture/compare mode register 1 (LPTIM_CCMR1) . . . . . | 2974 |
| 58.7.18 | LPTIM compare register 2 (LPTIM_CCR2) . . . . . | 2977 |
| 58.7.19 | LPTIM register map . . . . . | 2977 |
| 59 | Independent watchdog (IWDG) . . . . . | 2980 |
| 59.1 | IWDG introduction . . . . . | 2980 |
- 59.2 IWDG main features . . . . . 2980
- 59.3 IWDG implementation . . . . . 2980
- 59.4 IWDG functional description . . . . . 2981
- 59.4.1 IWDG block diagram . . . . . 2981
- 59.4.2 IWDG internal signals . . . . . 2982
- 59.4.3 Software and hardware watchdog modes . . . . . 2982
- 59.4.4 Window option . . . . . 2983
- 59.4.5 Debug . . . . . 2986
- 59.4.6 Register access protection . . . . . 2986
- 59.5 IWDG low power modes . . . . . 2987
- 59.6 IWDG interrupts . . . . . 2987
- 59.7 IWDG registers . . . . . 2989
- 59.7.1 IWDG key register (IWDG_KR) . . . . . 2990
- 59.7.2 IWDG prescaler register (IWDG_PR) . . . . . 2990
- 59.7.3 IWDG reload register (IWDG_RLR) . . . . . 2991
- 59.7.4 IWDG status register (IWDG_SR) . . . . . 2991
- 59.7.5 IWDG window register (IWDG_WINR) . . . . . 2993
- 59.7.6 IWDG early wake-up interrupt register (IWDG_EWCR) . . . . . 2993
- 59.7.7 IWDG interrupt clear register (IWDG_ICR) . . . . . 2994
- 59.7.8 IWDG register map . . . . . 2995
- 60 System window watchdog (WWDG) . . . . . 2996
- 60.1 WWDG introduction . . . . . 2996
- 60.2 WWDG main features . . . . . 2996
- 60.3 WWDG implementation . . . . . 2996
- 60.4 WWDG functional description . . . . . 2997
- 60.4.1 WWDG block diagram . . . . . 2997
- 60.4.2 WWDG internal signals . . . . . 2997
- 60.4.3 Enabling the watchdog . . . . . 2998
- 60.4.4 Controlling the down-counter . . . . . 2998
- 60.4.5 How to program the watchdog timeout . . . . . 2998
- 60.4.6 Debug mode . . . . . 2999
- 60.5 WWDG interrupts . . . . . 3000
- 60.6 WWDG registers . . . . . 3000
- 60.6.1 WWDG control register (WWDG_CR) . . . . . 3000
- 60.6.2 WWDG configuration register (WWDG_CFR) . . . . . 3001
| 60.6.3 | WWDG status register (WWDG_SR) ..... | 3002 |
| 60.6.4 | WWDG register map ..... | 3002 |
| 61 | Real-time clock (RTC) ..... | 3003 |
| 61.1 | RTC introduction ..... | 3003 |
| 61.2 | RTC main features ..... | 3003 |
| 61.3 | RTC functional description ..... | 3004 |
| 61.3.1 | RTC block diagram ..... | 3004 |
| 61.3.2 | RTC pins and internal signals ..... | 3006 |
| 61.3.3 | GPIOs controlled by the RTC and TAMP ..... | 3007 |
| 61.3.4 | RTC secure protection modes ..... | 3010 |
| 61.3.5 | RTC privilege protection modes ..... | 3011 |
| 61.3.6 | Clock and prescalers ..... | 3012 |
| 61.3.7 | Real-time clock and calendar ..... | 3013 |
| 61.3.8 | Calendar ultra-low power mode ..... | 3014 |
| 61.3.9 | Programmable alarms ..... | 3014 |
| 61.3.10 | Periodic auto-wake-up ..... | 3014 |
| 61.3.11 | RTC initialization and configuration ..... | 3015 |
| 61.3.12 | Reading the calendar ..... | 3018 |
| 61.3.13 | Resetting the RTC ..... | 3019 |
| 61.3.14 | RTC synchronization ..... | 3020 |
| 61.3.15 | RTC reference clock detection ..... | 3020 |
| 61.3.16 | RTC smooth digital calibration ..... | 3021 |
| 61.3.17 | Timestamp function ..... | 3023 |
| 61.3.18 | Calibration clock output ..... | 3024 |
| 61.3.19 | Tamper and alarm output ..... | 3024 |
| 61.4 | RTC low-power modes ..... | 3025 |
| 61.5 | RTC interrupts ..... | 3025 |
| 61.6 | RTC registers ..... | 3027 |
| 61.6.1 | RTC time register (RTC_TR) ..... | 3027 |
| 61.6.2 | RTC date register (RTC_DR) ..... | 3028 |
| 61.6.3 | RTC subsecond register (RTC_SSR) ..... | 3029 |
| 61.6.4 | RTC initialization control and status register (RTC_ICSR) ..... | 3030 |
| 61.6.5 | RTC prescaler register (RTC_PRER) ..... | 3032 |
| 61.6.6 | RTC wake-up timer register (RTC_WUTR) ..... | 3033 |
| 61.6.7 | RTC control register (RTC_CR) ..... | 3033 |
- 61.6.8 RTC privilege mode control register (RTC_PRIVCFGR) . . . . . 3037
- 61.6.9 RTC secure configuration register (RTC_SECCFGR) . . . . . 3039
- 61.6.10 RTC write protection register (RTC_WPR) . . . . . 3040
- 61.6.11 RTC calibration register (RTC_CALR) . . . . . 3041
- 61.6.12 RTC shift control register (RTC_SHIFTTR) . . . . . 3042
- 61.6.13 RTC timestamp time register (RTC_TSTR) . . . . . 3043
- 61.6.14 RTC timestamp date register (RTC_TSDR) . . . . . 3044
- 61.6.15 RTC timestamp subsecond register (RTC_TSSSR) . . . . . 3045
- 61.6.16 RTC alarm A register (RTC_ALRMAR) . . . . . 3045
- 61.6.17 RTC alarm A subsecond register (RTC_ALRMASSR) . . . . . 3047
- 61.6.18 RTC alarm B register (RTC_ALRMBR) . . . . . 3048
- 61.6.19 RTC alarm B subsecond register (RTC_ALRMBSSR) . . . . . 3049
- 61.6.20 RTC status register (RTC_SR) . . . . . 3050
- 61.6.21 RTC nonsecure masked interrupt status register (RTC_MISR) . . . . . 3051
- 61.6.22 RTC secure masked interrupt status register (RTC_SMISR) . . . . . 3052
- 61.6.23 RTC status clear register (RTC_SCR) . . . . . 3053
- 61.6.24 RTC alarm A binary mode register (RTC_ALRABINR) . . . . . 3054
- 61.6.25 RTC alarm B binary mode register (RTC_ALRBBINR) . . . . . 3055
- 61.6.26 RTC register map . . . . . 3056
62 Tamper and backup registers (TAMP) . . . . . 3058
- 62.1 TAMP introduction . . . . . 3058
- 62.2 TAMP main features . . . . . 3059
- 62.3 TAMP functional description . . . . . 3060
- 62.3.1 TAMP block diagram . . . . . 3060
- 62.3.2 TAMP pins and internal signals . . . . . 3061
- 62.3.3 GPIOs controlled by the RTC and TAMP . . . . . 3063
- 62.3.4 TAMP register write protection . . . . . 3063
- 62.3.5 TAMP secure protection modes . . . . . 3063
- 62.3.6 Backup registers protection zones . . . . . 3064
- 62.3.7 TAMP privilege protection modes . . . . . 3064
- 62.3.8 Boot hardware key (BHK) . . . . . 3065
- 62.3.9 Tamper detection . . . . . 3065
- 62.3.10 TAMP backup registers and other device secrets erase . . . . . 3066
- 62.3.11 Tamper detection configuration and initialization . . . . . 3068
- 62.4 TAMP low-power modes . . . . . 3075
- 62.5 TAMP interrupts . . . . . 3075
| 62.6 | TAMP registers . . . . . | 3076 |
| 62.6.1 | TAMP control register 1 (TAMP_CR1) . . . . . | 3076 |
| 62.6.2 | TAMP control register 2 (TAMP_CR2) . . . . . | 3077 |
| 62.6.3 | TAMP control register 3 (TAMP_CR3) . . . . . | 3080 |
| 62.6.4 | TAMP filter control register (TAMP_FLTCR) . . . . . | 3081 |
| 62.6.5 | TAMP active tamper control register 1 (TAMP_ATCR1) . . . . . | 3083 |
| 62.6.6 | TAMP active tamper seed register (TAMP_ATSEEDR) . . . . . | 3085 |
| 62.6.7 | TAMP active tamper output register (TAMP_ATOR) . . . . . | 3085 |
| 62.6.8 | TAMP active tamper control register 2 (TAMP_ATCR2) . . . . . | 3086 |
| 62.6.9 | TAMP secure configuration register (TAMP_SECCFGR) . . . . . | 3089 |
| 62.6.10 | TAMP privilege configuration register (TAMP_PRIVCFGR) . . . . . | 3090 |
| 62.6.11 | TAMP interrupt enable register (TAMP_IER) . . . . . | 3091 |
| 62.6.12 | TAMP status register (TAMP_SR) . . . . . | 3093 |
| 62.6.13 | TAMP nonsecure masked interrupt status register (TAMP_MISR) . . . . . | 3095 |
| 62.6.14 | TAMP secure masked interrupt status register (TAMP_SMISR) . . . . . | 3097 |
| 62.6.15 | TAMP status clear register (TAMP_SCR) . . . . . | 3098 |
| 62.6.16 | TAMP monotonic counter 1 register (TAMP_COUNT1R) . . . . . | 3100 |
| 62.6.17 | TAMP option register (TAMP_OR) . . . . . | 3100 |
| 62.6.18 | TAMP resources protection configuration register (TAMP_RPCFGR) . . . . . | 3101 |
| 62.6.19 | TAMP backup x register (TAMP_BKPxR) . . . . . | 3102 |
| 62.6.20 | TAMP register map . . . . . | 3103 |
| 63 | Inter-integrated circuit interface (I2C) . . . . . | 3105 |
| 63.1 | I2C introduction . . . . . | 3105 |
| 63.2 | I2C main features . . . . . | 3105 |
| 63.3 | I2C implementation . . . . . | 3106 |
| 63.4 | I2C functional description . . . . . | 3106 |
| 63.4.1 | I2C block diagram . . . . . | 3107 |
| 63.4.2 | I2C pins and internal signals . . . . . | 3107 |
| 63.4.3 | I2C clock requirements . . . . . | 3108 |
| 63.4.4 | I2C mode selection . . . . . | 3108 |
| 63.4.5 | I2C initialization . . . . . | 3109 |
| 63.4.6 | I2C reset . . . . . | 3113 |
| 63.4.7 | I2C data transfer . . . . . | 3114 |
| 63.4.8 | I2C target mode . . . . . | 3116 |
| 63.4.9 | I2C controller mode . . . . . | 3125 |
| 63.4.10 | I2C_TIMINGR register configuration examples . . . . . | 3136 |
| 63.4.11 | SMBus specific features . . . . . | 3138 |
| 63.4.12 | SMBus initialization . . . . . | 3140 |
| 63.4.13 | SMBus I2C_TIMEOUTR register configuration examples . . . . . | 3142 |
| 63.4.14 | SMBus target mode . . . . . | 3143 |
| 63.4.15 | SMBus controller mode . . . . . | 3146 |
| 63.4.16 | Wake-up from Stop mode on address match . . . . . | 3149 |
| 63.4.17 | Error conditions . . . . . | 3150 |
| 63.5 | I2C in low-power modes . . . . . | 3152 |
| 63.6 | I2C interrupts . . . . . | 3152 |
| 63.7 | I2C DMA requests . . . . . | 3153 |
| 63.7.1 | Transmission using DMA . . . . . | 3153 |
| 63.7.2 | Reception using DMA . . . . . | 3153 |
| 63.8 | I2C debug modes . . . . . | 3154 |
| 63.9 | I2C registers . . . . . | 3154 |
| 63.9.1 | I2C control register 1 (I2C_CR1) . . . . . | 3154 |
| 63.9.2 | I2C control register 2 (I2C_CR2) . . . . . | 3157 |
| 63.9.3 | I2C own address 1 register (I2C_OAR1) . . . . . | 3159 |
| 63.9.4 | I2C own address 2 register (I2C_OAR2) . . . . . | 3159 |
| 63.9.5 | I2C timing register (I2C_TIMINGR) . . . . . | 3160 |
| 63.9.6 | I2C timeout register (I2C_TIMEOUTR) . . . . . | 3161 |
| 63.9.7 | I2C interrupt and status register (I2C_ISR) . . . . . | 3162 |
| 63.9.8 | I2C interrupt clear register (I2C_ICR) . . . . . | 3165 |
| 63.9.9 | I2C PEC register (I2C_PECR) . . . . . | 3166 |
| 63.9.10 | I2C receive data register (I2C_RXDR) . . . . . | 3166 |
| 63.9.11 | I2C transmit data register (I2C_TXDR) . . . . . | 3167 |
| 63.9.12 | I2C register map . . . . . | 3168 |
| 64 | Improved inter-integrated circuit (I3C) . . . . . | 3169 |
| 64.1 | I3C introduction . . . . . | 3169 |
| 64.2 | I3C main features . . . . . | 3169 |
| 64.3 | I3C implementation . . . . . | 3171 |
| 64.3.1 | I3C instantiation . . . . . | 3171 |
| 64.3.2 | I3C wake-up from low-power mode(s) . . . . . | 3171 |
| 64.3.3 | I3C FIFOs . . . . . | 3171 |
| 64.3.4 | I3C triggers . . . . . | 3171 |
| 64.3.5 | I3C interrupt(s) . . . . . | 3171 |
| 64.3.6 | I3C MIPI ® support . . . . . | 3173 |
| 64.4 | I3C block diagram . . . . . | 3174 |
| 64.5 | I3C pins and internal signals . . . . . | 3174 |
| 64.6 | I3C reset and clocks . . . . . | 3175 |
| 64.6.1 | I3C reset . . . . . | 3175 |
| 64.6.2 | I3C clocks and requirements . . . . . | 3175 |
| 64.7 | I3C peripheral state and programming . . . . . | 3177 |
| 64.7.1 | I3C peripheral state . . . . . | 3177 |
| 64.7.2 | I3C controller state and programming sequence . . . . . | 3178 |
| 64.7.3 | I3C target state and programming sequence . . . . . | 3182 |
| 64.8 | I3C registers and programming . . . . . | 3186 |
| 64.8.1 | I3C register set, as controller/target . . . . . | 3186 |
| 64.8.2 | I3C registers and fields use versus peripheral state, as controller . . . . . | 3187 |
| 64.8.3 | I3C registers and fields usage versus peripheral state, as target . . . . . | 3190 |
| 64.9 | I3C bus transfers and programming . . . . . | 3192 |
| 64.9.1 | I3C command set (CCC), as controller/target . . . . . | 3192 |
| 64.9.2 | I3C broadcast/direct CCC transfer (except ENTDAA, RSTACT), as controller . . . . . | 3196 |
| 64.9.3 | I3C broadcast ENTDAA CCC transfer, as controller . . . . . | 3198 |
| 64.9.4 | I3C broadcast/direct RSTACT CCC transfer, as controller . . . . . | 3198 |
| 64.9.5 | I3C broadcast/direct CCC transfer (except ENTDAA, DEFTGTS, DEFGRPA), as target . . . . . | 3200 |
| 64.9.6 | I3C broadcast ENTDAA CCC transfer, as target . . . . . | 3202 |
| 64.9.7 | I3C broadcast DEFTGTS CCC transfer, as target . . . . . | 3203 |
| 64.9.8 | I3C broadcast DEFGRPA CCC transfer, as target . . . . . | 3204 |
| 64.9.9 | I3C direct GETSTATUS CCC response, as target . . . . . | 3205 |
| 64.9.10 | I3C private read/write transfer, as controller . . . . . | 3206 |
| 64.9.11 | I3C private read/write transfer, as target . . . . . | 3207 |
| 64.9.12 | Legacy I2C read/write transfer, as controller . . . . . | 3208 |
| 64.9.13 | I3C IBI transfer, as controller/target . . . . . | 3209 |
| 64.9.14 | I3C hot-join request transfer, as controller/target . . . . . | 3211 |
| 64.9.15 | I3C controller-role request transfer, as controller/target . . . . . | 3212 |
| 64.10 | I3C FIFOs management, as controller . . . . . | 3213 |
| 64.10.1 | C-FIFO management, as controller . . . . . | 3213 |
| 64.10.2 | TX-FIFO management, as controller . . . . . | 3214 |
| 64.10.3 | RX-FIFO management, as controller . . . . . | 3217 |
| 64.10.4 | S-FIFO management, as controller . . . . . | 3219 |
| 64.11 | I3C FIFOs management, as target . . . . . | 3221 |
| 64.11.1 | RX-FIFO management, as target . . . . . | 3221 |
| 64.11.2 | TX-FIFO management, as target . . . . . | 3222 |
| 64.12 | I3C error management . . . . . | 3225 |
| 64.12.1 | Controller error management . . . . . | 3225 |
| 64.12.2 | Target error management . . . . . | 3227 |
| 64.13 | I3C wake-up from low-power mode(s) . . . . . | 3228 |
| 64.13.1 | Wake-up from Stop . . . . . | 3228 |
| 64.14 | I3C in low-power modes . . . . . | 3231 |
| 64.15 | I3C interrupts . . . . . | 3232 |
| 64.16 | I3C registers . . . . . | 3233 |
| 64.16.1 | I3C message control register (I3C_CR) . . . . . | 3233 |
| 64.16.2 | I3C message control register [alternate] (I3C_CR) . . . . . | 3235 |
| 64.16.3 | I3C configuration register (I3C_CFGGR) . . . . . | 3237 |
| 64.16.4 | I3C receive data byte register (I3C_RDR) . . . . . | 3242 |
| 64.16.5 | I3C receive data word register (I3C_RDWR) . . . . . | 3242 |
| 64.16.6 | I3C transmit data byte register (I3C_TDR) . . . . . | 3243 |
| 64.16.7 | I3C transmit data word register (I3C_TDWR) . . . . . | 3244 |
| 64.16.8 | I3C IBI payload data register (I3C_IBIDR) . . . . . | 3246 |
| 64.16.9 | I3C target transmit configuration register (I3C_TGTTDR) . . . . . | 3247 |
| 64.16.10 | I3C status register (I3C_SR) . . . . . | 3248 |
| 64.16.11 | I3C status error register (I3C_SER) . . . . . | 3249 |
| 64.16.12 | I3C received message register (I3C_RMR) . . . . . | 3251 |
| 64.16.13 | I3C event register (I3C_EVR) . . . . . | 3252 |
| 64.16.14 | I3C interrupt enable register (I3C_IER) . . . . . | 3256 |
| 64.16.15 | I3C clear event register (I3C_CEVR) . . . . . | 3258 |
| 64.16.16 | I3C own device characteristics register (I3C_DEVR0) . . . . . | 3260 |
| 64.16.17 | I3C device x characteristics register (I3C_DEVRx) . . . . . | 3262 |
| 64.16.18 | I3C maximum read length register (I3C_MAXRLR) . . . . . | 3264 |
| 64.16.19 | I3C maximum write length register (I3C_MAXWLR) . . . . . | 3265 |
| 64.16.20 | I3C timing register 0 (I3C_TIMINGR0) . . . . . | 3266 |
| 64.16.21 | I3C timing register 1 (I3C_TIMINGR1) . . . . . | 3267 |
| 64.16.22 | I3C timing register 2 (I3C_TIMINGR2) . . . . . | 3269 |
| 64.16.23 | I3C bus characteristics register (I3C_BCR) . . . . . | 3270 |
| 64.16.24 | I3C device characteristics register (I3C_DCR) . . . . . | 3271 |
| 64.16.25 | I3C get capability register (I3C_GETCAPR) . . . . . | 3272 |
| 64.16.26 | I3C controller-role capability register (I3C_CRCAPR) . . . . . | 3273 |
| 64.16.27 | I3C get max data speed register (I3C_GETMXDSR) . . . . . | 3274 |
| 64.16.28 | I3C extended provisioned ID register (I3C_EPIDR) . . . . . | 3276 |
| 64.16.29 | I3C register map . . . . . | 3277 |
| 65 | Universal synchronous/asynchronous receiver transmitter (USART/UART) . . . . . | 3280 |
| 65.1 | USART introduction . . . . . | 3280 |
| 65.2 | USART main features . . . . . | 3280 |
| 65.3 | USART extended features . . . . . | 3281 |
| 65.4 | USART implementation . . . . . | 3281 |
| 65.5 | USART functional description . . . . . | 3283 |
| 65.5.1 | USART block diagram . . . . . | 3283 |
| 65.5.2 | USART pins and internal signals . . . . . | 3283 |
| 65.5.3 | USART clocks . . . . . | 3285 |
| 65.5.4 | USART character description . . . . . | 3285 |
| 65.5.5 | USART FIFOs and thresholds . . . . . | 3288 |
| 65.5.6 | USART transmitter . . . . . | 3288 |
| 65.5.7 | USART receiver . . . . . | 3291 |
| 65.5.8 | USART baud rate generation . . . . . | 3298 |
| 65.5.9 | Tolerance of the USART receiver to clock deviation . . . . . | 3300 |
| 65.5.10 | USART auto baud rate detection . . . . . | 3301 |
| 65.5.11 | USART multiprocessor communication . . . . . | 3303 |
| 65.5.12 | USART Modbus communication . . . . . | 3305 |
| 65.5.13 | USART parity control . . . . . | 3306 |
| 65.5.14 | USART LIN (local interconnection network) mode . . . . . | 3307 |
| 65.5.15 | USART synchronous mode . . . . . | 3309 |
| 65.5.16 | USART single-wire half-duplex communication . . . . . | 3313 |
| 65.5.17 | USART receiver timeout . . . . . | 3313 |
| 65.5.18 | USART smartcard mode . . . . . | 3314 |
| 65.5.19 | USART IrDA SIR ENDEC block . . . . . | 3318 |
| 65.5.20 | Continuous communication using USART and DMA . . . . . | 3321 |
| 65.5.21 | RS232 hardware flow control and RS485 driver enable . . . . . | 3323 |
| 65.5.22 | USART low-power management . . . . . | 3326 |
| 65.6 | USART in low-power modes . . . . . | 3329 |
| 65.7 | USART interrupts . . . . . | 3329 |
| 65.8 | USART registers . . . . . | 3332 |
| 65.8.1 | USART control register 1 (USART_CR1) . . . . . | 3332 |
| 65.8.2 | USART control register 1 [alternate] (USART_CR1) . . . . . | 3336 |
| 65.8.3 | USART control register 2 (USART_CR2) . . . . . | 3339 |
| 65.8.4 | USART control register 3 (USART_CR3) . . . . . | 3343 |
| 65.8.5 | USART control register 3 [alternate] (USART_CR3) . . . . . | 3347 |
| 65.8.6 | USART baud rate register (USART_BRR) . . . . . | 3350 |
| 65.8.7 | USART guard time and prescaler register (USART_GTPR) . . . . . | 3351 |
| 65.8.8 | USART receiver timeout register (USART_RTOR) . . . . . | 3352 |
| 65.8.9 | USART request register (USART_RQR) . . . . . | 3353 |
| 65.8.10 | USART interrupt and status register (USART_ISR) . . . . . | 3354 |
| 65.8.11 | USART interrupt and status register [alternate] (USART_ISR) . . . . . | 3360 |
| 65.8.12 | USART interrupt flag clear register (USART_ICR) . . . . . | 3365 |
| 65.8.13 | USART receive data register (USART_RDR) . . . . . | 3366 |
| 65.8.14 | USART transmit data register (USART_TDR) . . . . . | 3367 |
| 65.8.15 | USART prescaler register (USART_PRESC) . . . . . | 3367 |
| 65.8.16 | USART register map . . . . . | 3368 |
| 66 | Low-power universal asynchronous receiver transmitter (LPUART) . . . . . | 3370 |
| 66.1 | LPUART introduction . . . . . | 3370 |
| 66.2 | LPUART main features . . . . . | 3370 |
| 66.3 | LPUART implementation . . . . . | 3371 |
| 66.4 | LPUART functional description . . . . . | 3373 |
| 66.4.1 | LPUART block diagram . . . . . | 3373 |
| 66.4.2 | LPUART pins and internal signals . . . . . | 3374 |
| 66.4.3 | LPUART clocks . . . . . | 3375 |
| 66.4.4 | LPUART character description . . . . . | 3375 |
| 66.4.5 | LPUART FIFOs and thresholds . . . . . | 3377 |
| 66.4.6 | LPUART transmitter . . . . . | 3377 |
| 66.4.7 | LPUART receiver . . . . . | 3381 |
| 66.4.8 | LPUART baud rate generation . . . . . | 3385 |
| 66.4.9 | Tolerance of the LPUART receiver to clock deviation . . . . . | 3386 |
| 66.4.10 | LPUART multiprocessor communication . . . . . | 3387 |
| 66.4.11 | LPUART parity control . . . . . | 3389 |
| 66.4.12 | LPUART single-wire half-duplex communication . . . . . | 3390 |
| 66.4.13 | Continuous communication using DMA and LPUART . . . . . | 3390 |
| 66.4.14 | RS232 hardware flow control and RS485 driver enable . . . . . | 3393 |
| 66.4.15 | LPUART low-power management . . . . . | 3395 |
| 66.5 | LPUART in low-power modes . . . . . | 3398 |
| 66.6 | LPUART interrupts . . . . . | 3399 |
| 66.7 | LPUART registers . . . . . | 3400 |
| 66.7.1 | LPUART control register 1 (LPUART_CR1) . . . . . | 3400 |
| 66.7.2 | LPUART control register 1 [alternate] (LPUART_CR1) . . . . . | 3403 |
| 66.7.3 | LPUART control register 2 (LPUART_CR2) . . . . . | 3406 |
| 66.7.4 | LPUART control register 3 (LPUART_CR3) . . . . . | 3408 |
| 66.7.5 | LPUART control register 3 [alternate] (LPUART_CR3) . . . . . | 3411 |
| 66.7.6 | LPUART baud rate register (LPUART_BRR) . . . . . | 3413 |
| 66.7.7 | LPUART request register (LPUART_RQR) . . . . . | 3413 |
| 66.7.8 | LPUART interrupt and status register (LPUART_ISR) . . . . . | 3414 |
| 66.7.9 | LPUART interrupt and status register [alternate] (LPUART_ISR) . . . . . | 3419 |
| 66.7.10 | LPUART interrupt flag clear register (LPUART_ICR) . . . . . | 3422 |
| 66.7.11 | LPUART receive data register (LPUART_RDR) . . . . . | 3423 |
| 66.7.12 | LPUART transmit data register (LPUART_TDR) . . . . . | 3423 |
| 66.7.13 | LPUART prescaler register (LPUART_PRESC) . . . . . | 3424 |
| 66.7.14 | LPUART register map . . . . . | 3425 |
| 67 | Serial peripheral interface (SPI) . . . . . | 3427 |
| 67.1 | SPI introduction . . . . . | 3427 |
| 67.2 | SPI main features . . . . . | 3427 |
| 67.3 | SPI implementation . . . . . | 3428 |
| 67.4 | SPI functional description . . . . . | 3429 |
| 67.4.1 | SPI block diagram . . . . . | 3429 |
| 67.4.2 | SPI pins and internal signals . . . . . | 3430 |
| 67.4.3 | SPI communication general aspects . . . . . | 3431 |
| 67.4.4 | Communications between one master and one slave . . . . . | 3431 |
| 67.4.5 | Standard multislave communication . . . . . | 3434 |
| 67.4.6 | Multimaster communication . . . . . | 3437 |
| 67.4.7 | Slave select (NSS pin) management . . . . . | 3438 |
| 67.4.8 | Ready pin (RDY) management . . . . . | 3442 |
| 67.4.9 | Communication formats . . . . . | 3442 |
| 67.4.10 | Configuring the SPI . . . . . | 3444 |
| 67.4.11 | Enabling the SPI . . . . . | 3445 |
| 67.4.12 | SPI data transmission and reception procedures . . . . . | 3446 |
| 67.4.13 | Disabling the SPI . . . . . | 3450 |
| 67.4.14 | Communication using DMA (direct memory addressing) . . . . . | 3451 |
| 67.5 | SPI specific modes and control . . . . . | 3453 |
| 67.5.1 | TI mode . . . . . | 3453 |
| 67.5.2 | SPI error flags . . . . . | 3453 |
| 67.5.3 | CRC computation . . . . . | 3457 |
| 67.6 | SPI in low-power modes . . . . . | 3458 |
| 67.7 | SPI interrupts . . . . . | 3458 |
| 67.8 | I2S main features . . . . . | 3460 |
| 67.9 | I2S functional description . . . . . | 3460 |
| 67.9.1 | I2S general description . . . . . | 3460 |
| 67.9.2 | Pin sharing with SPI function . . . . . | 3461 |
| 67.9.3 | Bitfields usable in I2S/PCM mode . . . . . | 3461 |
| 67.9.4 | Slave and master modes . . . . . | 3462 |
| 67.9.5 | Supported audio protocols . . . . . | 3462 |
| 67.9.6 | Additional serial interface flexibility . . . . . | 3468 |
| 67.9.7 | Startup sequence . . . . . | 3470 |
| 67.9.8 | Stop sequence . . . . . | 3472 |
| 67.9.9 | Clock generator . . . . . | 3473 |
| 67.9.10 | Internal FIFOs . . . . . | 3475 |
| 67.9.11 | FIFO status flags . . . . . | 3476 |
| 67.9.12 | Handling of underrun situation . . . . . | 3476 |
| 67.9.13 | Handling of overrun situation . . . . . | 3477 |
| 67.9.14 | Frame error detection . . . . . | 3478 |
| 67.9.15 | DMA interface . . . . . | 3480 |
| 67.9.16 | Programing examples . . . . . | 3480 |
| 67.10 | I2S interrupts . . . . . | 3482 |
| 67.11 | SPI/I2S registers . . . . . | 3483 |
| 67.11.1 | SPI/I2S control register 1 (SPI_CR1) . . . . . | 3483 |
| 67.11.2 | SPI/I2S control register 2 (SPI_CR2) . . . . . | 3485 |
| 67.11.3 | SPI/I2S configuration register 1 (SPI_CFG1) . . . . . | 3485 |
| 67.11.4 | SPI/I2S configuration register 2 (SPI_CFG2) . . . . . | 3488 |
| 67.11.5 | SPI/I2S interrupt enable register (SPI_IER) . . . . . | 3490 |
| 67.11.6 | SPI/I2S status register (SPI_SR) . . . . . | 3491 |
| 67.11.7 | SPI/I2S interrupt/status flags clear register (SPI_IFCR) . . . . . | 3494 |
| 67.11.8 | SPI/I2S transmit data register (SPI_TXDR) . . . . . | 3495 |
| 67.11.9 | SPI/I2S receive data register (SPI_RXDR) . . . . . | 3495 |
| 67.11.10 | SPI/I2S polynomial register (SPI_CRCPOLY) . . . . . | 3496 |
| 67.11.11 | SPI/I2S transmitter CRC register (SPI_TXCRC) . . . . . | 3496 |
| 67.11.12 | SPI/I2S receiver CRC register (SPI_RXCRC) . . . . . | 3497 |
| 67.11.13 | SPI/I2S underrun data register (SPI_UDRDR) . . . . . | 3498 |
| 67.11.14 | SPI/I2S configuration register (SPI_I2SCFGGR) . . . . . | 3498 |
| 67.11.15 | SPI/I2S register map . . . . . | 3500 |
| 68 | Serial audio interface (SAI) . . . . . | 3502 |
| 68.1 | SAI introduction . . . . . | 3502 |
| 68.2 | SAI main features . . . . . | 3502 |
| 68.3 | SAI implementation . . . . . | 3503 |
| 68.4 | SAI functional description . . . . . | 3504 |
| 68.4.1 | SAI block diagram . . . . . | 3504 |
| 68.4.2 | SAI pins and internal signals . . . . . | 3505 |
| 68.4.3 | Main SAI modes . . . . . | 3506 |
| 68.4.4 | SAI synchronization mode . . . . . | 3507 |
| 68.4.5 | Audio data size . . . . . | 3508 |
| 68.4.6 | Frame synchronization . . . . . | 3508 |
| 68.4.7 | Slot configuration . . . . . | 3511 |
| 68.4.8 | SAI clock generator . . . . . | 3513 |
| 68.4.9 | Internal FIFOs . . . . . | 3516 |
| 68.4.10 | PDM interface . . . . . | 3518 |
| 68.4.11 | AC'97 link controller . . . . . | 3526 |
| 68.4.12 | SPDIF output . . . . . | 3528 |
| 68.4.13 | Specific features . . . . . | 3531 |
| 68.4.14 | Error flags . . . . . | 3535 |
| 68.4.15 | Disabling the SAI . . . . . | 3538 |
| 68.4.16 | SAI DMA interface . . . . . | 3538 |
| 68.5 | SAI interrupts . . . . . | 3539 |
| 68.6 | SAI registers . . . . . | 3541 |
| 68.6.1 | SAI global configuration register (SAI_GCR) . . . . . | 3541 |
| 68.6.2 | SAI configuration register 1 (SAI_ACR1) . . . . . | 3541 |
| 68.6.3 | SAI configuration register 2 (SAI_ACR2) . . . . . | 3544 |
| 68.6.4 | SAI frame configuration register (SAI_AFRCR) . . . . . | 3546 |
68.6.5 SAI slot register (SAI_ASLOTR) . . . . . 3547
68.6.6 SAI interrupt mask register (SAI_AIM) . . . . . 3548
68.6.7 SAI status register (SAI_ASR) . . . . . 3550
68.6.8 SAI clear flag register (SAI_ACLRFR) . . . . . 3552
68.6.9 SAI data register (SAI_ADR) . . . . . 3553
68.6.10 SAI configuration register 1 (SAI_BCR1) . . . . . 3553
68.6.11 SAI configuration register 2 (SAI_BCR2) . . . . . 3556
68.6.12 SAI frame configuration register (SAI_BFRCR) . . . . . 3558
68.6.13 SAI slot register (SAI_BSLOTR) . . . . . 3559
68.6.14 SAI interrupt mask register (SAI_BIM) . . . . . 3560
68.6.15 SAI status register (SAI_BSR) . . . . . 3561
68.6.16 SAI clear flag register (SAI_BCLRFR) . . . . . 3563
68.6.17 SAI data register (SAI_BDR) . . . . . 3564
68.6.18 SAI PDM control register (SAI_PDMCR) . . . . . 3565
68.6.19 SAI PDM delay register (SAI_PDMPLY) . . . . . 3566
68.6.20 SAI register map . . . . . 3568
69 SPDIF receiver interface (SPDIFRX) . . . . . 3570
69.1 SPDIFRX interface introduction . . . . . 3570
69.2 SPDIFRX main features . . . . . 3570
69.3 SPDIFRX functional description . . . . . 3570
69.3.1 SPDIFRX pins and internal signals . . . . . 3571
69.3.2 S/PDIF protocol (IEC-60958) . . . . . 3572
69.3.3 SPDIFRX decoder (SPDIFRX_DC) . . . . . 3574
69.3.4 SPDIFRX tolerance to clock deviation . . . . . 3578
69.3.5 SPDIFRX synchronization . . . . . 3578
69.3.6 SPDIFRX handling . . . . . 3580
69.3.7 Data reception management . . . . . 3582
69.3.8 Dedicated control flow . . . . . 3584
69.3.9 Reception errors . . . . . 3585
69.3.10 Clocking strategy . . . . . 3587
69.3.11 Symbol clock generation . . . . . 3587
69.3.12 DMA interface . . . . . 3589
69.3.13 Interrupt generation . . . . . 3590
69.3.14 Register protection . . . . . 3591
69.4 Programming procedures . . . . . 3591
69.4.1 Initialization phase . . . . . 3592
| 69.4.2 | Handling of interrupts coming from SPDIFRX | 3593 |
| 69.4.3 | Handling of interrupts coming from DMA | 3593 |
| 69.5 | SPDIFRX interface registers | 3594 |
| 69.5.1 | SPDIFRX control register (SPDIFRX_CR) | 3594 |
| 69.5.2 | SPDIFRX interrupt mask register (SPDIFRX_IMR) | 3596 |
| 69.5.3 | SPDIFRX status register (SPDIFRX_SR) | 3597 |
| 69.5.4 | SPDIFRX interrupt flag clear register (SPDIFRX_IFCR) | 3599 |
| 69.5.5 | SPDIFRX data input register (SPDIFRX_FMT0_DR) | 3600 |
| 69.5.6 | SPDIFRX data input register (SPDIFRX_FMT1_DR) | 3600 |
| 69.5.7 | SPDIFRX data input register (SPDIFRX_FMT2_DR) | 3601 |
| 69.5.8 | SPDIFRX channel status register (SPDIFRX_CSR) | 3602 |
| 69.5.9 | SPDIFRX debug information register (SPDIFRX_DIR) | 3602 |
| 69.5.10 | SPDIFRX interface register map | 3603 |
| 70 | Management data input/output (MDIOS) | 3604 |
| 70.1 | MDIOS introduction | 3604 |
| 70.2 | MDIOS main features | 3604 |
| 70.3 | MDIOS functional description | 3605 |
| 70.3.1 | MDIOS block diagram | 3605 |
| 70.3.2 | MDIOS pins and internal signals | 3605 |
| 70.3.3 | MDIOS protocol | 3605 |
| 70.3.4 | MDIOS enabling and disabling | 3606 |
| 70.3.5 | MDIOS data | 3607 |
| 70.3.6 | MDIOS APB frequency | 3608 |
| 70.3.7 | Write/read flags and interrupts | 3608 |
| 70.3.8 | MDIOS error management | 3609 |
| 70.3.9 | MDIOS in Stop mode | 3610 |
| 70.3.10 | MDIOS interrupts | 3610 |
| 70.4 | MDIOS registers | 3610 |
| 70.4.1 | MDIOS configuration register (MDIOS_CR) | 3610 |
| 70.4.2 | MDIOS write flag register (MDIOS_WRFR) | 3611 |
| 70.4.3 | MDIOS clear write flag register (MDIOS_CWRFR) | 3612 |
| 70.4.4 | MDIOS read flag register (MDIOS_RDFR) | 3612 |
| 70.4.5 | MDIOS clear read flag register (MDIOS_CRDFR) | 3613 |
| 70.4.6 | MDIOS status register (MDIOS_SR) | 3613 |
| 70.4.7 | MDIOS clear flag register (MDIOS_CLRFR) | 3614 |
| 70.4.8 | MDIOS input data register x (MDIOS_DINRx) | 3614 |
- 70.4.9 MDIOS output data register x (MDIOS_DOUTRx) . . . . . 3615
- 70.4.10 MDIOS register map . . . . . 3615
- 71 Controller area network with flexible data rate (FDCAN) . . . . . 3617
- 71.1 FDCAN introduction . . . . . 3617
- 71.2 FDCAN main features . . . . . 3620
- 71.3 FDCAN implementation . . . . . 3620
- 71.4 FDCAN functional description . . . . . 3621
- 71.4.1 Operating modes . . . . . 3622
- 71.4.2 Error management . . . . . 3631
- 71.4.3 Message RAM . . . . . 3631
- 71.4.4 FIFO acknowledge handling . . . . . 3643
- 71.4.5 Bit timing . . . . . 3644
- 71.4.6 Clock calibration on CAN . . . . . 3645
- 71.4.7 Application . . . . . 3649
- 71.4.8 TTCAN operations (FDCAN1 only) . . . . . 3650
- 71.4.9 TTCAN configuration . . . . . 3651
- 71.4.10 Message scheduling . . . . . 3653
- 71.4.11 TTCAN gap control . . . . . 3660
- 71.4.12 Stop watch . . . . . 3661
- 71.4.13 Local time, cycle time, global time,
and external clock synchronization . . . . . 3661 - 71.4.14 TTCAN error level . . . . . 3664
- 71.4.15 TTCAN message handling . . . . . 3665
- 71.4.16 TTCAN interrupt and error handling . . . . . 3668
- 71.4.17 Level 0 . . . . . 3669
- 71.4.18 Synchronization to external time schedule . . . . . 3671
- 71.4.19 FDCAN Rx buffer and FIFO element . . . . . 3672
- 71.4.20 FDCAN Tx buffer element . . . . . 3674
- 71.4.21 FDCAN Tx event FIFO element . . . . . 3676
- 71.4.22 FDCAN standard message ID filter element . . . . . 3677
- 71.4.23 FDCAN extended message ID filter element . . . . . 3679
- 71.4.24 FDCAN trigger memory element . . . . . 3680
- 71.5 FDCAN registers . . . . . 3682
- 71.5.1 FDCAN core release register (FDCAN_CREL) . . . . . 3682
- 71.5.2 FDCAN Endian register (FDCAN_ENDN) . . . . . 3682
- 71.5.3 FDCAN data bit timing and prescaler register (FDCAN_DBTP) . . . . . 3682
| 71.5.4 | FDCAN test register (FDCAN_TEST) . . . . . | 3683 |
| 71.5.5 | FDCAN RAM watchdog register (FDCAN_RWD) . . . . . | 3684 |
| 71.5.6 | FDCAN CC control register (FDCAN_CCCR) . . . . . | 3685 |
| 71.5.7 | FDCAN nominal bit timing and prescaler register (FDCAN_NBTP) . . . | 3687 |
| 71.5.8 | FDCAN timestamp counter configuration register (FDCAN_TSCC) . . | 3688 |
| 71.5.9 | FDCAN timestamp counter value register (FDCAN_TSCV) . . . . . | 3688 |
| 71.5.10 | FDCAN timeout counter configuration register (FDCAN_TOCC) . . . | 3689 |
| 71.5.11 | FDCAN timeout counter value register (FDCAN_TOCV) . . . . . | 3690 |
| 71.5.12 | FDCAN error counter register (FDCAN_ECR) . . . . . | 3690 |
| 71.5.13 | FDCAN protocol status register (FDCAN_PSR) . . . . . | 3691 |
| 71.5.14 | FDCAN transmitter delay compensation register (FDCAN_TDCR) . . | 3693 |
| 71.5.15 | FDCAN interrupt register (FDCAN_IR) . . . . . | 3693 |
| 71.5.16 | FDCAN interrupt enable register (FDCAN_IE) . . . . . | 3696 |
| 71.5.17 | FDCAN interrupt line select register (FDCAN_ILS) . . . . . | 3698 |
| 71.5.18 | FDCAN interrupt line enable register (FDCAN_ILE) . . . . . | 3699 |
| 71.5.19 | FDCAN global filter configuration register (FDCAN_GFC) . . . . . | 3700 |
| 71.5.20 | FDCAN standard ID filter configuration register (FDCAN_SIDFC) . . | 3701 |
| 71.5.21 | FDCAN extended ID filter configuration register (FDCAN_XIDFC) . . | 3701 |
| 71.5.22 | FDCAN extended ID and mask register (FDCAN_XIDAM) . . . . . | 3702 |
| 71.5.23 | FDCAN high priority message status register (FDCAN_HPMS) . . . . | 3703 |
| 71.5.24 | FDCAN new data 1 register (FDCAN_NDAT1) . . . . . | 3703 |
| 71.5.25 | FDCAN new data 2 register (FDCAN_NDAT2) . . . . . | 3704 |
| 71.5.26 | FDCAN Rx FIFO 0 configuration register (FDCAN_RXF0C) . . . . . | 3704 |
| 71.5.27 | FDCAN Rx FIFO 0 status register (FDCAN_RXF0S) . . . . . | 3705 |
| 71.5.28 | FDCAN Rx FIFO 0 acknowledge register (FDCAN_RXF0A) . . . . . | 3706 |
| 71.5.29 | FDCAN Rx buffer configuration register (FDCAN_RXBC) . . . . . | 3706 |
| 71.5.30 | FDCAN Rx FIFO 1 configuration register (FDCAN_RXF1C) . . . . . | 3707 |
| 71.5.31 | FDCAN Rx FIFO 1 status register (FDCAN_RXF1S) . . . . . | 3708 |
| 71.5.32 | FDCAN Rx FIFO 1 acknowledge register (FDCAN_RXF1A) . . . . . | 3709 |
| 71.5.33 | FDCAN Rx buffer element size configuration register (FDCAN_RXESC) . . . . . | 3709 |
| 71.5.34 | FDCAN Tx buffer configuration register (FDCAN_TXBC) . . . . . | 3710 |
| 71.5.35 | FDCAN Tx FIFO/queue status register (FDCAN_TXFQS) . . . . . | 3711 |
| 71.5.36 | FDCAN Tx buffer element size configuration register (FDCAN_TXESC) . . . . . | 3712 |
| 71.5.37 | FDCAN Tx buffer request pending register (FDCAN_TXBRP) . . . . | 3712 |
| 71.5.38 | FDCAN Tx buffer add request register (FDCAN_TXBAR) . . . . . | 3713 |
| 71.5.39 | FDCAN Tx buffer cancellation request register (FDCAN_TXBCR) . . | 3714 |
| 71.5.40 | FDCAN Tx buffer transmission occurred register (FDCAN_TXBTO) | 3714 |
| 71.5.41 | FDCAN Tx buffer cancellation finished register (FDCAN_TXBCF) . . . | 3715 |
| 71.5.42 | FDCAN Tx buffer transmission interrupt enable register (FDCAN_TXBTIE) . . . . . | 3715 |
| 71.5.43 | FDCAN Tx buffer cancellation finished interrupt enable register (FDCAN_TXBCIE) . . . . . | 3716 |
| 71.5.44 | FDCAN Tx event FIFO configuration register (FDCAN_TXEFC) . . . | 3716 |
| 71.5.45 | FDCAN Tx event FIFO status register (FDCAN_TXEFS) . . . . . | 3717 |
| 71.5.46 | FDCAN Tx event FIFO acknowledge register (FDCAN_TXEFA) . . . | 3718 |
| 71.5.47 | FDCAN register map . . . . . | 3718 |
| 71.6 | TT CAN registers . . . . . | 3722 |
| 71.6.1 | FDCAN TT trigger memory configuration register (FDCAN_TTTMC) . . . . . | 3722 |
| 71.6.2 | FDCAN TT reference message configuration register (FDCAN_TTRMC) . . . . . | 3722 |
| 71.6.3 | FDCAN TT operation configuration register (FDCAN_TTOCF) . . . . . | 3723 |
| 71.6.4 | FDCAN TT matrix limits register (FDCAN_TTMLM) . . . . . | 3725 |
| 71.6.5 | FDCAN TUR configuration register (FDCAN_TURCF) . . . . . | 3726 |
| 71.6.6 | FDCAN TT operation control register (FDCAN_TTOCN) . . . . . | 3727 |
| 71.6.7 | FDCAN TT global time preset register (FDCAN_TTGTP) . . . . . | 3729 |
| 71.6.8 | FDCAN TT time mark register (FDCAN_TTTMK) . . . . . | 3729 |
| 71.6.9 | FDCAN TT interrupt register (FDCAN_TTIR) . . . . . | 3730 |
| 71.6.10 | FDCAN TT interrupt enable register (FDCAN_TTIE) . . . . . | 3732 |
| 71.6.11 | FDCAN TT interrupt line select register (FDCAN_TTILS) . . . . . | 3734 |
| 71.6.12 | FDCAN TT operation status register (FDCAN_TTOST) . . . . . | 3735 |
| 71.6.13 | FDCAN TUR numerator actual register (FDCAN_TURNA) . . . . . | 3737 |
| 71.6.14 | FDCAN TT local and global time register (FDCAN_TTLGT) . . . . . | 3738 |
| 71.6.15 | FDCAN TT cycle time and count register (FDCAN_TTCTC) . . . . . | 3738 |
| 71.6.16 | FDCAN TT capture time register (FDCAN_TTCPT) . . . . . | 3739 |
| 71.6.17 | FDCAN TT cycle sync mark register (FDCAN_TTCSM) . . . . . | 3739 |
| 71.6.18 | FDCAN TT trigger select register (FDCAN_TTTS) . . . . . | 3740 |
| 71.6.19 | FDCAN TT register map . . . . . | 3740 |
| 71.7 | CCU registers . . . . . | 3742 |
| 71.7.1 | Clock calibration unit core release register (FDCAN_CCU_CREL) . . . | 3742 |
| 71.7.2 | Calibration configuration register (FDCAN_CCU_CCFG) . . . . . | 3742 |
| 71.7.3 | Calibration status register (FDCAN_CCU_CSTAT) . . . . . | 3744 |
| 71.7.4 | Calibration watchdog register (FDCAN_CCU_CWD) . . . . . | 3744 |
| 71.7.5 | Clock calibration unit interrupt register (FDCAN_CCU_IR) . . . . . | 3745 |
| 71.7.6 | Clock calibration unit interrupt enable register (FDCAN_CCU_IE) .. | 3746 |
| 71.7.7 | CCU register map ..... | 3746 |
| 72 | USB subsystem (USBSS) ..... | 3748 |
| 72.1 | Overview ..... | 3748 |
| 72.2 | USB2 OTG high-speed Port 1 ..... | 3748 |
| 72.2.1 | USB2 OTG high-speed Port 1 main features ..... | 3748 |
| 72.2.2 | USB2 OTG high-speed Port 1 functional description ..... | 3749 |
| 72.2.3 | USB2 OTG high-speed Port 1 interrupts ..... | 3751 |
| 72.2.4 | Battery charging ..... | 3751 |
| 72.2.5 | ID management ..... | 3752 |
| 72.2.6 | VBUS detection ..... | 3752 |
| 72.3 | USB2 OTG high-speed Port 2 ..... | 3752 |
| 72.3.1 | USB2 OTG high-speed Port 2 main features ..... | 3752 |
| 72.3.2 | USB2 OTG high-speed Port 2 functional description ..... | 3753 |
| 72.3.3 | USB2 OTG high-speed Port 2 interrupts ..... | 3755 |
| 72.3.4 | Battery charging ..... | 3755 |
| 72.3.5 | ID management ..... | 3755 |
| 72.3.6 | VBUS management ..... | 3755 |
| 72.4 | USB Type-C and power delivery interface ..... | 3756 |
| 72.4.1 | USB Type-C and power delivery interface main features ..... | 3756 |
| 72.4.2 | USB Type-C and power delivery interface implementation ..... | 3756 |
| 72.4.3 | USB Type-C and power delivery interface functional description .. | 3758 |
| 72.4.4 | USB Type-C and power delivery interrupts ..... | 3759 |
| 72.5 | Debug signals ..... | 3760 |
| 73 | USB on-the-go high-speed (OTG) ..... | 3761 |
| 73.1 | OTG introduction ..... | 3761 |
| 73.2 | OTG main features ..... | 3762 |
| 73.2.1 | General features ..... | 3762 |
| 73.2.2 | Host-mode features ..... | 3763 |
| 73.2.3 | Peripheral-mode features ..... | 3763 |
| 73.3 | OTG implementation ..... | 3763 |
| 73.4 | OTG functional description ..... | 3764 |
| 73.4.1 | OTG block diagram ..... | 3764 |
| 73.4.2 | OTG pin and internal signals ..... | 3764 |
| 73.4.3 | OTG core . . . . . | 3765 |
| 73.4.4 | OTG detections . . . . . | 3765 |
| 73.4.5 | High-speed OTG PHY connected to OTG . . . . . | 3765 |
| 73.4.6 | Battery charging detection . . . . . | 3765 |
| 73.5 | OTG dual role device (DRD) . . . . . | 3766 |
| 73.5.1 | ID line detection . . . . . | 3766 |
| 73.6 | OTG as a USB peripheral . . . . . | 3766 |
| 73.6.1 | Peripheral states . . . . . | 3767 |
| 73.6.2 | Peripheral endpoints . . . . . | 3768 |
| 73.7 | OTG as a USB host . . . . . | 3770 |
| 73.7.1 | USB host states . . . . . | 3771 |
| 73.7.2 | Host channels . . . . . | 3772 |
| 73.7.3 | Host scheduler . . . . . | 3773 |
| 73.8 | OTG SOF trigger . . . . . | 3774 |
| 73.8.1 | Host SOFs . . . . . | 3775 |
| 73.8.2 | Peripheral SOFs . . . . . | 3775 |
| 73.9 | OTG low-power modes . . . . . | 3775 |
| 73.10 | OTG Dynamic update of the OTG_HFIR register . . . . . | 3776 |
| 73.11 | OTG data FIFOs . . . . . | 3777 |
| 73.11.1 | Peripheral FIFO architecture . . . . . | 3777 |
| 73.11.2 | Host FIFO architecture . . . . . | 3778 |
| 73.11.3 | FIFO RAM allocation . . . . . | 3780 |
| 73.12 | OTG interrupts . . . . . | 3781 |
| 73.13 | OTG control and status registers . . . . . | 3783 |
| 73.13.1 | CSR memory map . . . . . | 3783 |
| 73.14 | OTG registers . . . . . | 3788 |
| 73.14.1 | OTG control and status register (OTG_GOTGCTL) . . . . . | 3788 |
| 73.14.2 | OTG interrupt register (OTG_GOTGINT) . . . . . | 3790 |
| 73.14.3 | OTG AHB configuration register (OTG_GAHBCFG) . . . . . | 3791 |
| 73.14.4 | OTG USB configuration register (OTG_GUSBCFG) . . . . . | 3792 |
| 73.14.5 | OTG reset register (OTG_GRSTCTL) . . . . . | 3794 |
| 73.14.6 | OTG core interrupt register [alternate] (OTG_GINTSTS) . . . . . | 3797 |
| 73.14.7 | OTG core interrupt register [alternate] (OTG_GINTSTS) . . . . . | 3801 |
| 73.14.8 | OTG interrupt mask register [alternate] (OTG_GINTMSK) . . . . . | 3806 |
| 73.14.9 | OTG interrupt mask register [alternate] (OTG_GINTMSK) . . . . . | 3807 |
| 73.14.10 | OTG receive status debug read register [alternate] (OTG_GRXSTSR) ..... | 3809 |
| 73.14.11 | OTG receive status debug read register [alternate] (OTG_GRXSTSR) ..... | 3810 |
| 73.14.12 | OTG status read and pop registers (OTG_GRXSTSP) ..... | 3811 |
| 73.14.13 | OTG status read and pop registers [alternate] (OTG_GRXSTSP) .. | 3812 |
| 73.14.14 | OTG receive FIFO size register (OTG_GRXFSIZ) ..... | 3813 |
| 73.14.15 | OTG host non-periodic transmit FIFO size register [alternate] (OTG_HNPTXFSIZ) ..... | 3814 |
| 73.14.16 | Endpoint 0 transmit FIFO size [alternate] (OTG_DIEPTXF0) ..... | 3814 |
| 73.14.17 | OTG non-periodic transmit FIFO/queue status register (OTG_HNPTXSTS) ..... | 3815 |
| 73.14.18 | OTG general core configuration register (OTG_GCCFG) ..... | 3816 |
| 73.14.19 | OTG core ID register (OTG_CID) ..... | 3817 |
| 73.14.20 | OTG core LPM configuration register (OTG_GLPMCFG) ..... | 3818 |
| 73.14.21 | OTG host periodic transmit FIFO size register (OTG_HPTXFSIZ) ..... | 3822 |
| 73.14.22 | OTG device IN endpoint transmit FIFO x size register (OTG_DIEPTXFx) ..... | 3822 |
| 73.14.23 | Host-mode registers ..... | 3822 |
| 73.14.24 | OTG host configuration register (OTG_HCFG) ..... | 3823 |
| 73.14.25 | OTG host frame interval register (OTG_HFIR) ..... | 3823 |
| 73.14.26 | OTG host frame number/frame time remaining register (OTG_HFNUM) ..... | 3824 |
| 73.14.27 | OTG_Host periodic transmit FIFO/queue status register (OTG_HPTXSTS) ..... | 3825 |
| 73.14.28 | OTG host all channels interrupt register (OTG_HAINT) ..... | 3826 |
| 73.14.29 | OTG host all channels interrupt mask register (OTG_HAINTMSK) ..... | 3826 |
| 73.14.30 | OTG host port control and status register (OTG_HPRT) ..... | 3827 |
| 73.14.31 | OTG host channel x characteristics register (OTG_HCCHARx) ..... | 3829 |
| 73.14.32 | OTG host channel x split control register (OTG_HCSPLTx) ..... | 3830 |
| 73.14.33 | OTG host channel x interrupt register (OTG_HCINTx) ..... | 3831 |
| 73.14.34 | OTG host channel x interrupt mask register (OTG_HCINTMSKx) .. | 3832 |
| 73.14.35 | OTG host channel x transfer size register (OTG_HCTSIZx) ..... | 3833 |
| 73.14.36 | OTG host channel x DMA address register(OTG_HCDMAx) ..... | 3834 |
| 73.14.37 | Device-mode registers ..... | 3834 |
| 73.14.38 | OTG device configuration register (OTG_DCFG) ..... | 3834 |
| 73.14.39 | OTG device control register (OTG_DCTL) ..... | 3836 |
| 73.14.40 | OTG device status register (OTG_DSTS) ..... | 3838 |
| 73.14.41 | OTG device IN endpoint common interrupt mask register (OTG_DIEPMSK) . . . . . | 3839 |
| 73.14.42 | OTG device OUT endpoint common interrupt mask register (OTG_DOEPMSK) . . . . . | 3840 |
| 73.14.43 | OTG device all endpoints interrupt register (OTG_DAININT) . . . . . | 3841 |
| 73.14.44 | OTG all endpoints interrupt mask register (OTG_DAININTMSK) . . . . . | 3842 |
| 73.14.45 | OTG device threshold control register (OTG_DTHRCTL) . . . . . | 3842 |
| 73.14.46 | OTG device IN endpoint FIFO empty interrupt mask register (OTG_DIEPEMPMSK) . . . . . | 3843 |
| 73.14.47 | OTG device IN endpoint x control register [alternate] (OTG_DIEPCTLx) . . . . . | 3844 |
| 73.14.48 | OTG device IN endpoint x control register [alternate] (OTG_DIEPCTLx) . . . . . | 3846 |
| 73.14.49 | OTG device IN endpoint x interrupt register (OTG_DIEPINTx) . . . . . | 3848 |
| 73.14.50 | OTG device IN endpoint 0 transfer size register (OTG_DIEPTSIZ0) . . . . . | 3849 |
| 73.14.51 | OTG device IN endpoint x DMA address register (OTG_DIEPDMAx) . . . . . | 3850 |
| 73.14.52 | OTG device IN endpoint transmit FIFO status register (OTG_DTXFSTSx) . . . . . | 3850 |
| 73.14.53 | OTG device IN endpoint x transfer size register (OTG_DIEPTSIZx) . . . . . | 3851 |
| 73.14.54 | OTG device control OUT endpoint 0 control register (OTG_DOEPCTL0) . . . . . | 3851 |
| 73.14.55 | OTG device OUT endpoint x interrupt register (OTG_DOEPINTx) . . . . . | 3853 |
| 73.14.56 | OTG device OUT endpoint 0 transfer size register (OTG_DOEPTSIZ0) . . . . . | 3855 |
| 73.14.57 | OTG device OUT endpoint x DMA address register (OTG_DOEPDMAx) . . . . . | 3856 |
| 73.14.58 | OTG device OUT endpoint x control register [alternate] (OTG_DOEPCTLx) . . . . . | 3856 |
| 73.14.59 | OTG device OUT endpoint x control register [alternate] (OTG_DOEPCTLx) . . . . . | 3858 |
| 73.14.60 | OTG device OUT endpoint x transfer size register (OTG_DOEPTSIZx) . . . . . | 3860 |
| 73.14.61 | OTG power and clock gating control register (OTG_PCGCCTL) . . . . . | 3861 |
| 73.14.62 | OTG power and clock gating control register 1 (OTG_PCGCCTL1) . . . . . | 3862 |
| 73.14.63 | OTG register map . . . . . | 3863 |
| 73.15 | OTG programming model . . . . . | 3870 |
| 73.15.1 | Core initialization . . . . . | 3870 |
| 73.15.2 | Host initialization . . . . . | 3871 |
| 73.15.3 | Device initialization ..... | 3872 |
| 73.15.4 | DMA mode ..... | 3872 |
| 73.15.5 | Host programming model ..... | 3872 |
| 73.15.6 | Device programming model ..... | 3905 |
| 73.15.7 | Worst case response time ..... | 3925 |
| 73.15.8 | OTG programming model ..... | 3927 |
| 74 | USB HS PHY controller (USBPHYC) ..... | 3928 |
| 74.1 | Introduction ..... | 3928 |
| 74.2 | USBPHYC main features ..... | 3928 |
| 74.3 | USBPHYC implementation ..... | 3928 |
| 74.4 | USBPHYC functional description ..... | 3928 |
| 74.4.1 | USBPHYC block diagram ..... | 3928 |
| 74.4.2 | USBPHYC reset and clocks ..... | 3928 |
| 74.4.3 | USBPHYC programmable parameters ..... | 3929 |
| 74.4.4 | USBPHYC trimming of electrical parameters ..... | 3929 |
| 74.5 | USBPHYC registers ..... | 3929 |
| 74.5.1 | USBPHYC control register (USBPHYC_CR) ..... | 3929 |
| 74.5.2 | USBPHYC trimming 1 register (USBPHYC_TRIM1CR) ..... | 3931 |
| 74.5.3 | USBPHYC trimming 2 register (USBPHYC_TRIM2CR) ..... | 3935 |
| 74.5.4 | USBPHYC register map ..... | 3936 |
| 75 | USB Type-C ® /USB Power Delivery interface (UCPD) ..... | 3937 |
| 75.1 | UCPD introduction ..... | 3937 |
| 75.2 | UCPD main features ..... | 3937 |
| 75.3 | UCPD implementation ..... | 3938 |
| 75.4 | UCPD functional description ..... | 3938 |
| 75.4.1 | UCPD block diagram ..... | 3939 |
| 75.4.2 | UCPD reset and clocks ..... | 3940 |
| 75.4.3 | Physical layer protocol ..... | 3940 |
| 75.4.4 | UCPD BMC transmitter ..... | 3947 |
| 75.4.5 | UCPD BMC receiver ..... | 3948 |
| 75.4.6 | UCPD Type-C pull-ups (Rp) and pull-downs (Rd) ..... | 3950 |
| 75.4.7 | UCPD Type-C voltage monitoring and de-bouncing ..... | 3950 |
| 75.4.8 | UCPD fast role swap (FRS) ..... | 3951 |
| 75.4.9 | UCPD DMA Interface ..... | 3951 |
| 75.4.10 | Wake-up from Stop mode . . . . . | 3951 |
| 75.5 | UCPD programming sequences . . . . . | 3951 |
| 75.5.1 | Initialization phase . . . . . | 3951 |
| 75.5.2 | Type-C state machine handling . . . . . | 3952 |
| 75.5.3 | USB PD transmit . . . . . | 3953 |
| 75.5.4 | USB PD receive . . . . . | 3954 |
| 75.6 | UCPD low-power modes . . . . . | 3955 |
| 75.7 | UCPD interrupts . . . . . | 3956 |
| 75.8 | UCPD registers . . . . . | 3957 |
| 75.8.1 | UCPD configuration register 1 (UCPD_CFGR1) . . . . . | 3957 |
| 75.8.2 | UCPD configuration register 2 (UCPD_CFGR2) . . . . . | 3959 |
| 75.8.3 | UCPD control register (UCPD_CR) . . . . . | 3959 |
| 75.8.4 | UCPD interrupt mask register (UCPD_IMR) . . . . . | 3962 |
| 75.8.5 | UCPD status register (UCPD_SR) . . . . . | 3963 |
| 75.8.6 | UCPD interrupt clear register (UCPD_ICR) . . . . . | 3966 |
| 75.8.7 | UCPD Tx ordered set type register (UCPD_TX_ORDSETR) . . . . . | 3967 |
| 75.8.8 | UCPD Tx payload size register (UCPD_TX_PAYSZR) . . . . . | 3967 |
| 75.8.9 | UCPD Tx data register (UCPD_TXDR) . . . . . | 3968 |
| 75.8.10 | UCPD Rx ordered set register (UCPD_RX_ORDSETR) . . . . . | 3968 |
| 75.8.11 | UCPD Rx payload size register (UCPD_RX_PAYSZR) . . . . . | 3969 |
| 75.8.12 | UCPD receive data register (UCPD_RXDR) . . . . . | 3969 |
| 75.8.13 | UCPD Rx ordered set extension register 1 (UCPD_RX_ORDEXTR1) . . . . . | 3970 |
| 75.8.14 | UCPD Rx ordered set extension register 2 (UCPD_RX_ORDEXTR2) . . . . . | 3970 |
| 75.8.15 | UCPD register map . . . . . | 3971 |
| 76 | Ethernet (ETH): gigabit media access control (GMAC) with DMA controller . . . . . | 3973 |
| 76.1 | Ethernet introduction . . . . . | 3973 |
| 76.2 | Ethernet main features . . . . . | 3973 |
| 76.2.1 | Standard compliance . . . . . | 3973 |
| 76.2.2 | MAC features . . . . . | 3973 |
| 76.2.3 | Transaction layer (MTL) features . . . . . | 3975 |
| 76.2.4 | DMA block features . . . . . | 3976 |
| 76.2.5 | Bus interface features . . . . . | 3977 |
| 76.2.6 | Audio and video features . . . . . | 3978 |
| 76.2.7 | Time sensitive networking features . . . . . | 3978 |
| 76.2.8 | Generic queuing features . . . . . | 3978 |
| 76.3 | Ethernet pins and internal signals . . . . . | 3978 |
| 76.4 | Ethernet architecture . . . . . | 3980 |
| 76.4.1 | DMA controller . . . . . | 3981 |
| 76.4.2 | MTL . . . . . | 3988 |
| 76.4.3 | MAC . . . . . | 3988 |
| 76.4.4 | Multiple channels and queues support . . . . . | 3993 |
| 76.5 | Ethernet functional description: MAC . . . . . | 4005 |
| 76.5.1 | Double VLAN processing . . . . . | 4005 |
| 76.5.2 | Source address and VLAN insertion, replacement, or deletion . . . . . | 4006 |
| 76.5.3 | Queue/channel-based VLAN tag insertion on Tx . . . . . | 4007 |
| 76.5.4 | Packet filtering . . . . . | 4008 |
| 76.5.5 | IEEE 1588 timestamp support . . . . . | 4020 |
| 76.5.6 | Time sensitive networking (TSN) . . . . . | 4046 |
| 76.5.7 | Checksum offload engine . . . . . | 4075 |
| 76.5.8 | TCP segmentation offload . . . . . | 4081 |
| 76.5.9 | IPv4 ARP offload . . . . . | 4087 |
| 76.5.10 | Loopback . . . . . | 4088 |
| 76.5.11 | Flow control . . . . . | 4089 |
| 76.5.12 | MAC management counters . . . . . | 4092 |
| 76.5.13 | Interrupts generated by the MAC . . . . . | 4094 |
| 76.5.14 | MAC and MMC register descriptions . . . . . | 4094 |
| 76.6 | Ethernet functional description: PHY interfaces . . . . . | 4095 |
| 76.6.1 | Station management agent (SMA) . . . . . | 4095 |
| 76.6.2 | Media independent interface (MII) . . . . . | 4102 |
| 76.6.3 | Reduced media independent interface (RMII) . . . . . | 4103 |
| 76.6.4 | Reduced gigabit media independent interface (RGMII) . . . . . | 4106 |
| 76.7 | Ethernet low-power modes . . . . . | 4108 |
| 76.7.1 | Low-power management . . . . . | 4108 |
| 76.7.2 | Energy-efficient Ethernet (EEE) . . . . . | 4114 |
| 76.8 | Ethernet interrupts . . . . . | 4121 |
| 76.8.1 | DMA interrupts . . . . . | 4121 |
| 76.8.2 | MTL interrupts . . . . . | 4123 |
| 76.8.3 | MAC interrupts . . . . . | 4123 |
| 76.9 | Ethernet programming model . . . . . | 4124 |
- 76.9.1 DMA initialization . . . . . 4124
- 76.9.2 MTL initialization . . . . . 4125
- 76.9.3 MAC initialization . . . . . 4126
- 76.9.4 Performing normal receive and transmit operation . . . . . 4127
- 76.9.5 Stopping and starting transmission . . . . . 4127
- 76.9.6 Programming guidelines for switching to new descriptor list in RxDMA . . . . . 4128
- 76.9.7 Programming guidelines for switching the AXI clock frequency . . . . . 4128
- 76.9.8 Programming guidelines for multichannel multiqueue operation . . . . . 4128
- 76.9.9 Programming guidelines for GMII link state transitions . . . . . 4131
- 76.9.10 Programming guidelines for IEEE 1588 timestamping . . . . . 4132
- 76.9.11 Programming guidelines for PTP offload feature . . . . . 4133
- 76.9.12 Programming guidelines for AV feature . . . . . 4137
- 76.9.13 Programming guidelines for Energy Efficient Ethernet (EEE) . . . . . 4139
- 76.9.14 Programming guidelines for flexible pulse-per-second (PPS) output 4140
- 76.9.15 Programming guidelines for IEEE 1588 auxiliary snapshot . . . . . 4142
- 76.9.16 Programming guidelines for TSO . . . . . 4143
- 76.9.17 Programming guidelines to perform VLAN filtering on the receiver . . . . . 4144
- 76.9.18 Programming guidelines for extended VLAN filtering and routing on reception . . . . . 4144
- 76.9.19 Programming sequence for queue/channel-based VLAN inclusion register . . . . . 4145
- 76.9.20 Programming guidelines for EST . . . . . 4146
- 76.9.21 Programming the launch time in time-based scheduling . . . . . 4147
- 76.9.22 Enabling the frame preemption function . . . . . 4147
- 76.10 Descriptors . . . . . 4148
- 76.10.1 Descriptor overview . . . . . 4148
- 76.10.2 Descriptor structure . . . . . 4149
- 76.10.3 Transmit descriptor . . . . . 4152
- 76.10.4 Receive descriptor . . . . . 4165
- 76.10.5 Enhanced descriptor for time-based scheduling . . . . . 4178
- 76.11 Ethernet registers . . . . . 4182
- 76.11.1 Ethernet register maps . . . . . 4182
- 76.11.2 Ethernet DMA registers . . . . . 4182
- 76.11.3 Ethernet MTL registers . . . . . 4212
- 76.11.4 Ethernet MAC and MMC registers . . . . . 4243
77 Hardware debug port (HDP) . . . . . 4368
| 77.1 | HDP introduction . . . . . | 4368 |
| 77.2 | HDP functional description . . . . . | 4368 |
| 77.3 | HDP block diagram . . . . . | 4370 |
| 77.4 | HDP register description . . . . . | 4370 |
| 77.4.1 | HDP control register (HDP_CTRL) . . . . . | 4370 |
| 77.4.2 | HDP multiplexer control register (HDP_MUX) . . . . . | 4371 |
| 77.4.3 | HDP read back value register (HDP_VAL) . . . . . | 4371 |
| 77.4.4 | HDP general-purpose output set register (HDP_GPOSET) . . . . . | 4371 |
| 77.4.5 | HDP general purpose output clear register (HDP_GPOCLR) . . . . . | 4372 |
| 77.4.6 | HDP general purpose output value register (HDP_GPOVAL) . . . . . | 4372 |
| 77.4.7 | HDP register map . . . . . | 4372 |
| 78 | Debug support (DBG) . . . . . | 4374 |
| 78.1 | DBG introduction . . . . . | 4374 |
| 78.2 | DBG functional description . . . . . | 4375 |
| 78.3 | DBG block diagram . . . . . | 4377 |
| 78.4 | DBG pins . . . . . | 4377 |
| 78.5 | DBG power, clock, and reset . . . . . | 4378 |
| 78.5.1 | DBG power domains . . . . . | 4378 |
| 78.5.2 | DBG clocks . . . . . | 4378 |
| 78.5.3 | Debug reset . . . . . | 4379 |
| 78.6 | Security . . . . . | 4379 |
| 78.6.1 | BSEC control over debug . . . . . | 4380 |
| 78.6.2 | Authentication signals . . . . . | 4380 |
| 78.7 | Debug authentication . . . . . | 4381 |
| 78.7.1 | Main characteristics . . . . . | 4381 |
| 78.7.2 | Debug authentication protocol . . . . . | 4381 |
| 78.8 | Chip-level TAP controller (CLTAPC) . . . . . | 4382 |
| 78.9 | Serial-wire and JTAG debug port (SWJ-DP) . . . . . | 4382 |
| 78.9.1 | JTAG debug port . . . . . | 4383 |
| 78.9.2 | SWD debug port . . . . . | 4386 |
| 78.9.3 | Debug port registers . . . . . | 4388 |
| 78.10 | Access ports . . . . . | 4396 |
| 78.10.1 | AP0 registers . . . . . | 4398 |
| 78.10.2 | AP1 registers . . . . . | 4401 |
| 78.10.3 | AP2 registers . . . . . | 4405 |
- 78.10.4 ROM tables ..... 4410
- 78.10.5 System/MCU ROM registers ..... 4412
- 78.11 Cortex-M55 debug features ..... 4417
- 78.11.1 Processor ROM table ..... 4417
- 78.11.2 Processor ROM registers ..... 4419
- 78.11.3 Data watchpoint and trace unit (DWT) ..... 4423
- 78.11.4 Cortex-M55 DWT registers ..... 4424
- 78.11.5 Cortex-M55 performance monitoring unit (PMU) ..... 4438
- 78.11.6 Cortex-M55 PMU registers ..... 4439
- 78.11.7 Instrumentation trace macrocell (ITM) ..... 4452
- 78.11.8 Cortex-M55 ITM registers ..... 4453
- 78.11.9 Breakpoint Unit (BPU) ..... 4461
- 78.11.10 Cortex-M55 BPU registers ..... 4461
- 78.11.11 Embedded Trace Macrocell (ETM) ..... 4468
- 78.11.12 Cortex-M55 ETM registers ..... 4468
- 78.11.13 Cross trigger interface (CTI) ..... 4495
- 78.12 Trace and debug subsystem ..... 4495
- 78.12.1 Trace subsystem ROM table registers ..... 4498
- 78.12.2 Global timestamp generator (TSGEN) ..... 4502
- 78.12.3 TSGEN registers ..... 4503
- 78.12.4 Cross trigger interface (CTI) and matrix (CTM) ..... 4510
- 78.12.5 CTI registers ..... 4514
- 78.12.6 Trace funnel (CSTF) ..... 4529
- 78.12.7 Trace funnel registers ..... 4529
- 78.12.8 Embedded trace FIFO (ETF) ..... 4539
- 78.12.9 Embedded trace FIFO registers ..... 4540
- 78.12.10 Embedded trace router (ETR) ..... 4558
- 78.12.11 ETR registers ..... 4562
- 78.12.12 Trace port interface unit (TPIU) ..... 4582
- 78.12.13 TPIU registers ..... 4583
- 78.12.14 Trace replicator (REP) ..... 4599
- 78.12.15 Trace replicator registers ..... 4599
- 78.12.16 Serial-wire output (SWO) ..... 4609
- 78.12.17 SWO registers ..... 4610
- 78.12.18 System trace macrocell (STM) ..... 4620
- 78.12.19 STM registers ..... 4623
- 78.12.20 Microcontroller debug unit (DBGMCU) ..... 4649
78.12.21 DBGMCU registers . . . . . 4650
78.13 References . . . . . 4661
79 Device electronic signature . . . . . 4662
79.1 Unique device ID register (96 bits) (UID) . . . . . 4662
79.2 Device part number (RPN) . . . . . 4663
79.3 Package data register (PKG) . . . . . 4664
79.4 Device version . . . . . 4664
79.5 Boot ROM version . . . . . 4665
80 Important security notice . . . . . 4666
81 Revision history . . . . . 4667
List of tables
Table 1. Memory map based on IDAU mapping. . . . . 164
Table 2. Memory map and peripheral register boundary addresses . . . . . 169
Table 3. Peripheral register boundary addresses. . . . . 175
Table 4. Aliasing . . . . . 185
Table 5. Nonsecure peripheral functions that can be connected to secure I/Os . . . . . 192
Table 6. Internal tampers in TAMP. . . . . 195
Table 7. Effect of low-power modes on TAMP . . . . . 197
Table 8. Accelerated cryptographic operations . . . . . 198
Table 9. BSEC internal input/output signals . . . . . 202
Table 10. BSEC initial status reporting structure . . . . . 207
Table 11. BSEC ad-hoc error/status reporting structure. . . . . 207
Table 12. BSEC states definition . . . . . 208
Table 13. Current HDPL coding . . . . . 210
Table 14. BSEC Next HDPL register usage . . . . . 211
Table 15. BSEC debug register legal values . . . . . 211
Table 16. BSEC register map and reset values . . . . . 228
Table 17. OTP mapping . . . . . 231
Table 18. OTP fuse description (lower OTP region). . . . . 235
Table 19. OTP fuse description (mid OTP region) . . . . . 246
Table 20. RISUP indexes . . . . . 249
Table 21. RISC indexes purely for RCC security control . . . . . 250
Table 22. RIMU resource assignment . . . . . 250
Table 23. RIFSC register map and reset values. . . . . 257
Table 24. RISAF resource assignment. . . . . 259
Table 25. RISAF internal input/output signals . . . . . 260
Table 26. RISAF subregion security setup matrix . . . . . 262
Table 27. RISAF register map and reset values. . . . . 278
Table 28. Peripheral indexes in IAC . . . . . 280
Table 29. IAC internal signals. . . . . 282
Table 30. IAC interrupt request. . . . . 283
Table 31. IAC register map and reset values . . . . . 285
Table 32. Boot modes. . . . . 286
Table 33. Internal SRAM features . . . . . 289
Table 34. Hardware-erase conditions for internal SRAMs . . . . . 289
Table 35. FLEXRAM supported configurations . . . . . 290
Table 36. FLEXMEM versus retention . . . . . 290
Table 37. RAMCFG interrupt requests . . . . . 294
Table 38. RAMCFG register map and reset values . . . . . 306
Table 39. ICACHE features . . . . . 309
Table 40. TAG memory dimensioning parameters
for n-way set associative operating mode (default) . . . . . 311
Table 41. TAG memory dimensioning parameters for direct-mapped cache mode . . . . . 312
Table 42. ICACHE cacheability for AHB transaction . . . . . 313
Table 43. ICACHE interrupts . . . . . 316
Table 44. ICACHE register map and reset values . . . . . 319
Table 45. CACHEAXI features . . . . . 323
Table 46. TAG memory dimensioning parameters. . . . . 328
Table 47. CACHEAXI supported AXI 4-bit memory/cache attribute . . . . . 329
| Table 48. | CACHEAXI interrupts . . . . . | 336 |
| Table 49. | CACHEAXI register map and reset values . . . . . | 345 |
| Table 50. | PWR input/output signals connected to package pins or balls . . . . . | 349 |
| Table 51. | PWR internal input/output signals . . . . . | 349 |
| Table 52. | Wake-up source selection . . . . . | 350 |
| Table 53. | Supply configuration control . . . . . | 353 |
| Table 54. | Operating mode summary . . . . . | 369 |
| Table 55. | Functionalities depending on system operating mode . . . . . | 370 |
| Table 56. | Sleep mode . . . . . | 378 |
| Table 57. | Stop mode SVOS high . . . . . | 380 |
| Table 58. | Stop mode SVOS low . . . . . | 380 |
| Table 59. | Standby and Stop flags . . . . . | 382 |
| Table 60. | Standby mode . . . . . | 382 |
| Table 61. | Power mode output states versus MCU power modes . . . . . | 383 |
| Table 62. | PWR register security overview . . . . . | 384 |
| Table 63. | PWR register map and reset values . . . . . | 408 |
| Table 64. | RCC input/output signals connected to package pins or balls . . . . . | 412 |
| Table 65. | RCC internal input/output signals . . . . . | 413 |
| Table 66. | Reset coverage summary . . . . . | 419 |
| Table 67. | Reset source identification . . . . . | 420 |
| Table 68. | Oscillator states versus system modes . . . . . | 424 |
| Table 69. | Clock output selection . . . . . | 435 |
| Table 70. | STOPWUCK description . . . . . | 443 |
| Table 71. | HSISTOPEN and MSISTOPEN behavior . . . . . | 444 |
| Table 72. | Peripheral clock distribution summary . . . . . | 445 |
| Table 73. | SDMMC interface clock constraints . . . . . | 464 |
| Table 74. | Peripheral clock enabling . . . . . | 471 |
| Table 75. | Interrupt sources and control . . . . . | 474 |
| Table 76. | Maximum peripheral clock frequencies . . . . . | 476 |
| Table 77. | RCC register map and reset values . . . . . | 754 |
| Table 78. | Port x bit configurations . . . . . | 784 |
| Table 79. | Secure AF between peripherals and allocated I/Os . . . . . | 792 |
| Table 80. | GPIO secured bits . . . . . | 792 |
| Table 81. | GPIO register map and reset values . . . . . | 806 |
| Table 82. | SYSCFG register map and reset values . . . . . | 829 |
| Table 83. | Connectivity matrix . . . . . | 833 |
| Table 84. | Implementation of HPDMA1 channels . . . . . | 836 |
| Table 85. | HPDMA1 in low-power modes . . . . . | 836 |
| Table 86. | Programmed HPDMA1 request . . . . . | 837 |
| Table 87. | Programmed HPDMA1 request as a block request . . . . . | 841 |
| Table 88. | HPDMA1 channel with peripheral early termination . . . . . | 841 |
| Table 89. | Programmed HPDMA1 request with peripheral early termination . . . . . | 841 |
| Table 90. | Programmed HPDMA1 trigger . . . . . | 842 |
| Table 91. | Programmed HPDMA source/destination burst . . . . . | 865 |
| Table 92. | Programmed data handling . . . . . | 870 |
| Table 93. | Effect of low-power modes on HPDMA . . . . . | 892 |
| Table 94. | HPDMA interrupt requests . . . . . | 893 |
| Table 95. | HPDMA register map and reset values . . . . . | 929 |
| Table 96. | GPDMA1 channel implementation . . . . . | 933 |
| Table 97. | GPDMA1 wake-up in low-power modes . . . . . | 933 |
| Table 98. | Programmed GPDMA1 request . . . . . | 933 |
| Table 99. | Programmed GPDMA1 request as a block request . . . . . | 938 |
| Table 100. | GPDMA1 channel with peripheral early termination . . . . . | 938 |
| Table 101. | Programmed GPDMA1 request with peripheral early termination . . . . . | 938 |
| Table 102. | Programmed GPDMA1 trigger . . . . . | 938 |
| Table 103. | Programmed GPDMA source/destination burst . . . . . | 961 |
| Table 104. | Programmed data handling . . . . . | 966 |
| Table 105. | Effect of low-power modes on GPDMA . . . . . | 979 |
| Table 106. | GPDMA interrupt requests . . . . . | 980 |
| Table 107. | GPDMA register map and reset values . . . . . | 1009 |
| Table 108. | Neural-ART 14 NPU configuration . . . . . | 1013 |
| Table 109. | Neural-ART 14 NPU signals . . . . . | 1015 |
| Table 110. | Activation functions example . . . . . | 1021 |
| Table 111. | Neural-ART 14 functional units memory base addresses. . . . . | 1028 |
| Table 112. | DMA2D internal signals . . . . . | 1034 |
| Table 113. | DMA2D trigger interconnections . . . . . | 1034 |
| Table 114. | Supported color mode in input . . . . . | 1035 |
| Table 115. | Data order in memory . . . . . | 1036 |
| Table 116. | Alpha mode configuration . . . . . | 1037 |
| Table 117. | Supported CLUT color mode . . . . . | 1038 |
| Table 118. | CLUT data order in memory . . . . . | 1038 |
| Table 119. | Supported color mode in output . . . . . | 1039 |
| Table 120. | Data order in memory . . . . . | 1040 |
| Table 121. | Standard data order in memory . . . . . | 1040 |
| Table 122. | Output FIFO byte reordering steps . . . . . | 1041 |
| Table 123. | MCU order in memory . . . . . | 1046 |
| Table 124. | DMA2D interrupt requests . . . . . | 1047 |
| Table 125. | DMA2D register map and reset values . . . . . | 1065 |
| Table 126. | GFXMMU internal input/output signals . . . . . | 1068 |
| Table 127. | GFXMMU interrupt requests . . . . . | 1074 |
| Table 128. | GFXMMU register map and reset values . . . . . | 1080 |
| Table 129. | GFXTIM input/output pins . . . . . | 1083 |
| Table 130. | GFXTIM internal signals . . . . . | 1083 |
| Table 131. | GFXTIM trigger interconnections . . . . . | 1084 |
| Table 132. | Graphic timer interrupt requests . . . . . | 1094 |
| Table 133. | GFXTIM register map and reset values . . . . . | 1115 |
| Table 134. | STM32N6x5/x7xx vector table . . . . . | 1118 |
| Table 135. | EXTI implementation . . . . . | 1127 |
| Table 136. | EXTI signals . . . . . | 1127 |
| Table 137. | EVG signals . . . . . | 1128 |
| Table 138. | EXTI line connection . . . . . | 1129 |
| Table 139. | EXTI event input configurations and register control . . . . . | 1131 |
| Table 140. | Masking functionality . . . . . | 1133 |
| Table 141. | Register protection overview . . . . . | 1134 |
| Table 142. | EXTI register map sections. . . . . | 1135 |
| Table 143. | EXTI register map and reset values . . . . . | 1167 |
| Table 144. | CRC internal input/output signals . . . . . | 1171 |
| Table 145. | CRC register map and reset values . . . . . | 1176 |
| Table 146. | FMC features . . . . . | 1178 |
| Table 147. | FMC internal signals . . . . . | 1180 |
| Table 148. | FMC memory regions (default mapping) . . . . . | 1182 |
| Table 149. | FMC memory region remap using BMAP[1:0] . . . . . | 1182 |
| Table 150. | NOR/PSRAM subregion selection . . . . . | 1183 |
| Table 151. | NOR/PSRAM External memory address . . . . . | 1183 |
| Table 152. | NAND access memory map . . . . . | 1183 |
| Table 153. | SDRAM device selection . . . . . | 1184 |
| Table 154. | SDRAM address mapping . . . . . | 1184 |
| Table 155. | SDRAM address mapping with 8-bit data bus width. . . . . | 1185 |
| Table 156. | SDRAM address mapping with 16-bit data bus width. . . . . | 1186 |
| Table 157. | SDRAM address mapping with 32-bit data bus width. . . . . | 1186 |
| Table 158. | Programmable NOR/PSRAM access parameters . . . . . | 1188 |
| Table 159. | Non-multiplexed I/O NOR flash memory. . . . . | 1189 |
| Table 160. | 16-bit multiplexed I/O NOR flash memory . . . . . | 1189 |
| Table 161. | Non-multiplexed I/Os PSRAM/SRAM . . . . . | 1190 |
| Table 162. | 16-bit multiplexed I/O PSRAM . . . . . | 1190 |
| Table 163. | NOR flash/PSRAM: Example of supported memories and transactions . . . . . | 1191 |
| Table 164. | FMC_BCRx bitfields (mode 1) . . . . . | 1195 |
| Table 165. | FMC_BTRx bitfields (mode 1) . . . . . | 1195 |
| Table 166. | FMC_BCRx bitfields (mode A) . . . . . | 1197 |
| Table 167. | FMC_BTRx bitfields (mode A) . . . . . | 1198 |
| Table 168. | FMC_BWTRx bitfields (mode A). . . . . | 1198 |
| Table 169. | FMC_BCRx bitfields (mode 2/B). . . . . | 1200 |
| Table 170. | FMC_BTRx bitfields (mode 2/B). . . . . | 1201 |
| Table 171. | FMC_BWTRx bitfields (mode 2/B) . . . . . | 1201 |
| Table 172. | FMC_BCRx bitfields (mode C) . . . . . | 1203 |
| Table 173. | FMC_BTRx bitfields (mode C) . . . . . | 1203 |
| Table 174. | FMC_BWTRx bitfields (mode C). . . . . | 1204 |
| Table 175. | FMC_BCRx bitfields (mode D) . . . . . | 1205 |
| Table 176. | FMC_BTRx bitfields (mode D) . . . . . | 1206 |
| Table 177. | FMC_BWTRx bitfields (mode D). . . . . | 1206 |
| Table 178. | FMC_BCRx bitfields (muxed mode) . . . . . | 1208 |
| Table 179. | FMC_BTRx bitfields (muxed mode) . . . . . | 1209 |
| Table 180. | FMC_BCRx bitfields (Synchronous multiplexed read mode) . . . . . | 1214 |
| Table 181. | FMC_BTRx bitfields (Synchronous multiplexed read mode) . . . . . | 1215 |
| Table 182. | FMC_BCRx bitfields (Synchronous multiplexed write mode) . . . . . | 1216 |
| Table 183. | FMC_BTRx bitfields (Synchronous multiplexed write mode) . . . . . | 1217 |
| Table 184. | Programmable NAND flash access parameters . . . . . | 1227 |
| Table 185. | 8-bit NAND flash memory . . . . . | 1227 |
| Table 186. | 16-bit NAND flash memory . . . . . | 1228 |
| Table 187. | Supported memories and transactions . . . . . | 1228 |
| Table 188. | Number of ECC parity bytes per sector . . . . . | 1233 |
| Table 189. | FMC NAND controller Interrupt request . . . . . | 1242 |
| Table 190. | HPR relevant bits . . . . . | 1248 |
| Table 191. | ECC result relevant bits . . . . . | 1249 |
| Table 192. | SDRAM signals. . . . . | 1267 |
| Table 193. | FMC register map . . . . . | 1284 |
| Table 194. | XSPI implementation . . . . . | 1290 |
| Table 195. | XSPI input/output pins . . . . . | 1295 |
| Table 196. | XSPI internal signals. . . . . | 1295 |
| Table 197. | Command/address phase description . . . . . | 1306 |
| Table 198. | OctaRAM command address bit assignment (based on 64 Mb OctaRAM) . . . . . | 1318 |
| Table 199. | Address alignment cases . . . . . | 1326 |
| Table 200. | XSPI interrupt requests. . . . . | 1328 |
| Table 201. | XSPI register map and reset values . . . . . | 1354 |
| Table 202. | XSPIM implementation . . . . . | 1358 |
| Table 203. | XSPIM input/output pins . . . . . | 1359 |
| Table 204. | Use cases . . . . . | 1361 |
| Table 205. | XSPIM register map and reset values . . . . . | 1371 |
| Table 206. | SDMMC features . . . . . | 1372 |
| Table 207. | SDMMC operation modes SD and SDIO . . . . . | 1375 |
| Table 208. | SDMMC operation modes e•MMC . . . . . | 1375 |
| Table 209. | SDMMC internal input/output signals . . . . . | 1376 |
| Table 210. | SDMMC pins . . . . . | 1377 |
| Table 211. | SDMMC Command and data phase selection . . . . . | 1378 |
| Table 212. | Command token format . . . . . | 1384 |
| Table 213. | Short response with CRC token format . . . . . | 1385 |
| Table 214. | Short response without CRC token format . . . . . | 1385 |
| Table 215. | Long response with CRC token format . . . . . | 1385 |
| Table 216. | Specific Commands overview . . . . . | 1386 |
| Table 217. | Command path status flags . . . . . | 1387 |
| Table 218. | Command path error handling . . . . . | 1387 |
| Table 219. | Data token format . . . . . | 1395 |
| Table 220. | Data path status flags and clear bits . . . . . | 1395 |
| Table 221. | Data path error handling . . . . . | 1397 |
| Table 222. | Data FIFO access . . . . . | 1398 |
| Table 223. | Transmit FIFO status flags . . . . . | 1399 |
| Table 224. | Receive FIFO status flags . . . . . | 1401 |
| Table 225. | AHB and SDMMC_CK clock frequency relation . . . . . | 1405 |
| Table 226. | SDIO special operation control . . . . . | 1406 |
| Table 227. | 4-bit mode Start, interrupt, and CRC-status Signaling detection . . . . . | 1410 |
| Table 228. | CMD12 use cases . . . . . | 1415 |
| Table 229. | Data block gap hardware flow control behavior . . . . . | 1427 |
| Table 230. | Hardware flow control selection . . . . . | 1427 |
| Table 231. | SDMMC interrupts . . . . . | 1431 |
| Table 232. | Response type and SDMMC_RESPxR registers . . . . . | 1438 |
| Table 233. | SDMMC register map . . . . . | 1454 |
| Table 234. | STM32N6x5/x7xx features . . . . . | 1457 |
| Table 235. | DLYB functional signals . . . . . | 1459 |
| Table 236. | DLYB interconnection . . . . . | 1460 |
| Table 237. | DLYB register map and reset values . . . . . | 1464 |
| Table 238. | ADC features . . . . . | 1468 |
| Table 239. | ADC input/output pins . . . . . | 1470 |
| Table 240. | ADC internal input/output signals . . . . . | 1470 |
| Table 241. | ADC1/2 interconnection . . . . . | 1470 |
| Table 242. | Configuring the trigger polarity for regular external triggers . . . . . | 1491 |
| Table 243. | Configuring the trigger polarity for injected external triggers . . . . . | 1491 |
| Table 244. | TSAR timings depending on resolution . . . . . | 1494 |
| Table 245. | Offset computation versus data resolution . . . . . | 1498 |
| Table 246. | 12-bit data formats . . . . . | 1500 |
| Table 247. | Numerical examples for 32-bit or 16-bit format (POSSPFF = 0) . . . . . | 1501 |
| Table 248. | Analog window watchdog features . . . . . | 1509 |
| Table 249. | Analog watchdog 1 channel selection . . . . . | 1510 |
| Table 250. | Analog watchdog 1, 2, 3 comparison . . . . . | 1511 |
| Table 251. | Maximum output results versus N and M . . . . . | 1516 |
| Table 252. | Oversampler operating mode summary . . . . . | 1520 |
| Table 253. | DELAY bits versus ADC resolution . . . . . | 1526 |
| Table 254. | ADC interrupts . . . . . | 1539 |
| Table 255. | ADC register map and reset values for each ADC . . . . . | 1575 |
| Table 256. | ADC register map and reset values (master and slave ADC common registers) . . . . . | 1578 |
| Table 257. | DTS internal input/output signals . . . . . | 1580 |
| Table 258. | DTS interconnection . . . . . | 1581 |
| Table 259. | SDA slave registers . . . . . | 1586 |
| Table 260. | SDA TS control register (SDATS_CR) . . . . . | 1586 |
| Table 261. | SDA TS configuration register (SDATS_CFGGR) . . . . . | 1587 |
| Table 262. | SDA TS data register (SDATS_DR) . . . . . | 1588 |
| Table 263. | SDA TS timer register (SDATS_TIMER) . . . . . | 1589 |
| Table 264. | Output resolution configuration . . . . . | 1594 |
| Table 265. | DTS interrupts . . . . . | 1595 |
| Table 266. | DTS register memory map . . . . . | 1596 |
| Table 267. | PVT common register map and reset values . . . . . | 1616 |
| Table 268. | PVT IRQ register map and reset values . . . . . | 1616 |
| Table 269. | DTS TSC clock synthesizer register map and reset values . . . . . | 1617 |
| Table 270. | DTS TS individual register map and reset values . . . . . | 1619 |
| Table 271. | VREFBUF typical values . . . . . | 1621 |
| Table 272. | VREF buffer modes . . . . . | 1622 |
| Table 273. | VREFBUF register map and reset values . . . . . | 1625 |
| Table 274. | MDF features . . . . . | 1627 |
| Table 275. | MDF external pins . . . . . | 1630 |
| Table 276. | MDF internal signals . . . . . | 1630 |
| Table 277. | MDF trigger connections . . . . . | 1630 |
| Table 278. | MDF break connections . . . . . | 1631 |
| Table 279. | Control of the common clock generation . . . . . | 1638 |
| Table 280. | Clock constraints with respect to the incoming stream . . . . . | 1639 |
| Table 281. | Data size according to CIC order and CIC decimation values . . . . . | 1646 |
| Table 282. | Maximum decimation ratio versus order and input data size . . . . . | 1647 |
| Table 283. | Possible gain values . . . . . | 1648 |
| Table 284. | Recommended maximum gain values versus CIC decimation ratios . . . . . | 1650 |
| Table 285. | Most common microphone settings . . . . . | 1650 |
| Table 286. | HPF 3 dB cut-off frequencies examples . . . . . | 1652 |
| Table 287. | Register protection summary . . . . . | 1673 |
| Table 288. | Effect of low-power modes on MDF . . . . . | 1674 |
| Table 289. | MDF interrupt requests . . . . . | 1676 |
| Table 290. | Examples of MDF settings for microphone capture . . . . . | 1677 |
| Table 291. | Programming sequence . . . . . | 1677 |
| Table 292. | Output signal levels . . . . . | 1684 |
| Table 293. | MDF register map and reset values . . . . . | 1707 |
| Table 294. | ADF features . . . . . | 1710 |
| Table 295. | ADF external pins . . . . . | 1711 |
| Table 296. | ADF internal signals . . . . . | 1712 |
| Table 297. | ADF trigger connections . . . . . | 1712 |
| Table 298. | Control of the common clock generation . . . . . | 1718 |
| Table 299. | Clock constraints with respect to the incoming stream . . . . . | 1719 |
| Table 300. | Data size according to CIC order and CIC decimation values . . . . . | 1724 |
| Table 301. | Possible gain values . . . . . | 1725 |
| Table 302. | Recommended maximum gain values versus CIC decimation ratios . . . . . | 1727 |
| Table 303. | Most common microphone settings . . . . . | 1728 |
| Table 304. | HPF 3 dB cut-off frequency examples . . . . . | 1730 |
| Table 305. | ANSLP values versus FRFSIZE and sampling rates . . . . . | 1743 |
| Table 306. | Threshold values according SNTHR . . . . . | 1744 |
| Table 307. | Register protection summary . . . . . | 1750 |
| Table 308. | Effect of low-power modes on ADF . . . . . | 1751 |
| Table 309. | ADF interrupt requests . . . . . | 1752 |
| Table 310. | Examples of ADF settings for microphone capture . . . . . | 1753 |
| Table 311. | Programming sequence (CIC4) . . . . . | 1754 |
| Table 312. | Programming sequence (CIC5) . . . . . | 1755 |
| Table 313. | Output signal levels . . . . . | 1760 |
| Table 314. | ADF register map and reset values . . . . . | 1780 |
| Table 315. | Camera subsystem RIF peripheral ID . . . . . | 1789 |
| Table 316. | DCMI input/output pins . . . . . | 1795 |
| Table 317. | DCMI internal input/output signals . . . . . | 1795 |
| Table 318. | Positioning of captured data bytes in 32-bit words (8-bit width) . . . . . | 1797 |
| Table 319. | Positioning of captured data bytes in 32-bit words (10-bit width) . . . . . | 1797 |
| Table 320. | Positioning of captured data bytes in 32-bit words (12-bit width) . . . . . | 1797 |
| Table 321. | Positioning of captured data bytes in 32-bit words (14-bit width) . . . . . | 1798 |
| Table 322. | Data storage in monochrome progressive video format . . . . . | 1803 |
| Table 323. | Data storage in RGB progressive video format . . . . . | 1804 |
| Table 324. | Data storage in YCbCr progressive video format . . . . . | 1804 |
| Table 325. | Data storage in YCbCr progressive video format - Y extraction mode . . . . . | 1804 |
| Table 326. | DCMI interrupts . . . . . | 1805 |
| Table 327. | DCMI register map and reset values . . . . . | 1815 |
| Table 328. | Available pipelines . . . . . | 1816 |
| Table 329. | Glossary . . . . . | 1817 |
| Table 330. | DCMIPP input/output pads . . . . . | 1822 |
| Table 331. | DCMIPP input/output pins . . . . . | 1822 |
| Table 332. | DCMIPP clocks . . . . . | 1822 |
| Table 333. | DCMIPP resets . . . . . | 1823 |
| Table 334. | Parallel interface maximum resolution (80 MHz) . . . . . | 1824 |
| Table 335. | Supported pixel formats . . . . . | 1826 |
| Table 336. | DCMIPP_CMCR bit function . . . . . | 1828 |
| Table 337. | DCMIPP_PRCR bit function . . . . . | 1831 |
| Table 338. | DCMIPP_PRESR and DCMIPP_PRESUR bit function . . . . . | 1831 |
| Table 339. | DCMIPP_PxFCTCR bit function . . . . . | 1839 |
| Table 340. | DCMIPP_P0PPCR bit function . . . . . | 1842 |
| Table 341. | DCMIPP_P0DCCNTR and DCMIPP_P0DCLMTR bit function . . . . . | 1845 |
| Table 342. | DCMIPP_P1SRCR bit function . . . . . | 1848 |
| Table 343. | DCMIPP_P1BPRCR and DCMIPP_P1BPRSR bit function . . . . . | 1848 |
| Table 344. | DCMIPP_P1DECR bit function . . . . . | 1850 |
| Table 345. | DCMIPP_P1BLCCR bit function . . . . . | 1850 |
| Table 346. | DCMIPP_P1EXCR1 and DCMIPP_P1EXCR2 bit function . . . . . | 1851 |
| Table 347. | DCMIPP_P1DMCR bit function . . . . . | 1853 |
| Table 348. | DCMIPP_PxCCyy (yy = R0, R1, G0, G1, B0, B1) bit function . . . . . | 1854 |
| Table 349. | Color conversion: examples of coefficients . . . . . | 1855 |
| Table 350. | DCMIPP_P1CTCR1,2,3 bit function . . . . . | 1857 |
| Table 351. | DCMIPP_P1STyCR (y = 1, 2, 3), DCMIPP_P1STySR (y = 1, 2, 3), DCMIPP_P1STSTR and DCMIPP_P1STSZR bit function . . . . . | 1859 |
| Table 352. | Statistics extraction: collected data vs. modes . . . . . | 1860 |
| Table 353. | DCMIPP_PxCRSTR and DCMIPP_PxCRSZR bit function . . . . . | 1864 |
| Table 354. | DCMIPP_PxDCCR bit function . . . . . | 1865 |
| Table 355. | DCMIPP_PxDSCR, DCMIPP_PxDSRTIOR, DCMIPP_PxDSSZR . . . . . | 1866 |
| Table 356. | DCMIPP_PxPPCR bit function . . . . . | 1869 |
| Table 357. | Parallel interface input pixel formats . . . . . | 1884 |
| Table 358. | Correspondence between index and DCMIPP_PRCR register values. . . . . | 1885 |
| Table 359. | Parallel interface input pixel formats . . . . . | 1886 |
| Table 360. | Pixel pipe output pixel format . . . . . | 1886 |
| Table 361. | Dump pipe OUTPUT pixel formats . . . . . | 1888 |
| Table 362. | Shadow and physical registers . . . . . | 1895 |
| Table 363. | DCMIPP low power modes . . . . . | 1897 |
| Table 364. | DCMIPP interrupts . . . . . | 1900 |
| Table 365. | Event connection . . . . . | 1901 |
| Table 366. | DCMIPP registers organization . . . . . | 1902 |
| Table 367. | DCMIPP register map and reset values . . . . . | 2001 |
| Table 368. | Glossary of terms . . . . . | 2016 |
| Table 369. | Effect of low-power modes on CSI-2 Host controller . . . . . | 2035 |
| Table 370. | List of errors detected by the CSI-2 Host controller . . . . . | 2035 |
| Table 371. | List of events that trigger an interrupt . . . . . | 2036 |
| Table 372. | CSI-2 Host and PHY register map and reset values . . . . . | 2070 |
| Table 373. | PSSI input/output pins . . . . . | 2076 |
| Table 374. | PSSI internal input/output signals . . . . . | 2076 |
| Table 375. | Positioning of captured data bytes in 32-bit words (8-bit width) . . . . . | 2077 |
| Table 376. | Positioning of captured data bytes in 32-bit words (16-bit width) . . . . . | 2078 |
| Table 377. | PSSI interrupt requests . . . . . | 2081 |
| Table 378. | PSSI register map and reset values . . . . . | 2087 |
| Table 379. | Display subsystem RIF peripheral ID . . . . . | 2092 |
| Table 380. | LTDC pins . . . . . | 2095 |
| Table 381. | LTDC trigger interconnections . . . . . | 2096 |
| Table 382. | Clock domain for each register . . . . . | 2096 |
| Table 383. | LTDC register access and updated durations . . . . . | 2098 |
| Table 384. | Pixel data mapping versus color format . . . . . | 2101 |
| Table 385. | LTDC hardware triggers . . . . . | 2116 |
| Table 386. | LTDC interrupt requests . . . . . | 2118 |
| Table 387. | LTDC register map and reset values . . . . . | 2149 |
| Table 388. | GPU2D internal input/output signals . . . . . | 2155 |
| Table 389. | GPU2D trigger connections . . . . . | 2156 |
| Table 390. | VENC register map and reset values . . . . . | 2251 |
| Table 391. | JPEG internal signals . . . . . | 2266 |
| Table 392. | JPEG trigger connections . . . . . | 2267 |
| Table 393. | JPEG codec interrupt requests . . . . . | 2272 |
| Table 394. | JPEG codec register map and reset values . . . . . | 2285 |
| Table 395. | RNG internal input/output signals . . . . . | 2288 |
| Table 396. | RNG interrupt requests . . . . . | 2296 |
| Table 397. | RNG initialization times . . . . . | 2297 |
| Table 398. | RNG configurations . . . . . | 2297 |
| Table 399. | Configuration selection . . . . . | 2298 |
| Table 400. | RNG register map and reset map . . . . . | 2303 |
| Table 401. | CRYP versus SAES features . . . . . | 2305 |
| Table 402. | SAES internal input/output signals . . . . . | 2306 |
| Table 403. | SAES approved symmetric key functions . . . . . | 2307 |
| Table 404. | Counter mode initialization vector definition . . . . . | 2317 |
| Table 405. | Initialization of IV registers in GCM mode . . . . . | 2320 |
| Table 406. | GCM last block definition . . . . . | 2320 |
| Table 407. | Initialization of IV registers in CCM mode . . . . . | 2326 |
| Table 408. | AES data swapping example . . . . . | 2335 |
| Table 409. | Key endianness in SAES_KEYRx registers (128/256-bit keys) . . . . . | 2337 |
| Table 410. | IVI bitfield spread over SAES_IVRx registers . . . . . | 2339 |
| Table 411. | SAES interrupt requests . . . . . | 2341 |
| Table 412. | Processing latency for ECB, CBC and CTR . . . . . | 2342 |
| Table 413. | Processing latency for GCM and CCM (in SAES kernel clock cycles) . . . . . | 2342 |
| Table 414. | SAES register map and reset values . . . . . | 2357 |
| Table 415. | CRYP versus SAES features . . . . . | 2360 |
| Table 416. | CRYP internal input/output signals . . . . . | 2362 |
| Table 417. | CRYP approved AES symmetric key functions . . . . . | 2362 |
| Table 418. | Counter mode initialization vector definition . . . . . | 2373 |
| Table 419. | GCM mode IVI registers initialization . . . . . | 2376 |
| Table 420. | GCM last block definition . . . . . | 2376 |
| Table 421. | CCM mode IVI registers initialization . . . . . | 2383 |
| Table 422. | AES data swapping example . . . . . | 2388 |
| Table 423. | Key endianness in CRYP_KxR/LR registers (128/192/256-bit keys) . . . . . | 2390 |
| Table 424. | Initialization vector endianness in CRYP_IVxR registers (AES) . . . . . | 2390 |
| Table 425. | CRYP interrupt requests . . . . . | 2392 |
| Table 426. | Processing latency for ECB, CBC and CTR . . . . . | 2393 |
| Table 427. | Processing latency for GCM and CCM (in clock cycles) . . . . . | 2394 |
| Table 428. | CRYP register map and reset values . . . . . | 2407 |
| Table 429. | HASH internal input/output signals . . . . . | 2410 |
| Table 430. | Information on supported hash algorithms . . . . . | 2411 |
| Table 431. | Hash processor outputs . . . . . | 2414 |
| Table 432. | Processing time (in clock cycle) . . . . . | 2420 |
| Table 433. | HASH interrupt requests . . . . . | 2421 |
| Table 434. | HASH1 register map and reset values . . . . . | 2429 |
| Table 435. | MCE internal input/output signals . . . . . | 2432 |
| Table 436. | MCE block cipher latencies . . . . . | 2436 |
| Table 437. | MCE stream cipher latencies . . . . . | 2437 |
| Table 438. | MCE interrupt requests . . . . . | 2438 |
| Table 439. | MCE register map and reset values . . . . . | 2450 |
| Table 440. | Internal input/output signals . . . . . | 2453 |
| Table 441. | PKA integer arithmetic functions list . . . . . | 2454 |
| Table 442. | PKA prime field (Fp) elliptic curve functions list . . . . . | 2455 |
| Table 443. | Example of 'a' curve coefficient for ECC Fp scalar . . . . . | 2461 |
| Table 444. | Montgomery parameter computation . . . . . | 2461 |
| Table 445. | Modular addition . . . . . | 2462 |
| Table 446. | Modular subtraction . . . . . | 2462 |
| Table 447. | Montgomery multiplication . . . . . | 2463 |
| Table 448. | Modular exponentiation (normal mode) . . . . . | 2464 |
| Table 449. | Modular exponentiation (fast mode) . . . . . | 2464 |
| Table 450. | Modular exponentiation (protected mode) . . . . . | 2465 |
| Table 451. | Modular inversion . . . . . | 2465 |
| Table 452. | Modular reduction . . . . . | 2466 |
| Table 453. | Arithmetic addition . . . . . | 2466 |
| Table 454. | Arithmetic subtraction . . . . . | 2466 |
| Table 455. | Arithmetic multiplication . . . . . | 2467 |
| Table 456. | Arithmetic comparison . . . . . | 2467 |
| Table 457. | CRT exponentiation . . . . . | 2468 |
| Table 458. | Point on elliptic curve Fp check . . . . . | 2469 |
| Table 459. | ECC Fp scalar multiplication . . . . . | 2469 |
| Table 460. | ECDSA sign - Inputs . . . . . | 2471 |
| Table 461. | ECDSA sign - Outputs . . . . . | 2471 |
| Table 462. | Extended ECDSA sign - additional outputs . . . . . | 2472 |
| Table 463. | ECDSA verification - inputs . . . . . | 2472 |
| Table 464. | ECDSA verification - outputs . . . . . | 2473 |
| Table 465. | ECC complete addition . . . . . | 2473 |
| Table 466. | ECC double base ladder . . . . . | 2474 |
| Table 467. | ECC projective to affine . . . . . | 2475 |
| Table 468. | Family of supported curves for ECC operations . . . . . | 2476 |
| Table 469. | Modular exponentiation . . . . . | 2477 |
| Table 470. | ECC scalar multiplication . . . . . | 2477 |
| Table 471. | ECDSA signature average computation time . . . . . | 2478 |
| Table 472. | ECDSA verification average computation times . . . . . | 2478 |
| Table 473. | ECC double base ladder average computation times . . . . . | 2478 |
| Table 474. | ECC projective to affine average computation times . . . . . | 2478 |
| Table 475. | ECC complete addition average computation times . . . . . | 2478 |
| Table 476. | Point on elliptic curve Fp check average computation times . . . . . | 2478 |
| Table 477. | Montgomery parameters average computation times . . . . . | 2479 |
| Table 478. | PKA interrupt requests . . . . . | 2479 |
| Table 479. | PKA register map and reset values . . . . . | 2484 |
| Table 480. | TIM input/output pins . . . . . | 2487 |
| Table 481. | TIM internal input/output signals . . . . . | 2487 |
| Table 482. | Interconnect to the tim_ti1 input multiplexer . . . . . | 2488 |
| Table 483. | Interconnect to the tim_ti2 input multiplexer . . . . . | 2488 |
| Table 484. | Interconnect to the tim_ti3 input multiplexer . . . . . | 2489 |
| Table 485. | Interconnect to the tim_ti4 input multiplexer . . . . . | 2489 |
| Table 486. | Internal trigger connection . . . . . | 2489 |
| Table 487. | Interconnect to the tim_etr input multiplexer . . . . . | 2490 |
| Table 488. | Timer break interconnect . . . . . | 2490 |
| Table 489. | Timer break2 interconnect . . . . . | 2490 |
| Table 490. | System break interconnect . . . . . | 2490 |
| Table 491. | CCR and ARR register change dithering pattern . . . . . | 2523 |
| Table 492. | CCR register change dithering pattern in center-aligned PWM mode . . . . . | 2524 |
| Table 493. | Behavior of timer outputs versus tim_brk/tim_brk2 inputs . . . . . | 2536 |
| Table 494. | Break protection disarming conditions . . . . . | 2538 |
| Table 495. | Counting direction versus encoder signals (CC1P = CC2P = 0) . . . . . | 2546 |
| Table 496. | Counting direction versus encoder signals and polarity settings . . . . . | 2550 |
| Table 497. | DMA request . . . . . | 2572 |
| Table 498. | Effect of low-power modes on TIM1/TIM8 . . . . . | 2573 |
| Table 499. | Interrupt requests . . . . . | 2573 |
| Table 500. | Output control bits for complementary tim_ocx and tim_ocxn channels with break feature . . . . . | 2600 |
| Table 501. | TIMx register map and reset values . . . . . | 2623 |
| Table 502. | STM32N6x5/x7xx general purpose timers . . . . . | 2627 |
| Table 503. | TIM input/output pins . . . . . | 2629 |
| Table 504. | TIM internal input/output signals . . . . . | 2629 |
| Table 505. | Interconnect to the tim_ti1 input multiplexer . . . . . | 2630 |
| Table 506. | Interconnect to the tim_ti2 input multiplexer . . . . . | 2630 |
| Table 507. | Interconnect to the tim_ti3 input multiplexer . . . . . | 2630 |
| Table 508. | Interconnect to the tim_ti4 input multiplexer . . . . . | 2631 |
| Table 509. | TIMx internal trigger connection . . . . . | 2631 |
| Table 510. | Interconnect to the tim_etr input multiplexer . . . . . | 2631 |
| Table 511. | CCR and ARR register change dithering pattern . . . . . | 2663 |
| Table 512. | CCR register change dithering pattern in center-aligned PWM mode . . . . . | 2664 |
| Table 513. | Counting direction versus encoder signals(CC1P = CC2P = 0) . . . . . | 2673 |
| Table 514. | Counting direction versus encoder signals and polarity settings . . . . . | 2678 |
| Table 515. | DMA request . . . . . | 2703 |
| Table 516. | Effect of low-power modes on TIM2/TIM3/TIM4/TIM5 . . . . . | 2703 |
| Table 517. | Interrupt requests . . . . . | 2704 |
| Table 518. | Output control bit for standard tim_ocx channels . . . . . | 2725 |
| Table 519. | TIM2/TIM3/TIM4/TIM5 register map and reset values . . . . . | 2737 |
| Table 520. | TIM internal input/output signals . . . . . | 2741 |
| Table 521. | TIMx_ARR register change dithering pattern . . . . . | 2750 |
| Table 522. | DMA request . . . . . | 2752 |
| Table 523. | Effect of low-power modes on TIM6/TIM7/TIM18 . . . . . | 2752 |
| Table 524. | Interrupt request . . . . . | 2752 |
| Table 525. | TIMx register map and reset values . . . . . | 2759 |
| Table 526. | TIM input/output pins . . . . . | 2763 |
| Table 527. | TIM internal input/output signals . . . . . | 2763 |
| Table 528. | Interconnect to the tim_ti1 input multiplexer . . . . . | 2764 |
| Table 529. | Interconnect to the tim_ti2 input multiplexer . . . . . | 2764 |
| Table 530. | TIMx internal trigger connection . . . . . | 2764 |
| Table 531. | CCR and ARR register change dithering pattern . . . . . | 2782 |
| Table 532. | Effect of low-power modes on TIM9/TIM10/TIM11/TIM12/TIM13/TIM14 . . . . . | 2792 |
| Table 533. | Interrupt requests . . . . . | 2792 |
| Table 534. | Output control bit for standard tim_ocx channels . . . . . | 2805 |
| Table 535. | TIMx register map and reset values (x = 9, 12) . . . . . | 2809 |
| Table 536. | Output control bit for standard tim_ocx channels . . . . . | 2818 |
| Table 537. | TIM10/TIM11/TIM13/TIM14 register map and reset values . . . . . | 2821 |
| Table 538. | TIM input/output pins . . . . . | 2826 |
| Table 539. | TIM internal input/output signals . . . . . | 2827 |
| Table 540. | Interconnect to the tim_ti1 input multiplexer . . . . . | 2828 |
| Table 541. | Interconnect to the tim_ti2 input multiplexer . . . . . | 2828 |
| Table 542. | TIMx internal trigger connection . . . . . | 2828 |
| Table 543. | Timer break interconnect . . . . . | 2829 |
| Table 544. | System break interconnect . . . . . | 2829 |
| Table 545. | CCR and ARR register change dithering pattern . . . . . | 2849 |
| Table 546. | Break protection disarming conditions . . . . . | 2858 |
| Table 547. | DMA request . . . . . | 2871 |
| Table 548. | Effect of low-power modes on TIM15/TIM16/TIM17 . . . . . | 2871 |
| Table 549. | Interrupt requests . . . . . | 2872 |
| Table 550. | Output control bits for complementary tim_ocx and tim_ocxn channels with break feature (TIM15) . . . . . | 2887 |
| Table 551. | TIM15 register map and reset values . . . . . | 2900 |
| Table 552. | Output control bits for complementary tim_oc1 and tim_oc1n channels with break feature (TIM16/TIM17) . . . . . | 2913 |
| Table 553. | TIM16/TIM17 register map and reset values . . . . . | 2927 |
| Table 554. | STM32N6x5/x7xx LPTIM features . . . . . | 2930 |
| Table 555. | LPTIM1/2/3 input/output pins . . . . . | 2932 |
| Table 556. | LPTIM4/5 input/output pins . . . . . | 2932 |
| Table 557. | LPTIM1/2/3 internal signals . . . . . | 2933 |
| Table 558. | LPTIM4/5 internal signals . . . . . | 2933 |
| Table 559. | LPTIM1/2/3/4/5 external trigger connections . . . . . | 2934 |
| Table 560. | LPTIM1/2/3 input 1 connections . . . . . | 2934 |
| Table 561. | LPTIM1/2/3 input 2 connections . . . . . | 2934 |
| Table 562. | LPTIM1/2/3 input capture 1 connections . . . . . | 2934 |
| Table 563. | LPTIM1 input capture 2 connections . . . . . | 2935 |
| Table 564. | LPTIM2 input capture 2 connections . . . . . | 2935 |
| Table 565. | LPTIM3 input capture 2 connections . . . . . | 2935 |
| Table 566. | Prescaler division ratios . . . . . | 2937 |
| Table 567. | Encoder counting scenarios . . . . . | 2944 |
| Table 568. | Input capture Glitch filter latency (in counter step unit). . . . . | 2948 |
| Table 569. | Effect of low-power modes on the LPTIM. . . . . | 2952 |
| Table 570. | Interrupt events. . . . . | 2953 |
| Table 571. | LPTIM register map and reset values. . . . . | 2977 |
| Table 572. | IWDG features . . . . . | 2980 |
| Table 573. | IWDG delays versus actions . . . . . | 2981 |
| Table 574. | IWDG internal input/output signals . . . . . | 2982 |
| Table 575. | Effect of low power modes on IWDG . . . . . | 2987 |
| Table 576. | IWDG interrupt request. . . . . | 2989 |
| Table 577. | IWDG register map and reset values . . . . . | 2995 |
| Table 578. | WWDG features . . . . . | 2996 |
| Table 579. | WWDG internal input/output signals. . . . . | 2997 |
| Table 580. | WWDG interrupt requests. . . . . | 3000 |
| Table 581. | WWDG register map and reset values . . . . . | 3002 |
| Table 582. | RTC input/output pins . . . . . | 3006 |
| Table 583. | RTC internal input/output signals . . . . . | 3006 |
| Table 584. | RTC interconnection . . . . . | 3007 |
| Table 585. | RTC pin PC13 configuration . . . . . | 3007 |
| Table 586. | RTC_OUT mapping . . . . . | 3009 |
| Table 587. | Effect of low-power modes on RTC . . . . . | 3025 |
| Table 588. | RTC pins functionality over modes. . . . . | 3025 |
| Table 589. | Nonsecure interrupt requests . . . . . | 3026 |
| Table 590. | Secure interrupt requests . . . . . | 3026 |
| Table 591. | RTC register map and reset values . . . . . | 3056 |
| Table 592. | TAMP input/output pins . . . . . | 3061 |
| Table 593. | TAMP internal input/output signals. . . . . | 3061 |
| Table 594. | TAMP interconnection . . . . . | 3062 |
| Table 595. | Device resource x tamper protection . . . . . | 3067 |
| Table 596. | Active tamper output change period . . . . . | 3071 |
| Table 597. | Minimum ATPER value. . . . . | 3072 |
| Table 598. | Active tamper filtered pulse duration . . . . . | 3073 |
| Table 599. | Effect of low-power modes on TAMP . . . . . | 3075 |
| Table 600. | TAMP pins functionality over modes . . . . . | 3075 |
| Table 601. | Interrupt requests . . . . . | 3075 |
| Table 602. | TAMP register map and reset values . . . . . | 3103 |
| Table 603. | I2C implementation. . . . . | 3106 |
| Table 604. | I2C input/output pins. . . . . | 3107 |
| Table 605. | I2C internal input/output signals . . . . . | 3108 |
| Table 606. | Comparison of analog and digital filters . . . . . | 3110 |
| Table 607. | I 2 C-bus and SMBus specification data setup and hold times . . . . . | 3112 |
| Table 608. | I2C configuration. . . . . | 3116 |
| Table 609. | I 2 C-bus and SMBus specification clock timings . . . . . | 3127 |
| Table 610. | Timing settings for f I2CCLK of 8 MHz. . . . . | 3137 |
| Table 611. | Timing settings for f I2CCLK of 16 MHz. . . . . | 3137 |
| Table 612. | SMBus timeout specifications . . . . . | 3139 |
| Table 613. | SMBus with PEC configuration . . . . . | 3141 |
| Table 614. | TIMEOUTA[11:0] for maximum \( t_{TIMEOUT} \) of 25 ms. . . . . | 3142 |
| Table 615. | TIMEOUTB[11:0] for maximum \( t_{LOW:SEXT} \) and \( t_{LOW:MEXT} \) of 8 ms . . . . . | 3142 |
| Table 616. | TIMEOUTA[11:0] for maximum \( t_{IDLE} \) of 50 \( \mu s \) . . . . . | 3142 |
| Table 617. | Effect of low-power modes to I2C. . . . . | 3152 |
| Table 618. | I2C interrupt requests . . . . . | 3152 |
| Table 619. | I2C register map and reset values . . . . . | 3168 |
| Table 620. | I3C instantiation . . . . . | 3171 |
| Table 621. | I3C wake-up . . . . . | 3171 |
| Table 622. | I3C FIFOs implementation . . . . . | 3171 |
| Table 623. | I3C interrupt(s) . . . . . | 3172 |
| Table 624. | I3C peripheral controller/target features versus MIPI v1.1 . . . . . | 3173 |
| Table 625. | I3C input/output pins. . . . . | 3174 |
| Table 626. | I3C internal input/output signals . . . . . | 3174 |
| Table 627. | I3C register usage . . . . . | 3186 |
| Table 628. | I3C registers/fields usage versus controller state . . . . . | 3187 |
| Table 629. | I3C registers/fields usage versus target state. . . . . | 3190 |
| Table 630. | List of supported I3C CCCs, as controller/target . . . . . | 3193 |
| Table 631. | I3C controller error management . . . . . | 3225 |
| Table 632. | I3C target error management . . . . . | 3227 |
| Table 633. | Effect of low-power modes . . . . . | 3231 |
| Table 634. | I3C interrupt requests . . . . . | 3232 |
| Table 635. | I3C register map and reset values . . . . . | 3277 |
| Table 636. | Instance implementation on STM32N6x5/x7xx . . . . . | 3281 |
| Table 637. | USART/LPUART features . . . . . | 3282 |
| Table 638. | USART/UART input/output pins . . . . . | 3284 |
| Table 639. | USART internal input/output signals. . . . . | 3285 |
| Table 640. | Noise detection from sampled data . . . . . | 3297 |
| Table 641. | Tolerance of the USART receiver when BRR [3:0] = 0000. . . . . | 3301 |
| Table 642. | Tolerance of the USART receiver when BRR[3:0] is different from 0000. . . . . | 3301 |
| Table 643. | USART frame formats . . . . . | 3306 |
| Table 644. | Effect of low-power modes on the USART . . . . . | 3329 |
| Table 645. | USART interrupt requests. . . . . | 3330 |
| Table 646. | USART register map and reset values . . . . . | 3368 |
| Table 647. | Instance implementation on STM32N6x5/x7xx . . . . . | 3371 |
| Table 648. | USART/LPUART features . . . . . | 3371 |
| Table 649. | LPUART input/output pins . . . . . | 3374 |
| Table 650. | LPUART internal input/output signals. . . . . | 3374 |
| Table 651. | Error calculation for programmed baud rates at lpuart_ker_ck_pres= 32.768 kHz . . . . . | 3385 |
| Table 652. | Tolerance of the LPUART receiver. . . . . | 3386 |
| Table 654. | Effect of low-power modes on the LPUART . . . . . | 3398 |
| Table 655. | LPUART interrupt requests. . . . . | 3399 |
| Table 656. | LPUART register map and reset values . . . . . | 3425 |
| Table 657. | SPI features . . . . . | 3428 |
| Table 658. | SPI/I2S input/output pins . . . . . | 3431 |
| Table 659. | SPI internal input/output signals . . . . . | 3431 |
| Table 660. | Effect of low-power modes on the SPI . . . . . | 3458 |
| Table 661. | SPI wake-up and interrupt requests . . . . . | 3459 |
| Table 662. | Bitfields usable in PCM/I2S mode . . . . . | 3461 |
| Table 663. | WS and CK level before SPI/I2S is enabled when AFCNTR = 1 . . . . . | 3470 |
| Table 664. | Serial data line swapping . . . . . | 3470 |
| Table 665. | CLKGEN programming examples for usual I2S frequencies . . . . . | 3474 |
| Table 666. | I2S interrupt requests . . . . . | 3483 |
| Table 667. | SPI register map and reset values . . . . . | 3500 |
| Table 668. | SAI features . . . . . | 3503 |
| Table 669. | SAI internal input/output signals . . . . . | 3505 |
| Table 670. | SAI input/output pins. . . . . | 3505 |
| Table 671. | External synchronization selection . . . . . | 3508 |
| Table 672. | MCLK_x activation conditions. . . . . | 3513 |
| Table 673. | Clock generator programming examples . . . . . | 3516 |
| Table 674. | SAI_A configuration for TDM mode . . . . . | 3523 |
| Table 675. | TDM frame configuration examples . . . . . | 3525 |
| Table 676. | SOPD pattern . . . . . | 3529 |
| Table 677. | Parity bit calculation . . . . . | 3529 |
| Table 678. | Audio sampling frequency versus symbol rates . . . . . | 3530 |
| Table 679. | SAI interrupt sources . . . . . | 3539 |
| Table 680. | SAI register map and reset values . . . . . | 3568 |
| Table 681. | SPDIFRX internal input/output signals . . . . . | 3571 |
| Table 682. | SPDIFRX pins. . . . . | 3571 |
| Table 683. | Transition sequence for preamble . . . . . | 3577 |
| Table 684. | Minimum spdifrx_ker_ck frequency versus audio sampling rate . . . . . | 3587 |
| Table 685. | Conditions of spdifrx_symb_ck generation. . . . . | 3588 |
| Table 686. | Bit field property versus SPDIFRX state. . . . . | 3591 |
| Table 687. | SPDIFRX interface register map and reset values . . . . . | 3603 |
| Table 688. | MDIOS input/output signals connected to package pins or balls . . . . . | 3605 |
| Table 689. | MDIOS internal input/output signals . . . . . | 3605 |
| Table 690. | Interrupt control bits . . . . . | 3610 |
| Table 691. | MDIOS register map and reset values . . . . . | 3615 |
| Table 692. | CAN subsystem I/O signals . . . . . | 3617 |
| Table 693. | CAN subsystem I/O pins. . . . . | 3618 |
| Table 694. | CAN triggers . . . . . | 3618 |
| Table 695. | Main features . . . . . | 3620 |
| Table 696. | DLC coding in FDCAN . . . . . | 3625 |
| Table 697. | Example of filter configuration for Rx buffers . . . . . | 3638 |
| Table 698. | Example of filter configuration for Debug messages . . . . . | 3639 |
| Table 699. | Possible configurations for frame transmission . . . . . | 3639 |
| Table 700. | Tx buffer/FIFO - Queue element size . . . . . | 3640 |
| Table 701. | First byte of level 1 reference message . . . . . | 3650 |
| Table 702. | First four bytes of level 2 reference message. . . . . | 3651 |
| Table 703. | First four bytes of level 0 reference message. . . . . | 3651 |
| Table 704. | TUR configuration example . . . . . | 3652 |
| Table 705. | System matrix, Node A. . . . . | 3657 |
| Table 706. | Trigger list, Node A. . . . . | 3658 |
| Table 707. | Number of data bytes transmitted with a reference message. . . . . | 3665 |
| Table 708. | Rx buffer and FIFO element . . . . . | 3672 |
| Table 709. | Rx buffer and FIFO element description. . . . . | 3672 |
| Table 710. | Tx buffer and FIFO element . . . . . | 3674 |
| Table 711. | Tx buffer element description . . . . . | 3674 |
| Table 712. | Tx Event FIFO element. . . . . | 3676 |
| Table 713. | Tx Event FIFO element description . . . . . | 3676 |
| Table 714. | Standard message ID filter element . . . . . | 3677 |
| Table 715. | Standard message ID filter element field description . . . . . | 3678 |
| Table 716. | Extended message ID filter element. . . . . | 3679 |
| Table 717. | Extended message ID filter element field description. . . . . | 3679 |
| Table 718. | Trigger memory element. . . . . | 3680 |
| Table 719. | Trigger memory element description . . . . . | 3680 |
| Table 720. | FDCAN register map and reset values . . . . . | 3718 |
| Table 721. | FDCAN TT register map and reset values . . . . . | 3740 |
| Table 722. | CCU register map and reset values . . . . . | 3746 |
| Table 723. | USB2 OTG high-speed Port 1 pins. . . . . | 3749 |
| Table 724. | USB2 OTG high-speed Port 1 internal signals . . . . . | 3750 |
| Table 725. | USB2 OTG high-speed Port 1 interrupt . . . . . | 3751 |
| Table 726. | USB2 OTG high-speed Port 1 wake-up events . . . . . | 3751 |
| Table 727. | USB2 OTG high-speed Port 2 pins. . . . . | 3753 |
| Table 728. | USB2 OTG high-speed Port 2 internal signals . . . . . | 3753 |
| Table 729. | USB2 OTG high-speed Port 2 interrupts . . . . . | 3755 |
| Table 730. | USB2 OTG high-speed Port 2 wake-up events . . . . . | 3755 |
| Table 731. | USB Type-C and power delivery pins. . . . . | 3758 |
| Table 732. | USB Type-C and power delivery internal signals . . . . . | 3758 |
| Table 733. | USB Type-C and power delivery interrupt . . . . . | 3759 |
| Table 734. | USB Type-C and power delivery events. . . . . | 3759 |
| Table 735. | OTG speeds supported . . . . . | 3761 |
| Table 736. | OTG implementation. . . . . | 3763 |
| Table 737. | OTG input/output pins. . . . . | 3764 |
| Table 738. | OTG input/output signals . . . . . | 3765 |
| Table 739. | Compatibility of STM32 low power modes with the OTG . . . . . | 3775 |
| Table 740. | Core global control and status registers (CSRs). . . . . | 3783 |
| Table 741. | Host-mode control and status registers (CSRs) . . . . . | 3784 |
| Table 742. | Device-mode control and status registers . . . . . | 3785 |
| Table 743. | Data FIFO (DFIFO) access register map . . . . . | 3787 |
| Table 744. | Power and clock gating control and status registers . . . . . | 3788 |
| Table 745. | TRDT values. . . . . | 3794 |
| Table 746. | Minimum duration for soft disconnect. . . . . | 3837 |
| Table 747. | OTG register map and reset values . . . . . | 3863 |
| Table 748. | USBPHYC implementation. . . . . | 3928 |
| Table 749. | USBPHYC register map and reset values . . . . . | 3936 |
| Table 750. | UCPD implementation . . . . . | 3938 |
| Table 751. | UCPD signals on pins. . . . . | 3939 |
| Table 752. | UCPD internal signals. . . . . | 3939 |
| Table 753. | 4b5b symbol encoding table. . . . . | 3941 |
| Table 754. | Ordered sets. . . . . | 3943 |
| Table 755. | Validation of ordered sets. . . . . | 3943 |
| Table 756. | Data size. . . . . | 3943 |
| Table 757. | Coding for ANAMODE, ANASUBMODE and link with TYPEC_VSTATE_CCx . . . . . | 3952 |
| Table 758. | Type-C sequence (source: 3A); cable/sink connected (Rd on CC1; Ra on CC2) . . . . . | 3953 |
| Table 759. | Effect of low power modes on the UCPD . . . . . | 3955 |
| Table 760. | UCPD interrupt requests. . . . . | 3956 |
| Table 761. | UCPD register map and reset values . . . . . | 3971 |
| Table 762. | Ethernet peripheral pins . . . . . | 3978 |
| Table 763. | Ethernet internal input/output signals . . . . . | 3979 |
| Table 764. | Fixed priority scheme for DMA channels . . . . . | 3993 |
| Table 765. | Routing DA/SA failed packets to Rx queue . . . . . | 3997 |
| Table 766. | Routing DA/SA pass but VLAN filter fail packets to Rx queue . . . . . | 3998 |
| Table 767. | Priority routing of filter pass packets when OMCBCQ = 0. . . . . | 3998 |
| Table 768. | Priority routing of filter pass packets when OMCBCQ = 1 . . . . . | 3998 |
| Table 769. | Weight for DMA channels . . . . . | 4001 |
| Table 770. | Example of credit value per transmit cycle . . . . . | 4002 |
| Table 771. | Double VLAN processing features in Tx path . . . . . | 4005 |
| Table 772. | Double VLAN processing in Rx path . . . . . | 4006 |
| Table 773. | VLAN insertion or replacement based on VLTi bit . . . . . | 4007 |
| Table 774. | Destination address filtering . . . . . | 4011 |
| Table 775. | Source address filtering . . . . . | 4012 |
| Table 776. | VLAN match status . . . . . | 4013 |
| Table 777. | OTS and ITS bit values with at least one perfect filter enabled . . . . . | 4016 |
| Table 778. | OTS and ITS bit values with only VLAN Hash filter enabled . . . . . | 4017 |
| Table 779. | Rx Queue routing table for Unicast-tagged packets . . . . . | 4018 |
| Table 780. | Ordinary clock: PTP messages for snapshot . . . . . | 4021 |
| Table 781. | End-to-end transparent clock: PTP messages for snapshot . . . . . | 4022 |
| Table 782. | Peer-to-peer transparent clock: PTP messages for snapshot . . . . . | 4023 |
| Table 783. | Egress and ingress latency for PHY interfaces . . . . . | 4027 |
| Table 784. | Minimum PTP clock frequency example . . . . . | 4027 |
| Table 785. | Message format defined in IEEE 1588-2008 . . . . . | 4028 |
| Table 786. | Message format defined in IEEE 1588-2008 . . . . . | 4029 |
| Table 787. | IPv6-UDP PTP packet fields required for control and status . . . . . | 4030 |
| Table 788. | Ethernet PTP packet fields required for control and status . . . . . | 4031 |
| Table 789. | Timestamp Snapshot Dependency on ETH_MACTSCR bits . . . . . | 4032 |
| Table 790. | PTP message generation criteria . . . . . | 4038 |
| Table 791. | Common PTP message header fields . . . . . | 4040 |
| Table 792. | MAC Transmit PTP mode and one-step timestamping operation . . . . . | 4043 |
| Table 793. | External memory used for holding the two gate-control lists . . . . . | 4048 |
| Table 794. | GCL and associated registers - BTR and CTR . . . . . | 4052 |
| Table 795. | GCL and associated registers - BTR and CTR, execution time > CycleTime . . . . . | 4053 |
| Table 796. | GCL and Associated Registers - BTR and CTR . . . . . | 4055 |
| Table 797. | Extending to New List By Truncating the Current List . . . . . | 4056 |
| Table 798. | Switching to New List By Extending the Current List . . . . . | 4057 |
| Table 799. | Gate Control List When FPE is disabled . . . . . | 4059 |
| Table 800. | Gate Control List When FPE is enabled . . . . . | 4059 |
| Table 801. | Valid SMD Values of mPacket . . . . . | 4062 |
| Table 802. | Valid frag_count values . . . . . | 4062 |
| Table 803. | Current and Previous SMD Values . . . . . | 4063 |
| Table 804. | Current and previous SMD values . . . . . | 4063 |
| Table 805. | Preemption Control Values on MRI Interface for Various Frame Types . . . . . | 4067 |
| Table 806. | MMC Counters and Associated Interrupt Registers . . . . . | 4068 |
| Table 807. | Transmit checksum offload engine functions for different packet types . . . . . | 4077 |
| Table 808. | Receive checksum offload engine functions for different packet types . . . . . | 4080 |
| Table 809. | TSO: TCP and IP header fields . . . . . | 4084 |
| Table 810. | Pause packet fields . . . . . | 4089 |
| Table 811. | Tx MAC flow control . . . . . | 4090 |
| Table 812. | Rx MAC flow control . . . . . | 4091 |
| Table 813. | Size of the maximum receive packet . . . . . | 4093 |
| Table 814. | MCD clock selection . . . . . | 4096 |
| Table 815. | MDIO Clause 45 frame structure . . . . . | 4097 |
| Table 816. | MDIO Clause 22 frame structure . . . . . | 4098 |
| Table 817. | Remote wake-up packet filter register . . . . . | 4111 |
| Table 818. | Description of the remote wake-up filter fields . . . . . | 4111 |
| Table 819. | Remote wake-up packet and PMT interrupt generation . . . . . | 4113 |
| Table 820. | Transfer complete interrupt behavior . . . . . | 4122 |
| Table 821. | TDES0 normal descriptor (read format) . . . . . | 4152 |
| Table 822. | TDES1 normal descriptor (read format) . . . . . | 4153 |
| Table 823. | TDES2 normal descriptor (read format) . . . . . | 4153 |
| Table 824. | TDES3 normal descriptor (read format) . . . . . | 4154 |
| Table 825. | TDES0 normal descriptor (write-back format). . . . . | 4157 |
| Table 826. | TDES1 normal descriptor (write-back format). . . . . | 4157 |
| Table 827. | TDES2 normal descriptor (write-back format). . . . . | 4158 |
| Table 828. | TDES3 normal descriptor (write-back format). . . . . | 4158 |
| Table 829. | TDES0 context descriptor. . . . . | 4162 |
| Table 830. | TDES1 context descriptor. . . . . | 4162 |
| Table 831. | TDES2 context descriptor. . . . . | 4163 |
| Table 832. | TDES3 context descriptor. . . . . | 4163 |
| Table 833. | RDES0 normal descriptor (read format) . . . . . | 4166 |
| Table 834. | RDES1 normal descriptor (read format) . . . . . | 4166 |
| Table 835. | RDES2 normal descriptor (read format) . . . . . | 4166 |
| Table 836. | RDES3 normal descriptor (read format) . . . . . | 4167 |
| Table 837. | RDES0 normal descriptor (write-back format) . . . . . | 4168 |
| Table 838. | RDES1 normal descriptor (write-back format) . . . . . | 4169 |
| Table 839. | RDES2 normal descriptor (write-back format) . . . . . | 4171 |
| Table 840. | RDES3 normal descriptor (write-back format) . . . . . | 4173 |
| Table 841. | RDES0 context descriptor . . . . . | 4176 |
| Table 842. | RDES1 context descriptor . . . . . | 4177 |
| Table 843. | RDES2 context descriptor . . . . . | 4177 |
| Table 844. | RDES3 context descriptor . . . . . | 4177 |
| Table 845. | Enhanced normal descriptor (read format) . . . . . | 4178 |
| Table 846. | ETH_DMA common register map and reset values . . . . . | 4207 |
| Table 847. | ETH_DMA_CH0 register map and reset values . . . . . | 4208 |
| Table 848. | ETH_DMA_CH1 register map and reset values . . . . . | 4210 |
| Table 849. | ETH_MTL register map and reset values . . . . . | 4239 |
| Table 850. | Giant Packet Status based on S2KP and JE Bits . . . . . | 4248 |
| Table 851. | Packet Length based on the CST and ACS bits . . . . . | 4248 |
| Table 852. | Ethernet MAC register map and reset values . . . . . | 4356 |
| Table 853. | Muxing of HDP signals . . . . . | 4368 |
| Table 854. | HDP register map and reset values . . . . . | 4372 |
| Table 855. | SWJ-DP pins . . . . . | 4377 |
| Table 856. | Trace port pins . . . . . | 4377 |
| Table 857. | Serial-wire trace port pins . . . . . | 4377 |
| Table 858. | Trigger pins . . . . . | 4378 |
| Table 859. | Authentication signal initial states . . . . . | 4381 |
| Table 860. | JTAG-DP data registers . . . . . | 4385 |
| Table 861. | Packet request . . . . . | 4386 |
| Table 862. | ACK response . . . . . | 4387 |
| Table 863. | Data transfer . . . . . | 4387 |
| Table 864. | Debug port registers . . . . . | 4388 |
| Table 865. | Debug port register map and reset values . . . . . | 4395 |
| Table 866. | AP1-2 authentication behavior . . . . . | 4397 |
| Table 867. | AP0 register map and reset values . . . . . | 4401 |
| Table 868. | AP1 register map and reset values . . . . . | 4405 |
| Table 869. | AP2 register map and reset values . . . . . | 4410 |
| Table 870. | System ROM table . . . . . | 4411 |
| Table 871. | MCU ROM table . . . . . | 4411 |
| Table 872. | System ROM table register map and reset values . . . . . | 4416 |
| Table 873. | Processor ROM table . . . . . | 4417 |
| Table 874. | Processor ROM register map and reset values . . . . . | 4422 |
| Table 875. | DWT register map and reset values . . . . . | 4435 |
| Table 876. | PMU register map and reset values . . . . . | 4450 |
| Table 877. | ITM register map and reset values . . . . . | 4460 |
| Table 878. | BPU register map and reset values . . . . . | 4467 |
| Table 879. | ETM register map and reset values . . . . . | 4492 |
| Table 880. | Trace subsystem ROM table . . . . . | 4496 |
| Table 881. | Trace subsystem ROM table register map and reset values . . . . . | 4502 |
| Table 882. | TSGEN register map and reset values . . . . . | 4509 |
| Table 883. | Trace and debug subsystem CTI_0 inputs . . . . . | 4512 |
| Table 884. | Trace and debug subsystem CTI_0 outputs . . . . . | 4512 |
| Table 885. | Trace and debug subsystem CTI_1 inputs . . . . . | 4512 |
| Table 886. | Trace and debug subsystem CTI_1 outputs . . . . . | 4513 |
| Table 887. | Cortex-M55 CTI inputs . . . . . | 4513 |
| Table 888. | Cortex-M55 CTI outputs . . . . . | 4513 |
| Table 889. | CTI register map and reset values . . . . . | 4527 |
| Table 890. | CSTF register map and reset values . . . . . | 4537 |
| Table 891. | ETF register map and reset values . . . . . | 4556 |
| Table 892. | ETR scatter-gather page format . . . . . | 4561 |
| Table 893. | ETR register map and reset values . . . . . | 4580 |
| Table 894. | TPIU register map and reset values . . . . . | 4597 |
| Table 895. | ETR replicator allocation . . . . . | 4599 |
| Table 896. | Replicator register map and reset values . . . . . | 4608 |
| Table 897. | SWO register map and reset values . . . . . | 4618 |
| Table 898. | STM extended stimulus port memory map . . . . . | 4620 |
| Table 899. | STM trace packet ID mapping to AXI masters . . . . . | 4621 |
| Table 900. | Hardware event mapping . . . . . | 4622 |
| Table 901. | STM register map and reset values . . . . . | 4645 |
| Table 902. | DBGMCU register map and reset values . . . . . | 4658 |
| Table 903. | Document revision history . . . . . | 4667 |
List of figures
Figure 1. Interconnect top view - STM32N6x7 devices . . . . . 160
Figure 2. Interconnect top view - STM32N6x5 devices . . . . . 161
Figure 3. Key management principle . . . . . 194
Figure 4. BSEC block diagram. . . . . 202
Figure 5. BSEC fuse mapping overview . . . . . 204
Figure 6. RISAF block diagram . . . . . 260
Figure 7. RISAF region programming . . . . . 261
Figure 8. RISAF region on-the-fly resizing . . . . . 264
Figure 9. IAC block diagram . . . . . 281
Figure 10. FLEXMEM versus retention . . . . . 291
Figure 11. ICACHE block diagram . . . . . 310
Figure 12. ICACHE TAG and data memories functional view . . . . . 312
Figure 13. CACHEAXI block diagram . . . . . 325
Figure 14. CACHEAXI TAG and data memories functional view . . . . . 328
Figure 15. Power control block diagram . . . . . 348
Figure 16. Power supply overview. . . . . 352
Figure 17. System supply configurations. . . . . 353
Figure 18. Device startup (VCORE supplied directly from SMPS step-down converter). . . . . 354
Figure 19. Device startup (VCORE supplied from an external regulator) . . . . . 355
Figure 20. Backup domain . . . . . 358
Figure 21. Retention domain . . . . . 359
Figure 22. POR/PDR waveform. . . . . 361
Figure 23. BOR thresholds . . . . . 362
Figure 24. Vdda18pmu_ok reset threshold . . . . . 362
Figure 25. Vddcore_ok reset thresholds . . . . . 363
Figure 26. VDDCORE monitoring . . . . . 364
Figure 27. PVD thresholds. . . . . 364
Figure 28. V08CAP thresholds. . . . . 367
Figure 29. Temperature thresholds . . . . . 368
Figure 30. VCORE voltage scaling versus system power modes . . . . . 373
Figure 31. Dynamic voltage scaling in Run mode . . . . . 374
Figure 32. Dynamic voltage scaling behavior in Stop mode . . . . . 375
Figure 33. Dynamic Voltage Scaling from Standby mode . . . . . 376
Figure 34. RCC block diagram. . . . . 412
Figure 35. Simplified reset circuit. . . . . 415
Figure 36. NRST reset pulse control . . . . . 418
Figure 37. Boot sequences versus system states . . . . . 421
Figure 38. Top-level clock tree. . . . . 423
Figure 39. HSE clock source . . . . . 425
Figure 40. HSE clock generation. . . . . 426
Figure 41. LSE clock generation . . . . . 427
Figure 42. HSI calibration flow. . . . . 430
Figure 43. MSI calibration flow. . . . . 431
Figure 44. PLL block diagram . . . . . 436
Figure 45. Spread spectrum modulation . . . . . 438
Figure 46. Core and bus clock generation. . . . . 442
Figure 47. Key signals controlling low-power modes. . . . . 443
Figure 48. Clock distribution for the NPU. . . . . 454
| Figure 49. | Clock distribution for PSSI, CSI, and DCMIPP . . . . . | 455 |
| Figure 50. | Clock distribution for GPU, ICACHE, and GFXMMU . . . . . | 456 |
| Figure 51. | Clock distribution for LTDC . . . . . | 456 |
| Figure 52. | Clock distribution for VENC . . . . . | 457 |
| Figure 53. | Clock distribution for OTG1, OTG2, and UCPD1 . . . . . | 458 |
| Figure 54. | Clock distribution for ETH1 . . . . . | 459 |
| Figure 55. | Clock management for ETH1 . . . . . | 460 |
| Figure 56. | Clock distribution for MDIOS . . . . . | 461 |
| Figure 57. | Clock distribution for FMC and MCE4 . . . . . | 462 |
| Figure 58. | Clock distribution for XSPIs and MCE1/2/3 . . . . . | 463 |
| Figure 59. | Clock distribution for SDMMCx and companions . . . . . | 465 |
| Figure 60. | Clock distribution for ADCs . . . . . | 466 |
| Figure 61. | Clock distribution for RTC . . . . . | 466 |
| Figure 62. | Clock distribution for IWDG and WWDG . . . . . | 467 |
| Figure 63. | Clock distribution for trace and debug . . . . . | 468 |
| Figure 64. | Kernel clock switching . . . . . | 469 |
| Figure 65. | Enable logic details for peripheral kernel clock . . . . . | 470 |
| Figure 66. | Basic structure of an I/O port bit . . . . . | 784 |
| Figure 67. | Input floating/pull-up/pull-down configurations . . . . . | 788 |
| Figure 68. | Output configuration . . . . . | 789 |
| Figure 69. | AF configuration . . . . . | 790 |
| Figure 70. | Programmable analog configuration . . . . . | 790 |
| Figure 71. | I/O compensation cell control overview . . . . . | 810 |
| Figure 72. | HPDMA block diagram . . . . . | 845 |
| Figure 73. | HPDMA channel direct programming without linked-list (HPDMA_CxLLR = 0) . . . . . | 847 |
| Figure 74. | HPDMA channel suspend and resume sequence . . . . . | 848 |
| Figure 75. | HPDMA channel abort and restart sequence . . . . . | 849 |
| Figure 76. | Static linked-list data structure (all Uxx = 1) of a linear addressing channel x . . . . . | 850 |
| Figure 77. | Static linked-list data structure (all Uxx = 1) of a 2D addressing channel x . . . . . | 851 |
| Figure 78. | HPDMA dynamic linked-list data structure of linear addressing channel x . . . . . | 852 |
| Figure 79. | HPDMA dynamic linked-list data structure of a 2D addressing channel x . . . . . | 852 |
| Figure 80. | HPDMA channel execution and linked-list programming in run-to-completion mode (HPDMA_CxCR.LSM = 0) . . . . . | 854 |
| Figure 81. | Inserting a LLI n with an auxiliary HPDMA channel y . . . . . | 856 |
| Figure 82. | HPDMA channel execution and linked-list programming in link step mode (HPDMA_CxCR.LSM = 1) . . . . . | 858 |
| Figure 83. | Building LLI n+1 : HPDMA dynamic linked-lists in link step mode . . . . . | 859 |
| Figure 84. | Replace with a new LLI n' in register file in link step mode . . . . . | 860 |
| Figure 85. | Replace with a new LLI n' and LLI n+1' in memory in link step mode (option 1) . . . . . | 861 |
| Figure 86. | Replace with a new LLI n' and LLI n+1' in memory in link step mode (option 2) . . . . . | 862 |
| Figure 87. | HPDMA channel execution and linked-list programming . . . . . | 864 |
| Figure 88. | Programmed 2D addressing . . . . . | 867 |
| Figure 89. | HPDMA arbitration policy . . . . . | 882 |
| Figure 90. | Trigger hit, memorization and overrun waveform . . . . . | 886 |
| Figure 91. | HPDMA circular buffer programming: update of the memory start address with a linear addressing channel . . . . . | 887 |
| Figure 92. | Shared HPDMA channel with circular buffering: update of the memory start address with a linear addressing channel . . . . . | 888 |
| Figure 93. | GPDMA block diagram . . . . . | 942 |
| Figure 94. | GPDMA channel direct programming without linked-list (GPDMA_CxLLR = 0) . . . . . | 943 |
| Figure 95. | GPDMA channel suspend and resume sequence . . . . . | 944 |
| Figure 96. | GPDMA channel abort and restart sequence . . . . . | 945 |
| Figure 97. | Static linked-list data structure (all Uxx = 1) of a linear addressing channel x . . . . . | 946 |
| Figure 98. | Static linked-list data structure (all Uxx = 1) of a 2D addressing channel x . . . . . | 947 |
| Figure 99. | GPDMA dynamic linked-list data structure of a linear addressing channel x . . . . . | 948 |
| Figure 100. | GPDMA dynamic linked-list data structure of a 2D addressing channel x . . . . . | 948 |
| Figure 101. | GPDMA channel execution and linked-list programming in run-to-completion mode (GPDMA_CxCR.LSM = 0) . . . . . | 950 |
| Figure 102. | Inserting a LLI n with an auxiliary GPDMA channel y . . . . . | 952 |
| Figure 103. | GPDMA channel execution and linked-list programming in link step mode (GPDMA_CxCR.LSM = 1) . . . . . | 954 |
| Figure 104. | Building LLI n+1 : GPDMA dynamic linked-lists in link step mode . . . . . | 955 |
| Figure 105. | Replace with a new LLI n' in register file in link step mode . . . . . | 956 |
| Figure 106. | Replace with a new LLI n' and LLI n+1' in memory in link step mode (option 1) . . . . . | 957 |
| Figure 107. | Replace with a new LLI n' and LLI n+1' in memory in link step mode (option 2) . . . . . | 958 |
| Figure 108. | GPDMA channel execution and linked-list programming . . . . . | 960 |
| Figure 109. | Programmed 2D addressing . . . . . | 963 |
| Figure 110. | GPDMA arbitration policy . . . . . | 970 |
| Figure 111. | Trigger hit, memorization, and overrun waveform . . . . . | 973 |
| Figure 112. | GPDMA circular buffer programming: update of the memory start address with a linear addressing channel . . . . . | 974 |
| Figure 113. | Shared GPDMA channel with circular buffering: update of the memory start address with a linear addressing channel . . . . . | 975 |
| Figure 114. | Stream processing engine . . . . . | 1012 |
| Figure 115. | Chaining of processing units . . . . . | 1013 |
| Figure 116. | Neural-ART 14 NPU accelerator . . . . . | 1014 |
| Figure 117. | Stream engines . . . . . | 1017 |
| Figure 118. | Two dimensional lossy compression . . . . . | 1018 |
| Figure 119. | Decompression unit (DECUN) . . . . . | 1018 |
| Figure 120. | Convolutional accelerator (CONVACC) . . . . . | 1019 |
| Figure 121. | Example of pooling operations . . . . . | 1020 |
| Figure 122. | Pooling unit (POOL) . . . . . | 1020 |
| Figure 123. | Activation unit (ACTIV) . . . . . | 1021 |
| Figure 124. | Arithmetic unit (ARITH) . . . . . | 1024 |
| Figure 125. | Memory to memory transfer . . . . . | 1025 |
| Figure 126. | Simple processing . . . . . | 1026 |
| Figure 127. | Multiple processing . . . . . | 1026 |
| Figure 128. | Classical Conv-Pool-ReLU . . . . . | 1026 |
| Figure 129. | Chained convolutions . . . . . | 1027 |
| Figure 130. | Split convolution . . . . . | 1027 |
| Figure 131. | Neural-ART 14 integration . . . . . | 1030 |
| Figure 132. | DMA2D block diagram . . . . . | 1034 |
| Figure 133. | Intel 8080 16-bit mode (RGB565) . . . . . | 1041 |
| Figure 134. | Intel 8080 18/24-bit mode (RGB888) . . . . . | 1041 |
| Figure 135. | GFXMMU block diagram . . . . . | 1067 |
| Figure 136. | Virtual buffer . . . . . | 1069 |
| Figure 137. | Virtual buffer and physical buffer memory map . . . . . | 1070 |
| Figure 138. | MMU block diagram . . . . . | 1071 |
| Figure 139. | Block validation/comparator implementation . . . . . | 1073 |
| Figure 140. | GFXTIM block diagram . . . . . | 1083 |
| Figure 141. Clock generator . . . . . | 1085 |
| Figure 142. Waveforms in standalone . . . . . | 1087 |
| Figure 143. Active counters and signals in standalone . . . . . | 1087 |
| Figure 144. Waveforms with external HSYNC and VSYNC. . . . . | 1087 |
| Figure 145. Waveforms with external HSYNC only . . . . . | 1088 |
| Figure 146. Active counters and signals with external HSYNC only . . . . . | 1088 |
| Figure 147. Waveforms with external VSYNC only . . . . . | 1088 |
| Figure 148. Active counters with external VSYNC only . . . . . | 1089 |
| Figure 149. Prescaling when external VSYNC only. . . . . | 1089 |
| Figure 150. Waveforms with external CSYNC only . . . . . | 1089 |
| Figure 151. Active counters and signals with external CSYNC only . . . . . | 1090 |
| Figure 152. Prescaling when external CSYNC only . . . . . | 1090 |
| Figure 153. Tearing-effect configurations . . . . . | 1092 |
| Figure 154. Watchdog timer. . . . . | 1093 |
| Figure 155. EXTI block diagram . . . . . | 1127 |
| Figure 156. Configurable event trigger logic CPU wake-up. . . . . | 1131 |
| Figure 157. EXTI direct events . . . . . | 1132 |
| Figure 158. EXTI mux GPIO selection. . . . . | 1133 |
| Figure 159. CRC calculation unit block diagram . . . . . | 1171 |
| Figure 160. FMC block diagram. . . . . | 1179 |
| Figure 161. Mode 1 read access waveforms . . . . . | 1194 |
| Figure 162. Mode 1 write access waveforms. . . . . | 1194 |
| Figure 163. Mode A read access waveforms. . . . . | 1196 |
| Figure 164. Mode A write access waveforms . . . . . | 1197 |
| Figure 165. Mode 2 and mode B read access waveforms. . . . . | 1199 |
| Figure 166. Mode 2 write access waveforms. . . . . | 1199 |
| Figure 167. Mode B write access waveforms . . . . . | 1200 |
| Figure 168. Mode C read access waveforms . . . . . | 1202 |
| Figure 169. Mode C write access waveforms . . . . . | 1202 |
| Figure 170. Mode D read access waveforms . . . . . | 1204 |
| Figure 171. Mode D write access waveforms . . . . . | 1205 |
| Figure 172. Muxed read access waveforms . . . . . | 1207 |
| Figure 173. Muxed write access waveforms . . . . . | 1208 |
| Figure 174. Asynchronous wait during a read access waveforms. . . . . | 1211 |
| Figure 175. Asynchronous wait during a write access waveforms. . . . . | 1211 |
| Figure 176. Wait configuration waveforms. . . . . | 1213 |
| Figure 177. Synchronous multiplexed read mode waveforms - NOR, PSRAM (CRAM). . . . . | 1214 |
| Figure 178. Synchronous multiplexed write mode waveforms - PSRAM (CRAM). . . . . | 1216 |
| Figure 179. NAND flash controller waveforms for common memory access. . . . . | 1229 |
| Figure 180. NAND flash controller waveforms for TCLR and TAR timings . . . . . | 1230 |
| Figure 181. Access to NAND flash memory . . . . . | 1231 |
| Figure 182. NAND flash page (2 Kbytes) layout with BCH . . . . . | 1235 |
| Figure 183. Example of 2 Kbyte page program sequence with 4-bit BCH. . . . . | 1237 |
| Figure 184. Chained-page read command timings . . . . . | 1239 |
| Figure 185. Example of 2-Kbyte page read sequence with 4-bit BCH. . . . . | 1240 |
| Figure 186. SDRAM burst write waveforms (AXI 4-word transfer, no page boundary crossing) . . . . . | 1269 |
| Figure 187. SDRAM burst read waveforms (AXI 4-word transfer, no page boundary crossing) . . . . . | 1270 |
| Figure 188. SDRAM burst read crossing a row boundary . . . . . | 1271 |
| Figure 189. SDRAM burst write crossing a row boundary . . . . . | 1272 |
| Figure 190. Read followed by write operation . . . . . | 1272 |
| Figure 191. Write followed by read operation . . . . . | 1273 |
| Figure 192. SDRAM Self-refresh waveforms . . . . . | 1274 |
| Figure 193. Power-down mode . . . . . | 1275 |
| Figure 194. Power-down with Auto-refresh . . . . . | 1276 |
| Figure 195. XSPI block diagram for 16-bit configuration (1) . . . . . | 1291 |
| Figure 196. XSPI block diagram for dual-octal configuration (1) . . . . . | 1292 |
| Figure 197. XSPI block diagram for octal configuration . . . . . | 1293 |
| Figure 198. XSPI block diagram in quad configuration . . . . . | 1294 |
| Figure 199. XSPI block diagram for dual-quad configuration . . . . . | 1295 |
| Figure 200. SDR read command in 16-bit configuration . . . . . | 1297 |
| Figure 201. DTR read in octal-SPI mode with DQS (Macronix mode) example . . . . . | 1300 |
| Figure 202. SDR write command in octal-SPI mode example . . . . . | 1302 |
| Figure 203. DTR write in octal-SPI mode (Macronix mode) example . . . . . | 1303 |
| Figure 204. Example of HyperBus read operation (8-bit data mode) . . . . . | 1306 |
| Figure 205. HyperBus write operation with initial latency (8-bit data mode) . . . . . | 1307 |
| Figure 206. HyperBus read operation with additional latency (8-bit data mode) . . . . . | 1308 |
| Figure 207. HyperBus write operation with additional latency (8-bit data mode) . . . . . | 1308 |
| Figure 208. HyperBus write operation with no latency (register write) . . . . . | 1309 |
| Figure 209. HyperBus read operation page crossing with latency (8-bit data mode) . . . . . | 1309 |
| Figure 210. HyperBus write operation with initial latency (16-bit mode) . . . . . | 1310 |
| Figure 211. D0/D1 data ordering in octal-SPI DTR mode (Micron) - Read access . . . . . | 1317 |
| Figure 212. OctaRAM read operation with reverse data ordering D1/D0 . . . . . | 1317 |
| Figure 213. NCS when CKMODE = 0 (T = CLK period) . . . . . | 1324 |
| Figure 214. Example of software control of two external memories . . . . . | 1325 |
| Figure 215. Example of hardware-controlled extended memory support . . . . . | 1326 |
| Figure 216. XSPIM block diagram . . . . . | 1359 |
| Figure 217. XSPI direct octal mode . . . . . | 1362 |
| Figure 218. XSPI direct 16-bit mode . . . . . | 1363 |
| Figure 219. XSPI dual-octal mode . . . . . | 1364 |
| Figure 220. XSPI swapped (octal) mode . . . . . | 1365 |
| Figure 221. XSPI multiplexed mode to Port1 . . . . . | 1366 |
| Figure 222. XSPI multiplexed (octal and dual-octal) mode to Port 2 . . . . . | 1367 |
| Figure 223. XSPI1 and XSPI2 drive a single external memory (octal mode) . . . . . | 1368 |
| Figure 224. Single XSPI driving two external memories . . . . . | 1369 |
| Figure 225. SDMMC “no response” and “no data” operations . . . . . | 1373 |
| Figure 226. SDMMC (multiple) block read operation . . . . . | 1373 |
| Figure 227. SDMMC (multiple) block write operation . . . . . | 1374 |
| Figure 228. SDMMC (sequential) stream read operation . . . . . | 1374 |
| Figure 229. SDMMC (sequential) stream write operation . . . . . | 1374 |
| Figure 230. SDMMC block diagram . . . . . | 1376 |
| Figure 231. SDMMC Command and data phase relation . . . . . | 1378 |
| Figure 232. Control unit . . . . . | 1380 |
| Figure 233. Command/response path . . . . . | 1381 |
| Figure 234. Command path state machine (CPSM) . . . . . | 1382 |
| Figure 235. Data path . . . . . | 1388 |
| Figure 236. DDR mode data packet clocking . . . . . | 1389 |
| Figure 237. DDR mode CRC status / boot acknowledgment clocking . . . . . | 1389 |
| Figure 238. Data path state machine (DPSM) . . . . . | 1390 |
| Figure 239. CLKMUX unit . . . . . | 1401 |
| Figure 240. Linked list structures . . . . . | 1404 |
| Figure 241. Asynchronous interrupt generation . . . . . | 1407 |
| Figure 242. Synchronous interrupt period data read . . . . . | 1408 |
| Figure 243. Synchronous interrupt period data write . . . . . | 1408 |
| Figure 244. Asynchronous interrupt period data read . . . . . | 1409 |
| Figure 245. Asynchronous interrupt period data write . . . . . | 1410 |
| Figure 246. Clock stop with SDMMC_CK for DS, HS, SDR12, SDR25. . . . . | 1413 |
| Figure 247. Clock stop with SDMMC_CK for DDR50, SDR50, SDR104. . . . . | 1413 |
| Figure 248. Read Wait with SDMMC_CK < 50 MHz . . . . . | 1414 |
| Figure 249. Read Wait with SDMMC_CK > 50 MHz . . . . . | 1414 |
| Figure 250. CMD12 stream timing . . . . . | 1417 |
| Figure 251. CMD5 Sleep Awake procedure . . . . . | 1419 |
| Figure 252. Normal boot mode operation . . . . . | 1421 |
| Figure 253. Alternative boot mode operation. . . . . | 1422 |
| Figure 254. Command response R1b busy signaling . . . . . | 1423 |
| Figure 255. SDMMC state control . . . . . | 1424 |
| Figure 256. Card cycle power / power up diagram . . . . . | 1425 |
| Figure 257. Read block gap hardware flow timing. . . . . | 1426 |
| Figure 258. CMD11 signal voltage switch sequence . . . . . | 1428 |
| Figure 259. Voltage switch transceiver typical application. . . . . | 1430 |
| Figure 260. DLYB block diagram . . . . . | 1458 |
| Figure 261. ADC block diagram . . . . . | 1469 |
| Figure 262. ADC clock scheme . . . . . | 1473 |
| Figure 263. ADC1 connectivity . . . . . | 1475 |
| Figure 264. ADC2 connectivity . . . . . | 1476 |
| Figure 265. Enabling/disabling the ADC . . . . . | 1481 |
| Figure 266. Bulb mode timing diagram . . . . . | 1484 |
| Figure 267. Analog-to-digital conversion time . . . . . | 1489 |
| Figure 268. Stopping ongoing regular conversions . . . . . | 1490 |
| Figure 269. Stopping ongoing regular and injected conversions. . . . . | 1490 |
| Figure 270. Triggers shared between ADC master and slave . . . . . | 1492 |
| Figure 271. Injected conversion latency during ongoing regular conversion . . . . . | 1493 |
| Figure 272. Single conversions of a sequence, software trigger . . . . . | 1495 |
| Figure 273. Continuous conversion of a sequence, software trigger. . . . . | 1495 |
| Figure 274. Single conversions of a sequence, hardware trigger . . . . . | 1496 |
| Figure 275. Continuous conversions of a sequence, hardware trigger . . . . . | 1496 |
| Figure 276. Right alignment (offset disabled, unsigned value) . . . . . | 1498 |
| Figure 277. Right alignment (offset enabled, signed value). . . . . | 1499 |
| Figure 278. Left alignment (offset disabled, unsigned value) . . . . . | 1499 |
| Figure 279. Left alignment (offset enabled, signed value). . . . . | 1500 |
| Figure 280. Example of overrun (OVRMOD = 0). . . . . | 1503 |
| Figure 281. Example of overrun (OVRMOD = 1). . . . . | 1503 |
| Figure 282. AUTDLY = 1, regular conversion in continuous mode, software trigger. . . . . | 1507 |
| Figure 283. AUTDLY = 1, regular hardware conversions interrupted by injected conversions (DISCEN = 0; JDISCEN = 0) . . . . . | 1507 |
| Figure 284. AUTDLY = 1, regular hardware conversions interrupted by injected conversions (DISCEN = 1, JDISCEN = 1) . . . . . | 1508 |
| Figure 285. AUTDLY = 1, regular continuous conversions interrupted by injected conversions. . . . . | 1508 |
| Figure 286. AUTDLY = 1 in autoinjection mode (JAUTO = 1) . . . . . | 1509 |
| Figure 287. Analog watchdog guarded area . . . . . | 1510 |
| Figure 288. ADC_AWDy_OUT signal generation (on all regular channels). . . . . | 1512 |
| Figure 289. ADC_AWDy_OUT signal generation (AWDy flag not cleared by software) . . . . . | 1513 |
| Figure 290. ADC_AWDy_OUT signal generation (on a single regular channel) . . . . . | 1513 |
| Figure 291. ADC_AWDy_OUT signal generation (on all injected channels) . . . . . | 1514 |
| Figure 292. 12-bit result oversampling with 10-bit right shift and rounding . . . . . | 1515 |
| Figure 293. Triggered regular oversampling mode (TROVS bit = 1) . . . . . | 1517 |
| Figure 294. Regular oversampling modes (4x ratio) . . . . . | 1518 |
| Figure 295. Regular and injected oversampling modes used simultaneously . . . . . | 1519 |
| Figure 296. Triggered regular oversampling with injection . . . . . | 1519 |
| Figure 297. Oversampling in autoinjection mode . . . . . | 1520 |
| Figure 298. Dual ADC block diagram . . . . . | 1522 |
| Figure 299. Injected simultaneous mode on four channels: Dual ADC mode . . . . . | 1523 |
| Figure 300. Regular simultaneous mode on 16 channels: dual ADC mode . . . . . | 1525 |
| Figure 301. Interleaved mode on 1 channel in continuous conversion mode: Dual ADC mode . . . . . | 1527 |
| Figure 302. Interleaved mode on 1 channel in single conversion mode: Dual ADC mode . . . . . | 1527 |
| Figure 303. Interleaved conversion with injection . . . . . | 1528 |
| Figure 304. Alternate trigger: injected group of each ADC . . . . . | 1529 |
| Figure 305. Alternate trigger: 4 injected channels (each ADC) in discontinuous mode . . . . . | 1530 |
| Figure 306. Alternate + regular simultaneous . . . . . | 1530 |
| Figure 307. Case of trigger occurring during injected conversion . . . . . | 1531 |
| Figure 308. Interleaved single channel CH0 with injected sequence CH11, CH12 . . . . . | 1531 |
| Figure 309. Two interleaved channels (CH1, CH2) with injected sequence CH11, CH12 - case 1: Master interrupted first . . . . . | 1532 |
| Figure 310. Two interleaved channels (CH1, CH2) with injected sequence CH11, CH12 - case 2: Slave interrupted first . . . . . | 1532 |
| Figure 311. DMA requests in regular simultaneous mode when DAMDF[1:0] = 0b00 . . . . . | 1533 |
| Figure 312. DMA requests in interleaved mode when DAMDF = 0b10 . . . . . | 1534 |
| Figure 313. VBAT channel block diagram . . . . . | 1537 |
| Figure 314. VREFINT channel block diagram . . . . . | 1537 |
| Figure 315. DTS block diagram . . . . . | 1580 |
| Figure 316. Serial data adapter . . . . . | 1583 |
| Figure 317. SDA data format . . . . . | 1584 |
| Figure 318. Falling alarms . . . . . | 1589 |
| Figure 319. Rising alarms . . . . . | 1590 |
| Figure 320. VREFBUF block diagram . . . . . | 1621 |
| Figure 321. MDF block diagram . . . . . | 1629 |
| Figure 322. SITFx overview . . . . . | 1632 |
| Figure 323. SPI timing example . . . . . | 1633 |
| Figure 324. Manchester timing example (SITFMOD = 11) . . . . . | 1635 |
| Figure 325. CKGEN overview . . . . . | 1638 |
| Figure 326. BSMX overview . . . . . | 1640 |
| Figure 327. SCD functional view . . . . . | 1641 |
| Figure 328. SCD timing example . . . . . | 1641 |
| Figure 329. DFLT overview . . . . . | 1643 |
| Figure 330. Programmable delay . . . . . | 1644 |
| Figure 331. CIC3 and CIC5 frequency response with decimation ratio = 32 . . . . . | 1646 |
| Figure 332. Reshape filter frequency response normalized (FRS / 2 = 1) . . . . . | 1651 |
| Figure 333. Out-of-limit detector thresholds . . . . . | 1654 |
| Figure 334. Trigger logic for DFLT and CKGEN . . . . . | 1656 |
| Figure 335. Asynchronous continuous mode (ACQMOD[2:0] = 0) . . . . . | 1657 |
| Figure 336. Asynchronous single-shot mode (ACQMOD[2:0] = 001) . . . . . | 1658 |
| Figure 337. Synchronous continuous mode (ACQMOD[2:0] = 010) . . . . . | 1659 |
| Figure 338. Synchronous single-shot mode (ACQMOD[2:0] = 011) . . . . . | 1660 |
| Figure 339. Window continuous mode (ACQMOD[2:0] = 100) . . . . . | 1661 |
| Figure 340. Snapshot mode example . . . . . | 1663 |
| Figure 341. Discard function example . . . . . | 1664 |
| Figure 342. Start sequence with DFLTEN, in continuous mode, audio configuration . . . . . | 1665 |
| Figure 343. Start sequence with trigger input, in continuous mode, motor configuration . . . . . | 1666 |
| Figure 344. Break interface simplified view . . . . . | 1667 |
| Figure 345. MDF_DFLTxD data format. . . . . | 1667 |
| Figure 346. Data resynchronization . . . . . | 1668 |
| Figure 347. Data transfer in interleaved-transfer mode . . . . . | 1669 |
| Figure 348. Data path for interleaved- and independent-transfer modes . . . . . | 1671 |
| Figure 349. Example of overflow and transfer to memory . . . . . | 1672 |
| Figure 350. MDF interrupt interface . . . . . | 1675 |
| Figure 351. Sensor connection examples . . . . . | 1680 |
| Figure 352. Global frequency response . . . . . | 1681 |
| Figure 353. Detailed frequency response . . . . . | 1681 |
| Figure 354. Simplified DFLT view with gain information . . . . . | 1683 |
| Figure 355. ADF block diagram . . . . . | 1711 |
| Figure 356. SITF overview. . . . . | 1713 |
| Figure 357. SPI timing example . . . . . | 1714 |
| Figure 358. Manchester timing example (SITFMOD = 11) . . . . . | 1715 |
| Figure 359. CKGEN overview . . . . . | 1718 |
| Figure 360. BSMX overview . . . . . | 1720 |
| Figure 361. DFLT overview . . . . . | 1721 |
| Figure 362. Programmable delay. . . . . | 1722 |
| Figure 363. CIC4 and CIC5 frequency response with decimation ratio = 32 or 16 . . . . . | 1723 |
| Figure 364. Reshape filter frequency response normalized (FRS / 2 = 1). . . . . | 1729 |
| Figure 365. Trigger logic for DFLT and CKGEN . . . . . | 1731 |
| Figure 366. Asynchronous continuous mode (ACQMOD[2:0] = 0) . . . . . | 1732 |
| Figure 367. Asynchronous single-shot mode (ACQMOD[2:0] = 001) . . . . . | 1733 |
| Figure 368. Synchronous continuous mode (ACQMOD[2:0] = 010) . . . . . | 1734 |
| Figure 369. Synchronous single-shot mode (ACQMOD[2:0] = 011) . . . . . | 1735 |
| Figure 370. Window continuous mode (ACQMOD[2:0] = 100) . . . . . | 1736 |
| Figure 371. Discard function example . . . . . | 1738 |
| Figure 372. Start sequence with DFLTEN, in continuous mode, audio configuration . . . . . | 1738 |
| Figure 373. SAD block diagram . . . . . | 1739 |
| Figure 374. SAD flow diagram . . . . . | 1741 |
| Figure 375. SAD timing diagram example . . . . . | 1747 |
| Figure 376. ADF_DFLTxD data format . . . . . | 1747 |
| Figure 377. Data resynchronization . . . . . | 1748 |
| Figure 378. Example of overflow and transfer to memory . . . . . | 1749 |
| Figure 379. ADF interrupt interface . . . . . | 1752 |
| Figure 380. Sensor connection examples . . . . . | 1757 |
| Figure 381. Global frequency response. . . . . | 1757 |
| Figure 382. Detailed frequency response . . . . . | 1758 |
| Figure 383. Simplified DFLT view with gain information . . . . . | 1760 |
| Figure 384. SAD example working with SADMOD = 01 . . . . . | 1763 |
| Figure 385. SAD example working with SADMOD = 1x . . . . . | 1764 |
| Figure 386. Camera subsystem block diagram . . . . . | 1786 |
| Figure 387. Camera subsystem clock diagram . . . . . | 1787 |
| Figure 388. DCMI block diagram . . . . . | 1795 |
| Figure 389. DCMI signal waveforms . . . . . | 1796 |
| Figure 390. Timing diagram . . . . . | 1798 |
| Figure 391. Frame capture waveforms in snapshot mode. . . . . | 1800 |
| Figure 392. Frame capture waveforms in continuous grab mode . . . . . | 1801 |
| Figure 393. Coordinates and size of the window after cropping . . . . . | 1801 |
| Figure 394. Data capture waveforms. . . . . | 1802 |
| Figure 395. Pixel raster scan order . . . . . | 1803 |
| Figure 396. DCMIPP overview. . . . . | 1817 |
| Figure 397. DCMIPP block diagram . . . . . | 1821 |
| Figure 398. VC flow processed by one pipe . . . . . | 1836 |
| Figure 399. Two exclusive VC flows processed by one reconfigured pipe . . . . . | 1837 |
| Figure 400. Two overlapping VC flows processed by two pipes . . . . . | 1837 |
| Figure 401. Snapshot (CPTMODE = 1) and Continuous (CPTMODE = 0) capture modes. . . . . | 1838 |
| Figure 402. Pipe0 (dump) architecture overview . . . . . | 1841 |
| Figure 403. Pipe1 ISP architecture view . . . . . | 1846 |
| Figure 404. Block diagram . . . . . | 1863 |
| Figure 405. Downsize with coverage filtering . . . . . | 1866 |
| Figure 406. Example with two ROIs. . . . . | 1867 |
| Figure 407. Pipe2 architecture overview . . . . . | 1872 |
| Figure 408. Use case: Pipe0 (statistics), Pipe1 (pixels). . . . . | 1874 |
| Figure 409. Statistics and RGB data for single virtual channel data flow . . . . . | 1875 |
| Figure 410. Three pipes within a single virtual channel in CSI2 mode . . . . . | 1875 |
| Figure 411. Handling interleaved packet . . . . . | 1876 |
| Figure 412. Handling interleaved packets across two pixel pipes . . . . . | 1876 |
| Figure 413. Interlaced video (based on single pixel pipe) . . . . . | 1877 |
| Figure 414. Interlaced video (based on two pixel pipes) . . . . . | 1877 |
| Figure 415. 3D sensors (top-bottom) processed by two pixel pipes . . . . . | 1882 |
| Figure 416. CSI-2 Host block diagram. . . . . | 2018 |
| Figure 417. CSI-2 Host architecture . . . . . | 2019 |
| Figure 418. CSI-2 Host clock domain . . . . . | 2021 |
| Figure 419. Lane merger input and output (one data lane) . . . . . | 2022 |
| Figure 420. Lane merger input and output (two data lanes) . . . . . | 2022 |
| Figure 421. Data lane mapping . . . . . | 2022 |
| Figure 422. Low-level protocol overview . . . . . | 2023 |
| Figure 423. CSI2- long-packet structure for a D-PHY physical layer. . . . . | 2024 |
| Figure 424. Short-packet structure based on D-PHY physical layer . . . . . | 2024 |
| Figure 425. DATA ID structure in short or long packet format. . . . . | 2025 |
| Figure 426. Data interleaving using data type . . . . . | 2026 |
| Figure 427. Data interleaving using virtual channels . . . . . | 2027 |
| Figure 428. RAW6 (BPP6) input and output format. . . . . | 2028 |
| Figure 429. Raw7 (BPP7) input and output format . . . . . | 2029 |
| Figure 430. Raw8 (BPP8) input and output format . . . . . | 2030 |
| Figure 431. Raw 10 (BPP10) input and output format. . . . . | 2030 |
| Figure 432. Raw12 (BPP12) input/output format. . . . . | 2031 |
| Figure 433. Raw14 (BPP14) input format . . . . . | 2032 |
| Figure 434. Raw16 (BPP16) input/output format. . . . . | 2033 |
| Figure 435. PSSI block diagram . . . . . | 2075 |
| Figure 436. Top-level block diagram . . . . . | 2075 |
| Figure 437. Data enable in receive mode waveform diagram (CKPOL=0) . . . . . | 2079 |
| Figure 438. Data enable waveform diagram in transmit mode (CKPOL=1). . . . . | 2079 |
| Figure 439. Ready in receive mode waveform diagram (CKPOL=0). . . . . | 2080 |
| Figure 440. Bidirectional PSSI_DE/PSSI_RDY waveform . . . . . | 2081 |
| Figure 441. Bidirectional PSSI_DE/PSSI_RDY connection diagram . . . . . | 2081 |
| Figure 442. Display subsystem block diagram . . . . . | 2089 |
| Figure 443. Display subsystem clock diagram. . . . . | 2089 |
| Figure 444. LTDC block diagram . . . . . | 2095 |
| Figure 445. Layer window programmable parameters . . . . . | 2107 |
| Figure 446. Blending two layers. . . . . | 2108 |
| Figure 447. LTDC synchronous timings. . . . . | 2112 |
| Figure 448. GPU2D block diagram . . . . . | 2155 |
| Figure 449. VENC block diagram . . . . . | 2158 |
| Figure 450. JPEG codec block diagram . . . . . | 2266 |
| Figure 451. RNG block diagram . . . . . | 2288 |
| Figure 452. NIST SP800-90B entropy source model. . . . . | 2289 |
| Figure 453. RNG initialization overview. . . . . | 2292 |
| Figure 454. SAES block diagram. . . . . | 2306 |
| Figure 455. Encryption/ decryption typical usage . . . . . | 2308 |
| Figure 456. Typical operation with authentication . . . . . | 2310 |
| Figure 457. Example of suspend mode management. . . . . | 2311 |
| Figure 458. ECB encryption. . . . . | 2312 |
| Figure 459. ECB decryption. . . . . | 2312 |
| Figure 460. CBC encryption. . . . . | 2313 |
| Figure 461. CBC decryption. . . . . | 2313 |
| Figure 462. Message construction in CTR mode. . . . . | 2316 |
| Figure 463. CTR encryption. . . . . | 2317 |
| Figure 464. Message construction in GCM . . . . . | 2318 |
| Figure 465. GCM authenticated encryption . . . . . | 2320 |
| Figure 466. Message construction in GMAC mode . . . . . | 2323 |
| Figure 467. GMAC authentication mode . . . . . | 2323 |
| Figure 468. Message construction in CCM mode . . . . . | 2324 |
| Figure 469. CCM mode authenticated encryption . . . . . | 2326 |
| Figure 470. Operation with wrapped keys for SAES in ECB and CBC modes . . . . . | 2329 |
| Figure 471. Operation with wrapped keys for SAES in CTR mode . . . . . | 2332 |
| Figure 472. Usage of Shared-key mode . . . . . | 2333 |
| Figure 473. 128-bit block construction according to the data type. . . . . | 2336 |
| Figure 474. Key protection mechanisms . . . . . | 2338 |
| Figure 475. CRYP block diagram . . . . . | 2361 |
| Figure 476. Encryption/ decryption typical usage . . . . . | 2363 |
| Figure 477. Typical operation with authentication . . . . . | 2366 |
| Figure 478. Example of suspend mode management. . . . . | 2367 |
| Figure 479. ECB encryption. . . . . | 2368 |
| Figure 480. ECB decryption. . . . . | 2368 |
| Figure 481. CBC encryption. . . . . | 2369 |
| Figure 482. CBC decryption. . . . . | 2369 |
| Figure 483. Message construction in CTR mode. . . . . | 2372 |
| Figure 484. CTR encryption. . . . . | 2373 |
| Figure 485. Message construction in GCM . . . . . | 2375 |
| Figure 486. GCM authenticated encryption . . . . . | 2376 |
| Figure 487. Message construction in GMAC mode . . . . . | 2380 |
| Figure 488. GMAC authentication mode . . . . . | 2380 |
| Figure 489. Message construction in CCM mode . . . . . | 2381 |
| Figure 490. CCM mode authenticated encryption . . . . . | 2383 |
| Figure 491. 128-bit block construction according to the data type. . . . . | 2389 |
| Figure 492. HASH block diagram . . . . . | 2410 |
| Figure 493. Message data swapping feature. . . . . | 2412 |
| Figure 494. HASH suspend/resume mechanism. . . . . | 2418 |
| Figure 495. MCE block diagram . . . . . | 2432 |
| Figure 496. MCE region programming. . . . . | 2433 |
| Figure 497. MCE implementation of block ciphers . . . . . | 2435 |
| Figure 498. MCE implementation of stream cipher . . . . . | 2436 |
| Figure 499. PKA block diagram . . . . . | 2453 |
| Figure 500. Advanced-control timer block diagram . . . . . | 2486 |
| Figure 501. Counter timing diagram with prescaler division change from 1 to 2 . . . . . | 2492 |
| Figure 502. Counter timing diagram with prescaler division change from 1 to 4 . . . . . | 2492 |
| Figure 503. Counter timing diagram, internal clock divided by 1 . . . . . | 2494 |
| Figure 504. Counter timing diagram, internal clock divided by 2 . . . . . | 2494 |
| Figure 505. Counter timing diagram, internal clock divided by 4 . . . . . | 2495 |
| Figure 506. Counter timing diagram, internal clock divided by N . . . . . | 2495 |
| Figure 507. Counter timing diagram, update event when ARPE = 0 (TIMx_ARR not preloaded). . . . . | 2496 |
| Figure 508. Counter timing diagram, update event when ARPE = 1 (TIMx_ARR preloaded). . . . . | 2497 |
| Figure 509. Counter timing diagram, internal clock divided by 1 . . . . . | 2498 |
| Figure 510. Counter timing diagram, internal clock divided by 2 . . . . . | 2499 |
| Figure 511. Counter timing diagram, internal clock divided by 4 . . . . . | 2499 |
| Figure 512. Counter timing diagram, internal clock divided by N . . . . . | 2500 |
| Figure 513. Counter timing diagram, update event when repetition counter is not used. . . . . | 2500 |
| Figure 514. Counter timing diagram, internal clock divided by 1, TIMx_ARR = 0x6 . . . . . | 2502 |
| Figure 515. Counter timing diagram, internal clock divided by 2 . . . . . | 2502 |
| Figure 516. Counter timing diagram, internal clock divided by 4, TIMx_ARR = 0x36 . . . . . | 2503 |
| Figure 517. Counter timing diagram, internal clock divided by N . . . . . | 2503 |
| Figure 518. Counter timing diagram, update event with ARPE = 1 (counter underflow) . . . . . | 2504 |
| Figure 519. Counter timing diagram, Update event with ARPE = 1 (counter overflow) . . . . . | 2505 |
| Figure 520. Update rate examples depending on mode and TIMx_RCR register settings . . . . . | 2506 |
| Figure 522. Control circuit in normal mode, internal clock divided by 1 . . . . . | 2508 |
| Figure 523. tim_ti2 external clock connection example . . . . . | 2508 |
| Figure 524. Control circuit in external clock mode 1 . . . . . | 2509 |
| Figure 525. External trigger input block . . . . . | 2510 |
| Figure 526. Control circuit in external clock mode 2 . . . . . | 2511 |
| Figure 527. Capture/compare channel (example: channel 1 input stage) . . . . . | 2511 |
| Figure 528. Capture/compare channel 1 main circuit . . . . . | 2512 |
| Figure 529. Output stage of capture/compare channel (channel 1, idem ch. 2, 3 and 4) . . . . . | 2512 |
| Figure 530. Output stage of capture/compare channel (channel 5, idem ch. 6) . . . . . | 2513 |
| Figure 531. PWM input mode timing . . . . . | 2515 |
| Figure 532. Output compare mode, toggle on tim_oc1 . . . . . | 2517 |
| Figure 533. Edge-aligned PWM waveforms (ARR = 8) . . . . . | 2518 |
| Figure 534. Center-aligned PWM waveforms (ARR = 8). . . . . | 2519 |
| Figure 535. Dithering principle . . . . . | 2520 |
| Figure 536. Data format and register coding in dithering mode. . . . . | 2521 |
| Figure 537. PWM resolution vs frequency . . . . . | 2522 |
| Figure 538. PWM dithering pattern . . . . . | 2523 |
| Figure 539. Dithering effect on duty cycle in center-aligned PWM mode . . . . . | 2524 |
| Figure 540. Generation of 2 phase-shifted PWM signals with 50% duty cycle . . . . . | 2526 |
| Figure 541. Combined PWM mode on channel 1 and 3 . . . . . | 2527 |
| Figure 542. 3-phase combined PWM signals with multiple trigger pulses per period . . . . . | 2528 |
| Figure 543. Complementary output with symmetrical dead-time insertion . . . . . | 2529 |
| Figure 544. Asymmetrical deadtime . . . . . | 2530 |
| Figure 545. Dead-time waveforms with delay greater than the negative pulse . . . . . | 2530 |
| Figure 546. Dead-time waveforms with delay greater than the positive pulse. . . . . | 2530 |
| Figure 547. Break and Break2 circuitry overview . . . . . | 2533 |
| Figure 548. Various output behavior in response to a break event on tim_brk (OSSI = 1) . . . . . | 2535 |
| Figure 549. PWM output state following tim_brk and tim_brk2 assertion (OSSI = 1) . . . . . | 2536 |
| Figure 550. PWM output state following tim_brk assertion (OSSI = 0) . . . . . | 2537 |
| Figure 551. Output redirection (tim_brk2 request not represented). . . . . | 2538 |
| Figure 552. Clearing TIMx_tim_ocxref . . . . . | 2539 |
| Figure 553. 6-step generation, COM example (OSSR = 1) . . . . . | 2540 |
| Figure 554. Example of one pulse mode. . . . . | 2541 |
| Figure 555. Retriggerable one-pulse mode . . . . . | 2543 |
| Figure 556. Pulse generator circuitry . . . . . | 2543 |
| Figure 557. Pulse generation on compare event, for edge-aligned and encoder modes . . . . . | 2544 |
| Figure 558. Extended pulsewidth in case of concurrent triggers . . . . . | 2545 |
| Figure 559. Example of counter operation in encoder interface mode. . . . . | 2547 |
| Figure 560. Example of encoder interface mode with tim_ti1fp1 polarity inverted. . . . . | 2547 |
| Figure 561. Quadrature encoder counting modes . . . . . | 2548 |
| Figure 562. Direction plus clock encoder mode. . . . . | 2549 |
| Figure 563. Directional clock encoder mode (CC1P = CC2P = 0). . . . . | 2549 |
| Figure 564. Directional clock encoder mode (CC1P = CC2P = 1). . . . . | 2550 |
| Figure 565. Index gating options . . . . . | 2551 |
| Figure 566. Jittered Index signals . . . . . | 2551 |
| Figure 567. Index generation for IPOS[1:0] = 11 . . . . . | 2552 |
| Figure 568. Counter reading with index gated on channel A (IPOS[1:0] = 11) . . . . . | 2552 |
| Figure 569. Counter reading with index ungated (IPOS[1:0] = 00) . . . . . | 2553 |
| Figure 570. Counter reading with index gated on channel A and B. . . . . | 2553 |
| Figure 571. Encoder mode behavior in case of narrow index pulse (IPOS[1:0] = 11). . . . . | 2554 |
| Figure 572. Counter reset Narrow index pulse (closer view, ARR = 0x07) . . . . . | 2555 |
| Figure 573. Index behavior in x1 and x2 mode (IPOS[1:0] = 01). . . . . | 2556 |
| Figure 574. Directional index sensitivity. . . . . | 2556 |
| Figure 575. Counter reset as function of FIDX bit setting . . . . . | 2557 |
| Figure 576. Index blanking. . . . . | 2557 |
| Figure 577. Index behavior in clock + direction mode, IPOS[0] = 1. . . . . | 2558 |
| Figure 578. Index behavior in directional clock mode, IPOS[0] = 1 . . . . . | 2558 |
| Figure 579. State diagram for quadrature encoded signals. . . . . | 2559 |
| Figure 580. Up-counting encoder error detection . . . . . | 2560 |
| Figure 581. Down-counting encode error detection. . . . . | 2561 |
| Figure 582. Encoder mode change with preload transferred on update (SMSPS = 0) . . . . . | 2562 |
| Figure 583. Measuring time interval between edges on three signals. . . . . | 2563 |
| Figure 584. Example of Hall sensor interface . . . . . | 2565 |
| Figure 585. Control circuit in reset mode . . . . . | 2566 |
| Figure 586. Control circuit in Gated mode . . . . . | 2567 |
| Figure 587. Control circuit in trigger mode. . . . . | 2568 |
| Figure 588. Control circuit in external clock mode 2 + trigger mode . . . . . | 2569 |
| Figure 589. General-purpose timer block diagram . . . . . | 2628 |
| Figure 590. Counter timing diagram with prescaler division change from 1 to 2 . . . . . | 2633 |
| Figure 591. Counter timing diagram with prescaler division change from 1 to 4 . . . . . | 2634 |
| Figure 592. Counter timing diagram, internal clock divided by 1 . . . . . | 2635 |
| Figure 593. Counter timing diagram, internal clock divided by 2 . . . . . | 2635 |
| Figure 594. Counter timing diagram, internal clock divided by 4 . . . . . | 2636 |
| Figure 595. Counter timing diagram, internal clock divided by N. . . . . | 2636 |
| Figure 596. Counter timing diagram, Update event when ARPE = 0 (TIMx_ARR not preloaded). . . . . | 2637 |
| Figure 597. Counter timing diagram, Update event when ARPE = 1 (TIMx_ARR preloaded). . . . . | 2638 |
| Figure 598. Counter timing diagram, internal clock divided by 1 . . . . . | 2639 |
| Figure 599. Counter timing diagram, internal clock divided by 2 . . . . . | 2640 |
| Figure 600. Counter timing diagram, internal clock divided by 4 . . . . . | 2640 |
| Figure 601. Counter timing diagram, internal clock divided by N . . . . . | 2641 |
| Figure 602. Counter timing diagram, Update event . . . . . | 2641 |
| Figure 603. Counter timing diagram, internal clock divided by 1, TIMx_ARR = 0x6 . . . . . | 2643 |
| Figure 604. Counter timing diagram, internal clock divided by 2 . . . . . | 2643 |
| Figure 605. Counter timing diagram, internal clock divided by 4, TIMx_ARR = 0x36 . . . . . | 2644 |
| Figure 606. Counter timing diagram, internal clock divided by N . . . . . | 2644 |
| Figure 607. Counter timing diagram, Update event with ARPE = 1 (counter underflow). . . . . | 2645 |
| Figure 608. Counter timing diagram, Update event with ARPE = 1 (counter overflow). . . . . | 2646 |
| Figure 609. Control circuit in normal mode, internal clock divided by 1 . . . . . | 2647 |
| Figure 610. tim_ti2 external clock connection example . . . . . | 2647 |
| Figure 611. Control circuit in external clock mode 1 . . . . . | 2648 |
| Figure 612. External trigger input block . . . . . | 2649 |
| Figure 613. Control circuit in external clock mode 2 . . . . . | 2650 |
| Figure 614. Capture/compare channel (example: channel 1 input stage). . . . . | 2650 |
| Figure 615. Capture/compare channel 1 main circuit . . . . . | 2651 |
| Figure 616. Output stage of capture/compare channel (channel 1, idem ch.2, 3 and 4). . . . . | 2651 |
| Figure 617. PWM input mode timing . . . . . | 2654 |
| Figure 618. Output compare mode, toggle on tim_oc1 . . . . . | 2656 |
| Figure 619. Edge-aligned PWM waveforms (ARR = 8). . . . . | 2657 |
| Figure 620. Center-aligned PWM waveforms (ARR = 8). . . . . | 2658 |
| Figure 621. Dithering principle . . . . . | 2659 |
| Figure 622. Data format and register coding in dithering mode . . . . . | 2660 |
| Figure 623. PWM resolution vs frequency (16-bit mode). . . . . | 2661 |
| Figure 624. PWM resolution vs frequency (32-bit mode). . . . . | 2661 |
| Figure 625. PWM dithering pattern . . . . . | 2662 |
| Figure 626. Dithering effect on duty cycle in center-aligned PWM mode . . . . . | 2663 |
| Figure 627. Generation of two phase-shifted PWM signals with 50% duty cycle . . . . . | 2665 |
| Figure 628. Combined PWM mode on channels 1 and 3 . . . . . | 2666 |
| Figure 629. OCREF_CLR input selection multiplexer . . . . . | 2667 |
| Figure 630. Clearing TIMx tim_ocxref . . . . . | 2667 |
| Figure 631. Example of One-pulse mode . . . . . | 2668 |
| Figure 632. Retriggerable one-pulse mode . . . . . | 2670 |
| Figure 633. Pulse generator circuitry . . . . . | 2671 |
| Figure 634. Pulse generation on compare event, for edge-aligned and encoder modes . . . . . | 2671 |
| Figure 635. Extended pulse width in case of concurrent triggers . . . . . | 2672 |
| Figure 636. Example of counter operation in encoder interface mode . . . . . | 2674 |
| Figure 637. Example of encoder interface mode with tim_ti1fp1 polarity inverted . . . . . | 2674 |
| Figure 638. Quadrature encoder counting modes . . . . . | 2675 |
| Figure 639. Direction plus clock encoder mode . . . . . | 2676 |
| Figure 640. Directional clock encoder mode (CC1P = CC2P = 0). . . . . | 2677 |
| Figure 641. Directional clock encoder mode (CC1P = CC2P = 1). . . . . | 2677 |
| Figure 642. Index gating options . . . . . | 2679 |
| Figure 643. Jittered Index signals . . . . . | 2679 |
| Figure 644. Index generation for IPOS[1:0] = 11 . . . . . | 2680 |
| Figure 645. Counter reading with index gated on channel A (IPOS[1:0] = 11) . . . . . | 2680 |
| Figure 646. Counter reading with index ungated (IPOS[1:0] = 00) . . . . . | 2681 |
| Figure 647. Counter reading with index gated on channel A and B . . . . . | 2681 |
| Figure 648. Encoder mode behavior in case of narrow index pulse (IPOS[1:0] = 11). . . . . | 2682 |
| Figure 649. Counter reset Narrow index pulse (closer view, ARR = 0x07) . . . . . | 2683 |
| Figure 650. Index behavior in x1 and x2 mode (IPOS[1:0] = 01). . . . . | 2684 |
| Figure 651. Directional index sensitivity . . . . . | 2684 |
| Figure 652. Counter reset as function of FIDX bit setting . . . . . | 2685 |
| Figure 653. Index blanking. . . . . | 2685 |
| Figure 654. Index behavior in clock + direction mode, IPOS[0] = 1. . . . . | 2686 |
| Figure 655. Index behavior in directional clock mode, IPOS[0] = 1. . . . . | 2686 |
| Figure 656. State diagram for quadrature encoded signals. . . . . | 2687 |
| Figure 657. Up-counting encoder error detection . . . . . | 2688 |
| Figure 658. Down-counting encode error detection. . . . . | 2689 |
| Figure 659. Encoder mode change with preload transferred on update (SMSPS = 0) . . . . . | 2690 |
| Figure 660. Control circuit in reset mode. . . . . | 2692 |
| Figure 661. Control circuit in gated mode . . . . . | 2693 |
| Figure 662. Control circuit in trigger mode. . . . . | 2693 |
| Figure 663. Control circuit in external clock mode 2 + trigger mode . . . . . | 2695 |
| Figure 664. Master/Slave timer example . . . . . | 2695 |
| Figure 665. Master/slave connection example with 1 channel only timers . . . . . | 2696 |
| Figure 666. Gating TIM_slv with tim_oc1ref of TIM_mstr . . . . . | 2697 |
| Figure 667. Gating TIM_slv with Enable of TIM_mstr . . . . . | 2698 |
| Figure 668. Triggering TIM_slv with update of TIM_mstr. . . . . | 2699 |
| Figure 669. Triggering TIM_slv with Enable of TIM_mstr . . . . . | 2699 |
| Figure 670. Triggering TIM_mstr and TIM_slv with TIM_mstr tim_ti1 input. . . . . | 2700 |
| Figure 671. Basic timer block diagram. . . . . | 2740 |
| Figure 672. Control circuit in normal mode, internal clock divided by 1. . . . . | 2741 |
| Figure 673. Counter timing diagram with prescaler division change from 1 to 2. . . . . | 2743 |
| Figure 674. Counter timing diagram with prescaler division change from 1 to 4. . . . . | 2743 |
| Figure 675. Counter timing diagram, internal clock divided by 1 . . . . . | 2744 |
| Figure 676. Counter timing diagram, internal clock divided by 2. . . . . | 2745 |
| Figure 677. Counter timing diagram, internal clock divided by 4. . . . . | 2745 |
| Figure 678. Counter timing diagram, internal clock divided by N. . . . . | 2746 |
| Figure 679. Counter timing diagram, update event when ARPE = 0 (TIMx_ARR not preloaded). . . . . | 2746 |
| Figure 680. Counter timing diagram, update event when ARPE = 1 (TIMx_ARR preloaded). . . . . | 2747 |
| Figure 681. Dithering principle. . . . . | 2748 |
| Figure 682. Data format and register coding in dithering mode. . . . . | 2748 |
| Figure 683. FCnt resolution vs frequency . . . . . | 2749 |
| Figure 684. PWM dithering pattern . . . . . | 2749 |
| Figure 685. General-purpose timer block diagram (TIM9/TIM12) . . . . . | 2762 |
| Figure 686. General-purpose timer block diagram (TIM10/TIM11/TIM13/TIM14) . . . . . | 2763 |
| Figure 687. Counter timing diagram with prescaler division change from 1 to 2. . . . . | 2766 |
| Figure 688. Counter timing diagram with prescaler division change from 1 to 4. . . . . | 2766 |
| Figure 689. Counter timing diagram, internal clock divided by 1 . . . . . | 2767 |
| Figure 690. Counter timing diagram, internal clock divided by 2. . . . . | 2768 |
| Figure 691. Counter timing diagram, internal clock divided by 4. . . . . | 2768 |
| Figure 692. Counter timing diagram, internal clock divided by N. . . . . | 2769 |
| Figure 693. Counter timing diagram, update event when ARPE = 0 (TIMx_ARR not preloaded). . . . . | 2769 |
| Figure 694. Counter timing diagram, update event when ARPE = 1 (TIMx_ARR preloaded). . . . . | 2770 |
| Figure 695. Control circuit in normal mode, internal clock divided by 1. . . . . | 2771 |
| Figure 696. tim_ti2 external clock connection example. . . . . | 2771 |
| Figure 697. Control circuit in external clock mode 1 . . . . . | 2772 |
| Figure 698. Capture/compare channel 1 input stage (TIM10/TIM11/TIM13/TIM14) . . . . . | 2773 |
| Figure 699. Capture/compare channel 1 input stage (TIM9/TIM12) . . . . . | 2773 |
| Figure 700. Capture/compare channel 1 main circuit . . . . . | 2774 |
| Figure 701. Output stage of capture/compare channel 1 . . . . . | 2774 |
| Figure 702. PWM input mode timing . . . . . | 2776 |
| Figure 703. Output compare mode, toggle on tim_oc1. . . . . | 2778 |
| Figure 704. Edge-aligned PWM waveforms (ARR = 8) . . . . . | 2779 |
| Figure 705. Dithering principle . . . . . | 2780 |
| Figure 706. Data format and register coding in dithering mode . . . . . | 2780 |
| Figure 707. PWM resolution vs frequency . . . . . | 2781 |
| Figure 708. PWM dithering pattern . . . . . | 2782 |
| Figure 709. Combined PWM mode on channel 1 and 2 . . . . . | 2784 |
| Figure 710. Example of one pulse mode . . . . . | 2785 |
| Figure 711. Retriggerable one pulse mode . . . . . | 2786 |
| Figure 712. Measuring time interval between edges on 2 signals . . . . . | 2787 |
| Figure 713. Control circuit in reset mode . . . . . | 2788 |
| Figure 714. Control circuit in gated mode . . . . . | 2789 |
| Figure 715. Control circuit in trigger mode . . . . . | 2789 |
| Figure 716. TIM15 block diagram . . . . . | 2825 |
| Figure 717. TIM16/TIM17 block diagram . . . . . | 2826 |
| Figure 718. Counter timing diagram with prescaler division change from 1 to 2 . . . . . | 2830 |
| Figure 719. Counter timing diagram with prescaler division change from 1 to 4 . . . . . | 2831 |
| Figure 720. Counter timing diagram, internal clock divided by 1 . . . . . | 2832 |
| Figure 721. Counter timing diagram, internal clock divided by 2 . . . . . | 2833 |
| Figure 722. Counter timing diagram, internal clock divided by 4 . . . . . | 2833 |
| Figure 723. Counter timing diagram, internal clock divided by N . . . . . | 2834 |
| Figure 724. Counter timing diagram, update event when ARPE = 0 (TIMx_ARR not preloaded) . . . . . | 2834 |
| Figure 725. Counter timing diagram, update event when ARPE = 1 (TIMx_ARR preloaded) . . . . . | 2835 |
| Figure 726. Update rate examples depending on mode and TIMx_RCR register settings . . . . . | 2836 |
| Figure 727. Control circuit in normal mode, internal clock divided by 1 . . . . . | 2837 |
| Figure 728. tim_ti2 external clock connection example . . . . . | 2837 |
| Figure 729. Control circuit in external clock mode 1 . . . . . | 2838 |
| Figure 730. Capture/compare channel (example: channel 1 input stage) . . . . . | 2839 |
| Figure 731. Capture/compare channel 1 main circuit . . . . . | 2839 |
| Figure 732. Output stage of capture/compare channel (channel 1) . . . . . | 2840 |
| Figure 733. Output stage of capture/compare channel (channel 2 for TIM15) . . . . . | 2840 |
| Figure 734. PWM input mode timing . . . . . | 2843 |
| Figure 735. Output compare mode, toggle on tim_oc1 . . . . . | 2845 |
| Figure 736. Edge-aligned PWM waveforms (ARR = 8) . . . . . | 2846 |
| Figure 737. Dithering principle . . . . . | 2847 |
| Figure 738. Data format and register coding in dithering mode . . . . . | 2847 |
| Figure 739. PWM resolution vs frequency . . . . . | 2848 |
| Figure 740. PWM dithering pattern . . . . . | 2849 |
| Figure 741. Combined PWM mode on channel 1 and 2 . . . . . | 2851 |
| Figure 742. Complementary output with symmetrical dead-time insertion. . . . . | 2852 |
| Figure 743. Asymmetrical deadtime . . . . . | 2853 |
| Figure 744. Dead-time waveforms with delay greater than the negative pulse. . . . . | 2853 |
| Figure 745. Dead-time waveforms with delay greater than the positive pulse. . . . . | 2853 |
| Figure 746. Break circuitry overview . . . . . | 2855 |
| Figure 747. Output behavior in response to a break event on tim_brk . . . . . | 2857 |
| Figure 748. Output redirection . . . . . | 2859 |
| Figure 749. tim_ocref_clr input selection multiplexer. . . . . | 2860 |
| Figure 750. | 6-step generation, COM example (OSSR = 1) . . . . . | 2861 |
| Figure 751. | Example of one pulse mode. . . . . | 2862 |
| Figure 752. | Retriggerable one pulse mode . . . . . | 2864 |
| Figure 753. | Measuring time interval between edges on 2 signals . . . . . | 2864 |
| Figure 754. | Control circuit in reset mode . . . . . | 2865 |
| Figure 755. | Control circuit in gated mode . . . . . | 2866 |
| Figure 756. | Control circuit in trigger mode . . . . . | 2867 |
| Figure 757. | LPTIM1/2/3 block diagram (1) . . . . . | 2931 |
| Figure 758. | LPTIM4/5 block diagram (1) . . . . . | 2932 |
| Figure 759. | Glitch filter timing diagram . . . . . | 2936 |
| Figure 760. | LPTIM output waveform, single-counting mode configuration when repetition register content is different than zero (with PRELOAD = 1) . . . . . | 2938 |
| Figure 761. | LPTIM output waveform, single-counting mode configuration and Set-once mode activated (WAVE bit is set) . . . . . | 2939 |
| Figure 762. | LPTIM output waveform, Continuous counting mode configuration . . . . . | 2939 |
| Figure 763. | Waveform generation . . . . . | 2941 |
| Figure 764. | Encoder mode counting sequence . . . . . | 2945 |
| Figure 765. | Continuous counting mode when repetition register LPTIM_RCR different from zero (with PRELOAD = 1). . . . . | 2946 |
| Figure 766. | Capture/compare input stage (channel 1) . . . . . | 2947 |
| Figure 767. | Capture/compare output stage (channel 1) . . . . . | 2947 |
| Figure 768. | Edge-aligned PWM mode (PRELOAD = 1) . . . . . | 2949 |
| Figure 769. | Edge-aligned PWM waveforms (ARR=8 and CCxP = 0) . . . . . | 2950 |
| Figure 770. | PWM mode with immediate update versus preloaded update . . . . . | 2951 |
| Figure 771. | Independent watchdog block diagram . . . . . | 2981 |
| Figure 772. | Reset timing due to timeout . . . . . | 2983 |
| Figure 773. | Reset timing due to refresh in the not allowed area . . . . . | 2984 |
| Figure 774. | Changing PR, RL, and performing a refresh (1) . . . . . | 2985 |
| Figure 775. | Window comparator update (1) . . . . . | 2986 |
| Figure 776. | Independent watchdog interrupt timing diagram. . . . . | 2988 |
| Figure 777. | Early wake-up comparator update (1) . . . . . | 2989 |
| Figure 778. | Watchdog block diagram . . . . . | 2997 |
| Figure 779. | Window watchdog timing diagram . . . . . | 2999 |
| Figure 780. | RTC block diagram . . . . . | 3005 |
| Figure 781. | TAMP block diagram . . . . . | 3060 |
| Figure 782. | Backup registers protection zones . . . . . | 3064 |
| Figure 783. | Tamper sampling with precharge pulse . . . . . | 3069 |
| Figure 784. | Low level detection with precharge and filtering . . . . . | 3070 |
| Figure 785. | Active tamper filtering . . . . . | 3073 |
| Figure 786. | Block diagram . . . . . | 3107 |
| Figure 787. | I 2 C-bus protocol . . . . . | 3109 |
| Figure 788. | Setup and hold timings . . . . . | 3111 |
| Figure 789. | I2C initialization flow . . . . . | 3113 |
| Figure 790. | Data reception . . . . . | 3114 |
| Figure 791. | Data transmission . . . . . | 3115 |
| Figure 792. | Target initialization flow . . . . . | 3118 |
| Figure 793. | Transfer sequence flow for I2C target transmitter, NOSTRETCH = 0 . . . . . | 3120 |
| Figure 794. | Transfer sequence flow for I2C target transmitter, NOSTRETCH = 1 . . . . . | 3121 |
| Figure 795. | Transfer bus diagrams for I2C target transmitter (mandatory events only) . . . . . | 3122 |
| Figure 796. | Transfer sequence flow for I2C target receiver, NOSTRETCH = 0 . . . . . | 3123 |
| Figure 797. | Transfer sequence flow for I2C target receiver, NOSTRETCH = 1 . . . . . | 3124 |
| Figure 798. | Transfer bus diagrams for I2C target receiver |
| (mandatory events only) . . . . . | 3124 |
| Figure 799. Controller clock generation . . . . . | 3126 |
| Figure 800. Controller initialization flow . . . . . | 3128 |
| Figure 801. 10-bit address read access with HEAD10R = 0 . . . . . | 3128 |
| Figure 802. 10-bit address read access with HEAD10R = 1 . . . . . | 3129 |
| Figure 803. Transfer sequence flow for I2C controller transmitter, N ≤ 255 bytes. . . . . | 3130 |
| Figure 804. Transfer sequence flow for I2C controller transmitter, N > 255 bytes. . . . . | 3131 |
| Figure 805. Transfer bus diagrams for I2C controller transmitter (mandatory events only) . . . . . | 3132 |
| Figure 806. Transfer sequence flow for I2C controller receiver, N ≤ 255 bytes . . . . . | 3134 |
| Figure 807. Transfer sequence flow for I2C controller receiver, N > 255 bytes. . . . . | 3135 |
| Figure 808. Transfer bus diagrams for I2C controller receiver (mandatory events only) . . . . . | 3136 |
| Figure 809. Timeout intervals for t LOW:SEXT , t LOW:MEXT . . . . . | 3140 |
| Figure 810. Transfer sequence flow for SMBus target transmitter N bytes + PEC . . . . . | 3143 |
| Figure 811. Transfer bus diagram for SMBus target transmitter (SBC = 1). . . . . | 3144 |
| Figure 812. Transfer sequence flow for SMBus target receiver N bytes + PEC . . . . . | 3145 |
| Figure 813. Bus transfer diagrams for SMBus target receiver (SBC = 1) . . . . . | 3146 |
| Figure 814. Bus transfer diagrams for SMBus controller transmitter . . . . . | 3147 |
| Figure 815. Bus transfer diagrams for SMBus controller receiver . . . . . | 3149 |
| Figure 816. I3C block diagram. . . . . | 3174 |
| Figure 817. I3C (primary) controller state and programming sequence diagram. . . . . | 3178 |
| Figure 818. I3C target state and programing sequence diagram . . . . . | 3183 |
| Figure 819. I3C CCC messages, as controller . . . . . | 3197 |
| Figure 820. I3C broadcast ENTDAA CCC, as controller . . . . . | 3198 |
| Figure 821. I3C broadcast, direct read and direct write RSTACT CCC, as controller . . . . . | 3199 |
| Figure 822. I3C CCC messages, as target . . . . . | 3201 |
| Figure 823. I3C broadcast ENTDAA CCC, as target. . . . . | 3202 |
| Figure 824. I3C broadcast DEFTGTS CCC, as target. . . . . | 3203 |
| Figure 825. I3C broadcast DEFGRPA CCC, as target . . . . . | 3204 |
| Figure 826. I3C private read/write messages, as controller. . . . . | 3206 |
| Figure 827. I3C private read/write messages, as target . . . . . | 3207 |
| Figure 828. Legacy I2C read/write messages, as controller . . . . . | 3208 |
| Figure 829. IBI transfer, as controller/target . . . . . | 3209 |
| Figure 830. Hot-join request transfer, as controller/target . . . . . | 3211 |
| Figure 831. Controller-role request transfer, as controller/target . . . . . | 3212 |
| Figure 832. C-FIFO management, as controller . . . . . | 3213 |
| Figure 833. TX-FIFO management, as controller . . . . . | 3215 |
| Figure 834. RX-FIFO management, as controller . . . . . | 3217 |
| Figure 835. S-FIFO management, as controller . . . . . | 3220 |
| Figure 836. RX-FIFO management, as target on the I3C bus. . . . . | 3221 |
| Figure 837. TX-FIFO management with I3C_TGTTDR, as target on the I3C bus. . . . . | 3223 |
| Figure 838. TX-FIFO management by software without I3C_TGTTDR if reading less bytes than TX-FIFO size, as target. . . . . | 3225 |
| Figure 839. USART block diagram . . . . . | 3283 |
| Figure 840. Word length programming . . . . . | 3287 |
| Figure 841. Configurable stop bits . . . . . | 3289 |
| Figure 842. TC/TXE behavior when transmitting . . . . . | 3291 |
| Figure 843. Start bit detection when oversampling by 16 or 8. . . . . | 3292 |
| Figure 844. usart_ker_ck clock divider block diagram. . . . . | 3295 |
| Figure 845. Data sampling when oversampling by 16. . . . . | 3296 |
| Figure 846. Data sampling when oversampling by 8. . . . . | 3297 |
| Figure 847. Mute mode using Idle line detection . . . . . | 3304 |
| Figure 848. Mute mode using address mark detection . . . . . | 3305 |
| Figure 849. Break detection in LIN mode (11-bit break length - LBDL bit is set) . . . . . | 3308 |
| Figure 850. Break detection in LIN mode vs. Framing error detection. . . . . | 3309 |
| Figure 851. USART example of synchronous master transmission. . . . . | 3310 |
| Figure 852. USART data clock timing diagram in synchronous master mode (M bits = 00) . . . . . | 3310 |
| Figure 853. USART data clock timing diagram in synchronous master mode (M bits = 01) . . . . . | 3311 |
| Figure 854. USART data clock timing diagram in synchronous slave mode (M bits = 00) . . . . . | 3312 |
| Figure 855. ISO 7816-3 asynchronous protocol . . . . . | 3314 |
| Figure 856. Parity error detection using the 1.5 stop bits . . . . . | 3316 |
| Figure 857. IrDA SIR ENDEC block diagram. . . . . | 3320 |
| Figure 858. IrDA data modulation (3/16) - normal mode . . . . . | 3320 |
| Figure 859. Transmission using DMA . . . . . | 3322 |
| Figure 860. Reception using DMA . . . . . | 3323 |
| Figure 861. Hardware flow control between two USARTs. . . . . | 3323 |
| Figure 862. RS232 RTS flow control . . . . . | 3324 |
| Figure 863. RS232 CTS flow control . . . . . | 3325 |
| Figure 864. Wake-up event verified (wake-up event = address match, FIFO disabled) . . . . . | 3328 |
| Figure 865. Wake-up event not verified (wake-up event = address match, FIFO disabled) . . . . . | 3328 |
| Figure 866. LPUART block diagram . . . . . | 3373 |
| Figure 867. LPUART word length programming . . . . . | 3376 |
| Figure 868. Configurable stop bits . . . . . | 3378 |
| Figure 869. TC/TXE behavior when transmitting . . . . . | 3380 |
| Figure 870. lpuart_ker_ck clock divider block diagram . . . . . | 3384 |
| Figure 871. Mute mode using Idle line detection . . . . . | 3388 |
| Figure 872. Mute mode using address mark detection . . . . . | 3389 |
| Figure 873. Transmission using DMA . . . . . | 3391 |
| Figure 874. Reception using DMA . . . . . | 3392 |
| Figure 875. Hardware flow control between two LPUARTs. . . . . | 3393 |
| Figure 876. RS232 RTS flow control . . . . . | 3393 |
| Figure 877. RS232 CTS flow control . . . . . | 3394 |
| Figure 878. Wake-up event verified (wake-up event = address match, FIFO disabled) . . . . . | 3397 |
| Figure 879. Wake-up event not verified (wake-up event = address match, FIFO disabled) . . . . . | 3397 |
| Figure 880. SPI/I2S block diagram . . . . . | 3429 |
| Figure 881. Full-duplex single master/ single slave application. . . . . | 3432 |
| Figure 882. Half-duplex single master/ single slave application . . . . . | 3433 |
| Figure 883. Simplex single master / single slave application (master in transmit-only / slave in receive-only mode) . . . . . | 3434 |
| Figure 884. Master and three independent slaves connected in star topology . . . . . | 3435 |
| Figure 885. Master and three slaves connected in circular (daisy chain) topology . . . . . | 3437 |
| Figure 886. Multimaster application . . . . . | 3438 |
| Figure 887. Scheme of NSS control logic . . . . . | 3440 |
| Figure 888. Data flow timing control (SSOE = 1, SSOM = 0, SSM = 0) . . . . . | 3440 |
| Figure 889. NSS interleaving pulses between data (SSOE = 1, SSOM = 1, SSM = 0) . . . . . | 3441 |
| Figure 890. Data clock timing diagram . . . . . | 3443 |
| Figure 891. Data alignment when data size is not equal to 8, 16 or 32 bits . . . . . | 3444 |
| Figure 892. TI mode transfer . . . . . | 3453 |
| Figure 893. Optional configurations of the slave behavior when an underrun condition is detected . . . . . | 3455 |
| Figure 894. Waveform examples . . . . . | 3463 |
| Figure 895. Master I2S Philips protocol waveforms (16/32-bit full accuracy) . . . . . | 3464 |
| Figure 896. I2S Philips standard waveforms . . . . . | 3464 |
| Figure 897. Master MSB-justified 16- or 32-bit full-accuracy length . . . . . | 3465 |
| Figure 898. Master MSB-justified 16- or 24-bit data length . . . . . | 3465 |
| Figure 899. Slave MSB-justified 16-, 24- or 32-bit data length . . . . . | 3466 |
| Figure 900. LSB-justified 16 or 24-bit data length . . . . . | 3466 |
| Figure 901. Master PCM when the frame length is equal the data length . . . . . | 3467 |
| Figure 902. Master PCM standard waveforms (16 or 24-bit data length) . . . . . | 3467 |
| Figure 903. Slave PCM waveforms . . . . . | 3468 |
| Figure 904. Startup sequence, I2S Philips standard, master . . . . . | 3471 |
| Figure 905. Startup sequence, I2S Philips standard, slave . . . . . | 3472 |
| Figure 906. Stop sequence, I2S Philips standard, master . . . . . | 3472 |
| Figure 907. I 2 S clock generator architecture . . . . . | 3473 |
| Figure 908. Data Format . . . . . | 3475 |
| Figure 909. Handling of underrun situation . . . . . | 3477 |
| Figure 910. Handling of overrun situation . . . . . | 3478 |
| Figure 911. Frame error detection, with FIXCH = 0 . . . . . | 3479 |
| Figure 912. Frame error detection, with FIXCH = 1 . . . . . | 3479 |
| Figure 913. SAI functional block diagram . . . . . | 3504 |
| Figure 914. Audio frame . . . . . | 3508 |
| Figure 915. FS role is start of frame + channel side identification (FSDEF = TRIS = 1) . . . . . | 3510 |
| Figure 916. FS role is start of frame (FSDEF = 0) . . . . . | 3511 |
| Figure 917. Slot size configuration with FBOFF = 0 in SAI_xSLOTR . . . . . | 3512 |
| Figure 918. First bit offset . . . . . | 3512 |
| Figure 919. Audio block clock generator overview . . . . . | 3514 |
| Figure 920. PDM typical connection and timing . . . . . | 3518 |
| Figure 921. Detailed PDM interface block diagram . . . . . | 3519 |
| Figure 922. Start-up sequence . . . . . | 3520 |
| Figure 923. SAI_ADR format in TDM mode, 32-bit slot width . . . . . | 3521 |
| Figure 924. SAI_ADR format in TDM mode, 16-bit slot width . . . . . | 3522 |
| Figure 925. SAI_ADR format in TDM mode, 8-bit slot width . . . . . | 3523 |
| Figure 926. AC'97 audio frame . . . . . | 3526 |
| Figure 927. Example of typical AC'97 configuration on devices featuring at least two embedded SAIs (three external AC'97 decoders) . . . . . | 3527 |
| Figure 928. SPDIF format . . . . . | 3528 |
| Figure 929. SAI_xDR register ordering . . . . . | 3529 |
| Figure 930. Data companding hardware in an audio block in the SAI . . . . . | 3532 |
| Figure 931. Tristate strategy on SD output line on an inactive slot . . . . . | 3534 |
| Figure 932. Tristate on output data line in a protocol like I2S . . . . . | 3535 |
| Figure 933. Overrun detection error . . . . . | 3536 |
| Figure 934. FIFO underrun event . . . . . | 3536 |
| Figure 935. SPDIFRX block diagram . . . . . | 3571 |
| Figure 936. S/PDIF sub-frame format . . . . . | 3572 |
| Figure 937. S/PDIF block format . . . . . | 3573 |
| Figure 938. S/PDIF preambles . . . . . | 3573 |
| Figure 939. Channel coding example . . . . . | 3574 |
| Figure 940. SPDIFRX decoder . . . . . | 3575 |
| Figure 941. Noise filtering and edge detection . . . . . | 3575 |
| Figure 942. Thresholds . . . . . | 3577 |
| Figure 943. Synchronization flowchart. . . . . | 3579 |
| Figure 944. Synchronization process scheduling . . . . . | 3580 |
| Figure 945. SPDIFRX states . . . . . | 3581 |
| Figure 946. SPDIFRX_FMTx_DR register format . . . . . | 3583 |
| Figure 947. Channel/user data format . . . . . | 3584 |
| Figure 948. S/PDIF overrun error when RXSTEO = 0 . . . . . | 3586 |
| Figure 949. S/PDIF overrun error when RXSTEO = 1 . . . . . | 3587 |
| Figure 950. SPDIFRX interface interrupt mapping diagram . . . . . | 3590 |
| Figure 951. MDIOS block diagram . . . . . | 3605 |
| Figure 952. MDIO protocol write frame waveform . . . . . | 3606 |
| Figure 953. MDIO protocol read frame waveform . . . . . | 3606 |
| Figure 954. CAN subsystem . . . . . | 3619 |
| Figure 955. FDCAN block diagram . . . . . | 3621 |
| Figure 956. Transceiver delay measurement . . . . . | 3626 |
| Figure 957. Pin control in bus monitoring mode . . . . . | 3628 |
| Figure 958. Pin control in loop back mode. . . . . | 3630 |
| Figure 959. CAN error state diagram. . . . . | 3631 |
| Figure 960. Message RAM configuration. . . . . | 3632 |
| Figure 961. Standard message ID filter path . . . . . | 3635 |
| Figure 962. Extended message ID filter path. . . . . | 3636 |
| Figure 963. Example of mixed configuration dedicated Tx buffers / Tx FIFO . . . . . | 3642 |
| Figure 964. Example of mixed configuration dedicated Tx buffers / Tx queue . . . . . | 3642 |
| Figure 965. Bit timing . . . . . | 3644 |
| Figure 966. Bypass operation . . . . . | 3646 |
| Figure 967. FSM calibration. . . . . | 3647 |
| Figure 968. Cycle time and global time synchronization . . . . . | 3662 |
| Figure 969. TTCAN level 0 and level 2 drift compensation . . . . . | 3663 |
| Figure 970. Level 0 schedule synchronization state machine . . . . . | 3670 |
| Figure 971. Level 0 master to slave relation . . . . . | 3671 |
| Figure 972. USB subsystem overview. . . . . | 3748 |
| Figure 973. USB2 OTG high-speed Port 1 block diagram. . . . . | 3749 |
| Figure 974. USB2 OTG high-speed Port 1 resets . . . . . | 3750 |
| Figure 975. USB2 OTG high-speed Port 2 block diagram. . . . . | 3753 |
| Figure 976. USB2 OTG high-speed Port 2 resets . . . . . | 3754 |
| Figure 977. USB Type-C implementation: OTG HS Port 1 example . . . . . | 3757 |
| Figure 978. USB Type-C and power delivery block diagram. . . . . | 3758 |
| Figure 979. USB Type-C and power delivery reset . . . . . | 3759 |
| Figure 980. Multiplexing of debug signals in the USB subsystem . . . . . | 3760 |
| Figure 981. OTG1/OTG2 high-speed block diagram. . . . . | 3764 |
| Figure 982. OTG A-B device connection . . . . . | 3766 |
| Figure 983. OTG peripheral-only connection. . . . . | 3767 |
| Figure 984. OTG host-only connection . . . . . | 3771 |
| Figure 985. SOF connectivity (SOF trigger output to TIM and ITR1 connection) . . . . . | 3774 |
| Figure 986. Updating OTG_HFIR dynamically (RLDCTRL = 1) . . . . . | 3776 |
| Figure 987. Device-mode FIFO address mapping and AHB FIFO access mapping . . . . . | 3777 |
| Figure 988. Host-mode FIFO address mapping and AHB FIFO access mapping. . . . . | 3778 |
| Figure 989. Interrupt hierarchy. . . . . | 3782 |
| Figure 990. Transmit FIFO write task . . . . . | 3875 |
| Figure 991. Receive FIFO read task . . . . . | 3876 |
| Figure 992. Normal bulk/control OUT/SETUP . . . . . | 3877 |
| Figure 993. Bulk/control IN transactions . . . . . | 3881 |
| Figure 994. Normal interrupt OUT . . . . . | 3884 |
| Figure 995. Normal interrupt IN . . . . . | 3889 |
| Figure 996. Isochronous OUT transactions . . . . . | 3891 |
| Figure 997. Isochronous IN transactions . . . . . | 3894 |
| Figure 998. Normal bulk/control OUT/SETUP transactions - DMA . . . . . | 3896 |
| Figure 999. Normal bulk/control IN transaction - DMA. . . . . | 3898 |
| Figure 1000. Normal interrupt OUT transactions - DMA mode . . . . . | 3899 |
| Figure 1001. Normal interrupt IN transactions - DMA mode . . . . . | 3900 |
| Figure 1002. Normal isochronous OUT transaction - DMA mode . . . . . | 3901 |
| Figure 1003. Normal isochronous IN transactions - DMA mode . . . . . | 3902 |
| Figure 1004. Receive FIFO packet read . . . . . | 3908 |
| Figure 1005. Processing a SETUP packet . . . . . | 3910 |
| Figure 1006. Bulk OUT transaction . . . . . | 3917 |
| Figure 1007. TRDT max timing case . . . . . | 3926 |
| Figure 1008. UCPD block diagram . . . . . | 3939 |
| Figure 1009. Clock division and timing elements. . . . . | 3940 |
| Figure 1010. K-code transmission . . . . . | 3942 |
| Figure 1011. Transmit order for various sizes of data . . . . . | 3944 |
| Figure 1012. Packet format . . . . . | 3944 |
| Figure 1013. Line format of Hard Reset. . . . . | 3945 |
| Figure 1014. Line format of Cable Reset. . . . . | 3945 |
| Figure 1015. BIST test data frame. . . . . | 3946 |
| Figure 1016. BIST Carrier Mode 2 frame. . . . . | 3947 |
| Figure 1017. UCPD BMC transmitter architecture. . . . . | 3947 |
| Figure 1018. UCPD BMC receiver architecture. . . . . | 3949 |
| Figure 1019. Ethernet high-level block diagram . . . . . | 3981 |
| Figure 1020. DMA transmission flow (standard mode) . . . . . | 3983 |
| Figure 1021. DMA transmission flow (OSP mode) . . . . . | 3985 |
| Figure 1022. Receive DMA flow . . . . . | 3987 |
| Figure 1023. Overview of MAC transmission flow . . . . . | 3990 |
| Figure 1024. MAC reception flow . . . . . | 3992 |
| Figure 1025. Packet filtering sequence . . . . . | 4009 |
| Figure 1026. Networked time synchronization. . . . . | 4023 |
| Figure 1027. Propagation delay calculation in clocks supporting peer-to-peer path correction . . . . . | 4024 |
| Figure 1028. System time update using fine correction method . . . . . | 4034 |
| Figure 1029. Time aware shaper implementation for traffic scheduling. . . . . | 4046 |
| Figure 1030. Implementing a guard band to avoid delays due to interfering frames . . . . . | 4047 |
| Figure 1031. GCL governing gate close and open events block diagram (from IEEE 802.1 Qbv specifications) . . . . . | 4048 |
| Figure 1032. GCL and associated registers - BaseTime and CycleTime . . . . . | 4052 |
| Figure 1033. GCL and associated registers - BaseTime and CycleTime list execution time > CycleTime . . . . . | 4053 |
| Figure 1034. Switching to a new Configuration that is Aligned with the Existing Configuration. . . . . | 4054 |
| Figure 1035. Switching to the New List by Truncating the Current List . . . . . | 4056 |
| Figure 1036. Switching to New List By Extending the Current List . . . . . | 4057 |
| Figure 1037. mPacket formats. . . . . | 4061 |
| Figure 1038. MAC data Alignment Feature . . . . . | 4066 |
| Figure 1039. Time-based scheduler implementation. . . . . | 4074 |
| Figure 1040. Time-based scheduling flow . . . . . | 4075 |
| Figure 1041. TCP segmentation offload overview. . . . . | 4081 |
| Figure 1042. TCP segmentation offload flow . . . . . | 4082 |
| Figure 1043. Header and payload fields of segmented packets . . . . . | 4085 |
| Figure 1044. Supported PHY interfaces . . . . . | 4095 |
| Figure 1045. SMA Interface block . . . . . | 4096 |
| Figure 1046. MDIO packet structure (Clause 45) . . . . . | 4097 |
| Figure 1047. MDIO packet structure (Clause 22) . . . . . | 4098 |
| Figure 1048. SMA write operation flow . . . . . | 4099 |
| Figure 1049. Write data packet . . . . . | 4100 |
| Figure 1050. Read data packet . . . . . | 4100 |
| Figure 1051. Media independent interface (MII) signals . . . . . | 4102 |
| Figure 1052. RMII block diagram . . . . . | 4104 |
| Figure 1053. Transmission bit order . . . . . | 4105 |
| Figure 1054. Receive bit order . . . . . | 4106 |
| Figure 1055. RGMII block diagram and interface signals . . . . . | 4107 |
| Figure 1056. LPI transitions (Transmit, 100 Mbds) . . . . . | 4116 |
| Figure 1057. LPI Tx clock gating (when LPITCSE = 1) . . . . . | 4117 |
| Figure 1058. LPI transitions (receive, 100 Mbit/s) . . . . . | 4118 |
| Figure 1059. Descriptor ring structure . . . . . | 4149 |
| Figure 1060. DMA descriptor ring . . . . . | 4150 |
| Figure 1061. Descriptor tail pointer example 1 . . . . . | 4151 |
| Figure 1062. Descriptor tail pointer example 2 . . . . . | 4151 |
| Figure 1063. Transmit descriptor (read format) . . . . . | 4152 |
| Figure 1064. Transmit descriptor write-back format . . . . . | 4157 |
| Figure 1065. Transmit context descriptor format . . . . . | 4162 |
| Figure 1066. Receive normal descriptor (read format) . . . . . | 4165 |
| Figure 1067. Receive normal descriptor (write-back format) . . . . . | 4168 |
| Figure 1068. Receive context descriptor . . . . . | 4176 |
| Figure 1069. Enhanced normal descriptor (read format) . . . . . | 4178 |
| Figure 1070. Enhanced normal descriptor (write format) . . . . . | 4179 |
| Figure 1071. Enhanced context descriptor (read format) . . . . . | 4180 |
| Figure 1072. Enhanced context descriptor (write format) . . . . . | 4181 |
| Figure 1073. Generation of ETH_DMAISR flags . . . . . | 4200 |
| Figure 1074. HDP block diagram . . . . . | 4370 |
| Figure 1075. Block diagram of debug infrastructure . . . . . | 4377 |
| Figure 1076. Debug reset control logic . . . . . | 4379 |
| Figure 1077. JTAG TAP state machine . . . . . | 4384 |
| Figure 1078. SWD successful data transfer . . . . . | 4387 |
| Figure 1079. Debug and access port connections . . . . . | 4396 |
| Figure 1080. Cortex-M55 debug topology . . . . . | 4418 |
| Figure 1081. Trace subsystem CoreSight topology . . . . . | 4497 |
| Figure 1082. CoreSight timestamp distribution . . . . . | 4503 |
| Figure 1083. Embedded cross trigger . . . . . | 4511 |
| Figure 1084. Mapping trigger inputs to outputs . . . . . | 4514 |
| Figure 1085. ETR state transition diagram . . . . . | 4560 |
| Figure 1086. Scatter-gather operation . . . . . | 4561 |
| Figure 1087. System trace macrocell . . . . . | 4620 |
Chapters
- 1. Documentation conventions
- 2. Memory and bus architecture
- 3. System security
- 4. Boot and security control (BSEC)
- 5. OTP mapping (OTP)
- 6. Resource isolation framework security controller (RIFSC)
- 7. Resource isolation slave unit for address space protection (full version) (RISAF)
- 8. Illegal access controller (IAC)
- 9. Boot modes
- 10. SRAM configuration controller (RAMCFG)
- 11. Texture cache (ICACHE)
- 12. AXI cache (CACHEAXI)
- 13. Power control (PWR)
- 14. Reset and clock control (RCC)
- 15. General-purpose I/Os (GPIO)
- 16. System configuration controller (SYSCFG)
- 17. Peripherals interconnect matrix
- 18. High-performance direct memory access controller (HPDMA)
- 19. General purpose direct memory access controller (GPDMA)
- 20. Neural-ART accelerator™ (NPU)
- 21. Chrom-ART Accelerator controller (DMA2D)
- 22. Chrom-GRC (GFXMMU)
- 23. Graphic timer (GFXTIM)
- 24. Nested vectored interrupt controller (NVIC)
- 25. Extended interrupts and event controller (EXTI)
- 26. Cyclic redundancy check calculation unit (CRC)
- 27. Flexible memory controller (FMC)
- 28. Extended-SPI interface (XSPI)
- 29. XSPI I/O manager (XSPIM)
- 30. Secure digital input/output MultiMediaCard interface (SDMMC)
- 31. Delay block (DLYB)
- 32. Analog-to-digital converters (ADC)
- 33. Digital temperature sensor (DTS)
- 34. Voltage reference buffer (VREFBUF)
- 35. Multi-function digital filter (MDF)
- 36. Audio digital filter (ADF)
- 37. Camera subsystem
- 38. Digital camera interface (DCMI)
- 39. Digital camera interface pixel pipeline (DCMIPP)
- 40. CSI-2 Host (CSI)
- 41. Parallel synchronous slave interface (PSSI)
- 42. Display subsystem
- 43. LCD-TFT display controller (LTDC)
- 44. Neo-Chrom graphic processor (GPU2D)
- 45. Video encoder (VENC)
- 46. JPEG codec (JPEG)
- 47. True random number generator (RNG)
- 48. Secure AES coprocessor (SAES)
- 49. Cryptographic processor (CRYP)
- 50. Hash processor (HASH)
- 51. Memory cipher engine (MCE)
- 52. Public key accelerator (PKA)
- 53. Advanced-control timers (TIM1/TIM8)
- 54. General-purpose timers (TIM2/TIM3/TIM4/TIM5)
- 55. Basic timers (TIM6/TIM7/TIM18)
- 56. General-purpose timers (TIM9/TIM10/TIM11/TIM12/TIM13/TIM14)
- 57. General purpose timers (TIM15/TIM16/TIM17)
- 58. Low-power timer (LPTIM)
- 59. Independent watchdog (IWDG)
- 60. System window watchdog (WWDG)
- 61. Real-time clock (RTC)
- 62. Tamper and backup registers (TAMP)
- 63. Inter-integrated circuit interface (I2C)
- 64. Improved inter-integrated circuit (I3C)
- 65. Universal synchronous/asynchronous receiver transmitter (USART/UART)
- 66. Low-power universal asynchronous receiver transmitter (LPUART)
- 67. Serial peripheral interface (SPI)
- 68. Serial audio interface (SAI)
- 69. SPDIF receiver interface (SPDIFRX)
- 70. Management data input/output (MDIOS)
- 71. Controller area network with flexible data rate (FDCAN)
- 72. USB subsystem (USBSS)
- 73. USB on-the-go high-speed (OTG)
- 74. USB HS PHY controller (USBPHYC)
- 75. USB Type-C ® /USB Power Delivery interface (UCPD)
- 76. Ethernet (ETH): gigabit media access control (GMAC) with DMA controller
- 77. Hardware debug port (HDP)
- 78. Debug support (DBG)
- 79. Device electronic signature
- 80. Important security notice
- 81. Revision history