資源簡介
一個完整的卷積碼編碼和譯碼程序,希望對大家有所幫助

代碼片段和文件信息
function?output?=?cnv_encd(input)
g=[1?1?1;?0?1?1];%編碼矩陣,幾行就代表有幾個輸出端口,列的最右邊是最右邊寄存器的連接狀態
k0=1;????????????%k0是輸入的端口數,為1
if?rem(length(input)k0)>0
????input=[inputzeros(size(1:k0-rem(length(input)k0)))];
end
n=length(input)/k0;???
if?rem(size(g2)k0)>0
????error(‘Error?g?is?not?of?the?right?size.‘)
end
l=size(g2)/k0;???????????%l是寄存器數+1,也就是通常所說的約束長度????
n0=size(g1);?????????????%編碼后的并行輸出端口數
u=[zeros(size(1:(l-1)*k0))inputzeros(size(1:(l-1)*k0?))];???
ul=u(l*k0:-1:1);
for?i=1:n+l-2
????ul=[ulu((i+l)*k0:-1:(i*k0+1)?)];
end
uu=reshape(ull*k0n+l-1);
output=reshape(rem(g*uu2)1n0*(l+n-1));
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????718??2008-11-19?15:30??卷積碼編碼譯碼\viterbi_coder\cnv_encd.m
?????文件??????17954??2008-11-19?14:56??卷積碼編碼譯碼\viterbi_coder\unti
?????文件?????????69??2008-11-19?16:23??卷積碼編碼譯碼\viterbi_decoder\bin2deci.m
?????文件????????134??2008-11-19?16:35??卷積碼編碼譯碼\viterbi_decoder\deci2bin.m
?????文件?????????85??2008-11-19?16:18??卷積碼編碼譯碼\viterbi_decoder\metric.m
?????文件????????297??2008-11-19?16:22??卷積碼編碼譯碼\viterbi_decoder\nxt_stat.m
?????文件???????3214??2009-10-20?18:08??卷積碼編碼譯碼\viterbi_decoder\viterbi.m
?????目錄??????????0??2009-10-20?19:01??卷積碼編碼譯碼\viterbi_coder
?????目錄??????????0??2009-10-20?19:01??卷積碼編碼譯碼\viterbi_decoder
?????目錄??????????0??2009-10-20?19:01??卷積碼編碼譯碼
-----------?---------??----------?-----??----
????????????????22471????????????????????10
- 上一篇:cao法確定相空間的維數
- 下一篇:指派問題matlab匈牙利算法
評論
共有 條評論