46.5.3.1.4 Plain text processing with DMAC

  • Set CTRLB.NEWMSG for the new set of plain text processing.
  • Load CIPLEN reg.
  • Load (J0+1) in INTVECT register.
  • Load plain text in INDATA register.
  • Wait for INTFLAG.ENCCMP to be set.
  • AES Hardware generates output in INDATA register.
  • Intermediate GHASH is stored in GHASH register and Cipher Text available in INDATA register.
  • Continue 3 to 5 till the input of plain text to get the cipher text and the Hash keys.
  • At the last input, set CTRLB.EOM.
  • Write last in-data to INDATA reg.
  • Wait for INTFLAG.ENCCMP to be set.
  • AES Hardware generates output in INDATA register and final Hash key in GHASH register.
  • Load [LEN(A)]64||[LEN(C)]64 in INDATA register and set CTRLB.GFMUL and CTRLB.START as 1.
  • Wait for INTFLAG.GFMCMP to be set.
  • AES Hardware generates final GHASH value in GHASH register.