?? interleaving.m
字號:
function [datos_interleaving] = interleaving(datos_convolucional,Ncpc,Tx);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %
%% Archivo: interleaving.m %
%% %
%% Descripci髇: Este proceso es para "barajar" los bits a %
%% transmitir y que dos bits consecutivos no se modulen a la %
%% misma frecuencia. Es otra forma de luchar contra el %
%% desvanecimiento selectivo en frecuencia y contra los errores a %
%% r醘agas %
%% %
%% Par醡etros: %
%% entrada-->Secuencia de bits a "barajar" %
%% %
%% Resultado: Devuelve la cadena de bits convenientemente mezclados %
%% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Necesito el tama駉 del bloque a usar para "barajar" la secuencia. Dicho valor
% se coge de la tabla 223 de la Norma.
% Como vemos, el valor del bloque usado depende del mapeo que queramos
% llevar a cabo
switch Ncpc
case 1 % Para BPSK
Ncbps=192;
case 2 % Para QPSK
Ncbps=384;
case 4 % Para 16-QAM
Ncbps=768;
case 6 % Para 64-QAM
Ncbps=1152;
end
s=ceil(Ncpc/2);
if Tx==1
% En las siguientes operaciones, hay que tener muy en cuentas los sub韓dices:
% k-->韓dice del bit codificado ANTES de la primera permutaci髇
% mk-->韓dice de ese bit ANTES de la segunda permutaci髇 y DESPU蒘 de la primera
% jk-->韓dice despu閟 de la SEGUNDA permutaci髇, justo antes del mapeo de la se馻l.
k = 0:Ncbps-1;
mk = ((Ncbps/12)*mod(k,12))+floor(k/12); % Primera Permutaci髇
jk = s*floor(mk/s)+mod(mk+Ncbps-floor(12*mk/Ncbps),s); % Segunda permutaci髇
% Ahora debo de ordenar los 韓dices para saber en qu
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -