www.ti.com
SHA-MD5 Registers
725
SWRU543–January 2019
Submit Documentation Feedback
Copyright © 2019, Texas Instruments Incorporated
SHA/MD5 Accelerator
19.2.18 SHAMD5_MODE Register (Offset = 44h) [reset = X]
SHAMD5_MODE is shown in Figure 19-22 and described in Table 19-29.
Return to Summary Table.
Figure 19-22. SHAMD5_MODE Register
31 30 29 28 27 26 25 24
RESERVED
R-X
23 22 21 20 19 18 17 16
RESERVED
R-X
15 14 13 12 11 10 9 8
RESERVED
R-X
7 6 5 4 3 2 1 0
HMAC_OUTER
_HASH
RESERVED HMAC_KEY_P
ROC
CLOSE_HASH ALGO_CONST
ANT
ALGO RESERVED
R/W-0h R-X R/W-0h R/W-0h R/W-0h R/W-0h R-X
LEGEND: R/W = Read/Write; R = Read only; W1toCl = Write 1 to clear bit; -n = value after reset
Table 19-29. SHAMD5_MODE Register Field Descriptions
Bit Field Type Reset Description
31-8 RESERVED R X
7 HMAC_OUTER_HASH R/W 0h
The HMAC outer hash is performed on the hash digest when the
inner hash has finished (block length exhausted and final hash
performed if close_hash is 1). This bit should normally be set
together with close_hash to finish the inner hash first, or block length
should be zero (HMAC continues with the just outer hash to be
done). Auto-cleared internally when outer hash performed.
0h = No operation
1h = HMAC processing
6 RESERVED R X
5 HMAC_KEY_PROC R/W 0h
Performs HMAC key processing on the 512-bit HMAC key loaded
into the SHAMD5_IDIGEST_{A to H} and SHAMD5_ODIGEST_{A to
H} register block. When HMAC key processing is finished, this bit is
automatically cleared, and the resulting inner and outer digest is
available from SHAMD5_IDIGEST_{A to H} and
SHAMD5_ODIGEST_{A to H} respectively, after which regular hash
processing (using SHAMD5_IDIGEST_{A to H} as initial digest)
commences, until the block length is exhausted.
0h = No operation
1h = HMAC processing
4 CLOSE_HASH R/W 0h
Performs the padding; the hash/HMAC is closed at the end of the
block, as per MD5/SHA-1/SHA-2 specification (that is, appropriate
padding is added), or no padding is done, allowing the hash to be
continued later. However, if the hash/HMAC is not closed, the block
length must be a multiple of 64 bytes to ensure correct operation.
Auto-cleared internally when hash closed.
0h = No padding, hash computation can be continued.
1h = Last packet is padded.