[PATCH v4 2/5] CRC64 testsuite
Ulf Samuelsson
binutils@emagii.com
Tue Feb 28 13:45:28 GMT 2023
On 2023-02-28 13:37, Nick Clifton wrote:
> Hi Ulf,
> As a matter of interest, where are these names and algorithms defined ?
>
> Is there a ISO standard for them, for example ?
>> * CRC64-ECMA ECMA-182
>> https://www.ecma-international.org/publications-and-standards/standards/ecma-182/
>> * CRC64-ISO ISO 3309
>> * CRC64-WE A variant of ECMA-182, Same polynome but different
>> parameters.
>> * CRC64-XZ A variant of ECMA-182, Same polynome but
>> different parameters.
>> * CRC64-POLY You get to define your own polynome and parameters
>> * CRC32 ISO 3309
>> * CRC32-POLY You get to define your own polynome and parameters
> Cheers
> Nick
>
>
Here is a good web page explaining CRCs
http://www.sunshine2k.de/articles/coding/crc/understanding_crc.html#ch2
There is also an online CRC calculator.
http://www.sunshine2k.de/coding/javascript/crc/crc_js.html
========================================
The parameters used are
"Size (in bits)"
"Polynome"
"Initial Value" CRC is assigned this value in the beginning of the
check
"Final XOR Value" CRC is XORed with this value before returned
"Input Reflected" Input data is bit reversed before use
"Output Reflected" CRC is bitreversed before return (comes before XOR)
"Reciprocal" Polynome is bitreversed before use
All my test uses the string "123456789" as testdata, which is quite common.
Best Regards
Ulf Samuelsson
More information about the Binutils
mailing list