If AES_MR.LOD = 1

This mode is optimized to process AES CBC-MAC operating mode.

The user must first wait for the DMA buffer transfer complete flag, then for the flag DATRDY to rise to ensure that the encryption/decryption is completed (see the following figure).

The DMA receive channel must not be used. Prior to reading the CBC-MAC result, AES_MR.SMOD must be written to ‘0’. To restart a CBC-MAC on a new buffer, AES_MR.SMOD must be written to ‘2’.

The output data are only available on AES_ODATARx.

Figure 7-5. DMA Transfer with AES_MR.LOD = 1

The following table summarizes the different cases.

Table 7-1. Last Output Data Mode Behavior versus Start Modes
SequenceManual and Auto ModesDMA Transfer
AES_MR.LOD = 0AES_MR.LOD = 1AES_MR.LOD = 0AES_MR.LOD = 1
DATRDY Flag Clearing Condition(1)At least one AES_ODATAR must be readAt least one AES_IDATAR must be writtenNot usedManaged by the DMA
End of Encryption/Decryption NotificationDATRDYDATRDY2 DMA Buffer transfer complete flags (channel m and channel n)DMA buffer transfer complete flag, then AES DATRDY flag
Encrypted/Decrypted Data Result LocationIn AES_ODATARxIn AES_ODATARxAt the address specified in the Channel Buffer Transfer DescriptorIn AES_ODATARx
Note:
  1. Depending on the mode, there are other ways of clearing the DATRDY flag. See AES_ISR.
Warning: In DMA mode, reading AES_ODATARx before the last data transfer may lead to unpredictable results.