turbo编码原理

news/2024/11/14 16:49:25/

一、原理

Turbo的编码器由两个并行的分量编码器组成。分量编码器的选择一般是卷积码。在Turbo码中,输入序列在进入第二个编码器时须经过一个交织器 ,用于将序列打乱。两个编码器的输出共同作为冗余信息添加到信息序列之后,对抗信道引起的错误。

  • turbo编码器的结构
    在这里插入图片描述

二、交织器

什么是交织器?
编码器中交织器的使用是实现Turbo码近似随机编码的关键。交织器实际上是一个一对一的映射函数,作用是将输入信息序列中的比特位置进行重置,以减小分量编码器输出校验序列的相关性并且提高码重(码字中1的数目)。

如何实现交织器?

k:信息块的长度,取k = 960
s:原始数据序号,1~k
k = k1 * k2 = 4 * 240
Π(s):交织后的数据序号
根据下图所示流程,即可得到交织后的数据序号。

在这里插入图片描述

在这里插入图片描述

三、RSC 递归系统卷积码

所谓卷积码,即输出为输入和一段已知序列的卷积。
每个输入会产生三个输出。

  • RSC编码器结构
    在这里插入图片描述

  • 生成多项式
    在这里插入图片描述

四、归零处理

在数据序列编码完成后,归零处理使分量编码器RSC中的移位寄存器恢复成编码前的零状态,从而使编译码变得简单易于控制。

Turbo码的归零处理如下:
(1)输入所有的编码序列,完成编码
(2)分量码开关切换,各个寄存器中的遗留状态值和反馈结构生成某些编码序列的尾部比特,这些尾比特与自身异或,使新进入寄存器的值为0。尾比特添加至编码序列系统部位,RSC计算出的比特添加到校验序列后。
(3)该过程直到所有移位寄存器中值全部为0。如寄存器有m个,则经过m次后寄存器将全为0。

  • 实际操作
    前k个时钟,开关位于a,信息被输入到编码器中。
    在k个时钟之后的6个时钟,开关位于位置b。在这6个时钟的前3个时钟里,只有RSC1输出。在这6个时钟的后3个时钟里,只有RSC2输出。
    所以,终止序列是(X、Y0、Y1、X’、Y0’、Y1’);

五、数据打孔(删余)

现代通信系统中,为了实现高速数据传输,系统对频带利用率要求较高,一般Turbo码的码率只有1/3,所以,频带利用率不高,为了解决这一问题,在编码器中加入了删余处理。
删余处理的具体操作即在编码完成后,将分量码输出的两路校验信息输入删余器,按照一定的规则删除一部分校验信息,减小信息的冗余度,从而提高编码效率。删余处理根据各系统自定。
在这里插入图片描述
在上表中,0表示删除这个数据,1表示保留这个数据。
注意,终止部分(尾比特)的穿刺表与前面数据的穿刺表不一定相同。


http://www.ppmy.cn/news/4151.html

相关文章

基于场景的数据集------明厨亮灶数据集

为了和各位开发爱好者深入合作交流,特此准备分批次开放数据集拱大家交流学士研究使用,整理的非常细腻,有些是专业队伍标注的,主要是菲律宾那边的团队进行标注的。依据众多算法搭建的算法平台主体算法包括 人脸识别,人…

Web(十)JavaScript语言基础-JS条件语句

第1关:if-else类型 编程要求 本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下: 根据分数a(百分制)返回考试结果; a小于60分返回unpass,否则返回pass; 本题…

哈希表及其与Java类集的关系

目录 1.哈希表的概念 2.哈希冲突 3.如何避免哈希冲突? 3.1哈希函数设计 3.2 负载因子的调节 4.解决哈希冲突 4.1闭散列 4.1.1线性探测 4.1.2二次探测 4.2开散列(哈希桶) 5.HashMap 6.HashSet 1.哈希表的概念 假设有一组数据,要让你去搜索其中的一个关键码,这种场…

【AIOT】蓝牙调研

经典蓝牙模块(BT):泛指支持蓝牙协议在4.0以下的模块,一般用于数据量比较大的传输,如:语音、音乐等较高数据量传输。经典蓝牙模块可再细分为:传统蓝牙模块和高速蓝牙模块。传统蓝牙模块在2004年推…

高通平台开发系列讲解(DSI篇)DSI函数的内部逻辑

文章目录 一、dsi_start_data_call函数二、dsi_get_pkt_stats函数三、dsi_stop_data_call函数四、回调流程沉淀、分享、成长,让自己和他人都能有所收获!😄 📢DSI层最上层函数位于dsi_netctrl.c中,该.c位于apps_proc/data/dsi_netctrl目录中,现对部分主要函数的调用流程进…

智慧物流|Springboot+Vue+Nodejs实现智慧物流系统

作者主页:编程千纸鹤 作者简介:Java、前端、Pythone开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发、毕业设计开发、面试技术整理、最新技术分享 收藏点赞不迷路 关注作者有好处 文末获得源码 …

【链表面试题】——剑指 Offer : 复杂链表(带随机指针)的复制

文章目录前言1.题目介绍2. 题目分析3. 思路讲解思路1思路24. 分析图及源码展示前言 这篇文章,我们一起来解决一道与链表相关的经典面试题:复杂链表(带随机指针)的复制。 1.题目介绍 我们先来一起了解一下这道题: 这道…

【算法】【字符串模块】添加最少字符使得当前字符变成回文字符串

目录前言问题介绍解决方案代码编写java语言版本c语言版本c语言版本思考感悟写在最后前言 当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批评指正~ 在此感谢左大神让我对算法有了新的感悟认识! 问题介绍 …