Synergy Software Package User's Manual

Interface for cyclic redundancy checking. More...

Data Structures

struct  crc_cfg_t
 
struct  crc_snoop_cfg_t
 
struct  crc_api_t
 
struct  crc_instance_t
 

Typedefs

typedef void crc_ctrl_t
 

Enumerations

enum  crc_polynomial_t {
  CRC_POLYNOMIAL_CRC_8 = 1, CRC_POLYNOMIAL_CRC_16, CRC_POLYNOMIAL_CRC_CCITT, CRC_POLYNOMIAL_CRC_32,
  CRC_POLYNOMIAL_CRC_32C
}
 
enum  crc_bit_order_t { CRC_BIT_ORDER_LMS_LSB = 0, CRC_BIT_ORDER_LMS_MSB }
 
enum  crc_snoop_direction_t { CRC_SNOOP_DIRECTION_RECEIVE = 0, CRC_SNOOP_DIRECTION_TRANSMIT }
 

Detailed Description

Interface for cyclic redundancy checking.

Summary

The CRC (Cyclic Redundancy Check) calculator generates CRC codes using five different polynomials including 8 bit, 16 bit, and 32 bit variations. Calculation can be performed by sending data to the block using the CPU or by snooping on read or write activity on one of 10 SCI channels.

Related SSP architecture topics:

CRC Interface description: CRC Driver

Typedef Documentation

◆ crc_ctrl_t

typedef void crc_ctrl_t

CRC control block. Allocate an instance specific control block to pass into the CRC API calls.

Implemented as

Enumeration Type Documentation

◆ crc_bit_order_t

CRC Calculation Switching (LMS)

Enumerator
CRC_BIT_ORDER_LMS_LSB 

Generates CRC for LSB first communication.

CRC_BIT_ORDER_LMS_MSB 

Generates CRC for MSB first communication.

◆ crc_polynomial_t

CRC Generating Polynomial Switching (GPS).

Enumerator
CRC_POLYNOMIAL_CRC_8 

8-bit CRC-8 (X^8 + X^2 + X + 1)

CRC_POLYNOMIAL_CRC_16 

16-bit CRC-16 (X^16 + X^15 + X^2 + 1)

CRC_POLYNOMIAL_CRC_CCITT 

16-bit CRC-CCITT (X^16 + X^12 + X^5 + 1)

CRC_POLYNOMIAL_CRC_32 

32-bit CRC-32 (X^32 + X^26 + X^23 + X^22 + X^16 + X^12 + X^11 + X^10 + X^8 + X^7 + X^5 + X^4 + X^2 + X + 1)

CRC_POLYNOMIAL_CRC_32C 

32-bit CRC-32C (X^32 + X^28 + X^27 + X^26 + X^25 + X^23 + X^22 + X^20 + X^19 + X^18 + X^14 + X^13 + X^11 + X^10 + X^9 + X^8 + X^6 + 1)

◆ crc_snoop_direction_t

Snoop-On-Write/Read Switch (CRCSWR)

Enumerator
CRC_SNOOP_DIRECTION_RECEIVE 

Snoop-on-read.

CRC_SNOOP_DIRECTION_TRANSMIT 

Snoop-on-write.