CRC学习卡片
🔍
CRC基本概念
CRC基本概念
全称
循环冗余校验码
(Cyclic Redundancy Check)
核心功能
通过添加校验位检测数据传输错误
主要应用
数据通信中的错误检测,特定条件下可实现单比特错误纠正
💡
CRC核心思想
CRC核心思想
类比十进制:类似约定除数检查余数是否为0的方法
发送方
:在k位信息位后添加r位校验位,使整个数据与约定除数相除余数为0
接收方
:用相同除数进行模2除运算,检查余数是否为0判断传输正确性
错误检测:若余数非零,则表明传输过程中出现错误
🛠️
CRC构造步骤
CRC构造步骤
根据
生成多项式
确定除数(最高次为R→除数R+1位)
例:G(x) = x³ + x² + 1 → 1101
信息位补R个0构成校除数
进行
模2除
得R位余数
信息位+余数=CRC码
✅
检错与纠错机制
检错与纠错机制
检错原理
接收方用相同生成多项式进行模2除
- 余数000表示无错误
- 余数≠000表示出错
纠错能力
余数与错误位置存在固定对应关系(需满足
2ᴿ ≥ K + R + 1
)
3位校验位最多定位7个错误位置
实际应用中多用于检错而非纠错
✨
CRC特性
CRC特性
可检测所有
奇数个错误
可检测所有
双比特错误
可检测
≤r位的连续错误
满足2ᴿ ≥ K + R + 1时可纠正单比特错
🔄
CRC命名由来
CRC命名由来
余数模式呈现
循环特性
:
001 → 010 → 100 → ... → 001