GD32W51x User Manual
926
and OFB modes
8*32-bit input and output FIFO
Multiple data types are supported, including No swapping, Half-word swapping Byte
swapping and Bit swapping
Data can be transferred by DMA, CPU during interrupts, or without both of them
27.3.
CAU data type and initialization vectors
27.3.1.
Data type
The cryptographic acceleration unit receives data of 32 bits at a time, while they are
processed in 64/128 bits for DES/AES algorithms. For each data block, according to the data
type, the data could be bit / byte / half-word / no swapped before they are transferred into the
cryptographic acceleration processor. The same swapping operation s hould be also
performed on the processor output data before they are collected. Note the least -significant
data always occupies the lowest address location no matter which data type is configured,
because the system memory is little-endian.
Figure 27-1. DATAM No swapping and Half-word swapping
Byte swapping and Bit swapping
illustrate the 128-bit AES block data swapping according
to different data types. (For DES, the data block is two 32-bit words, please refer to the first
two words data swapping in the figure).
Figure 27-1. DATAM No swapping and Half-word swapping
word0
word1
word2
word3
word0
word1
word2
word3
A0
B0
A1
B1
A2
B2
A3
B3
B0
A0
B1
A1
B2
A2
B3
A3
Half-word swapping
No swapping
WORD 0 (MSB)
WORD 1
WORD 2
WORD 3 (LSB)
WORD 0 (MSB)
WORD 1
WORD 2
WORD 3 (LSB)