• 回答数

    2

  • 浏览数

    233

gavin70606
首页 > 学术论文 > turbo码编解码分析毕业论文

2个回答 默认排序
  • 默认排序
  • 按时间排序

眼角落下的泪

已采纳

Turbo卷积码(TCC)是3G无线系统中所采用的前向错误校正(FEC)机制的整体部分。然而,Turbo译码器所带来的计算负担非常重,并不太适合采用传统DSP或RISC处理器实现。由于现场可编程逻辑阵列(FPGA)内在的并行结构,FPGA为解决3G基站收发器中所需要的符号速率FEC和其它计算密集的任务提供了一个高性能信号处理平台基础。 Turbo 编码 级联码方案(Concatenated coding schemes)是为了通过结合两个或更多相对简单的分量或构造模块码来获得较高的编码增益。Turbo码认为是对级联码结构的一种改进,其中采用迭代算法对相关的码序列进行译码。Turbo码是通过将两个或更多分量码应用到同一数据序列的不同交织版本上构成的。对于任何传统单分量编码,译码器的最后一级生成的都是硬判决译码数据位。为了使象Turbo码这样的级联码方案工作得更好,译码算法不应被限制为只能在译码器间传递硬判决。为最好地利用每个译码器获得的信息,译码算法必须可以实现软判决交换,而不是采用硬判决。对于采用两个分量码的系统,译码的概念是指将来自一个译码器的软判决输入到另一个译码器的输入,并将此过程重复几次以获得更好的判决,如图1所示 。 3GPP Turbo 编码器 图2为3GPP编码器。 输入数据流输入到RSC1,它为每个输入比特生成一个对等比特(Parity Bit)。输入数据还经过交织后由RSC2处理生成第二个对等比特流。 3GPP标准定义,输入块的长度在40至5114 位之间。编码器生成一个速率为1/3的包括原始输入位和两个对等位的系统码。通过打孔方法可以获得1/2编码速度的编码。递归系统编码器的实现比较直接,然而交织器则不那么简单,要比标准的卷积或块交织器复杂。 一旦将输入数据块长度K 提供给编码器以后,编码器将计算交织矩阵行数R和列数 C,并创建相应的交织数据结构。R 和 C 是数据块长度K的函数。在输入符号被加载到交织矩阵以后,那么将根据一定的顺序进行行间交换和列间交换。交换模式是根据块长度K选择的(即依赖于K)。行和列交换完成后,通过逐列读出交织矩阵数据就可以得到最终的交织序列。在数据读出时需要进行删减操作,以保证在输出中只有正确的输入符号,请注意,交织阵列包含的数据位通常比K个原始输入符号要多 ,因为R C>K。然后,新的序列经过RSC2编码生成第二个对等位流。 实现交织器的一种方法是在存储器中存储完整的交换序列。即,一旦K 给定,即调用一个初始化例程(运行在处理器上的软件例程或利用FPGA中的功能单元)生成相应的交换序列,然后将这一信息存储在存储器中。然而,这一方法需要大量的存储器。利用Virtex -E FPGA 技术提供的 4096位每块的片上存储器,将需要[5114 13/4096]=17个存储器块。 在我们的方法中,采用一个预处理引擎生成一个序列值(存储),这一序列值被存储起来,交织器地址发生器将使用这些序列值。这一硬件单元采用几个小型数据结构(素数表)来计算所需要的序列。这一准备过程需要的时钟周期数与信息块的长度成比例。例如,对于K=40的块需要280时钟周期,而对于最大块长度K=5114,则需要 5290个时钟周期。该过程只需要在块长度变化时进行。地址发生器利用这些更为紧凑的数据结构来实时生成交织地址。 3GPP Turbo 译码器 译码器包括两个MAP(最大后验概率)译码器和几个交织器。Turbo算法的优良的性能源于可以在两个MAP译码器间共享可靠性信息(extrinsic data,外数据,或称先验数据)。 在我们的设计中,MAP译码器采用的是Bahl, Cocke, Jelinek 和 Rajiv (BCJR) 算法。BCJR算法计算每个符号的最大后验对数似然率,并且是一种真正的软判决算法。考虑到数据是以块的形式传输的,因此可以在时间维中前向或反向搜索一个符号序列。对于任一序列,其出现概率都是单独符号出现概率的乘积。由于问题是线性的,因此序列概述可以利用概率的对数和来代替。 为了与一般文献中的习惯一致,我们将译码迭代的前向和反向状态概率分别利用 和 来表示。通常,BCJR算法要求在接收到整个信息后才开始解码。对于实时应用,这一限制可能太严格了。例如,3GPP Turbo译码器将需要大量存储器存储一个5114符号信息块的完全状态结构(state trellis)。对于单片FPGA设计来说,这需要的存储资源太多了。与维特比(Vitebi)算法类似,我们可以先从全零向量 O和数据{yk}(k 从 n 到 n-L) 开始反向迭代。L次反向迭代可获得非常好的 n-L近似值。只要L选择合适,最终的状态标志(state metric)就是正确的。可以利用这一性质在信息结束前就开始进行有效的位译码。 L 被称为收敛长度。其典型值大约是译码器约束长度的数倍(通常为5至10倍),并随着信噪比的降低而增加。 通常,Turbo译码算法将计算所有的 (对整块信息),将这些数值存储起来,然后在反向迭代中与反向状态概率一起用来计算新的外信息(extrinsic information,或称先验信息)。我们的设计中采用了窗口化方法。 译码过程以一个前向迭代开始,计算包含L 个接收符号的块i的 值。同时,对未来(i+1)块进行一个反向迭代(标号 )。对块i+1的反向迭代结束时,就获得了开始对块i 进行反向迭代所需要的正确的 初始向量。 与此同时对数似然函数(Lall)也在进行。 每一 和 处理过程都需要8个max* 操作 - 每个针对状态结构(tellis)中的8个结点之一。最终的对数似然计算需要14个并行max* 运算符。为了提供可接受的译码速率,在设计中采用了38个max* 功能单元。 从 C描述到FPGA设计 FPGA Turbo 编码译码器设计是利用基于C的设计和验证方法进行的,如图3所示。 算法开发阶段采用具有定点C类型的Art Library 来对定点计算的位真(bit-true)效应进行准确建模。在这一阶段考察了几种可能算法的定点性能。一旦选定正确的量化算法,就可利用A|rtDesignerPro创建一个专用DSP架构。A|rtDesignerPro的一个最强大的功能之一是可以插入和利用专用的数据通道核心(称为专用单元,ASU)。利用这些ASU加速器核心可以使我们处理Turbo译码器算法内在的计算复杂性。 A|rtDesignerPro可自动完成寄存器分配、调度和控制器生成。在Turbo编码译码器设计中, A|rtDesignerr的自动循环合并可获得最佳的;任务调度,MAP译码步骤的内部循环都只有一个周期长。 A|rtDesignerPro生成的最终结果是可综合的寄存器级(RT-level) VHDL或Verilog 描述。基于C的工具流支持FPGA专用功能。例如,可利用BlockRAM自动构造RAM,而寄存器文件也可利用分布式存储器而不是触发器来实现 。 最后,逻辑综合和Xilinx实施工具套件将RTL HDL 转换为 FPGA 配置位流。 FPGA Turbo 编码译码器实现 A|rtDesigner创建的Turbo编码器和译码器核心硬件结构包含许多专用ASU加速器。其中最重要的一个加速器完成max* 操作。max* 运算符根据下式计算两个幂值a 和 b: max* (a,b)=ln(expc(a)+expc(b))。 如 图4所示, max* 运算是通过选择(a,b)最大值,并应用一个存储在查找表(LUT)中的校正因子近似进行的。这一近似算法非常适合利用Xilinx FPGA 实现,其中LUT是其最终基本构造单元。 结果 Turbo译码算法硬件字长的选择极大地影响总体性能。利用C-to-FPGA设计流程,这一定点分析是完全在C环境中完成的。结果示于图 5。 上图显示出了我们的浮点Turbo译码器算法和对应的定点算法之间的性能差别。仿真是在5114块长度、5次译码迭代和AWGN信道模型情况下进行的。结果清晰明显出性能的损失是非常小的。 我们的Turbo译码器的定点性能做为译码器迭代次数的函数 ,对于 dB SNR,位错率为10-6。 译码器功能的实现非常具有挑战性,我们同时针对Virtex-E和 Virtex-II 器件进行了适配。Virtex-II 器件实施是采用运行在 speedfile数据库上的Xilinx 实施工具集完成的。利用XC2V1000BG575-5 FPGA实现的最终设计,达到了66 MHz 的时钟性能,消耗了3,060个逻辑片 和 16个块RAM。对于从40至 5114符号长度的块,采用5次译码迭代循环的情况下,译码器达到了2 至 百万符号每秒(Msym/s)的吞吐量。编码器占用了903个逻辑片、3个块RAM并支持83 MHz时钟频率。对于从40至5114位的块长度,速率可达到9 至20 Msym/s。

