Red de conocimientos sobre prescripción popular - Remedios caseros - El programa en lenguaje MATLAB de código de bucle (13, 9), le ruego a Dios que lo ejecute.

El programa en lenguaje MATLAB de código de bucle (13, 9), le ruego a Dios que lo ejecute.

1. Codificación y decodificación de código cíclico del programa fuente Matlab ((7, 4) análisis de código cíclico para experimentos) m = 3

n = 2^m-1; %definir longitud del código k = n-m; información Longitud de bits

msg = randint(k*4, 1, 2 % % extrae aleatoriamente la señal y genera una matriz entera arbitraria uniformemente distribuida (2, 2, 1) madre (MSG).

Título ("Señal de entrada del codificador")

P = polinomio cíclico (n, k)% código cíclico que genera polinomio, n = 7, k = 4 código = codificar (msg, n, k, 'cíclico', p); % función de codificación, codificación de error de la señal. Subtrama (2, 2, 2) raíz (código).

Título("Señal de salida del codificador")

Decodificar = decodificar (código, n, k, 'cíclico', p)% decodificar la señal, decodificar la palabra clave recibida y restaurarla .

Para producir la información original, los parámetros y métodos de decodificación deben ser exactamente los mismos que los utilizados en la codificación.

Subtrama (2, 2, 3) raíz (recodificación)

Título('Señal de salida del decodificador')t =-1:0.01:1;

x = recodificar; % asignar recodificar a x, establecer la longitud y fft en N = longitud(x = FFT(x = 100/N); df

Gráfico de rama (2, 2, 4);

plot(f, ABS(FX(N+1))* 2/N; Título ("Sonido); espectrograma")

2. Esquema de la relación entre la tasa de error de bits y la relación señal-ruido (probado con código cíclico (3, 2)) m = 2;

n = 2^m-1; % de longitud del código de definición k = n-m; % de longitud de bits de información Fs = 40% de frecuencia de muestreo del sistema Fd = 1 % de tasa de código N = Fs/Fd; % número decimal

Para SNRpBit = 1:100; % SNR SNR = SNRpBit/log2(M);

% Crea 100 grupos de mensajes, cada grupo tiene k bits MSG = Randint ( 100, k, [0, 1]);

code = encode(msg, n, k, 'cyclo/binary'); %Agregar ruido

%A la modulación Agregar gaussiano. ruido blanco a la señal

noisycode=awgn(código, SNR-10 * log 10(0.5)-10 * log 10(N), 'medido', [], 'dB%'); El número de coma flotante se convierte a binario y el proceso de configuración de la forma de onda es I = 1: 100 es a = 1: k+1.

si código ruidoso(i, a)< 0.5 código ruidoso(i, a)= 0

código ruidoso(i, a)= 1

< p; >Fin final% decodificación

newmsg = decode(noisycode, n, k, ' cyclo '); % de tasa de error de bits calculada

[Número, relación] = biterr(newmsg, msg ); resultado (SNRpBit) = ratio;

disp(['tasa de error de bits', num 2 str(ratio)]); rendimiento de la tasa de error del canal de ruido blanco gaussiano aditivo bajo la relación señal-ruido (1);

Título ('Tasa de error de bits de códigos cíclicos bajo diferentes relaciones señal-ruido') Leyenda ('Bit tasa de error' ,' *') xlabel('relación señal-ruido');

Ylabel("tasa de error de bits bajo ruido blanco gaussiano aditivo");