Skip to content Skip to navigation Skip to collection information

OpenStax_CNX

You are here: Home » Content » Laboratorio Digital Interactivo » 4. Códigos de Línea

Navigation

Recently Viewed

This feature requires Javascript to be enabled.
 

4. Códigos de Línea

Module by: Mariangela Mezoa. E-mail the authorEdited By: Mariangela MezoaTranslated By: Mariangela Mezoa

Summary: En este módulo se desarrollarán teóricamente los códigos de línea usados comúnmente en un sistema de Comunicaciones Digitales: NRZ, RZ y Manchester. Se explicarán sus parámetros más importantes como lo son la señal en frecuencia y en tiempo, el ancho de banda, la potencia de la señal y las constelaciones correspondientes a cada código. Finalmente, se hará una demostración en LabVIEW que permita reforzar la información teórica del tema.

CÓDIGOS DE LÍNEA

González C. Y. Venuska

Mezoa R. Mariangela

Resumen

En este módulo se desarrollarán teóricamente los códigos de línea usados comúnmente en un sistema de Comunicaciones Digitales: NRZ, RZ y Manchester. Se explicarán sus parámetros más importantes como lo son la señal en frecuencia y en tiempo, el ancho de banda, la potencia de la señal y las constelaciones correspondientes a cada código. Finalmente, se hará una demostración en LabVIEW que permita reforzar la información teórica del tema.

De acuerdo a la estructura de un sistema de Comunicaciones Digitales, al tener una señal discretizada en el tiempo y en la amplitud, estaría representada por símbolos cuya tasa de transmisión es medida en baudios. Ahora bien, cuando se quiere transmitir la señal en bandabase binario o m-ario a través del canal debe asignarse una forma de onda a cada uno de los símbolos. Esto se hace gracias al método conocido como codificación de línea.

¿Qué es la codificación de Línea?

Esta surge de la necesidad de representar una señal en formato digital a través de diversos medios de transmisión. Para esto se le asignan formas de onda arbitrarias a cada bit o símbolo que representa la señal, generando cambios inmediatos en los parámetros más importantes de la señal como lo son la Potencia de Transmisión, el Ancho de Banda requerido por el canal, nivel DC, entre otros.

Antes de definir los códigos de línea más usados en los sistemas de Comunicaciones, repasaremos algunos conceptos fundamentales que facilitarán el entendimiento del tema:

Definition 1: Ancho de Banda (BW):
En el ámbito de las comunicaciones, el ancho de banda representa el rango (en Hertz, Hz) de frecuencias en donde se concentra la mayor parte de la potencia de la señal que se está usando. A partir de este punto se podrá calcular el ancho de banda en las simulaciones usando la transformada de Fourier, cuando se expresa la señal original en el dominio de la frecuencia. Matemáticamente se pudiera definir así:

BW = Δf = f cs f ci BW = Δf = f cs f ci size 12{ ital "BW"=Δf=f rSub { size 8{ ital "cs"} } - f rSub { size 8{ ital "ci"} } } {}
(1)

Siendo fcs y fci las frecuencias de corte Superior e Inferior, respectivamente.

Definition 2: Tiempo de bit (Tb):
Está definido como el tiempo empleado para la representación y transmisión de un bit en el sistema.
Definition 3: Intervalo de impulso (τ):
Es la duración mínima del impulso usado para representar la información.
Definition 4: Velocidad de Transmisión (Vt):
Se define como el número máximo de cambios por segundo que experimenta la señal o el número de impulsos que pueden transmitirse en un segundo. Matemáticamente viene expresado como
Vt = 1 τ baudios Vt = 1 τ baudios size 12{ ital "Vt"= { {1} over {τ} } ital "baudios"} {}
(2)
Definition 5: Tasa de Bits (R):
Número de bits transmitidos por segundo. Su unidad son los bps (bits per second) y se representa matemáticamente como:
R = 1 Tb bps R = 1 Tb bps size 12{R= { {1} over { ital "Tb"} } ital "bps"} {}
(3)

