The document discusses CRC (cyclic redundancy check) coding. It describes what CRC is, how CRC encoding and decoding works, and provides examples of CRC 16 and CRC 8 implementations. It also lists several applications of different CRC polynomials and their uses in various communication protocols and storage devices.
The document discusses CRC (cyclic redundancy check) coding. It describes what CRC is, how CRC encoding and decoding works, and provides examples of CRC 16 and CRC 8 implementations. It also lists several applications of different CRC polynomials and their uses in various communication protocols and storage devices.
Introduction ● CRC is a widely used technique for error checking in streams of data ● Used in protocols used in data transmission. ● CRC-16 and CRC-32 with user defined proprietary polynomials ● ModelSim Software for the simulation. ● Simulating CRC 16 Serial, CRC 16 Parallel, CRC 32 Serial and CRC 32 Parallel for the given polynomial. What is CRC? ● Cyclic codes are special linear block codes with one extra property. In a cyclic code, if a code word is cyclically shifted (rotated), the result is another code word. ● A cyclic redundancy check (CRC) is an error-detecting code commonly used in digital networks and storage devices to detect accidental changes to raw data. ● Blocks of data entering these systems get a short check value attached, based on the remainder of a polynomial division of their contents; on retrieval the calculation is repeated, and corrective action can be taken against presumed data corruption if the check values do not match. Division in CRC Encoder Division in Decoder CRC Encoder and Decoder CRC 16 bit serial example CRC 8 bit Parallel Example Hardware Implementation Series Concept Principle And Implementation 4 bit Series implementation Mini project Files