通信原理板块——奇偶监督码、方阵码、恒比码、正反码

微信公众号上线,搜索公众号小灰灰的FPGA ,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等

1、奇偶监督码(parity check)

奇偶监督码分为奇数监督码和偶数监督码,两者原理相同。

利用"⊕模2和"进行检错,适用于检测随机错码。

(1)偶数监督码

在偶数监督码中,无论信息位多少,监督位只有1位,使码组中"1"的数目为偶数,即满足:

an-1⊕an-2⊕......⊕a0=0

a0为监督位,其他位为信息位

在接收端,按照上述公式求"模2和"

若计算结果为"1"表示存在错码

若计算结果为"0"表示无错码

(2)奇数监督码

在奇数监督码中,无论信息位多少,监督位只有1位,使码组中"1"的数目为偶数,即满足:

an-1⊕an-2⊕......⊕a0=1

a0为监督位,其他位为信息位

在接收端,按照上述公式求"模2和"

若计算结果为"0"表示存在错码

若计算结果为"1"表示无错码

2、二维奇偶监督码(two dimensional)

二维奇偶监督码又称为方阵码。

把奇偶监督码的若干码组,每个写成一行,然后再按照列的方向增加第二维监督位。

每一行的最后一位代表该行的监督位,每一列的最底下一位代表该列进行第二次编码所增加的监督位。

方阵码适用于检测突发错码。突发错码常常成串出现,随后有较长一段无措区间,在某一行中出现多个奇数或偶数错码的机会较多。

由于方阵码只对构成矩形四角的错码无法检测,检错能力较强,可使误码率降至原误码率的1/100到1/10000。

3、恒比码

在恒比码中,每个码组均含有相同数目的"1"和"0"。由于"1"的数目和"0"的数目之比保持恒定,故称为恒比码。

检测过程中,只要计算接收码组中"1"的数目是否对,即可判断有无错码。

恒比码的主要优点在于简单,适用于来传输电传机或其他键盘设备产生的字母和符号。

4、正反码

正反码是一种简单的能够纠正错误的编码,其中的监督位数目和信息位数目相同,监督码元与信息码元相同或者相反,由信息码中"1"的个数来确定。

若码长n=10,其中信息位k=5,监督位r=5,其编码规则为:

①当信息位中奇数个"1"时,监督位是信息位的简单重复;

②当信息位中偶数个"1"时,监督位是信息位的反码。

例如:

信息位为11001,码组为1100111001;

信息位为10001,码组为1000101110。

接收端解码规则:

①现将接收码组中信息位和监督位按"模2"相加,得到一个5位的合成码组;

②由合成码组产生一个校验码组。若接收码组的信息位中有奇数个"1",则合成码组就是校验码组;若接收码组的信息位中有偶数个"1",则取合成码组的反码作为校验码组;

③观察校验码组中"1"的个数,按照规则进行判决和纠正可能发现的错码。

一个编码示例:

①发送码组为1100111001,接收码组中无错码,则合成码组为11001⊕11001=00000。由于接收码组信息位中有奇数个"1",校验码组为00000,按判决规则可知:无错码。

②若传输过程中发送差错,接收码组变成1000111001,则合成码组为10001⊕11001=01000。由于接收码组信息位中有偶数个"1",校验码组为10111。按判决规则,校验码组有4个"1"和1个"0",确定:信息码中有1位错码,其位置对应校验码组"0"的位置,也就是信息码左边第二位为错码,可对其进行取反纠错。

③若传输过程中发送差错,接收码组变成1100101001,则合成码组为11001⊕01001=10000。由于接收码组信息位中有奇数个"1",校验码组为10000。按判决规则,校验码组有4个"0"和1个"1",确定:监督码中有1位错码,其位置对应校验码组"1"的位置,也就是监督码左边第一位为错码,可对其进行取反纠错。

④若传输过程中发送差错,接收码组变成1001111001,则合成码组为10011⊕11001=01010。按判决规则,可知错码多余一个。

相关推荐
ZYNQRFSOC14 小时前
基于XCKU5P纯逻辑 NVME测试
fpga开发
FPGA小迷弟18 小时前
使用FPGA开发高速AD/DA芯片的接口学习
fpga开发
stars-he19 小时前
FPGA学习笔记(6)逻辑设计小结与以太网发送前置
笔记·学习·fpga开发
燎原星火*19 小时前
FPGA 逻辑级数
fpga开发
175063319451 天前
Vivado Zynq7020 生成正弦波(查表法) + 行为级仿真
fpga开发
Terasic友晶科技1 天前
4-DE10-Nano的HDMI方块移动案例——I2C通信协议
fpga开发·i2c·hdmi·de10-nano·i2c通信协议
云雾J视界2 天前
FPGA在AI时代的角色重塑:硬件可重构性与异构计算的完美结合
fpga开发·边缘计算·gpu·vitis·ai推理·azure云·异构编程
s09071363 天前
FPGA中CIC设计注意事项
算法·fpga开发·cic滤波器
Aaron15883 天前
RFSOC+VU13P在无线信道模拟中的技术应用分析
数据结构·人工智能·算法·fpga开发·硬件架构·硬件工程·射频工程
碎碎思3 天前
BerkeleyLab Bedrock:为 FPGA 与加速计算打造的开源基石
fpga开发·开源