Datasheet

55. Integrity Check Monitor (ICM)
55.1 Description
The Integrity Check Monitor (ICM) is a DMA controller that performs hash calculation over multiple memory regions
through the use of transfer descriptors located in memory (ICM Descriptor Area). The Hash function is based on the
Secure Hash Algorithm (SHA). The ICM integrates two modes of operation. The first one is used to hash a list of
memory regions and save the digests to memory (ICM Hash Area). The second mode is an active monitoring of the
memory
. In that mode, the hash function is evaluated and compared to the digest located at a predefined memory
address (ICM Hash Area). If a mismatch occurs, an interrupt is raised. See the figure below for an example of four-
region monitoring. Hash and Descriptor areas are located in Memory instance i2, and the four regions are split in
memory instances i0 and i1.
Figure 55-1. Four-region Monitoring Example
Memory
Region 0
Memory
Region 1
Memory
Region 2
Memory
Region 3
ICMProcessor
Interrupt
Controller
ICM
Descriptor
Area
ICM
Hash
Area
Memory i0 Memory i1 Memory i2
System Interconnect
The ICM SHA engine is compliant with the American FIPS (Federal Information Processing Standard) Publication
180-2 specification.
The following terms are concise definitions of the ICM concepts used throughout this document:
Region—a partition of instruction or data memory space
Region Descriptor—a data structure stored in memory, defining region attributes
Region Attributes—region start address, region size, region SHA engine processing mode, Write Back or
Compare function mode
Context Registers—a set of ICM non-memory-mapped, internal registers which are automatically loaded,
containing the attributes of the region being processed
Main List—a list of region descriptors. Each element associates the start address of a region with a set of
attributes.
Secondary List—a linked list defined on a per region basis that describes the memory layout of the region (when
the region is non-contiguous)
Hash Area—predefined memory space where the region hash results (digest) are stored
SAM E70/S70/V70/V71 Family
Integrity Check Monitor (ICM)
© 2019 Microchip T
echnology Inc.
Datasheet
DS60001527D-page 1743