AnsweredAssumed Answered

ADE7953 CRC32 doubts

Question asked by mrgabu on Oct 14, 2015
Latest reply on Oct 26, 2015 by hmani


I'm trying to compute the CRC32 like the ADE7953 computes, so I'm using a CRC model that I can configure several parameters like endianess, poly, initial result, reverse result, etc...


I guess on datasheet is missing one 8 bit register to account in the 1024 bits buffer.

127 bytes are listed on table 12 and in fact the last byte is not mentioned, so i don't know the order to arrange the data.


The main question is:


How to convert the data from table 12 to a 1024 bits array ?

Should I use low address as LSB and high address as MSB ?

Where I must insert the last byte to compute a total of 1024 bits, just like the LSFR do ?


About the poly, I use it in it's normal or reverse order ?


I'm uploading the code I made so far.


I made a dump from my ade7953 after reset and configure CRC and I'm getting a different default value for ACCMODE register: 0x2D1400.


So the CRC is now 0xA857A59E with CONFIG: 0x8104 and all others registers to it's default values, except ACCMODE (0x2D1400).


Sorry about many questions but the information is not easy found on datasheet.