卷积码viterbi软译码的MATLAB函数调用

本文假设读者对卷积码原理及viterbi解码原理有基本的认识。
关于硬译码的函数参考传送门

软信息的概念

在数模转换、模数转换过程中,常有对信息的判决过程。根据信息量的丰富程度可分为硬判决和软判决。一般来说,硬判决系统实现简单,但性能会因为信息损失而下降;软判决保留更多的原始信息,性能提高的同时系统开销增大。

在卷积码的译码中,软译码和硬译码的不同主要在于最短路径的距离计算上。

软译码采用欧氏距离,硬译码采用汉明距离

根据MATLAB官网对vitdec的说明
卷积码的译码函数为vitdec()软译码调用格式为

decodedout = vitdec(codedin,trellis,tbdepth,opmode,'soft',nsdec)

其中需要注意的是

变量名 软译码模式下含义
codedin 输入数据。[0, 2^nsdec-1]整数,即有限位宽整数:00…0代表十分确定是0,11…1代表十分确定是1
nsdec 输入数据位宽

相比较硬译码的程序, 软译码需对输入数据进行量化,使其符合函数调用规范。

量化过程也有多种形式,如直接量化和似然比量化。前者对采样值/模拟值/真实值进行幅值放缩可完成;后者则需在已知随机事件分布的前提下,将变量转化为累积分布函数CDF(似然函数)上的概率,再进一步对概率进行量化。

例程如下

clear;clc
input = randi([0,1],
  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值