Está en la página 1de 3

Sistemas de Comunicación Digital I

Práctica 2. Probabilidad de error


En esta práctica simularemos un sistema de comunicación digital en presencia de
ruido gausiano en el canal de transmisión. Utilizaremos un modelo como el de la figura.

Figura 4.1 : Modelo de sistema de de transmisión con ruido gausiano aditivo en el canal

4.1 Bloques de diseño

Los bloques de diseño son los siguientes:

Bitgen

Este bloque genera una cadena pseudo–aletoria de bits al bit-rate especificado.


Bit-rate = 64
Semilla = 1234

Polar/on-off

Es un codificador de línea como el usado en los bloques BCOD de la sección


anterior.
Bit-rate = 64
Ancho = 1
Codificación = [-1,1]

Ruido

Este bloque Gauss implementa un canal con ruido gausiano aditivo.

Densidad espectral del ruido = 1e-3


Ancho de banda del ruido = 8*64
Semilla = 1234

LPF

Este bloque Chebyshev Type I LP Filter implementa el filtro paso-baja del


receptor, se utiliza para limitar la potencia del ruido introducido en el receptor.
Cutoff frequency = 2*pi*4*64
Order = 6
Db ripple in passband = 1

Muestreo

Este bloque Zero-Order hold implementa el muestreo en el receptor, realizado a


la frecuencia del bit-rate.
Sample time = 1/64

Decisión
Este bloque Relay decide el bit recibido en función de la amplitud del pulso
muestreado. Actúa como un comparador de nivel.
Input for on = 0 (para polar, 0.5 para on-off)
Input for off = 0 (para polar, 0.5 para on-off)
Output when on = 1
Output when off = 0

Relational operator

Este bloque se utiliza para comparar los bits recibidos con los emitidos. Sus
parámetros se ajustan para que se genere un 1 cuando se produce un error.
Operator = ˜=

Retardo

El detector, debido al filtro paso-baja, introduce un retardo de un bit. Este bloque


se usa para retardar los bits emitidos esta cantidad de tiempo de forma que sean
comparables con los recibidos.
Frecuencia de muestreo = 64
Número de muestras = 1

Error

Este bloque To Workspace muestrea la señal error al bit-rate. La variable


contiene un 1 en la posición de cada bit erróneo y 0’s en las demás posiciones.
Variable name = err
Maximum number of rows = [1000,1,1/64]

4.2 Simulación

Con los parámetros antes fijados, simule el modelo durante 8 segundos.


Runge-Kutta 5
Start time = 0
Stop time = 8
Min step size = 0.0001
Max step size = 10
Tolerance = 1e-3
Return variables = (vacío)

Al finalizar la simulación quedará accesible una variable denominada err que


contiene un 1 en las posiciones de los bits erróneos. El número de bits se puede obtener
con length(err) y el número de errores con sum(err). De esta forma, una estimación de la
probabilidad de error es sum(err)/length(err). Si los parámetros se ajustaron
adecuadamente, deberá obtener un número de errores 45 sobre un total de 513 bits con
una probabilidad de 0.0877. La probabilidad teórica se puede obtener suponiendo que el
filtro paso-baja es ideal y que el ruido tiene una PSD uniforme. Utilice la función q para
calcular el error, q(1/0.7155). En este caso, la probabilidad de error es:

Pn  2BSn  2  (4  64) 103  n  Pn P( )  Q(1/ 0.7155)  0.0811

Note que la estimación que la estimación es aceptable. La estimación debe mejorar al


aumentar el número de errores (por ejemplo para el caso de codificación on-off). Repita
la simulación para codificación on-off. Modifique el codificador para adecuarlo a este
código. Modifique también el detector (bloque Decisión) para que ahora el nivel de
detección sea 0.5 en lugar de 0 como en el caso anterior. Compruebe que ahora el error
aumenta y la estimación de la probabilidad de error es mejor que en el caso anterior.

Cuestiones

Repita las dos simulaciones anteriores pero ahora reduzca el ancho de banda del
filtro del receptor a la mitad (es decir a 2*pi*2*64: dos veces el bit-rate). ¿Qué ocurre
con la probabilidad de error?. ¿Cuál es el motivo de esta diferencia? Modifique el
modelo para estimar la probabilidad de error de codificaciones pseudos-ternarias. ¿Qué
cambios son necesarios en el receptor? Estime las probabilidades de error para los dos
anchos de banda anteriores y para codificaciones bipolar y pseudos-ternaria. Los
bloques de los codificadores necesarios se encuentran en la misma librería que el bloque
para codificación polar Polar/On-Off.

También podría gustarte