?? cnv_encd.m
字號:
% 卷積碼編碼函數
function output=cnv_encd(G,k0,input)
%G 生成矩陣
%k0 輸入碼長
%input 輸入信源序列
%output 輸出卷積編碼序列
%看填充的0是否必須
if rem(length(input),k0)>0
input=[input,zeros(size(1:k0-rem(length(input),k0)))];
end
n=length(input)/k0;% 把輸入比特按k0分組,n為所得的組數。
%G 大小
if rem(size(G,2),k0)>0
error('Error,g is not of the right size.')
end
%li,n0大小
li=size(G,2)/k0;
n0=size(G,1);
%以保證編碼器是從全0開始,并回到全0狀態。
u=[zeros(size(1:(li-1)*k0)),input,zeros(size(1:(li-1)*k0))];
%uu lie i*T,i=1,2...
u1=u(li*k0:-1:1);
for i=1:n+li-2
u1=[u1,u((i+li)*k0:-1:i*k0+1)];
end
uu=reshape(u1,li*k0,n+li-1);
%output reshape
output=reshape(rem(G*uu,2),1,n0*(n+li-1));
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -