Escolar Documentos
Profissional Documentos
Cultura Documentos
Sequencias PN PDF
Sequencias PN PDF
Sílvio A. Abrantes
DEEC/FEUP
Códigos ou sequências
para espalhamento espectral
• Devem ter uma função de autocorrelação com um único pico estreito, para ajudar na
sincronização do código.
• Devem ter funções de correlação cruzada com valores baixos, para permitir mais
utilizadores simultâneos.
• Devem ser balanceados (equilibrados) no número de “0” e “1”, para que a densidade
espectral de potência esteja bem repartida nas frequências.
• Códigos de Walsh-Hadamard
• Códigos de Barker
• Códigos de Gold
• Códigos de Kasami
Considerações prévias
Definições
N
Rc ( j ) = ∑ ci di + j 0 ≤ j ≤ N −1
i =1
N− j
Ra ( j ) = ∑ ci di+ j 0 ≤ j ≤ N −1
i =1
Exemplo:
Tomando H4 como ponto de partida criamos quatro sequências e quatro funções:
Sequências de Walsh Funções de Walsh
s1(t)
1
s1 = +1 +1 +1 +1
-1 T t
s2(t)
1
s2 = +1 -1 +1 -1
-1 t
si•sj = 0, i ≠ j
s3(t)
1
s3 = +1 +1 -1 -1
-1 t
s4(t)
1
s4 = +1 -1 -1 +1
-1 t
T
As funções de Walsh são ortogonais entre si. Por exemplo, ∫0 s1(t )s3 (t )dt = 0 .
Sequências pseudo-aleatórias e outras 4
Sequências de Barker
Comprimento, Sequência
N
2 ++/+-
3 ++-
4 +++-/++-+
5 +++-+
7 +++--+-
11 +++---+--+-
13 +++++--++-+-+
(+ significa +1 e – significa -1)
Sabe-se 1 que, se existir outra sequência de Barker, esta tem de ter comprimento
N > 1 898 884.
1 Fonte: The Mobile Communications Handbook, Jerry D. Gibson (ed.), CRC Press/IEEE Press, 2ª ed., 1999.
Sequências pseudo-aleatórias e outras 5
Sequências de Barker
2 +1 +1 {2 1}
+1 -1 {2 -1}
3 +1 +1 -1 {3 0 -1}
4 +1 +1 +1 -1 {4 1 0 1}
+1 +1 -1 +1 {4 -1 0 1}
5 +1 +1 +1 -1 +1 {5 0 1 0 1}
7 +1 +1 +1 -1 -1 +1 -1 {7 0 -1 0 -1 0 -1}
11 +1 +1 +1 -1 -1 -1 +1 -1 -1 +1 -1 {11 0 -1 0 -1 0 -1 0 -1 0 -1}
13 +1 +1 +1 +1 +1 -1 -1 +1 +1 -1 +1 -1 +1 {13 0 1 0 1 0 1 0 1 0 1 0 1}
• Uma sequência pseudo-aleatória (ou sequência PN, de “Pseudo Noise”) é gerada por
um circuito com um registo de deslocamento, portas “OU exclusivo” e uma malha de
realimentação.
• É desejável que o período da sequência PN seja elevado para que esta seja
aparentemente mais aleatória:
+ +
1 1 0 1 0 0
g ( x) = x 6 + x 4 + x + 1
• Vector binário
• Representação em octal
g ( x) = x5 + x + 1 → 100.011 → 438
g r ( x) = x n g (1 x )
Exemplo:
g ( x) = x5 + x + 1 → 100011 → 110001 → g r ( x) = x5 + x 4 + 1
ou
g r ( x) = x n g ( x −1 ) = x5 ( x −5 + x −1 + 1) = x5 + x 4 + 1
(
a ( x) g r ( x) = x5 + x 4 + x 2 )( x6 + x5 + x2 + 1) = x11 + x9 + x8 + x6 + x5a′+( xx) 2
2. Obtém-se o polinómio a′( x) de grau ≤ n − 1 com os n termos de menor grau de
a ( x ) g r ( x) :
a′( x) = x5 + x 2
x 2 + x5 1 + x 2 + x5 + x 6
x 2 + x 4 + x7 + x8 x 2 + x 4 + x5 + x6 + x9 + x11 + x12 + …
x 4 + x 5 + x 7 + x8
x 4 + x6 + x9 + x10
b( x )
x +x +x +x +x +x
5 6 7 8 9 10
x5 + x7 + x10 + x11 ⇓
x6 + x8 + x9 + x11
Saída: 0010111001011…
x +x +x +x
6 8 11 12
x9 + x12
x9 + x11 + x14 + x15
x11 + x12 + x14 + x15
x11 + x13 + x16 + x17
x12 + x13 + x14 + x15 + x16 + x17
+ +
g ( x) = x3 + x 2 + x + 1
a( x) = x 2
a b c d
1 0 0 b( x)
1. ( )
a ( x) g r ( x ) = x 2 x 3 + x 2 + x + 1 = x5 + x 4 + x3 + x 2
2. a′( x) = x 2
a′( x) x2
3. b( x ) = = = x 2 + x3 + x 6 + x7 + x10 + x11 + …
g r ( x) 1 + x + x + x
2 3
a b c d (saída)
1 1 0 0
0 1 1 0
0 0 1 1
1 0 0 1
1 1 0 0
0 1 1 0
0 0 1 1
1 0 0 1
1 1 0 0
: : : :
Esta não é uma sequência de comprimento máximo pois o seu período não é o
maior possível, N = 2n − 1 = 7 . Logo, o polinómio x3 + x 2 + x + 1 não é primitivo.
( )( )
a ( x) g r ( x) = x 2 + 1 x3 + x 2 + x + 1 = x5 + x 4 + x + 1
a′ ( x )
a′( x) 1+ x
b( x ) = = = 1 + x 2 + x 4 + x6 + x8 + x10 + x12 + …
g r ( x) 1 + x + x 2 + x3
a b c d (saída)
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1
… … … …
Vamos ver em seguida como determinar o maior período atingível com um dado
polinómio gerador.
x4 x3 + x 2 + x + 1
10000 1111
1111 11
01110
1111
x +1
0001
( )
(Porquê? Porque se x m mod g ( x) = 1 então x m + 1 mod g ( x) = 0 )
( )
Como x 4 mod x3 + x 2 + x + 1 = 1 então o período máximo atingível por g(x) é 4.
Outros exemplos:
1. g ( x) = x 4 + x 2 + x + 1
( x + 1) mod ( x
7 4
+ x2 + x + 1 = 0) ⇒ período máximo é 7 com este g(x)
2. g ( x ) = x8 + x 6 + x 4 + x 2 + 1
1. Propriedade do balanço
Número de “uns”: 2n −1
• Uma série é uma subsequência de bits iguais (0 ou 1). O número de bits iguais
é o comprimento da série.
n −1
• Número total de séries (de zeros e uns): ( N + 1) 2 = 2
Em cada período metade das séries de “uns” ou “zeros” têm comprimento 1, um quarto
têm comprimento 2, um oitavo têm comprimento 3, etc.
nulos ocorre 2n − s − 1 vezes. Assim, qualquer grupo de n bits ocorre só uma vez.
3. Função de autocorrelação
⎧⎪ N j = 0
R( j ) = ⎨ (só tem dois valores)
⎪⎩−1 1 ≤ j ≤ 2 − 2
n
R( j ) = C − D
5 4 3 2 1
• Período da sequência: N = 2n − 1 = 31
• Exemplo de sequência:
1111100011011101010000100101100…
0.5
-0.5
-30 -20 -10 0 10 20 30
Comprimento Fracção
da série
1 12
2 14
3 18
i
i 12
N +1
e ao todo existem séries de “zeros” e “uns”.
2
1111100011011101010000100101100…
• Número de séries:
N +1
= 16 (oito séries de “zeros” e oito séries de “uns”)
2
Quantas vezes num período surgem padrões de bits? Por exemplo, os grupos 110 e
0010 ocorrem 2n− s = 25−3 = 4 vezes e 2n − s = 25− 4 = 2 vezes, respectivamente. Por seu
lado o grupo 00 aparece 2n− s − 1 = 25−2 − 1 = 7 vezes. Confirmou?
Exemplos (n = 5):
φ (2n − 1)
n
Número de sequências m
n Período, Nº de
N = 2n − 1 sequências m
3 7 2
4 15 2
5 31 6
6 63 6
7 127 18
8 255 16
9 511 48
10 1023 60
I
pi −1
φ(N) = N∏
i =1
pi
3 2
Exemplo: N = 360 = 2 × 3 × 5 ⇒ p1 = 2 , p2 = 3 e p3 = 5
3
pi −1 1 2 4
φ (360) = 360 ∏ = 360 × × × = 96
i =1
pi 2 3 5
Casos particulares
r
1. Se N for a potência de um número primo p, isto é, se N = p , sendo r inteiro, então
p −1
φ (N ) = φ ( pr ) = pr
p
φ ( N ) = φ ( p r q s ) = p r −1q s −1 ( p − 1)(q − 1)
Exemplo: N = 63 = 32 × 7 ⇒ p = 3, q = 7 , r = 2 e s =1
φ (63) = φ (32 × 7) = 31 × 70 × 2 × 6 = 36
I
pi −1
φ (N ) = N ∏
i =1
pi
100
90
80
70
60
φ(x) 50
40
30
20
10
0
0 20 40 60 80 100
x
n Polinómios
primitivos
3 x3 + x + 1
4 x4 + x + 1
5 x5 + x2 + 1
6 x6 + x + 1
7 x7 + x3 + 1
8 x8 + x4 + x3 + x2 + 1
9 x9 + x4 + 1
10 x10 + x 3 + 1
• Além dos polinómios da tabela existem outros polinómios primitivos com o mesmo
grau (ver Tabela da página seguinte). Todos eles geram sequências de comprimento
máximo.
A tabela seguinte indica metade dos polinómios primitivos de grau ≤10. A outra
metade é constituída pelos seus recíprocos, pois estes também são primitivos.
Exemplos:
Nota 1: o asterisco indica um circuito com apenas duas interligações. O circuito torna-se mais
simples.
Nota 2: a tabela não inclui polinómios recíprocos pelo que só estão indicados metade dos polinómios
primitivos possíveis.
Nota 3: Tabela extraída de R. Peterson, R. Ziemer e D. Borth, “Introduction to Spread Spectrum
Communications”, Prentice-Hall, 1995.
N
R ( j ) = ∑ (2ai − 1)(2ai + j − 1) 0 ≤ j ≤ N −1
i =1
R( j ) = C − D
R( j + rN ) = R( j ) , para r inteiro.
N
R ( j ) = ∑ ci ci + j 0 ≤ j ≤ N −1
i =1
N
Rc ( j ) = ∑ (2ai − 1)(2bi + j − 1) 0 ≤ j ≤ N −1
i =1
Minorante de Welch
O valor absoluto máximo da correlação cruzada entre qualquer par de sequências
binárias com período N retirado de um conjunto de M sequências respeita
M −1
Rc ( j ) max ≥ N
MN − 1
Se M e N elevados: Rc ( j ) max ≥ N
( n + 2) 2⎦⎥
{−t (n), −1, t (n) − 2} , com t (n) = 2⎣⎢ +1.
φ (1023) ⎛ 60 ⎞
• Existem = 60 sequências. Com estas sequências podem-se formar ⎜ ⎟ = 1770
10 ⎝2⎠
pares. Destes há três (apenas!) que entre si são pares preferidos.
t (10) = 2 ⎣⎢
(10+ 2) 2 ⎦⎥
+ 1 = 65 ⇒ Rc ( j ) ∈ {−65, −1,63}
m.d .c.( N , q) = 1
Uma decimação que origina uma sequência de igual comprimento diz-se própria.
N
• Período da sequência a[q ] , em que a é uma sequência m:
m.d .c.( N , q)
Exemplo: a = 1110100 ⇒ N = 7
q = 2k + 1 ou q = 22 k − 2k + 1
⎧1 n ímpar
3. m.d .c.(n, k ) = ⎨
⎩2 n=2 mod 4
R.: N = 31, n = 5
Para que b = a[q] tenha o mesmo comprimento 31 a decimação tem de ser própria,
isto é, q e N têm de ser primos entre si:
m.d .c(31, q) = 1
2. q = 3 é ímpar.
⇒ q = 3 = 2k + 1 ⇒ k =1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
a =1 0 1 0 1 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 0 1 0 0 1 0 0 0 0
b=1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 0 0 0 0
Pares preferidos
Período 31
73 45
57 75
51 67
Período 63
133 103
163 147
141 155
• { }
SGold = a, b, a ⊕ b, a ⊕ Tb,… , a ⊕ T N −1b Tib – b é deslocada de i bits
n Período N Rc ( j) Frequência de
ocorrência
n ímpar N = 2n − 1 −1 ≈ 0,50
−t(n) ≈ 0,25
t(n) − 2 ≈ 0,25
n par e N = 2n − 1 −1 ≈ 0,75
não divisível −t(n) ≈ 0,125
por 4 t(n) − 2 ≈ 0,125
Sequência
de Gold
+
+ + +
Repare-se que só existem seis sequências m de comprimento 31; destas nem todas
têm funções de correlação cruzada só com três valores. Em contrapartida, existem 33
sequências de Gold nessas condições.
⎧
S K = ⎨a, a ⊕ b, a ⊕ Tb,… , a ⊕ T
( 2n 2 − 2 ) b ⎫
⎬
⎩ ⎭
Estes valores são ainda mais baixos que os obtidos com sequências de Gold.
a Sequência
de Kasami
+
1
visto s (6) = [t (6) + 1] = 9 .
2
• q = 2n 2 + 1 = 22 + 1 = 5
a′ = a[5] = 101
b = 101101101101101
a→ 100010011010111
b→ ⊕ 101101101101101
a⊕b → 001111110111010
a→ 100010011010111
Tb → ⊕ 011011011011011
a ⊕ Tb → 111001000001100
a→ 100010011010111
T b→
2
⊕ 110110110110110
a ⊕ T 2b → 010100101100001
Se n = 0 (mod 4) :
{ }
S KL = a, a ⊕ T k ′b ( j ) , a ⊕ T mc, b ( j ) ⊕ T m′c, a ⊕ T k ′b ( j ) ⊕ T mc
( )
b(j), j = 0,1,2 é a decimação de Tja por t(n): b( j ) = T j a [t (n) ] .
Se n = 2 (mod 4) :
k = 0,… , 2n − 2
{
S KL = a, b, a ⊕ T b, a ⊕ T c, b ⊕ T c, a ⊕ T b ⊕ T c
k m m k m
} m = 0,… , 2n 2 − 2
a→ 100010011010111
T b 2 (1)
= T ( (Ta)[9]) → ⊕ 111011110111101
2
a ⊕ T 2b(1) → 011001101101010
a→ 100010011010111
T 3b(2) → 110001100011000
T 2c → ⊕ 110110110110110
a ⊕ T 3b(2) ⊕ T 2c → 100101001111001
3 2 5 9 5 — — — — 2,6
4 2 9 — — 4 5 67 9 3,9
5 6 11 33 9 — — — — 5,6
6 6 23 65 17 8 9 520 17 7,9
7 18 41 129 17 — — — — 11,3
8 16 95 — — 16 17 4111 33 16,0