差错控制是指在数据通信过程中能发现或纠正差错,并使其在允许范围内的技术和方法。
信号在物理信道中传输时,线路本身电气特性造成的随机噪声、信号幅度的衰减、频率和相位的畸变、电气信号在线路上产生反射造成的回波效应、相邻线路间的串扰以及各种外界因素,如大气闪电、开关跳火、外界强电流或磁场变化、电源波动等都会造成信号失真,使通信中接收端收到的二进制数位和发送端实际发送的二进制数位不一致,从而造成由“0”变“l”或由“1”变“0”的差错。
1.热噪声和冲击噪声
一般传输中的差错都由噪声引起。噪声分两类:一类为信道固有、持续存在的随机热噪声;另一类是由外界特定的短暂原因所造成的冲击噪声。
热噪声引起的差错称为随机差错,所引起的某位码元的差错是孤立的,与前后码元没有关系。由于物理信道设计时,总要保证达到相当大的信噪比,尽可能减少热噪声影响,因而由此导致的随机差错通常较少。
冲击噪声呈现突发情形,由其引起的差错称为突发差错。冲击噪声幅度可能很大,无法靠提高信号幅度避免冲击噪声造成的差错,这是传输过程中产生差错的主要原因。冲击噪声虽持续时间很短,但在一定数据速率条件下,仍会影响一串码元。如一个冲击噪声(一次电火花)持续时间为10ms,对于4800bit/s的数据速率来说,就可能对连续48位数据造成影响,发生差错。从突发错误发生的第一个码元到差错的最后一个码元间所有码元的个数,称为该突发错误的突发长度。
2.差错的控制方法(www.xing528.com)
数据通信中不加任何差错控制措施,直接用信道来传输数据通常是不可靠的。最常用的差错控制方法是采用差错控制编码。数据信息位在向信道发送之前,先按照某种关联关系附加上一定的冗余位,构成一个码字后再行发送,这个过程称为差错控制编码过程。接收端收到该码字后,检查信息位和附加的冗余位之间的关系,以检查传输过程中是否有差错发生,这个过程称为校验过程。
利用差错控制编码进行差错控制的方法基本有两类:一类是自动重发请求(Automatic Repeat reQuest,ARQ);另一类是前向纠错(Forward Error Correction,FEC)。
在ARQ方式中,接收端检测出有差错时,就设法通知发送端重发,直到正确的码字收妥为止。在FEC方式中,接收端不但能发现差错,而且能确定二进制码元发生错误的位置,从而加以纠正。因此,差错控制编码又可分为检错码和纠错码。检错码是指能自动发现差错的编码,纠错码是指不仅能发现差错而且能自动纠正差错的编码。
ARQ方式只使用检错码,但必须有双向信道才可能把差错信息反馈至发送端。同时,发送方要设置数据缓冲区,用以存放已发出的数据,以便知道出差错后可以调出数据缓冲区的内容重新发送。
FEC必须用纠错码,不需反向信道传递请求重发的信息,发送端也无需以备重发的数据缓冲区。FEC有上述优点,但因纠错码一般要比检错码使用更多冗余位,因此编码效率低,且纠错设备也比检错设备复杂,除非在单向传输或实时要求特别高(FEC不需重发实时性好)的场合,通信中更多采用ARQ方式。有些场合也两者混用,即当码字中的差错个数在纠正能力以内时,直接纠正;当码字中的差错个数超出纠正能力时,则检出差错,用重发纠错。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。