248 评论

提琴小13

信道编码技术及电子系统工程应用的探讨论文

根据信道编码理论及编码、译码方法和技术的发展,结合工程实际从理论到实践进行了简要的阐述。

随着信息及信号传输技术的发展,应用电子领域也随之扩大并得到发展。通过对信源编码、信道编码、编码的方法,以及对压缩后的信息进行纠错编码,以抗击信道、网络及传输过程的误码或数据丢失,即信道编码问题的系统认识与理解对实际工程应用具有重要的意义。从电子系统工程的应用角度,对相关知识的理解与应用体会更为深刻。在此,就实际应用中贯穿其中的相关知识及带来的思考与启发扼要介绍。

一、信道编码理论及编、译码问题

衡量任何一个信号通信系统性能优劣的基本因素是有效性和可靠性,有效性是信道传输信息的速度快慢,可靠性是信道传输信息的准确程度。在数字通信系统中,信源编码是为了提高有效性,信道编码是为了提高可靠性,而在一个通信系统中,有效性和可靠性是互相矛盾的,也是可以互换的。我们可以用降低有效性的办法提高可靠性,也可以用用降低可靠性的办法提高有效性。而纠错编码,即信道编码问题是重点。

(一)编、译码问题

信道编码是以香农第二定理和香农第三定理为理论支持。在错误控制编码方面,主要是纠错线性分组码与非分组的卷积码。对于线性分组码,采用增加冗余码作为监督码,这样编出的码具有一定的检错和纠错能力。在译码方面,根据最大似然法译码,判断码的汉明距离,找到汉明距离最小的码,那就是在发送端传输过来的码。编码是一个比较抽象的概念,采用矩阵的描述方式表示编码,将输入的信息序列与生成矩阵相乘,那么就可以得到编码后的符号。在译码方面,通过奇偶校验矩阵就可以检测译码是否正确。

