CRC

Luboš Melichar lubos.melichar@gmail.com
Čtvrtek Leden 11 12:32:28 CET 2007


takze nakonec sem s vasi pomoci prisel na toto...
asi vetsina vi, tusi..ale prece jen..

zprava=ZZZZ (4 byty)

zabezbeceni
-------------------
1/ prilepim ke zprave nuly o poctu bitu CRC kodu ktery ma vzniknout (ZZZZ00,
16 bitu (2byty) CRC)
2/ prozenu tuto vzniklou zpravu CRC funkci, ten mi pomoci XORovani  vypocte
zbytek...(CC, 2 byty)
3/ tento zbytek je onen CRC kod, prilepim ho k puvodni zprave (nebo dam
misto nul ad1/) (ZZZZCC)

prenos

detekce chyb  2 zpusoby
--------------------

A/ z prijate zpravu nuluji CRC(ZZZZ00), vypoctu CRC  a porovnam jednotlive
CRC
     shoda - ok

B/ pokud prijatou zpravu (ZZZZCC) prozenu tak jak prisla CRC funkci musi mi
vzniknout nula
    to vychazi z podstaty XORovani...
    pri vysilani nam pri XORovani vznikl zbytek, ktery jsme ke zprave
pridali..ted nam tedy musi vyjit nula


takze takhle nejak by to melo fungovat..a ted to aplikovat :D

dekuji Lubos Melichar





On 1/11/07, Jan Waclawek <wek@evona.sk> wrote:
>
> Tomáš Hamouz wrote:
> > Neprohlížel jsem proč je některý algoritmus "nekorektní", ale z
> > definice CRC vyplývá že správná hodnota může být jen jedna.
> > Rozdíl může být jak danou hodnotu vypočítám.
> >
> > Pokud počítám CRC "z definice", tzn. po jednom bitu, je nutné používat
> > rozšíření zprávy o patřičný počet nul, podle délky generačního
> > polynomu.
>
> No praveze to rozsirenie nie je nutne. Je to zvlastne ale je to tak.
> Dostane sa tym ten "nekorektny" algorimus, ale v skutocnosti ma presne
> tu istu silu odhalit prenosove chyby ako ten "korektny"; navyse sa tym
> usetri to priliepanie nul - to usetrenie nie je zaujimave ani tak kvoli
> tym par krokom naviac, ale kvoli tomu, ze po "normalnych" bytoch spravy
> by sme museli zavolat CRC este 2x s nulovym vstupom, je to proste take
> algoritmicky nepekne, nemat aktualne CRC hned po prijati/vyslani byte.
>
> Na druhej strane, nie je problem dosiahnut vysledok "korektneho"
> algoritmu pouzitim "nekorektneho" - staci zmenit pociatocnu hodnotu, a
> to na take cislo, ktore dostanete pouzitim "korektneho" algoritmu a
> povodnej pociatocnej hodnoty a spravy s nulovou dlzkou. Konkretny
> priklad, pre "polynom" 1021 a pociatocnu hodnotu FFFF je "korektny"
> ("nondirect") vysledok pre nulovu spravu 1D0F; takze ak chceme pouzit
> ten "nekorektny" algoritmus, treba pouzit pociatocnu hodnotu 1D0F
> (namiesto FFFF) a vysledne CRC bude take iste pre akukolvek spravu.
>
> wek
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: http://list.hw.cz/pipermail/hw-list/attachments/20070111/50536a22/attachment-0002.htm 


Další informace o konferenci Hw-list