Transmissão de impulsos em...

19
Transmissão de impulsos em banda-base 1 Códigos de linha Sequências pseudo-aleatórias Baralhadores

Transcript of Transmissão de impulsos em...

Transmissão de impulsos em banda-base

1

Códigos de linha

Sequências pseudo-aleatórias

Baralhadores

Códigos de linha

A transformação de uma sequência binária na sua representação eléctrica é feita através da codificação de linha.

Como representar a sequência de bits 1 0 1 1 0 1 1 0 1 0 1 0 0 0 1, em que cada bit tem a duração de T segundos?

Uma possibilidade é atribuir aos bits “1” um impulso rectangular de polaridade positiva e duração T e atribuir aos bits “0” um impulso nulo (isto é, a ausência de impulso):

2 4 6 8 10 120

1

Tempo (t/T)

V

1

1 1 1 1 1 1 10 0 0 0 10 0 0

Diz-se que estes impulsos são impulsos unipolares NRZ.

Também poderíamos ter representado a sequência de bits da forma seguinte através de impulsos polares NRZ:

2 4 6 8 10 12

1

Tempo (t/T)

V

1

1 1 1 1 1 1 10 0 0 0 10 0 0

0

-1

Existem muitos outros códigos de linha. A sua escolha depende das características que pretendermos.

Códigos de linha 2

Códigos de linha

Requisitos

Consoante a aplicação, algumas das seguintes características são desejáveis na codificação de linha:

• Componente contínua nula

Esta característica é conveniente se houver transformadores no sistema, pois estes bloqueiam a componente contínua dos sinais à entrada.

• Suficiente informação de temporização para a recuperação de relógio no receptor.

• Espectro de frequência com pequena largura de banda situada a baixas frequências.

Para minimizar a influência de “crosstalk”, ruído térmico, ruído impulsivo, interferências rádio e atenuação em cabos.

• “Transparência” (isto é, adequação) para todos os tipos de mensagens

• Descodificação unívoca (sem ambiguidades)

• Elevada imunidade a perturbações aditivas

Esta característica favorece um sinal de linha binário porque combina boa qualidade de detecção no receptor com facilidade de geração no emissor.

• Capacidade de correcção de erros

• Facilidade de igualização das características do canal, se necessário

• Relação linear entre os sinais codificados e descodificados, se se usar filtragem transversal adaptativa

Códigos de linha 3

Códigos de linha

Exemplos

0

1

-1 0 1

-1 0 1

-1 0 1

1 0 00 0 0 0 0 0 0 1 1 1 1 0 1 1

Unipolar NRZ

Polar NRZ

Bipolar NRZ (AMI)

Manchester

-1 0 1

HDB3 vv

4B3T

- 0 +

-1 0 1

CMI

1 2B1Q

3

-3

-1

T

2T

4T

Códigos de linha 4

Códigos de linha

Variantes do código AMI: HDB3 e CMI

Na codificação AMI uma sequência de entrada com muitos bits “0” consecutivos origina uma longa saída sem impulsos. Não havendo impulsos não há transições, ou cruzamentos por zero, facto que não é desejável do ponto de vista da recuperação de relógio. Duas variantes que garantem que não existem intervalos longos sem transições são os códigos HDB3 e CMI.

• CMI (Coded Mark Inversion)

• O bit “1” é representado exactamente como em AMI: um impulso de duração T segundos de polaridade alternada.

• O bit “0” é representado pelo impulso

t

1

-1

T0

1 0 00 0 0 0 0 0 0 11 1 1 0 1 1

-101

CMI

• HDB3 (High Density Bipolar with 3 “0” maximum)

• Na ausência de sequências de mais de três zeros consecutivos este código é idêntico ao código AMI.

• Caso surjam quatro ou mais zeros consecutivos introduzem-se impulsos extra – os impulsos V e os impulsos B.

Códigos de linha 5

Códigos de linha

O código HDB3

• Na ausência de sequências de mais de três zeros consecutivos este código é idêntico ao código AMI.

• Numa sequência de quatro ou mais zeros o quarto zero é representado por um impulso com polaridade tal que viole a regra de codificação AMI, isto é, tem a mesma polaridade que o “1” anterior. A este impulso chama-se impulso “V” (Violação).