(二)关于卷积码

卷积码是编码不一样的领域,因为这种码在判决时用到过去的信息,也就是说,它是需要记忆的。这也就是卷积码得名的由来。卷积码的编码器由一个移位寄存器和相关逻辑电路组成,对每一个进入的信息帧,编码器都产生一个码字帧。当然,还可以画编码器的状态图,比较直观表示编码器根据输入情况而变化。根据状态图可画出网格图;由网格图很容易地知道卷积码的距离,这是卷积码译码的一个依据。卷积码用一个生成多项式矩阵表示,在编码方面极为方便,编码操作可以简单地描述为信息量矩阵与生成矩阵的乘积。而更加严谨、方便地表达,则需要生成函数。通过修改状态图,很容易得到生成函数。对生成函数的级数展开,可以很直观地得到汉明距离和输入路径的信息,最后还可以知道给定汉明距离全零路径的数量。

(三)Turbo码和LDPC码

Turbo码与LDPC码是两种性能接近香农极限的信道编码。Turbo码在低信噪比的情况下,性能比其他编码要好。Turbo码的优良性能在非实时数据通信方面被广泛采用。Turbo码是分组码和卷积码的“准”混合物。Turbo码有并行级联卷积码、串行级联卷积码和混杂级联卷积码三种不同的排列。因为有交织器的存在,所以编码器的纠错能力很好。LDPC码是一类可以用非常稀疏的校验矩阵或二分图定义的线性分组码,其特点是:译码算法具有线性复杂度可采用并行迭代方式,具有译码自校验特性,在高信噪比条件下能有效降低译码复杂度,提高误比特率性能;可以满足高性能信号通信要求。LDPC码以最低的复杂度提供了最好的性能。这意味着在同等性能情况下, LDPC码的复杂度只有Turbo码的1/4。与Turbo码相比,LDPC码尤其是非规则LDPC码具有非常出色的性能,优于迄今为止已知的其它编码方式。LDPC码与其它编码相比还有一些独特的优点:译码可以完全并行,因此可以获得更高的译码速度;译码器的复杂度大幅降低;译码是可验证的;非规则LDPC码具有天然的不等错误保护能力。

二、从信道编码定理看编、译码方法的发展

(一)信道编、译码方法的多样性

信道编码的'核心是“纠错”;信道编、译码的最终目的是实现信道与信号通信系统在可靠性指标下的优化。其方法是纠错编码,即抗干扰编码。奇偶校验码是一种检错分组码;由此原理派生出改进的:水平奇偶校验码、垂直奇偶校验码、群计数码等。定比码是一种只能发现错误的简单检错码,且需通过反向信道系统方能实现抗干扰。而重复码是前向纠错码,也是一种最简单的纠错码,实际应用较广泛。而由汉明码引出的线性分组码是一种具有线性代数关系的编码。在实际应用中,为得到希望的码长和信息位长度,将信息位缩减而得到原码的缩短码。在汉明码的基础上增加一位监督元,则产生增余汉明码或扩展汉明码,使纠错能力得到提高。而由完备码产生的完备译码、非完备译码,则反映了分组码的纠错能力是全部用于纠错,还是部分纠错检错。循环码是线性分组码中重要的一类码,从应用角度其编码与译码电路较为简单,易于实现;且编、译码方法方便、成熟。

