Sunteți pe pagina 1din 6

Fernando Alberto Rodríguez Duc

INTRODUCCIÓN A LA CODIFICACIÓN DE LA FUENTE

Una señal digital esta definida como aquella que ha perdido su analogía con la fuente que la produce, y esta representada por un código. El proceso de digitalización básico cuenta con las operaciones de muestreo, cuantificación y codificación. En este documento nos referiremos a la última de ellas, se supone que las anteriores ya han sido vistas. Existen varios tipos de codificación: de fuente, de canal y de línea. La codificación de fuente trata de adaptar la fuente al medio de comunicación eliminándole la redundancia, la codificación de canal intenta proteger el mensaje del ruido en la transmisión insertando redundancia, y finalmente la de línea, la cual es una codificación eléctrica de capa uno creada a los efectos de mantener el sincronismo (clock) y bajo nivel de corriente continua. Existen códigos que juntan las dos primeras funciones quitando redundancia y al mismo tiempo protegiendo el mensaje del ruido térmico blanco y gaussiano (AWGN). A continuación veremos la codificación de fuente.

Para realizar esta codificación primero debemos analizar el generador de sucesos en la fuente, y uno de los parámetros básicos para esta tarea es evaluar la cantidad de información que transmite cada suceso, cuanto, pulso o símbolo, que puede generar esta fuente. Una fuente de información, luego de la cuantificación, emite M pulsos distintos (pulsos cuantificados) a una razón de fs pulsos por segundo [pulsos/s]. Cada pulso transporta una cantidad de información que es inversamente proporcional a su probabilidad de ocurrencia y que se mide en bits de información:

I bits =

[

]

log

