Assembly:

CRC32CH rt, rs

nanoMIPS. Optional, present when Config5.CRCP=1.

CRC32 (Castagnoli) Half

Purpose:

CRC32 (Castagnoli) Half. Generate a 32-bit CRC value $rt based on the reversed polynomial0x82F63B78, using cumulative 32-bit CRC value $rt and right-justified halfword-sized message $rs as inputs.

Availability:

nanoMIPS. Optional, present when Config5.CRCP=1.

Format:

001000

rt

rs

x

101

1111

1

01

000

6

5

5

3

3

4

1

2

3

Operation:

if C0.Config5.CRCP == 0:
    raise exception('RI')
result = crc32(value=GPR[rt], message=GPR[rs], nbits=16, poly=0x82F63B78)
GPR[rt] = sign_extend(result, from_nbits=32)

Exceptions:

Reserved Instruction on cores without CRC support.