CRC polynomal calculation

Discussion in 'VHDL' started by Runar Gjelsvik, Apr 28, 2004.

  1. Hi,

    I was looking at this site posted somewhere earlier:

    http://www.easics.be/webtools/crctool

    The thing I'm wondering is how do you calculate what polynom to use? I'm
    planning on serially send a data frame of about 72 bits. I was thinking of
    using manchester encoding and CRC.

    I'm new at this CRC stuff, so I've got problems with understanding the
    polynom. Hope anyone can understand my problem and help me.

    Thanks in advance

    Regards

    Runar
    Runar Gjelsvik, Apr 28, 2004
    #1
    1. Advertising

  2. "Runar Gjelsvik" <> writes:

    > I was looking at this site posted somewhere earlier:
    >
    > http://www.easics.be/webtools/crctool
    >
    > The thing I'm wondering is how do you calculate what polynom to use? I'm
    > planning on serially send a data frame of about 72 bits. I was thinking of
    > using manchester encoding and CRC.


    The polynomials are selected from a pool of mathematically test
    polynomials. In your case, I'd pick one of the wellknown ones,
    e.g. the CRC32 used in Ethernet (and a lot of other places).

    The longer CRC that you use, the better coverage (error detection) you
    get. In general, the probability for an undetected single-bit error is
    (2^N)-1:1 for an N bit CRC. This requires that the length of the frame
    you send is less than 2^(N-1)*N bit, IIRC.

    Regards,


    Kai
    Kai Harrekilde-Petersen, Apr 28, 2004
    #2
    1. Advertising

  3. On Wed, 28 Apr 2004 18:29:29 GMT, Kai Harrekilde-Petersen
    <> wrote:

    >"Runar Gjelsvik" <> writes:
    >
    >> I was looking at this site posted somewhere earlier:
    >>
    >> http://www.easics.be/webtools/crctool
    >>
    >> The thing I'm wondering is how do you calculate what polynom to use? I'm
    >> planning on serially send a data frame of about 72 bits. I was thinking of
    >> using manchester encoding and CRC.

    >
    >The polynomials are selected from a pool of mathematically test
    >polynomials. In your case, I'd pick one of the wellknown ones,
    >e.g. the CRC32 used in Ethernet (and a lot of other places).
    >
    >The longer CRC that you use, the better coverage (error detection) you
    >get.


    Good advice so far.

    >In general, the probability for an undetected single-bit error is
    >(2^N)-1:1 for an N bit CRC. This requires that the length of the frame
    >you send is less than 2^(N-1)*N bit, IIRC.


    Any CRC will detect a single bit error in a frame of any length.

    Even parity (equiv to 1 bit CRC) will detect a single bit error in
    arbitrarily long frames.

    I listed some CRC error detection properties here:
    http://groups.google.com/groups?threadm=

    Regards,
    Allan.
    Allan Herriman, Apr 29, 2004
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. CRC calculation

    , Feb 16, 2007, in forum: VHDL
    Replies:
    4
    Views:
    986
    Marcus Harnisch
    Feb 26, 2007
  2. subscribe
    Replies:
    3
    Views:
    4,155
    Chris Uppal
    Nov 29, 2006
  3. Mamut

    crc-8 and crc-16 code...

    Mamut, Feb 21, 2007, in forum: C++
    Replies:
    5
    Views:
    4,022
    Victor Bazarov
    Feb 22, 2007
  4. `Zidane Tribal
    Replies:
    1
    Views:
    2,505
    Joe Smith
    Jul 28, 2007
  5. `Zidane Tribal
    Replies:
    3
    Views:
    242
    Sisyphus
    Jul 27, 2007
Loading...

Share This Page