1 (
1
(

)

Ps es la probabilidad de ocurrencia del suceso s.

Ps Esta expresión se deriva de la teoría de la información y se basa en la necesidad de encontrar un modelo matemático que mida esta propiedad, teniendo en cuenta que los sucesos que más información transmiten son aquellos menos probables:

2

Ps

→ ⇒ →∞

0

I

Ps

→ ⇒ →

1

I

0

Además se adopta el logaritmo en base dos por ser la decisión básica entre dos sucesos, verdadero / falso, y el sistema numérico con base más pequeña. Por otro lado una fuente suele tener varios sucesos distintos, en el caso de un sistema cuantificado tengo M cuantos posibles, cada uno se producirá con una probabilidad específica Ps, de allí puedo calcular la I que transmite cada cuanto. Para calificar una fuente que emite M cuantos, puedo sacar un promedio de la cantidad de información que transmite cada cuanto o símbolo, así definimos la entropía de una fuente como:

H bits símbolo

[

/

]

=

M

k = 1

P I =

k

k

M

K

1

=

P

k

log

2

1 ( P
1
(
P

k

)

Por ejemplo si queremos medir la entropía de un sistema que maneja símbolos digitales binarios, supongamos que los llamamos 1 y 0, nuestra fuente enviaría 1’s con una probabilidad P 1 y 0’s con P 0 , el promedio de información que envía la fuente o entropía

Página 1 de 6

Fernando Alberto Rodríguez Duc

1 1 sería: H = P log + P log podemos definir P 1 =
1
1
sería:
H = P
log
+
P
log
podemos definir
P 1
=
1
– P 0 , reemplazando en la
1
2
0
2
P
P
1
0
1
1
expresión anterior:
H
=
(1
P
) log
+ P
log
quedando todo en función de P 0 .
0
2
0
2
(1
− P
)
P 0
0
Graficando H en función de P 0 :
Entropia en función de P0
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
P0
H

Se observa que la máxima entropía sucede cuando P 1 = P 0 , P 1 = P 0 = 0,5 o 1/n donde n es la cantidad de símbolos distintos de la fuente.

Por lo tanto la máxima transferencia de información por símbolo se produce cuando los mismos son equiprobables, pues se produce el caso de máxima incertesa o duda en la ocurrencia de los mismos.

Finalmente dijimos que la fuente emite fs pulsos cuantificados por segundo, podríamos calcular una tasa de información utilizando este promedio (entropía):

R[bits / s] = Hf , se destaca que se está midiendo bits de información por segundo, no confundir con los bits de señalización que se verán próximamente.

s

Para codificar esta señal debo utilizar una fuente de símbolos. Estos pueden ser: binarios

(0, 1), ternarios (A, B, C), cuaternarios (W, X, Y, Z), n-arios (a, b, c,

Si la cantidad de niveles distintos de la fuente básica (n) es igual o mayor a la cantidad de

cuantos distintos (M), asigno un nivel o símbolo a cada cuanto y cada vez que debo enviar un pulso cuantificado, dependiendo del valor de cuantificación, envío un símbolo, con esto creamos el código. Por supuesto debe existir una coordinación con el receptor. Si n es menor que M debo adoptar un código conformado por una combinación de estos n símbolos básicos para representar cada uno de los cuantos que debo transmitir, a esta cadena de símbolos básicos se la denomina palabras o string. Esta operación normalmente se la conoce como extensión de la fuente básica de símbolos n-arios.

, n).

n

≥ M

codifico simple

n

≤ M

Debo codificar conformando palabras, extensión de la fuente.

Página 2 de 6

Fernando Alberto Rodríguez Duc

Veamos

un

ejemplo

con

símbolos

binarios,

ternarios

y

cuaternarios

especificados

anteriormente:

 
 

Cuanto Q

Ps

S. Binario

S. Ternario

 

S. Cuaternario

 
 

1,5v

0,5

00

 

AB

X

3,0v

0,25

01

 

AC

Y

-1,5v

0,125

10

 

AA

W

-3,0v

0,125

11

 

BA

Z

En la tercera columna tenemos la fuente básica binarias con símbolos 1 y 0, en la cuarta columna tenemos una fuente ternaria con símbolos A, B y C; finalmente la fuente cuaternaria esta representada por X, Y, W y Z. Estos cuatro valores pueden representar las cuatro tensiones distintas, pero nada tienen que ver con los valores de cuantificación, solamente existe una asociación convencional entre el cuanto Q y el valor a asignar a cada uno de ellos para codificar. Cada palabra código va a estar conformada por estos n símbolos básicos y su longitud será

s, por lo tanto la cantidad de palabras distintas para codificar nuestros pulsos cuantificados

dependerán de la naturaleza de los símbolos básicos y de la longitud de la palabra; pero para asignarle una a cada cuanto distinto que puede emitir la fuente, esta cantidad debe ser mayor o igual a la cantidad de estos valores diferentes:

n de forma tal que pueda asociar una palabra código a cada pulsos cuantificado distinto que produce mi fuente. Esto es el CÓDIGO DE FUENTE del sistema.

s M

Si mis símbolos básicos son binarios (n = 2) con s = 2 puedo generar como máximo 4

combinaciones o palabras códigos, si s = 3 puedo crear hasta 8 palabras de tres símbolos

binarios cada una.

Si los símbolos son ternarios (a, b, c, n = 3), con palabras de longitud s igual a 2 puedo

generar hasta 9 combinaciones: aa, ab, ac, bb, ba, bc, cc, ca, cb. Ahora podemos definir la velocidad o tasa de señalización como:

R

=

s

simbolos   muestras

 

f

 

muestra

s

s

cuyo resultado nos dará en [símbolos/segundos].

En este caso R indica la cantidad de símbolos eléctricos que se emiten en la unidad de tiempo, obsérvese que cada símbolo va a emitir una cantidad de bits de información de acuerdo a su probabilidad de ocurrencia, por lo tanto las dos tasas pueden o no coincidir, lo ideal y el objetivo de la codificación de fuente es hacerlas iguales.

A veces en alguna bibliografía, se denomina a esta unidad [símbolos/seg] como Baudio,

que representa la cantidad de cambios o variaciones que puede sufrir una señal o portadora en la unidad de tiempo.

Aquí solamente lo referimos a la amplitud, pero como este concepto se extiende a la

portadora, el cambio podría producirse en la fase o en su frecuencia instantánea.

Si los símbolos son binarios la unidad es bit/seg.

Nuevamente debo destacar que no se debe confundir con la tasa de transmisión de información, que en este caso sería la velocidad a la que transmite información este sistema

de

comunicaciones.

El

ancho de banda de la señal transmitida esta relacionado a través de la desigualdad:

Página 3 de 6

Fernando Alberto Rodríguez Duc

BW ≥ R/2,

R de señalización (eléctrica).

A partir de esta desigualdad podemos observar que en la medida que se pueda disminuir R

se achica el ancho de banda de la señal a transmitir, con los consiguientes beneficios derivados de esta disminución. Cabría preguntarnos: ¿Cómo podemos minimizar la tasa de señalización? Observamos que esta velocidad de transmisión de símbolos esta directamente relacionada con fs y s.

La frecuencia de muestreo esta fijada por la desigualdad de Nyquist y ya se han analizado sus limitaciones. Pero disminuyendo la longitud de la palabra también podríamos ahorrarnos ancho de banda de transmisión. Analicemos este tema:

El código podría tener longitud de palabra constante, como en nuestro ejemplo, o variable.

Sería bastante lógico hacer un código con palabras de longitud variables relacionado con la

probabilidad del cuanto a codificar. De forma tal que los cuantos más probables de ser emitidos, los más numerosos en el tráfico, los hacemos lo más corto posible, y reservamos las palabras más largas, mayor s para los sucesos menos probables, más raros. Como todas las palabras no tienen la misma longitud s, se define la longitud media del código de fuente como:

donde P k es la probabilidad de ocurrencia del símbolo k y s k es la

s

=

M

k = 1

simbolos

muestra

Ps

k k

longitud del mismo. Se puede demostrar que la longitud mínima de un código esta definido por la entropía de su fuente y el tipo de símbolos básicos:

s

min

=

M

H

=

k = 1

PI

k k

log

2

n log

2 n

=

M

P

k = 1

k

1 log 2 P k log 2 n
1
log
2
P
k
log
2 n

Observar que en el último término existe una transformación de logaritmo en base dos a base n.

El rendimiento de un código se define como:

Veamos tres códigos conformados con símbolos básicos binarios:

η

%

=

s min

s

100

SIMBOLO

PRO.

COD I

COD II

COD III

S0

0,5

00

0

0

S1

0,25

01

10

01

S2

0,125

10

110

011

S3

0,125

11

111

0111

S media

 

2

1,75

1,875

Página 4 de 6

Fernando Alberto Rodríguez Duc

Podemos ver que el COD I, tiene longitud media 2 bits de señalización / símbolo, el COD II 1,75 y COD III 1,875. Calculando la longitud mínima nos da 1,75 bits de señalización por símbolo, por lo tanto los rendimientos son:

87,50%, 100% y 93,33% respectivamente. Se concluye que el COD II es el de mayor rendimiento. Que significa esto? Si se envían f s muestras por segundo se podría determinar una velocidad media de

transmisión como

COD II 1,75f S bit/seg y el COD III producirá 1,875f S bit/seg. Como BW ≥ R/2, la transmisión con el COD II requerirá el menor ancho de banda. Por eso se prefiere el código de menor longitud media pues producirá menor R de señalización eléctrica y por lo tanto ocupará menor ancho de banda para transmitir la misma cantidad de información. Con respecto a esto último, ¿cuánta información transmite esta fuente en la unidad de tiempo?

R[bits / s] = Hf , calculamos H y la tasa de transmisión de

De acuerdo a la expresión vista

información será: R = 1,75 f S [bits/seg] de información. Vemos que el código de mayor rendimiento hace coincidir ambas velocidades. Con este tipo de codificación, denominada de fuente, se trata de sacar redundancia al mensaje para producir una transmisión más compacta. Para finalizar podemos decir que además de las características descritas anteriormente, los códigos deben ser UNÍVOCAMENTE DECODIFICABLES (UD), cada símbolo debe representar a un suceso de la fuente, el receptor cuando recibe una sucesión de símbolos n- arios no debe confundirse en la decodificación. Una de las propiedades que se buscan, para cumplir la característica UD, es que sean prefijos, lo cual significa que ningún símbolo comience con otro, observemos que el CODI y COD II, son prefijos, COD III no, el primer símbolo es prefijo de los otros tres, el segundo es de los otros dos. Sin embargo este último es UD, como se puede observar en la tabla, el 0 se usa para indicar el inicio de un símbolo, y estos se diferencia por la cantidad de 1’s. Se dejan estos temas para un estudio posterior, más detallado.

R = L f [bits de señalización / seg], el COD I producirá 2f S bit/seg, el

s

s

s

Página 5 de 6

Fernando Alberto Rodríguez Duc CODOFICACIÓN ADAPTA FUENTE MEDIO A TRAVÉS A TRAVÉS TEORÍA DE LA
Fernando Alberto Rodríguez Duc
CODOFICACIÓN
ADAPTA
FUENTE
MEDIO
A TRAVÉS
A TRAVÉS
TEORÍA DE LA
INFORMACIÓN
MEDICIONES
ELÉCTRCAS
DETERMINO
DETERMINO
I
H
R
BW
S/N
OBTENGO
OBTENGO
CODIGO de
CAPACIDAD DE
CANAL (SHANNON)
FUENTE
TAL QUE SE
CUMPLA
C = B Log (1 + S/N)
R < = C

Mapa conceptual sobre la CODIFICACIÓN de fuente

Página 6 de 6