• Estes impulsos extra não garantem um número semelhante de impulsos positivos e negativos.

• Temos de introduzir os chamados impulsos “B” (Balanceamento) em concordância com as regras AMI:

• Se um impulso V tiver a mesma polaridade do impulso V precedente introduz-se um impulso B no primeiro dos quatro bits “0”.

• Se os impulsos V tiverem polaridades contrárias não é preciso anteceder o segundo de um impulso B.

• O codificador tem de armazenar cada bit de entrada até que três bits subsequentes tenham chegado.

Códigos de linha 6

Códigos de linha

O código HDB3

Codificação apenas com impulsos de violação:

-1

1

1 0 0 1 1 1 0 0 1 1 00 0 0 0 0 0 0 1 1

V V V

Neste exemplo há um desequilíbrio no número de impulsos positivos e negativos, daí a necessidade de se introduzirem os impulsos de balanceamento:

-1

1

1 0 0 1 1 1 0 0 1 1 00 0 0 0 0 0 0 1 1

V V VB

B

No descodificador dois impulsos de igual polaridade são interpretados assim:

• O segundo impulso corresponde sempre a um bit “0”;

• O primeiro impulso corresponde a um bit “1” ou a um bit “0” consoante haja três ou dois zeros de permeio, respectivamente.

3T 2T

0 0 0 0 1 0 0 0 0

Códigos de linha 7

Densidade espectral de potência de uma onda binária polar aleatória

Qual é a densidade espectral de potência de uma sequência polar NRZ aleatória de amplitude ±A?

2T 4T

A

t

x(t)

T

1 1 1 1 1 0 0 0

0

-A 3T

Comecemos pela função de autocorrelação:

( )2 1 | | | |( )0 | |x

A T TRT

τ τττ

− <= ≥

τ

A2

T -T

Rx(τ)

Pelo teorema de Wiener-Khintchine a sua transformada de Fourier é a

densidade espectral de potência: ( ) ( )x x . R S fτ ↔F

0 1/T

A2T

Sx(f)

2/T -1/T-2/T f

Sinalização Polar NRZ

2 2( ) sinc ( )xS f A T fT=

Códigos de linha 8

Densidade espectral de potência de uma onda binária aleatória (cont.)

Mas [ ]22 2 sinc( )

( ) sinc ( )xAT fT

S f A T fTT

= == .

Ora dentro de […] está a transformada de Fourier do impulso rectangular (de duração T e amplitude A) que deu origem à sequência polar:

Nos tempos

0 T /2

A

t- T/2

g(t)

Nas frequências

0

1/T

f

G(f)( ) sinc( )G f AT fT=

AT

-1/T

Além disso…

a densidade espectral de energia de um impulso é igual à amplitude da sua transformada de Fourier ao quadrado.

Ou seja, Sx(f) é igual à densidade espectral de energia do impulso rectangular a dividir pela sua duração.

Generalizando:

A densidade espectral de potência de uma onda binária aleatória na qual os símbolos binários são representados por ±g(t) é igual à densidade espectral de energia do impulso g(t) a dividir pela duração do símbolo, T.

Códigos de linha 9

Códigos de linha

Espectros de potência

• A duração de cada bit é T segundos.

• A amplitude dos impulsos, A, normaliza a potência média (valor unitário).

• A sequência binária é aleatória e os símbolos 0 e 1 são equiprováveis.

Espectro de potência de um impulso rectangular de duração T segundos:

T/2-T/2 t

1

fTTfS 22sinc)( =

• Sinais unipolares NRZ:

+= )(11)(sinc

4)( 2

2f

TfTTAfS δ ( = 22A )

• Sinais polares NRZ: ( =)(sinc)( 22 fTTAfS = 12A )

• Sinais unipolares RZ:

−+= ∑

−∞=n Tnf

TfTTAfS )(11)2

