encoder.m
来自「卷积码的Viterbi译码算法仿真程序 要求:递归卷积码」· M 代码 · 共 28 行
M
28 行
function [ tx_bits ] = Encoder( inbits )%ENCODER Summary of this function goes here% Detailed explanation goes hereglobal state_num;global memory_len;G=[0 1 1 1 1;1 0 0 0 1];%生成矩阵(RSC)L=length(inbits);tx_bits=zeros(L+memory_len,2);mem=zeros(1,memory_len);for n=1:L+memory_len fb=xor(xor(xor(mem(1),mem(2)),mem(3)),mem(4));%计算移位寄存器反馈值 if n>L in=fb;%状态收尾:归零处理 else in=inbits(n); end net_in=xor(fb,in);%计算移位寄存器净输入 tx_bits(n,1)=in; %系统编码输出 tx_bits(n,2)=xor(net_in,mem(1)); %校验位编码输出 mem=[mem(2) mem(3) mem(4) net_in];%更新移位寄存器endtx_bits=2*tx_bits-1;%编码输出:双极性信号
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?