Abstract:This paper introduces the basic principle of Cyclic Redundancy Check(CRC) and the form of generating polynomial,analyzes the generating polynomial and hardware description of CRC-8-Dallas/Maxim and CRC-16-IBM in embedded system.In the case study of the data checking of ROM ID/Scratchpad of DS18B20 device and the bus network data frame checking of Modbus,through analyzing and researching into the generating polynomial and hardware description,the paper gets a basic bit-to-bit check algorithm design,then obtains an advanced bit-to-bit check algorithm and a single byte and a half byte table lookup check algorithm on the basis of mathematical derivation.In order to improve check speed,this paper proposes a new method based on block and multi-table checking algorithm.Comparison in ROM space occupancy and processing speed is carried out among all the above check algorithms.The designed CRC program provides support for the reliable transmission of embedded system data.