16.4 CRC0 Control Registers
16.4.1 CRC0CN0: CRC0 Control 0
Bit
7
6
5
4
3
2
1
0
Name
Reserved
POLYSEL
CRCINIT
CRCVAL
CRCPNT
Access
R
RW
RW
RW
R
RW
Reset
0x0
0
0
0
0x0
SFR Page = 0xF; SFR Address: 0x92
Bit
Name
Reset
Access
Description
7:5
Reserved
Must write reset value.
4
POLYSEL
0
RW
CRC Polynomial Select Bit.
This bit selects the CRC polynomial and result length (32-bit or 16-bit).
Value
Name
Description
0
32_BIT
Use the 32-bit polynomial 0x04C11DB7 for calculating the CRC result.
1
16_BIT
Use the 16-bit polynomial 0x1021 for calculating the CRC result.
3
CRCINIT
0
RW
CRC Initialization Enable.
Writing a 1 to this bit initializes the entire CRC result based on CRCVAL.
2
CRCVAL
0
RW
CRC Initialization Value.
This bit selects the set value of the CRC result.
Value
Name
Description
0
SET_ZEROES
CRC result is set to 0x00000000 on write of 1 to CRCINIT.
1
SET_ONES
CRC result is set to 0xFFFFFFFF on write of 1 to CRCINIT.
1:0
CRCPNT
0x0
RW
CRC Result Pointer.
Specifies the byte of the CRC result to be read/written on the next access to CRC0DAT. The value of these bits will auto-
increment upon each read or write.
Value
Name
Description
0x0
ACCESS_B0
CRC0DAT accesses bits 7-0 of the 16-bit or 32-bit CRC result.
0x1
ACCESS_B1
CRC0DAT accesses bits 15-8 of the 16-bit or 32-bit CRC result.
0x2
ACCESS_B2
CRC0DAT accesses bits 7-0 of the 16-bit or bits 23-15 of the 32-bit CRC result.
0x3
ACCESS_B3
CRC0DAT accesses bits 15-8 of the 16-bit or bits 31-24 of the 32-bit CRC result.
Upon initiation of an automatic CRC calculation, the three cycles following a write to CRC0CN0 that initiate a CRC operation must
only contain instructions which execute in the same number of cycles as the number of bytes in the instruction. An example of such an
instruction is a 3-byte MOV that targets the CRC0FLIP register. When programming in C, the dummy value written to CRC0FLIP
should be a non-zero value to prevent the compiler from generating a 2-byte MOV instruction.
EFM8SB2 Reference Manual
Cyclic Redundancy Check (CRC0)
silabs.com
| Smart. Connected. Energy-friendly.
Rev. 0.1 | 162