当前位置:首页 > 电源 > 数字电源
[导读]卷积码在现代无线通信系统中应用十分广泛,Viterbi译码是最常用的一种对卷积码的译码算法。介绍了卷积编码及Viterbi串行解码的原理及其FPGA的实现。在保证系统性能的前提下讨论了分帧式编解码在实际系统中的应用。

0 引言

在现代通信系统中,信道编码技术得到了广泛的应用。卷积码结构简单,硬件实现容易,同时有着较好的查错纠错能力,因此在无线通信中经常使用,而其解码方式常用Viterbi译码。

1 卷积编码

卷积码(Convolutional Coding)是由PgElias 于20 世纪50年代提出的一种非分组码。它实现非常简单,将要发送的信息序列经过一个特定的线性移位寄存器,即完成了编码。

卷积编码常用(n,k,m) 表示,一般n 和k 的值都比较小,其中m 为编码约束长度,它表示编码时相应的信息比特在编码器中停留的时间。卷积编码是一种前后相关联的编码过程,编码后的码元和当前的k 个比特位相关,同时也与前m - 1 个输入比特相关,使得相互关联的码元达到m × n 个。衡量卷积码性能的两个重要参数是码率 (k n)和约束长度。

2 卷积码的描述方法

卷积码的编码描述方法有很多,工程中最常用的是寄存器网络结构法、码多项式法和状态图形表示法。

如本系统中使用的(2,1,7)卷积编码,它的寄存器网络结构法表示如图1所示。

 

 

离散卷积法表示如下:

 

 

其中卷积运算用*表示, g1,g2 为脉冲冲激响应。则如图1中可以表示为:

 

 

 

 

3 卷积码的译码

由于卷积码自身没有严格的代数结构,其译码过程相对复杂。目前常用的方法有两类:

(1)代数解码。这种解码方式是利用编码本身的代数结构进行解码,但不考虑信道的统计特性;(2)概率解码。这一解码方式则充分利用了信道的统计特性。目前常用的有Viterbi译码、最大后验概率译码(MAP)以及它的改进算法Max_log_MAP等。本文采用的是Viterbi译码简称(VB)。

对于(n,k,m) 的二进制卷积码,编码输入的信息序列是独立等概率的,比较各种条件下的概率,即似然函数P(R|U(m)),选择其中概率最大的,所得就是译码值,它具有最小差错概率。其中R 是实际接收到的序列,U(m) 是可能的发送序列。当满足P(R|U(m′)) =max P(R|U(m)) 条件时,U(m′) 就是译码值。

假设加性高斯白噪声作为系统噪声,同时信道是无记忆性,则卷积码的似然函数为:

 

 

式中:Ri 是接收序列R 的第i 个分支;Ui (m) 是特定码字U(m) 的第i 个分支;rji 是Ri 的第j 个码元;uji (m) 是Ui (m) 的第j 个码元,每个分支由n 个码元组成。在工程实践中通常用对最大似然函数取对数,以加法代替乘法。对数的最大似然函数定义为:

 

 

当log P(R|U(m)) 的值最大时,译码成功。Viterbi译码利用了编码网络图的特殊结构,降低了计算的复杂度,但它本质上仍然是最大似然译码。算法实际执行时,边接收边比较,同时去除不可能成为最大似然选择对象的路径,也就是说如果两条路径到达同一状态,被选中的是具有最佳量度的路径。这一路径称为幸存路径,对所有状态进行比较、选择,抛弃不可能的路径,从而降低了译码器的复杂性。译码从根本上说,也就是选择具有最小距离的码字或最大似然量度的码字。

4 卷积码编码的工程实现

卷积码的编码在工程中比较简单,由移位寄存器和异或组成,系统中使用(2,1,7)编码,实现原理如图2所示。在FPGA中的仿真如图3所示。

 

[!--empirenews.page--]

 

5 卷积码译码--Viterbi 译码的FPGA 实现

Viterbi算法的基本实现方法如下:在不同时刻,按照最大似然准则将网格图中所有的路径进行比较,保留一条具有最大似然值的路径(幸存路径),同时舍弃其他路径。每个时刻进行相同的操作,对每接收到的一段数据进行计算、比较并保存幸存路径,最后留下的路径就是所要求得的译码值。

对于卷积码(2,1,7),其编码的状态数为26,所以在译码时,译码器最多需要保留26条幸存路径,和它所对应的路径度量值。由于是(2,1,7)编码每个节点将引出两条支路,但通过比较似然函数的累加值后,可以丢弃一半的路径,使得留存下来的路径总数保持不变。这样在具体实现时可以开辟固定大小的存储区,有利于硬件资源的估计。

在工程实现中采用迭代的方法,在每个时刻,对进入每个状态的所有路径的量度值进行比较,同时把具有最大量度值的路径存储下来。具体步骤如下:

(1)初始化,从时刻t = n 起,计算每个状态的路径和路径度量,并存储。

(2)在t + 1 时刻,接收新的一组数据,将当前的路径度量与前一时刻的度量相加,求得并保存最大度量并保存幸存路径,删除其余路径(3)当t < L + n( L 为反馈深度)时重复步骤(2),否则结束输出结果。

由于软判决可以对信道噪声进行更好的估计,因此它比硬判决有着更好的译码性能。因此,本文Viterbi译码器采用软判决算法,同时对信号采用线性(均匀)八电平量化。其FPGA的实现图如图4所示。

 

 

6 系统应用

在一般的通信系统中卷积编码和Viterbi译码可以是连续的,但在实际系统的应用中由于系统采用PCM分帧的模式传送,因此卷积码编码和Viterbi译码也相应改成按帧传送模式。由于卷积码的编码是数据前后相关的一种编码模式,在按帧发送后设编码和解码的初始状态均为0,如(2,1,7)编码举例,从编码的原理图2中可以清楚的看到,在相同的信道状态和传输数据一定的条件下,每一帧都将影响最后6 b 数据解码的正确性。

为此可以有两种解决方式:

(1)为每帧数据添加固定的6 b 数据,这种做法增加了系统的数据冗余;

(2)编码端不做任何处理,影响系统的误码率。

考虑到系统性能,由于系统传输能力还有剩余因此采用第一种处理方法。同时加入6 b 数据全部为0,这样不仅解决了数据误码率的问题同时保持了解码初始状态的一致性,使解码能更好的同步,有效地提高解码的正确性。

分帧式卷积编码及Viterbi 解码的FPGA 实现的联合仿真如图5所示。

 

 

分帧式传输对系统的影响如图6所示。

 

 

7 结论

在实际通信系统中,通过测量比较,分帧式编解码和连续编解码相比,在信道传输中对系统影响不大,在某些情况下分帧式编解码甚至会优于连续编解码

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