全球范围都在要求通过现有的基础设施以更快的速度获取更多数据,这给通信带来了诸多挑战。由于通信信道不够可靠或者环境嘈杂,高数据速率、更小的信号和被压缩的信道都会造成编码错误。比如,硬盘没过几天就随机丢失数据,或者手机仅在天气晴朗时才能通话,这就会使它们变得毫无用处。此外,如果围绕行星运行并与地球进行通信的卫星解码错误过多的话,就会需要重新传输并产生长达5小时的延迟。为了防止这些错误,我们现在有了编码理论。
而在互联网可靠通信领域,一般用向前纠错,以更高的带宽占用,降低重发包的概率,使不良网络的整体延迟降低。今天我們將解釋FEC前向纠错技術。
前向纠错FEC是什么?
FEC (Forward ErrOr Correction, 前向纠错)是一种增加数据通信可信度的技术,广泛应用于计算机网络园、无线通信、卫星通信等多种数据传输场景中。FEC前向纠错码和信道编码是在传输信道可靠性不高、强噪声干扰信道中进行数据传输时,用来控制接收数据包误码率(丢包、乱码)的一项技术。
我们的世界充满了噪声,噪声影响一切,包括数据传输和通信系统,无法摆脱。光通信系统的接收器直接受到噪声的影响,这使得理解接收到的信息变得更加困难。从技术上讲,当波通过光纤传输时,噪声会对光强度产生影响,而在长距离传输时,光色散会在信号中产生明显的缺陷。每当有噪声或光色散失真的影响时,光脉冲就会退化并失去其作为0或1的意义,接收器将接收到的光脉冲转换为电压。当接收器这样做时噪声太大,它会错误地解释数据,将0读为1或将1读为0。
FEC前向纠错在这一点上发挥作用,因为它减少了噪声对光传输系统传输质量的影响。通过在传输之前将开销信息添加到比特流中,该方法能够检测和纠正比特流中可能存在的部分错误。数据块受专门函数的约束,这些函数的输出是奇偶校验位的生成。开销由冗余位组成,其中还包含奇偶校验位。之后,将初始数据块和这些新数据拼接在一起,产生FEC码字。之后,这个FEC码字沿着传输线发送。
需要在接收端的设备上配置相同的FEC模式,以便接收端的FEC解码器机制知道对FEC码字应用什么样的FEC功能。这允许接收器FEC解码器机制选择功能来重新生成数据并以高精度去除FEC开销。结果,产生了初始数据比特流,然后将其发送到更高的网络层。
FEC前向纠错或信道编码是可以显着减少这些数据传输错误的技术。
FEC前向纠错原理
FEC前向纠错原理是添加冗余比特,使解码器能够确定来自发射机的真实消息。
FEC前向纠错技术可以应用于数字比特流,或者在对数字调制的载波进行解调的过程中使用。许多 FEC编码器可以生成比特误码率 (BER) 信号,作为反馈信息对模拟接收电子设备进行微调。简言之,发射机会对消息进行编码,并且使用纠错码 (ECC) 添加附加比特(我们称之为冗余)。这种冗余使接收机能够检测并纠正消息中任何地方可能出现的有限数量的 误码。更强的代码需要更多的冗余和系统带宽,以便降低有效比特率,同时提高接收的有效信噪比。
FEC前向纠错原理是利用某种算法将冗余比特添加到所发送的信息中,从而实现前向纠错。冗余比特可以是许多原始比特的复合函数。FEC 的简单示例是将每个数据比特发送三次。这被称为 (3, 1) 重复代码,如下图所示。接收机会收到八个版本的 3 位代码的输出。
三个采样中任何一个的误码都可以通过叫做“多数投票”的FEC功能来纠正。上面的这种三重模块冗余的 方法得到了广泛使用,但它是一种效率稍低的 FEC形式。有效的FEC编码通常检查接收的最后几十或几百个比特,然后确定如何解码少量比特(通常以 2 到 8 比特的组合为单位)。
交错法
为了改善突发模式应用中的 FEC性能,经常使用交错法。交错法会在多个代码字之间混合数据来实现, 从而创建更均匀的误码分布。例如:
没有交错的传输
每个相同字母组代表一个 4 比特、1 比特的纠错码字。代码字 VVVV 中有一个改变的比特,这个比特可以被纠错。代码字 WWWW 中有四个改变的比特,它们都不能被解码,或者可能会被错误地解码。
以下每个代码字中只改变了一比特:TTTT、XXXX、YYYY、GGGG。因此,一个 1 比特的纠错码即可正确解码这些代码。下图以另一种方式显示了交错的效果。
FEC前向纠错的特点
1、单向信道 - FEC技术适用于单向通信信道,即数据只能从一个方向传输,按收端无法直接向发送端反馈错误信息。这使得FEC技术在一些无法建立反馈机制的通信场景中显得尤为重要。
2、无需重传 - 由于FEC技术能够在接收端自动纠正错误,因此无需像ARQ (Automatic Repeat Request自动重传请求)技术那样需要发送端进行重传。这在一定程度上降低了通信的延迟和带完消耗。
3、提高可靠性和容错性 - 通过添加冗余信息和纠错码,FEC技术能够显著提高数据传输的可靠性和容错性,减少数据传输中的错误和丢失。这对于一些对数据完整性要求较高的应用场景(如音视频传输、数据存储等)尤为重要。
FEC前向纠错编码类型
前向纠错分组码是预先定义的、固定大小的比特或符号块(分组)。实际的分组码可以被硬解码,从而限制它们的分组长度。
以下是几种类型的分组编码方案:
Reed Solomon码 - 一种使用一组或一族纠错码的交错编码,其字母大小、消息长度和分组长度具有一定的特征。它使用线性循环系统非二进制分组码,与低密度奇偶校验和涡轮码相比具有更少的编码增益。但该方法具有非常高的编码率和低复杂性,使其适用于许多应用,包括存储、传输和大块比特。
Golay码 - 提供接近单向、无误码的校正,但代价是数据加倍。使用此编码方案,您必须发送与数据比特一样多的 校验比特。
汉明码 - 为消息中的每四个数据比特添加三个额外的校验比特。
Bose-Chaudhuri-Hocquengham (BCH) 码 - 可对该代码纠正的符号错误的数量进行精确控制。它基本上是一种用于多重纠错的一般化汉明码。
多维奇偶校验(MDPC) 码 - 一种简单类型的纠错码,通过将消息排列到多维网格并计算每行和每列的奇偶校验比特来工作。
卷积码 - 任意长度的比特或符号流。以下是一些卷积码方案:
维特比码 - 实施一种软判决算法,从被噪声破坏的模拟信号中解调数字数据。它通过增加卷积码的约束长度获得渐近最优的解码效率,代价是增加了复杂性。它也不需要准确了解信噪比。
涡轮码 - 一种迭代的软解码方案,组合了两个或更多个相对简单的卷积码和交错器。得到的分组码传输速率非常 接近理论最大值。
低密度奇偶校验 (LDPC) 码 - 由多个单奇偶校验(SPC)码组成的高效线性分组码。其性能非常接近理论最大信道容量。
信道码 - 找到快速传输且包含大量合格码字的代码,同时还能检测到许多错误。
可在本地解码和测试的代码 - 适用于在不查看整个信号的情况下对消息中的单个比特进行解码。例如,在流设置中,码字可能太大而不能足够快地进行经典解码,而且我们仅对消息中的某几个比特感兴趣。
本地可测试码 - 可进行概率性检查,从而通过仅查看少量代码来确定信号是否接近码字。
级联码 - 它是经典(代数)分组码与卷积码的结合。一个短约束长度的维特比解码卷积码可以完成大部分工作;
而具有较大的符号大小和分组长度的分组码(通常为 Reed-Solomon)则可以“消除”由卷积解码器产生的任何错误。
FEC编码权衡
选择编码解决方案时,需要考虑许多注意事项,因为 FEC往往高于某个最小信噪比而不是低于它。此外, FEC 要么能够出色地恢复数据,要么就根本没法恢复数据。这被称为悬崖或砖墙效应。随着信号强度降低,模拟通信数据的恢复能力会逐渐下降。
当信道错误倾向于以突发形式出现时,FEC编码数据的交错可以缓解 FEC码“全有或全无 (all-or-nothing)” 的特性,尤其对窄带数据更有帮助。大多数 FEC系统使用“信道代码”设计来容忍预期的最坏情况误码率,但是,如果误码率比预测情况更差,它们根本就不能工作。
因此需要在关键的可靠性与数据速率间做出权衡。冗余比特使用与数据比特相同的信道;它们会影响可用的数据速率。冗余比特数越高,可用的数据速率越低,解码信号的可靠性越高。冗余比特数越低,可用的数据速率越高,解码信号的可靠性越低。
另一个必须的权衡是性能与复杂性。优化码率是为了达到降低误码率和减少重传次数之间的平衡,以降低通信的能量成本。编码复杂程度的增加会产生一些额外的延迟。银行业务和图像识别等数据中心的应用程序对此非常敏感,它们会把比特率加倍而不是转向 PAM4,从而继续使用 NRZ 或 ENRZ 编码。
码率是由信息比特数除以总比特数而得出的。接近零的低码率意味着强代码,此时使用了许多冗余比特来获得良好的性能。接近 1 的大码率意味着弱代码。例如,强代码(具有低码率)会使接收机的信噪比增加,同时,也会使比特误码率和有效数据速率降低。然而,如果不使用任何 FEC(即码率等于 1),而是使用全信道来传送信息的话,则会使比特失去任何额外的保护。
采用上述纠错码方案之后,单通道解码可以实现非常低的错误率;但是对于像外太空那样的长距离传输条件,建议采用迭代(解析)解码。
FEC前向纠错的应用
FEC技术广泛应用于各种数据传输场景,包括但不限于:
1、互联网传输:
在网络传输过程中,由于网络拥塞、噪声干扰等因素,数据包可能会出现丢失或损坏。采用FEC技术可以在一定程度上减少这些问题对数据完整性的影响。
2、无线通信:
无线通信环境中存在多种干扰因素(如多径效应、衰落等),导致信号质量不稳定。FEC技术可
以通过添加冗余信息来提高信号的抗干扰能力,确保数据的可靠传输。
3、卫星通信:
卫星通信具有传输距离远、覆盖范国广等特点,但同时也面临看信号衰减、时延大等挑战。FEC技术可以在一定程度上弥补这些不足,提高卫星通信的可靠性和稳定性。
结论
使用FEC前向纠错可使接收机恢复损坏的消息并将其转换回原始消息 实现可靠通信的关键组件, 如电话,卫星通信和数据存储。点击M8040A误码仪解决方案,了解更多信息。
比特误码率测试(BERT)解决方案 - 广泛的 BERT 测试解决方案,利用 M8000 系列和串行比特误码率系列进行研发和生产测试
比特误码率测试仪软件 - 利用更多FEC功能特性为您量身打造 BERT。我们提供丰富的软件、附件和服务产品供您选择,确保您充分发挥仪器的最大功效。您可以在购买仪器时选配这些产品,也可以在以后随时通过升级获得。选择是德科技,您将可以始终获得最新FEC功能。
扫描二维码,下载文章: 数据中心向 224Gbps 演进的以太网技术
联系是德科技 www.keysight.com.cn