Home WTI User's Guides
cover
1. Introduction
2. Binary Block Read Mode and Structure
2.1. Compressed Binary Block Read Sequence
2.2. Compressed Binary Block Structure
2.2.1. Data Block Structure
2.2.2. Record String Structure
3. Compression Decompression Methods
3.1. Table Decompression
3.1.1. Nibble Positioning
3.1.2. Record String Format
3.1.2.1. Data Decompression Considerations
3.1.3. Table Decompression Example
3.2. Space Compression
4. DLE Stuffing
5. The Cyclic Redundancy Check Option
5.1. Calculation
6. Customer Service
PollCat Series

5. The Cyclic Redundancy Check Option

 

This Section describes the procedure for using the information derived from the Cyclic Redundancy Check option to verify the accuracy of data transmission. Please refer to the PollCat User's Guide for more information on enabling the CRC option.

The Cyclic Redundancy Check option instructs the PollCat append a two byte CRC (Cyclic Redundancy Check) to the end of each data transfer. If one record/block is sent, the last two bytes sent will be the CRC bytes. If 10 lines are sent the last two bytes of the entire transmission will be the CRC bytes. This function is optional in either of the ASCII Block modes and is always enabled in Compressed Binary Block mode.

The CRC code will be appended to record transmissions only. Responses to commands will not be followed by the CRC codes.

The CRC is calculated by dividing the transmitted data or "message polynomial" M(x) by a constant derived using a "generator polynomial" G(x) using modulo-2 division (XOR function). The quotient is ignored and the two byte remainder is used as the CRC. The generator polynomial used in this case is:

X16

+X12 +X5 +XO

Substituting 2 for X in the above function, the following constant is derived:

216 +212 +25 +2O = 1 0001 0000 0010 0001 or 11021 HEX

The PollCat CRC method is similar to the method used by the "XMODEM" protocol. The modulo-2 division starts with the MSB of the first byte received and ends with the LSB of the last byte received. The CRC is the last two bytes of the transmission and is sent MSB first, LSB second. No bits are complemented or reversed in either the message data or the CRC before transmission.