Datasheet
• Product series identification
• Device select
13.11 Functional Description
13.11.1 Principle of Operation
The DSU provides memory services, such as CRC32 or MBIST that require almost the same interface.
Hence, the Address, Length and Data registers (ADDR, LENGTH, DATA) are shared. These shared
registers must be configured first; then a command can be issued by writing the Control register. When a
command is ongoing, other commands are discarded until the current operation is completed. Hence, the
user must wait for the STATUSA.DONE bit to be set prior to issuing another one.
13.11.2 Basic Operation
13.11.2.1 Initialization
The module is enabled by enabling its clocks. For more details, refer to 13.5.3 Clocks. The DSU registers
can be PAC write-protected.
Related Links
11.6 PAC - Peripheral Access Controller
13.11.2.2 Operation From a Debug Adapter
Debug adapters should access the DSU registers in the external address range 0x100 – 0x2000. If the
device is protected by the NVMCTRL security bit, accessing the first 0x100 bytes causes the system to
return an error. Refer to 13.9 Intellectual Property Protection.
Related Links
22. NVMCTRL – Nonvolatile Memory Controller
22.6.6 Security Bit
13.11.2.3 Operation From the CPU
There are no restrictions when accessing DSU registers from the CPU. However, the user should access
DSU registers in the internal address range (0x0 – 0x100) to avoid external security restrictions. Refer to
13.9 Intellectual Property Protection.
13.11.3 32-bit Cyclic Redundancy Check CRC32
The DSU unit provides support for calculating a cyclic redundancy check (CRC32) value for a memory
area (including Flash and AHB RAM).
When the CRC32 command is issued from:
• The internal range, the CRC32 can be operated at any memory location
• The external range, the CRC32 operation is restricted; DATA, ADDR, and LENGTH values are
forced (see below)
Table 13-3. AMOD Bit Descriptions when Operating CRC32
AMOD[1:0] Short name External range restrictions
0 ARRAY CRC32 is restricted to the full Flash array area (EEPROM emulation area not
included) DATA forced to 0xFFFFFFFF before calculation (no seed)
SAM D21 Family
DSU - Device Service Unit
© 2018 Microchip Technology Inc.
Datasheet Complete
DS40001882D-page 79