(sinc16

)( 22

δ ( 42 =A )

• Sinais bipolares (AMI) NRZ: (fT)(sen)(sinc)( 222 πfTTAfS = 12 =A )

• Sinais bipolares (AMI) RZ: fT)(sen2

sinc4

)( 222

π

= fTTAfS ( 42 =A )

• Sinais bifásicos (Manchester):

=

2fTsen

2sinc)( 222 πfTTAfS ( 12 =A )

Códigos de linha 10

Códigos de linha

Espectros de potência

0 1/T 2/T 3/T 0

T/2

T

1: Unipolar NRZ 2: Polar NRZ 3: AMI NRZ 4: Manchester

1

3

2

4

f

S(f)

• Largura de banda da codificação AMI NRZ: T1 Hz.

• A sinalização bifásica ocupa uma maior largura de banda (quase 2/T Hz).

0 1/T 2/T 3/T0

T/2

T

1: Unipolar NRZ2: Unipolar RZ3: Polar NRZ4: AMI NRZ5: AMI RZ

1

2

3

4 5

f

S(f)

• Notar os impulsos de Dirac na sinalização unipolar.

Códigos de linha 11

Códigos de linha 4B3T e 2B1Q

Estes dois códigos são exemplos de códigos de linha de blocos.

4B3T

• Neste código converte-se um bloco de 4 dígitos binários num bloco de 3 dígitos ternários.

Dos blocos ternários de saída possíveis só são usados 16, correspondentes aos blocos binários de entrada possíveis.

2733 =162 =4

• A diferença entre o número de níveis positivos (“+”) e negativos (“-“) vai sendo armazenada à medida que decorre a codificação. A esta diferença chama-se disparidade acumulada.

• A escolha dos blocos ternários faz-se de acordo com a história passada do sinal e obedece a um diagrama de transição de estados ou a uma tabela.

• A taxa de transmissão (número de símbolos/s) é 75% do débito binário original.

• Não existe uma tabela única de codificação. Aqui vão ser apresentadas duas (Tabela A e Tabela B).

2B1Q

• Um bloco de dois bits é convertido num único dígito quaternário.

• Ao contrário do código 4B3T, neste código todos os símbolos quaternários de saída podem ser usados.

• A taxa de transmissão é reduzida para metade do débito binário original.

Códigos de linha 12

Código de linha 4B3T

Tabela de codificação de Jessop-Waters (Tabela A)

Palavra binária Palavra ternária Disparidade

Modo positivo Modo negativo 0000 0 - + 0 - + 0

0001 - + 0 - + 0 0

0010 - 0 + - 0 + 0

1000 0 + - 0 + - 0

1001 + - 0 + - 0 0

1010 + 0 - + 0 - 0

0011 + - + - + - 1

1011 + 0 0 - 0 0 1

0101 0 + 0 0 – 0 1

0110 0 0 + 0 0 - 1

0111 - + + + - - 1

1110 + + - - - + 1

1100 + 0 + - 0 - 2

1101 + + 0 - - 0 2

0100 0 + + 0 - - 2

1111 + + + - - - 3

Diagrama de transição de estados

+2+1

-1-2

+3-3

-1

-1

-1 -2

-2 2 2

-2

2

1

1

1 -3

-3 -3

3

3 3

+3

3

rr

Dispa idade da palav a ternária

Disparidade acumulada

Códigos de linha 13

Código de linha 4B3T

Tabela de codificação alternativa (Tabela B)

Sinal de Sinal de saída ternário

entrada Disparidade acumulada

binário -2, -1 ou 0 1, 2 ou 3

0000 + 0 - + 0 -

0001 - + 0 - + 0

0010 0 - + 0 - +

0011 + - 0 + - 0

0100 0 + - 0 + -

0101 - 0 + - 0 +

0110 0 0 + 0 0 -

0111 0 + 0 0 - 0

1000 + 0 0 - 0 0

1001 + + - - - +

1010 + - + - + -

1011 - + + + - -

1100 0 + + 0 - -

1101 + 0 + - 0 -

1110 + + 0 - - 0

1111 + + + - - -

Códigos de linha 14

Código de linha 2B1Q

Definição ANSI T1.601 para a RDIS

De acordo com a norma ANSI T1.601 a codificação 2B1Q é definida

pela seguinte tabela:

Primeiro bit

(polaridade)

Segundo bit

(grandeza)

Símbolo

quaternário

Tensão

(volts)

1 0 +3 2,5

1 1 +1 0,833

0 1 -1 -0,833

0 0 -3 -2,5

• Se o primeiro bit for 1 o impulso é positivo, se for 0 é negativo.

• Se o segundo bit for 1 o impulso vale ±0,833 V, se for 0 vale ±2,5 V.

Exemplo:

1 0 00 0 0 0 0 0 1 11 1 1 0 1

+3 +1 -3 -3 +3 -3 -1 +1BitsSímbolos

0,833

2,5

-2,5

-0,8332T

V

t

Códigos de linha 15

Código de linha 3B4B

Uma tabela de codificação 3B4B:

Saída Entrada Negativa 0 Positiva Disparidade

001 - - + + 0 010 - + - + 0 100 + - - + 0 011 - + + - 0 101 + - + - 0 110 + + - - 0

Pal

avra

s ba

lan

cead

as

000 - - + - + + - + ±2 111 - + - - + - + + ±2

Uma tabela de descodificação 3B4B:

Palavra de código recebida

Descodificada em

- - - - * 001

- - - + * 000

- - + - 000

- - + + 001

- + - - 111

- + - + 010

- + + - 011

- + + + * 011

+ - - - * 100

+ - - + 100

+ - + - 101

+ - + + 111

+ + - - 110

+ + - + 000

+ + + - 111

+ + + + 110

* palavra proibida

Códigos de linha 16

Código de linha 3B4B

Codificador (exemplo):

Somador

0 0 0

– – + –

+2

-2

Disparidade acumulada: era +2 e vai passar a 0

Codificador

Palavra binária de entrada

Palavra de código de

saída

Disparidade

Exemplo de codificação:

Pretende-se codificar a sequência binária 111011000000010100

supondo que a disparidade inicial é nula.

R.: Secciona-se a sequência de entrada em blocos de três bits e usa-se a tabela seguinte:

Entrada Disparidadeanterior

Palavra de código Disparidade acumulada

111 0 - + - - -2 011 -2 - + + - -2 000 -2 + + - + 0 000 0 - - + - -2 010 -2 - + - + -2 100 -2 + - - + -2

Sequência codificada: - + - - - + + - + + - + - - + - - + - + + - - +

Códigos de linha 17

Codificação diferencial

Por vezes o sinal digital fica invertido ao atravessar os diversos circuitos do sistema de comunicações (ou seja, em vez de se receber s(t) recebe-se -s(t)). Um codificador diferencial resolve o problema.

Codificador diferencial

ckak = {0,1}

bk dk ek âk

Descodificador diferencial

bk = ak ⊕ bk-1 âk = ek ⊕ ek-1

Codificador de linha

CanalDescodificador

de linha ⊕

ek-1 ⊕

bk-1 T T

Suponhamos que o receptor recebe a sequência dk = -ck (em vez de ck).

ak 0 1 1 0 0 0 1 0 1 0 0

bk 0 0 1 0 0 0 0 1 1 0 0 0

ck -1 -1 +1 -1 -1 -1 -1 +1 +1 -1 -1 -1

dk +1 +1 -1 +1 +1 +1 +1 -1 -1 +1 +1 +1

ek 1 1 0 1 1 1 1 0 0 1 1 1

âk 0 1 1 0 0 0 1 0 1 0 0

Um bit “1” à entrada do codificador diferencial gera à saída um bit diferente do anterior e um bit “0” não o altera.

Como se comprova, a sequência original ak foi correctamente estimada apesar da inversão de sinal ocorrida!

Códigos de linha 18

Códigos de linha 19

Códigos de linha: onde se usam?

• AMI

Primeiro a ser usado nos sistemas de pares simétricos de cobre. Substituído por códigos AMI modificados.

• HDB3

Norma G.703 da ITU-T para sistemas PCM multiplexados a 2, 8 e 34 Mbits/s.

• CMI

Norma G.703 da ITU-T para PCM multiplexado a 140 Mbits/s.

• Código bifásico (Manchester)

Distribuição de sinais de relógio em circuitos VLSI.

Gravação magnética.

Redes locais Ethernet.

Sistema RDS (“Radio Data System”) em radiodifusão FM.

• 4B3T

Sistemas de alta capacidade (sistemas de longa distância em cabo coaxial a 34 e 140 Mbits/s).

• 2B1Q

Acesso básico da RDIS (160 kbits/s)

• nBmB (5B6B, etc.)

Sistemas de alta capacidade com grande largura de banda (fibras ópticas).