畅谈无线通信系统物理层之CRC(一)概述与定义

CRC英文为Cyclic Redundancy Check,翻译过来即循环冗余校验,通过添加余式进行错误校验,CRC编码作为循环码字的一种,其生成原理与循环码字的生成完全一致。

严格来说,CRC并不属于物理层,它属于链路层的一部分,在CPU繁忙时,CRC用软件实现的时候占用资源较多,CRC会用硬件实现,此时和物理层接口比较紧密,同时CRC检错功能也可以用来定性物理层的错误,所以CRC也可以看做物理层的一部分。

为什么需要CRC?在通信设备传输过程中,尤其是无线通信中,无论传输系统物理层的设计再怎么完美,差错总会存在,有的时候,出错的某些数据一旦进入下一个流程,可能会引起重大的破环作用,这时需要丢弃,同时也可通知发送端重传,所以在接收方接收数据之前需要对数据进行差错检测,当且仅当检测的结果为正确时接收方才真正收下数据。检测的方式有多种,常见的有奇偶校验、因特网校验和循环冗余校验等。CRC特点是:检错能力强,开销小,易于用编码器及检测电路实现。从其检错能力来看,它所不能发现的错误的几率仅为0.0047%以下。从性能上和开销上考虑,均远远优于奇偶校验及算术和校验等方式

各种书籍和网站都对CRC进行了大量的介绍,如果只进行应用的话,发送接收端设计比较简单,按照标准流程和开源算法进行设计即可,但其实稍微仔细研究的话,会发现CRC其实并不简单,有一些有趣的性能会影响系统设计,比如CRC能纠错吗?CRC能发现所有的错误吗?通过CRC校验就一定没有错误吗?这里对基本问题进行总结,试图能全面了解CRC性能,为工程应用提供更好的支持。

一、定义

先给出

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
循环冗余校验 CRC 的算法分析和程序实现<br>西南交通大学计算机与通信工程学院 刘东<br>摘要 通信的目的是要把信息及时可靠地传送给对方,因此要求一个通信系统传输消息必须可靠<br>与快速,在数字通信系统中可靠与快速往往是一对矛盾。为了解决可靠性,通信系统都采用了差错<br>控制。本文详细介绍了循环冗余校验CRC(Cyclic Redundancy Check)的差错控制原理及其算法实<br>现。<br>关键字 通信 循环冗余校验 CRC-32 CRC-16 CRC-4<br>概述<br>在数字通信系统中可靠与快速往往是一对矛盾。若要求快速,则必然使得每个数据码元所占地<br>时间缩短、波形变窄、能量减少,从而在受到干扰后产生错误地可能性增加,传送信息地可靠性下<br>降。若是要求可靠,则使得传送消息地速率变慢。因此,如何合理地解决可靠性也速度这一对矛盾,<br>是正确设计一个通信系统地关键问题之一。为保证传输过程的正确性,需要对通信过程进行差错控<br>制。差错控制最常用的方法是自动请求重发方式(ARQ)、向前纠错方式(FEC)和混合纠错(HEC)。<br>在传输过程误码率比较低时,用FEC 方式比较理想。在传输过程误码率较高时,采用FEC 容易出<br>现“乱纠”现象。HEC 方式则式ARQ 和FEC 的结合。在许多数字通信中,广泛采用ARQ 方式,<br>此时的差错控制只需要检错功能。实现检错功能的差错控制方法很多,传统的有:奇偶校验、校验<br>和检测、重复码校验、恒比码校验、行列冗余码校验等,这些方法都是增加数据的冗余量,将校验<br>码和数据一起发送到接受端。接受端对

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值