BCJR算法——卷积码的最大后验译码

定义:输入序列为

其中每比特,同时相应的输出序列为

其中每一码字的长度为n,定义在i时刻的编码器的状态为,对于时刻里有

表示输出码字和卷积码第i时刻的输入和第i-1时刻的状态有关(包括寄存器和输出部分),

表示状态转变和输入的关系。

编码器的的状态表示一系列在一个状态集合。

假设接收端接收到的为,第i时刻的输入根据最大后验准则:

表示一个状态对,每个状态对应一个或者,把所有输入对应的状态对记为同理。最后一个等号表示输入为​​输入的每个比特转换成所有的状态对来描述。

定义:

接收序列重写为

对于后验概率求和中的一项有

前三个等号是有条件概率公式,最后一个等号是有Trellis图的马尔科夫性质。

定义:

由此可以将上述式子重写为:

MAP的结果重写为

的前向递归性

可以由之前的时刻的表示。

第三个等号利用马尔科夫性质。

假设初始时刻的输入为全0状态,则有:

的后向递归性

可以由之后的结果递归计算得到。

证明

第一个等号为全概率公式,第三个等号为马尔科夫性质。

假设Trellis图最后停止在全零状态。

的计算

对应输出码字,同时在i-1时刻状态为的条件下第i时刻状态为的概率等效与第i时刻的输入为的概率。

定义L值(最大后验准则度量):

判决准则:

在AWGN信道的计算如下

例子:

BPSK,码字,接受矢量s代表系统位,p代表校验位, 对应的输出值

是和最大后验中的无关项(计算L值的时候会被消掉)。

L值的计算

系统位直接对应输入码字,校验位要根据具体卷积译码器

相关推荐
小O的算法实验室7 小时前
2026年ASOC,基于深度强化学习的无人机三维复杂环境分层自适应导航规划方法,深度解析+性能实测
算法·无人机·论文复现·智能算法·智能算法改进
郭涤生8 小时前
STL vector 扩容机制与自定义内存分配器设计分析
c++·算法
༾冬瓜大侠༿8 小时前
vector
c语言·开发语言·数据结构·c++·算法
Ricky111zzz8 小时前
leetcode学python记录1
python·算法·leetcode·职场和发展
汀、人工智能8 小时前
[特殊字符] 第58课:两个正序数组的中位数
数据结构·算法·数据库架构··数据流·两个正序数组的中位数
liu****8 小时前
第16届省赛蓝桥杯大赛C/C++大学B组(京津冀)
开发语言·数据结构·c++·算法·蓝桥杯
汀、人工智能9 小时前
[特殊字符] 第79课:分割等和子集
数据结构·算法·数据库架构·位运算·哈希表·分割等和子集
汀、人工智能9 小时前
[特殊字符] 第74课:完全平方数
数据结构·算法·数据库架构·图论·bfs·完全平方数
CoderCodingNo9 小时前
【GESP】C++四、五级练习题 luogu-P1177 【模板】排序
数据结构·c++·算法
Proxy_ZZ09 小时前
从零实现LDPC比特翻转译码器:C语言实战与底层逻辑解析
c语言·算法