Contents RM0453
24/1450 RM0453 Rev 5
23.4.3 AES cryptographic core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
23.4.4 AES procedure to perform a cipher operation . . . . . . . . . . . . . . . . . . . 654
23.4.5 AES decryption round key preparation . . . . . . . . . . . . . . . . . . . . . . . . 657
23.4.6 AES ciphertext stealing and data padding . . . . . . . . . . . . . . . . . . . . . . 657
23.4.7 AES task suspend and resume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
23.4.8 AES basic chaining modes (ECB, CBC) . . . . . . . . . . . . . . . . . . . . . . . 658
23.4.9 AES counter (CTR) mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
23.4.10 AES Galois/counter mode (GCM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
23.4.11 AES Galois message authentication code (GMAC) . . . . . . . . . . . . . . 670
23.4.12 AES counter with CBC-MAC (CCM) . . . . . . . . . . . . . . . . . . . . . . . . . . 672
23.4.13 AES data registers and data swapping . . . . . . . . . . . . . . . . . . . . . . . . 677
23.4.14 AES key registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
23.4.15 AES initialization vector registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
23.4.16 AES DMA interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680
23.4.17 AES error management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
23.5 AES interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682
23.6 AES processing latency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682
23.7 AES registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
23.7.1 AES control register (AES_CR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
23.7.2 AES status register (AES_SR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685
23.7.3 AES data input register (AES_DINR) . . . . . . . . . . . . . . . . . . . . . . . . . 687
23.7.4 AES data output register (AES_DOUTR) . . . . . . . . . . . . . . . . . . . . . . 687
23.7.5 AES key register 0 (AES_KEYR0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688
23.7.6 AES key register 1 (AES_KEYR1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688
23.7.7 AES key register 2 (AES_KEYR2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
23.7.8 AES key register 3 (AES_KEYR3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689
23.7.9 AES initialization vector register 0 (AES_IVR0) . . . . . . . . . . . . . . . . . . 689
23.7.10 AES initialization vector register 1 (AES_IVR1) . . . . . . . . . . . . . . . . . . 690
23.7.11 AES initialization vector register 2 (AES_IVR2) . . . . . . . . . . . . . . . . . . 690
23.7.12 AES initialization vector register 3 (AES_IVR3) . . . . . . . . . . . . . . . . . . 690
23.7.13 AES key register 4 (AES_KEYR4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
23.7.14 AES key register 5 (AES_KEYR5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
23.7.15 AES key register 6 (AES_KEYR6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 691
23.7.16 AES key register 7 (AES_KEYR7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692
23.7.17 AES suspend registers (AES_SUSPxR) . . . . . . . . . . . . . . . . . . . . . . . 692
23.7.18 AES register map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693