crc32b
Cyclic Redundancy Check 32-bit Byte
crc32b RA, RS
Accumulates a CRC32 checksum using the low byte of RS.
Encoding
Binary Layout
31
0:5
RS
6:10
RA
11:15
0
16:20
522
21:30
/
31
Operands
-
RA
Target/Accumulator -
RS
Data
Example
crc32b r4, r3
Related
More in Base
Reference
View in PowerISA v3.1C Specification ↗
OPF Power ISA v3.1C
Description
Accumulates a 32-bit CRC checksum using the low byte (bits 56-63) of RS, with the running CRC value in RA. The updated CRC result is written to RA. This is a Base-category instruction with no CR, XER, or FPSCR updates.
Operation
byte_val ← RS[56:63]; crc ← RA ⊕ (byte_val || [0]*24); for i in 0 to 7 do; if (crc[31] = 1) then crc ← (crc << 1) ⊕ 0x04C11DB7; else crc ← crc << 1; crc ← crc ∧ 0xFFFFFFFF; RA ← crc;