Texas Instruments Development Kit for TM4C129x,Tiva™ ARM® Cortex™ -M4 Microcontroller DK-TM4C129X DK-TM4C129X 데이터 시트

제품 코드
DK-TM4C129X
다운로드
페이지 2182
Figure 15-1. SHA/MD5 Module Block Diagram
HASH/HMAC
Engine
System
Configuration
Registers
Interface
to
µDMA
and
Interrupt
Handler
Clock
Generator
Hash Core
Control
Hash
Scheduler
µDMA
Interrupt
Handler
Host
Interface
Bank
15.1.1.1
Configuration Registers
The configuration registers contain the following global control and status registers for the SHA/MD5
Module:
■ System control register that controls the mode of operation (SHA_SYSCONFIG register)
■ µDMA interrupt control registers (SHA_DMAIMSHA_DMARISSHA_DMAMIS, and SHA_DMAIC
registers, which reside in the Encryption Control Base address space)
■ Interrupt status register (SHA_IRQSTATUS register)
■ Enable register (SHA_IRQENABLE register)
15.1.1.2
Hash/HMAC Engine
The Hash/HMAC engine performs the SHA-1, SHA-2, or MD5 hash computation. When loaded with
a data block, and optionally an intermediate digest, it independently performs the hash computation
(64 or 80 rounds, depending on the algorithm) on that data block.
It can also start from the specified initial digest values instead of a loaded intermediate. Furthermore,
it can perform the IPAD and OPAD XORs for MAC operations. The hash core does not perform any
hash padding; this is performed in the Host Interface Block, where the data input registers are
located. A loaded data block must always be a full 64 bytes (512 bits) long.
15.1.1.3
Hash Core Control
When the hash core is idle or done, a new hash operation can be started. Any additional information
needed by the hash core (mode of operation, data to process, input digest if not starting from
algorithm constants or continuing) must be provided by programming the SHA registers before the
core can accept the operation.
December 13, 2013
1068
Texas Instruments-Advance Information
SHA/MD5 Accelerator