A continuación se definen diversos códigos de línea binarios y se deduce su Densidad Espectral de Potencia asumiendo equiprobabilidad.

1. NRZ (Non Return to Zero)

Están caracterizados por mantener constante el valor de la señal de línea durante todo el intervalo Tb. Para efectos de asimilar la información proporcionada por la simulación al final del módulo, se considerarán dos tipos de codificación de este tipo:

1.a. NRZp (No Retorno a Cero-Polar)

Al símbolo “1” se le asigna un valor alto de señal (V) y al símbolo “0” se le asigna el valor opuesto, es decir, -V.

Figure 1: Representación de bits usando el código NRZp
Figure 1 (graphics1.png)

Para hallar su DEP, se debe representar la señal como el resultado de la convolución de un tren de impulsos aleatorio y un pulso de duración Tb y Amplitud +V.

Figure 2
Figure 2 (graphics2.png)

Por lo que:

Y ( t ) = x ( t ) p ( t ) Gy = Gx ( f ) P ( f ) 2 Y ( t ) = x ( t ) p ( t ) Gy = Gx ( f ) P ( f ) 2 alignl { stack { size 12{Y \( t \) =x \( t \) * p \( t \) } {} # size 12{ ital "Gy"= ital "Gx" \( f \) lline P \( f \) rline rSup { size 8{2} } } {} } } {}
(4)

Dado que p(t) es una función determinística, el reto estará en calcular Gx(f). Para esto se calculará primero la autocorrelación Rx(τ):

Gx ( f ) = F Rx ( τ ) Rx ( τ ) = Rn . Tb δ ( τ + nTb ) Rn = lim T tb T k A k . A ( n + k ) Gx ( f ) = F Rx ( τ ) Rx ( τ ) = Rn . Tb δ ( τ + nTb ) Rn = lim T tb T k A k . A ( n + k ) alignl { stack { size 12{ ital "Gx" \( f \) =F left lbrace ital "Rx" \( τ \) right rbrace } {} # size 12{ ital "Rx" \( τ \) = Sum { { { ital "Rn" "." } over { ital "Tb"} } δ \( τ+ ital "nTb" \) } } {} # size 12{ ital "Rn"="lim" rSub { size 8{T rightarrow infinity } } { { ital "tb"} over {T} } Sum cSub { size 8{k} } {A rSub { size 8{k} } "." A rSub { size 8{ \( n+k \) } } } } {} } } {}
(5)

Note:

Estas fórmulas aplicarán para todos los códigos de línea, siendo el factor variante los valores de Ak, A(n+k) y Tb

Los posibles valores de Ak y A(n+k) son +1 y -1, por lo que:

Rx ( τ ) = 1 Tb δ ( τ ) Rx ( τ ) = 1 Tb δ ( τ ) size 12{ ital "Rx" \( τ \) = { {1} over { ital "Tb"} } δ \( τ \) } {}
(6)

Y al sacar la transformada de Fourier correspondiente, nos queda que:

Gx ( f ) = 1 Tb P ( f ) 2 = V 2 . Tb 2 . Sinc 2 ( ftb ) Gy ( f ) = V 2 . Tb . Sinc 2 ( ftb ) Gx ( f ) = 1 Tb P ( f ) 2 = V 2 . Tb 2 . Sinc 2 ( ftb ) Gy ( f ) = V 2 . Tb . Sinc 2 ( ftb ) alignl { stack { size 12{ ital "Gx" \( f \) = { {1} over { ital "Tb"} } } {} # size 12{ lline P \( f \) rline rSup { size 8{2} } =V rSup { size 8{2} } "." ital "Tb" rSup { size 8{2} } "." ital "Sinc" rSup { size 8{2} } \( ital "ftb" \) } {} # {} # ital "Gy" \( f \) =V rSup { size 8{2} } "." ital "Tb" "." ital "Sinc" rSup { size 8{2} } \( ital "ftb" \) {} } } {}
(7)

Su DEP será entonces:

Figure 3: El BW correspondiente es fb.
Figure 3 (graphics3.png)

Finalmente, se tiene que se necesita una sola base U1(t) que es un pulso de duración Tb y altura raíz de 1/Tb

S 1 ( t ) = V Tb . U 1 ( t ) S 2 ( t ) = V Tb . U 1 ( t ) S 1 ( t ) = V Tb . U 1 ( t ) S 2 ( t ) = V Tb . U 1 ( t ) alignl { stack { size 12{S rSub { size 8{1} } \( t \) =V sqrt { ital "Tb"} "." U rSub { size 8{1} } \( t \) } {} # S rSub { size 8{2} } \( t \) = - V sqrt { ital "Tb"} "." U rSub { size 8{1} } \( t \) {} } } {}
(8)

Figure 4: Constelación para NRZp
Figure 4 (graphics4.png)

1.b. NRZu (No Retorno a Cero-Unipolar)

Al símbolo “1” se le asigna un valor alto de señal (V) y al símbolo “0” se le asigna el valor cero, es decir, 0V.

Figure 5: Representación de bits usando el código NRZu
Figure 5 (graphics5.png)

Para obtener la DEP se descompone la señal:

Figure 6
Figure 6 (graphics6.png)

Ahora bien, siguiendo el mismo proceso que para el punto 1.a, los posibles valores de Ak y A(n+k) son +1 y 0, por lo que:

Rx ( τ ) = 1 4 Tb δ ( τ ) + 1 4 Tb δ ( τ + nTb ) Rx ( τ ) = 1 4 Tb δ ( τ ) + 1 4 Tb δ ( τ + nTb ) size 12{ ital "Rx" \( τ \) = { {1} over {4 ital "Tb"} } δ \( τ \) + Sum { { {1} over {4 ital "Tb"} } δ \( τ+ ital "nTb" \) } } {}
(9)

Y al sacar la transformada de Fourier correspondiente, nos queda que:

Gx ( f ) = 1 4 Tb + 1 4 Tb 2 δ ( f + nfb ) P ( f ) 2 = V 2 . Tb 2 . Sinc 2 ( ftb ) Gy ( f ) = V 4 2 . Tb . Sinc 2 ( ftb ) + V 4 2 δ ( f ) Gx ( f ) = 1 4 Tb + 1 4 Tb 2 δ ( f + nfb ) P ( f ) 2 = V 2 . Tb 2 . Sinc 2 ( ftb ) Gy ( f ) = V 4 2 . Tb . Sinc 2 ( ftb ) + V 4 2 δ ( f ) alignl { stack { size 12{ ital "Gx" \( f \) = { {1} over {4 ital "Tb"} } + Sum { { {1} over {4 ital "Tb" rSup { size 8{2} } } } δ \( f+ ital "nfb" \) } } {} # lline P \( f \) rline rSup { size 8{2} } =V rSup { size 8{2} } "." ital "Tb" rSup { size 8{2} } "." ital "Sinc" rSup { size 8{2} } \( ital "ftb" \) {} # {} # ital "Gy" \( f \) = { {V} over {4} } rSup { size 8{2} } "." ital "Tb" "." ital "Sinc" rSup { size 8{2} } \( ital "ftb" \) + { {V} over {4} } rSup { size 8{2} } δ \( f \) {} } } {}
(10)

Su DEP será:

Figure 7: El BW correspondiente también es fb.
Figure 7 (graphics7.png)

Y su base y constelación:

S 1 ( t ) = V tb . U 1 ( t ) S 1 ( t ) = V tb . U 1 ( t ) size 12{S rSub { size 8{1} } \( t \) =V sqrt { ital "tb"} "." U rSub { size 8{1} } \( t \) } {}
(11)

Figure 8: Constelación para NRZu
Figure 8 (graphics8.png)

2. RZ (Return to Zero)

Los códigos de Retorno a Cero se caracterizan por mantener el valor de la señal constante durante el primer semi-intervalo de Tb, para luego pasar a otro nivel en el segundo semi-intervalo. Dependiendo del tipo de código, esta segunda parte puede tener un nivel de –V o un nivel 0V. Los tipos de código RZ pueden ser:

2.a. RZp (Retorno a Cero-Polar)

Para el símbolo “1” tendrá dos valores: en el primer semi-intervalo [0, Tb/2] tendrá un nivel +V y para el segundo semi-intervalo [Tb/2, Tb] retornará a 0V. Ahora, para el símbolo “2” será: en el primer semi-intervalo tendrá un nivel opuesto (-V) y para el segundo semi-intervalo también retornará a 0V. Gráficamente:

Figure 9: Representación de bits usando el código RZp
Figure 9 (graphics9.png)

Si descomponemos la señal:

Figure 10
Figure 10 (graphics10.png)

Ahora bien, los posibles valores de Ak y A(n+k) son +1 y -1, por lo que:

Rx ( τ ) = 1 Tb δ ( τ ) Rx ( τ ) = 1 Tb δ ( τ ) size 12{ ital "Rx" \( τ \) = { {1} over { ital "Tb"} } δ \( τ \) } {}
(12)

Y al sacar la transformada de Fourier correspondiente, nos queda que:

Gx ( f ) = 1 Tb P ( f ) 2 = V 2 . Tb 2 4 . Sinc 2 ( f tb 2 ) Gy ( f ) = V 4 2 . Tb . Sinc 2 ( f tb 2 ) Gx ( f ) = 1 Tb P ( f ) 2 = V 2 . Tb 2 4 . Sinc 2 ( f tb 2 ) Gy ( f ) = V 4 2 . Tb . Sinc 2 ( f tb 2 ) alignl { stack { size 12{ ital "Gx" \( f \) = { {1} over { ital "Tb"} } } {} # size 12{ lline P \( f \) rline rSup { size 8{2} } = { {V rSup { size 8{2} } "." ital "Tb" rSup { size 8{2} } } over {4} } "." ital "Sinc" rSup { size 8{2} } \( f { { ital "tb"} over {2} } \) } {} # {} # ital "Gy" \( f \) = { {V} over {4} } rSup { size 8{2} } "." ital "Tb" "." ital "Sinc" rSup { size 8{2} } \( f { { ital "tb"} over {2} } \) {} } } {}

Su DEP es como sigue:

Figure 11: El BW correspondiente es 2fb.
Figure 11 (graphics11.png)

2.b. RZu (Retorno a Cero-Unipolar)

Para el símbolo “1” tendrá dos valores: en el primer semi-intervalo [0, Tb/2] tendrá un nivel +V y para el segundo semi-intervalo [Tb/2, Tb] retornará a 0V. Ahora, para el símbolo “2” se mantendrá en 0V por todo el intervalo Tb. Gráficamente:

Figure 12: Representación de bits usando el código RZu
Figure 12 (graphics12.png)

La descomposición de la señal para obtener la DEP es como sigue:

Figure 13
Figure 13 (graphics13.png)

La autocorrelación es entonces:

Rx ( τ ) = 1 4 Tb δ ( τ ) + n 1 4 Tb δ ( τ + nTb ) Rx ( τ ) = 1 4 Tb δ ( τ ) + n 1 4 Tb δ ( τ + nTb ) size 12{ ital "Rx" \( τ \) = { {1} over {4 ital "Tb"} } δ \( τ \) + Sum cSub { size 8{ forall n} } { { {1} over {4 ital "Tb"} } δ \( τ+ ital "nTb" \) } } {}
(13)

Por lo que la transformada de Fourier de la misma y la Función Gy(f) nos queda así:

Gx ( f ) = 1 4 Tb + n 1 4 Tb 2 δ ( f + nfb ) P ( f ) 2 = V 2 . Tb 2 4 . Sinc 2 ( f tb 2 ) Gy ( f ) = V 2 Tb 16 Sinc 2 ( f Tb 2 ) + n V 2 16 Sinc 2 ( f Tb 2 ) δ ( f + nfb ) Gx ( f ) = 1 4 Tb + n 1 4 Tb 2 δ ( f + nfb ) P ( f ) 2 = V 2 . Tb 2 4 . Sinc 2 ( f tb 2 ) Gy ( f ) = V 2 Tb 16 Sinc 2 ( f Tb 2 ) + n V 2 16 Sinc 2 ( f Tb 2 ) δ ( f + nfb ) alignl { stack { size 12{ ital "Gx" \( f \) = { {1} over {4 ital "Tb"} } + Sum cSub { size 8{ forall n} } { { {1} over {4 ital "Tb" rSup { size 8{2} } } } δ \( f+ ital "nfb" \) } } {} # lline P \( f \) rline rSup { size 8{2} } = { {V rSup { size 8{2} } "." ital "Tb" rSup { size 8{2} } } over {4} } "." ital "Sinc" rSup { size 8{2} } \( f { { ital "tb"} over {2} } \) {} # ital "Gy" \( f \) = { {V rSup { size 8{2} } ital "Tb"} over {"16"} } ital "Sinc" rSup { size 8{2} } \( f { { ital "Tb"} over {2} } \) + Sum cSub { size 8{ forall n} } { { {V rSup { size 8{2} } } over {"16"} } ital "Sinc" rSup { size 8{2} } \( f { { ital "Tb"} over {2} } \) δ \( f+ ital "nfb" \) } {} } } {}
(14)

En el dominio de la frecuencia, Gy puede expresarse como:

Figure 14: El BW correspondiente es 2fb.
Figure 14 (graphics14.png)

3. Manchester

Al igual que con los códigos RZ, el código Manchester se caracteriza por tener una transición de valor en Tb/2 durante el intervalo [0, Tb]. El “1” se representa por cambio de +V a –V y el “0” hace el proceso opuesto.

Figure 15: Representación de bits usando el código Manchester
Figure 15 (graphics15.png)

Descomponemos la señal:

Figure 16
Figure 16 (graphics16.png)

Y, haciendo el mismo procedimiento que para los puntos anteriores, llegamos a:

Gy ( f ) = V 2 Tb . Sinc 2 ( f Tb 2 ) . Sen 2 ( f Tb 2 ) Gy ( f ) = V 2 Tb . Sinc 2 ( f Tb 2 ) . Sen 2 ( f Tb 2 ) size 12{ ital "Gy" \( f \) =V rSup { size 8{2} } ital "Tb" "." ital "Sinc" rSup { size 8{2} } \( f { { ital "Tb"} over {2} } \) "." ital "Sen" rSup { size 8{2} } \( f { { ital "Tb"} over {2} } \) } {}
(15)

Con su expresión gráfica en el dominio de la frecuencia:

Figure 17: El BW correspondiente es 2fb
Figure 17 (graphics17.png)

En la simulación de este módulo se podrán observar los diferentes códigos de línea explicados previamente, pudiendo observar con más exactitud las gráficas en los dominios de tiempo y frecuencia, el cálculo de la potencia de la señal, observar la constelación de cada código (en base a la teoría explicada en el módulo 3) y el diagrama de Ojo correspondiente.

VI de simulación

El VI principal y sus Sub-VIs correspondientes pueden descargarse en el siguiente enlace. Media File: codigolinea.zip

Video de demostración

Collection Navigation

Content actions

Download:

Collection as:

PDF | EPUB (?)

What is an EPUB file?

EPUB is an electronic book format that can be read on a variety of mobile devices.

Downloading to a reading device

For detailed instructions on how to download this content's EPUB to your specific device, click the "(?)" link.

| More downloads ...

Module as:

PDF | EPUB (?)

What is an EPUB file?

EPUB is an electronic book format that can be read on a variety of mobile devices.

Downloading to a reading device

For detailed instructions on how to download this content's EPUB to your specific device, click the "(?)" link.

| More downloads ...

Add:

Collection to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks

Module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks