58.4.3.1 Manual Mode

The sequence is as follows:

  1. Write AESB_MR with all required fields, including but not limited to SMOD and OPMOD.
  2. Write the 128-bit key in the Key registers (AESB_KEYWRx).
  3. Write the initialization vector (or counter) in the Initialization Vector registers (AESB_IVRx).
    Note: The Initialization Vector registers concern all modes except ECB.
  4. Set DATRDY (Data Ready) in the AESB Interrupt Enable register (AESB_IER) depending on whether an interrupt is required, or not, at the end of processing.
  5. Write the data to be encrypted/decrypted in the authorized Input Data registers (see the table below).
    Table 58-1. Authorized Input Data Registers
    Operating Mode Input Data Registers to Write
    ECB All
    CBC All
    CTR All
  6. Set the START bit in the AESB Control register (AESB_CR) to begin the encryption or decryption process.
  7. When processing is complete, DATRDY in the AESB Interrupt Status register (AESB_ISR) rises. If an interrupt has been enabled by setting AESB_IER.DATRDY, the interrupt line of the AESB is activated.
  8. When the software reads one of the Output Data registers (AESB_ODATARx), AESB_ISR.DATRDY is automatically cleared.