NXP Semiconductors
UM10858
PN7462 family HW user manual
UM10858
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2018. All rights reserved.
User manual
COMPANY PUBLIC
Rev. 1.4 — 14 May 2018
314514
120 of 345
value (C_prev). Calculate C_new using the previous serial equations as a function of
W(n) for each one hot encoded value of C_prev(n):
W=0x0;
C_prev is one hot encoded: C=4 so the values are 0x1,0x2,0x4,0x8.
C_new(W=0x0;C_prev=0x1)=4’b0011
C_new(W=0x0;C_prev=0x4)=4’b1100
C_new(W=0x0;C_prev=0x8)=4’b1011
The hereabove results give the matrix M2 shown in table below
Table 137. CRC4 M2
C_prev(0) C_prev(1)
C_prev(2)
C_prev(3)
W(0)
0
0
1
1
W(1)
0
1
1
0
W(2)
1
1
0
0
W(3)
1
0
1
1
Step 4: Compute the two matrices to generate the four equations for each CRC_new bit:
C_new(0)=W(0) xor W(3) xor C_prev(0) xor C_prev(3)
C_new(1)=W(0) xor W(1) xor W(3) xor C_prev(0) xor C_prev(1) xor C_prev(3)
C_new(2)=W(1) xor W(2) xor C_prev(1) xor C_prev(2)
C_new(3)=W(2) xor W(3) xor C_prev(2) xor C_prev(3)
Now these equations are used to calculate the parallel CRC in only one clock cycle.
9.3 LSB and MSB first functionality
In MSB first mode:
•
Input data is written in CRCDAT_xx MSB first
•
CRCDAT_xx is pushed LSB first in the internal LFSR
•
CRC preset value is written in CRCDAT_PRELOAD MSB first
•
CRCDAT_PRELOAD is pushed MSB first in the internal LFSR
•
CRC value is read MSB first on the APB interface.
In LSB first mode:
•
Input data is written in CRCDAT_xx MSB first
•
CRCDAT_xx is pushed LSB first in the internal LFSR
•
CRC preset value is written in CRCDAT_PRELOAD MSB first
•
CRCDAT_PRELOAD is pushed LSB first in the internal LFSR