[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: CRC (was Re: [f-cpu] F-CPU architecture...)



woodelf wrote:

Yann Guidon wrote:

this can be found everywhere on the net
but "really fast algos" are not so common,
the best i have found being the one in info-zip (3,75 instructions/byte with x4 unrolling)
http://www.opensource.apple.com/darwinsource/10.4.1/zip-6/unzip/unzip/crc_i386.S


Ok I thought that was a CRC operation for the F-cpu.

1) i don't develop F-CPU for a living (unfortunately)
2) CRC is not considered as an instruction for F-CPU
(there are too many versions, so that would be very troublesome for no almost benefit)
However, putting a CRC32 in the "DMA/blitter engine" would be way cool
(that would require a 32-bit field in the block descriptor with additional flags
like "set/verify"; "irq on error", "valid/invalid CRC" etc.)


Just remember you need to calculate a 16 bit look up table.
C is great for that. :)

i start with C and test it against all derived versions.

However, my application needs CRC16 so i can't simply copy-paste info-zip's source code.
but don't worry for me, i'm not too bad in asm programming.

Better than 8088 asm programing. :(

fortunately, the i386 has brought in some nice features in the middle of the crap.


I did this years ago with 8 bit CRC ??? with refernce from BYTE.

8 bits would be too little for a 4KB block. OTOH 32bits is too much compared to the overhead and the expected error rate.

regards,
YG

YG

*************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxx with
unsubscribe f-cpu       in the body. http://f-cpu.seul.org/