(二)信道编、译码方法的发展过程与启示

不难看出,信道编码的方法是丰富多彩的。也是渐进发展,逐步完善的过程。由此可见,理论指导是发展的方向。对信道编码的理论支撑及方向的指引,使得信道编码方法沿着丰富而日臻完善、接近而趋于极限的方向发展。从这一发展过程可以看出,任何一种新的或衍生的方法,都是有局限性的。但这种局限和不完善性,并不会阻碍新的方法的产生和发展。旧的矛盾解决的同时,新的矛盾又会出现。正如,纠错检错能力的提高,对信息进行错误保护,以抵御信道或网络等信息传输过程的干扰所产生的误码或数据丢失的同时,也将使编码及信息传输效率降低。由于信道编码增加了数据量,其结果只能是以降低传送有用信息码率为代价。因此,不同的编码方式,其纠、检错的能力不同,编码效率(信息传输效率)也有所不同。

三、从工程应用实例看理论支撑点

(一)智能住宅小区建设中信道编码技术的应用

在工程中首次接触的,应用于数字电视地面广播(DTTB)的编码调制方案中,涉及到:以多级分组乘积码代替传统的串行级联编码结构,提高了频谱效率;同时采用一种多分辨率星座图,可在一个DTTB信道中提供3种级别的服务.在接收端采用基于MAX—LOG—MAP准则的迭代Turbo译码算法以获得可靠接收。仿真结果表明,在视觉门限BER=3×10-6处,高优先级码流的比特信噪比约为7dB,适用于高可靠性的服务.中优先级和低优先级码流可支持室外固定接收。由此,也加深了对并行级联卷积码的反馈迭代结构的理解。

(二)网络编码与网络安全

在网络工程中,接触到多址信道中联合网络编码和信道编码的设计方案。该方案利用LDPC码和网络编码的线性特性以及软输入软输出模块设计,不仅减少了编译码的复杂度,而且提高了编译码效率。同时,了解了网络——信道编码分离定理,以及该定理成立的条件,即当网络中的信道是确定型广播信道时,分离定理不成立。而信道安全编码与网络安全编码同样重要,又有所区别。信道编码问题,其核心是对传送的信息进行错误保护,以抗击信道或网络等信息传输媒介所带来的误码或数据丢失。而网络中的通信安全是网络编码研究的重要课题之一,网络安全编码更侧重于网络使用者信息及使用的安全层面。网络编码技术的发展可以大幅度提高网络的吞吐量。

四、结束语

专业技术的专长与拓展并存,这是专业技术发展的必然趋势。身处信息时代,信息科学是研究信息的获取、传输以及应用的科学,是信息资源与技术开发及其推广应用的理论基础,是信息技术及信息产业的核心。通信工程、电子信息工程、计算机科学、计算机应用等众多应用技术与信息科学、信息技术及信息产业息息相关。信道编码从理论上要解决理想编码器、译码器的存在性问题,即解决信道能传送的最大信息率的可能性和超过这个最大值时的传输问题;同时构造性的编码方法以及这些方法能达到的性能界限。筒言之,通过信道编码器和译码器来实现的用于提高信道可靠性的理论和方法。

327 评论

相关问答

  • 毕业论文页编码

    1、在菜单栏选择插入,进入页脚选项,在弹出的窗口点击编辑页脚 2、接着在菜单栏会出现设计这一选项,点击页码,在弹出的窗口选择页面底端,然后出现底端各种样式,一

    小白胖了 2人参与回答 2023-12-10
  • 毕业论文分段页码

    点击Word上方菜单,页面布局--分隔符--下一页-- 选择插入--页脚--编辑页脚--链接前一页的页眉--保存键--页码-页面底端--普通数字2--页面格式设

    shuixinggege 3人参与回答 2023-12-06
  • 毕业论文分页页码

    你要插入分隔符的看你的情况,应该把它分成三段不用页码的部分(1),摘要(2),正文(3)我这没有07的版本,用03给你演示下先定位到(1)最后,选择插入、分隔符

    木木兮123 3人参与回答 2023-12-08
  • turbo码编解码分析毕业论文

    Turbo卷积码(TCC)是3G无线系统中所采用的前向错误校正(FEC)机制的整体部分。然而,Turbo译码器所带来的计算负担非常重,并不太适合采用传统DSP或

    gavin70606 2人参与回答 2023-12-07
  • 音响解码系统毕业论文

    音响解码器可以将CD机或其他数字音源播放器一分为二,把读取的数字音频信号转换成模拟音频信号,再输出给放大设备进行重放。 解码器的作用就是将这些原本无法看到和听到

    Sundy那抹阳光 3人参与回答 2023-12-07