Você está na página 1de 106

Francisco Jos de Oliveira Restivo

Professor Associado
Departamento de Engenharia Electrotcnica e de Computadores
Faculdade de Engenharia da Universidade do Porto

Processamento Digital de Sinal


Tpicos
Ano Lectivo 1998/99

Dezembro de 1998
Processamento Digital de Sinal 2

Indice
1. Processamento Digital de Sinal 5
1.1 Sinais 5
1.2 Sinais Contnuos e Discretos 5
1.3 Sistemas Contnuos e Discretos 5
1.4 Processamento Digital de Sinal 7
1.5 Breve Histria do PDS 7
1.6 Vantagens do PDS 8
1.7 Microprocessadores de Sinal 8
1.8 Bibliografia 9
2. Sinais e Sistemas Discretos 11
2.1 Sinais Discretos 11
2.2 Convoluo Discreta 11
2.3 Sistemas Discretos FIR e IIR 14
2.4 Sistemas Discretos Recursivos e No Recursivos 15
2.5 Operao em Tempo Real e Operao em Tempo Diferido 15
2.6 Sistemas Discretos Causais 15
2.7 Sistemas Discretos Estveis 15
2.8 Frequncia de um Sinal Discreto 16
2.8.1 Fase 17
2.8.2 Gamas de frequncias 18
2.9 Resposta em Frequncia de um Sistema Discreto 19
2.10 Transformada de Fourier de um Sinal Discreto 21
2.11 Propriedades da Transformada de Fourier 23
2.11.1 Propriedade da Translaco 23
2.11.2 Propriedade da Convoluo 23
2.11.3 Propriedades de Simetria 24
2.12 Equao s Diferenas e Resposta em Frequncia 26
3. Amostragem de Sinais Contnuos 27
3.1 Introduo 27
3.1 Teorema da Amostragem 30
3.2 Aliasing 30

1998 F. J. Restivo
Processamento Digital de Sinal 3

3.2.1 Uma explicao simples 30


3.3 Reconstruo de um Sinal Amostrado 32
3.4 Amostragem Real 33
3.5 Reconstruo Real 34
3.6 Interpolao 36
3.7 Decimao 38
3.8 Converso Fraccionria da Frequncia de Amostragem 39
4. Transformada em z 40
4.1 Definio 40
4.2 Regio de Convergncia 41
4.3 Relao com a Transformada de Fourier 43
4.4 Algumas Propriedades da Transformada em z 43
4.5 Propriedade da Convoluo 43
4.6 Funo de Transferncia de um Sistema Discreto 44
4.7 Estabilidade e Causalidade 44
4.8 Avaliao Geomtrica da Transformada de Fourier 44
4.9 Inverso da Transformada em z 46
4.9.1 Mtodo da Diviso 46
4.9.2 Mtodo da Decomposio em Fraces Simples 46
4.9.3 Integral de Linha 47
4.10 Propriedade da Convoluo Complexa 49
5. DFT - Transformada de Fourier Discreta 52
5.1 Introduo 52
5.1.1 Amostragem nos Domnios do Tempo e da Frequncia 52
5.1.2 Sinais Peridicos nos Domnios do Tempo e da Frequncia 53
5.2 DFS - Srie de Fourier Discreta 56
5.3 DFT - Transformada de Fourier Discreta 57
5.4 Propriedades da DFT 60
5.5 Relao com a Transformada em z 62
5.6 Convoluo Linear Utilizando a DFT 63
5.6.1 Mtodo Overlap-Add 63
5.6.2 Mtodo Overlap-Save 65
5.7 FFT - Transformada Rpida de Fourier 65
5.7.1 Decimao no Tempo 66
5.7.2 Decimao na Frequncia 70
5.7.3 Raiz 4 72
5.7.4 Raiz Dupla 73
5.8 Transformada de Fourier Discreta Inversa 75

1998 F. J. Restivo
Processamento Digital de Sinal 4

5.9 Transformada de Fourier Discreta de Sinais Reais 76


5.10 CZT - Chirp Z Transform. 77
6. Filtros Digitais 80
6.1 Introduo 80
6.2 Projecto de Filtros Digitais do Tipo FIR. 80
6.2.1 Classificao. 81
6.2.2 Relaes entre os Zeros dos Filtros FIR com Fase Linear. 83
6.2.3 Mtodos de Projecto. 84
6.3 Projecto de Filtros Digitais do Tipo IIR. 90
6.3.1 Mtodo da Invarincia da Resposta Impulsional. 90
6.3.2 Transformao Bilinear. 92
6.4 Transformaes no Domnio das Frequncias. 97
6.4.1 Filtros Passa Tudo. 97
6.4.2 Transformaes no Domnio das Frequncias. 99
7. Realizao de Sistemas Discretos 102
7.1 Grficos de Fluncia 102
7.2 Formas Directas 103
7.2.1 Filtros FIR 103
7.2.2 Filtros IIR 105
7.3 Realizaes Srie e Paralelo 105
7.3.1 Filtros FIR 105
7.3.2 Filtros IIR 106

1998 F. J. Restivo
Processamento Digital de Sinal 5

1. Processamento Digital de Sinal

1.1 Sinais
Toda a nossa vida se baseia em sinais, que so medidos, processados, analisados, e do origem a decises. O
som, a temperatura e a luz so exemplos de sinais que utilizamos no dia a dia.
Os ouvidos convertem o som em sinais elctricos, que chegam ao crebro, e este capaz de analisar algumas
das suas propriedades, tais como amplitude, frequncia e fase, determinar a direco em que se encontra a
fonte de som, e reconhec-lo, como msica, fala, o rudo de um automvel, etc..
Os nervos colocados nas partes expostas da pele sentem a temperatura e enviam para o crebro sinais
elctricos, que podem originar decises tais como ligar um aquecedor, abrir uma janela, etc..
Os olhos focam as imagens na retina, que converte essas imagens em sinais elctricos e os envia para o
crebro, que, pela anlise da cor, da forma, da intensidade, etc., da luz capaz de reconhecer objectos, medir
distncias, detectar o movimento, etc..
Um sistema de controlo baseia-se nestes mesmos princpios: um sinal representativo da grandeza a controlar
comparado com uma referncia e o sinal de erro processado pelo controlador para determinar a aco
correctiva adequada

Controlador Sistema

1.2 Sinais Contnuos e Discretos


Nos sistemas contnuos, os sinais de entrada e de sada so sinais contnuos, funes de uma varivel
contnua, normalmente o tempo, t.
Em certas condies, um sinal contnuo xc (t) pode ser representado univocamente por um sinal em tempo
discreto, ou simplesmente, sinal discreto, x(n), uma funo de uma varivel discreta, n.
O teorema da amostragem estabelece essas condies para o caso da amostragem peridica
x(n) = xc (nT),
em que T o perodo de amostragem.

1.3 Sistemas Contnuos e Discretos


Se os sinais contnuos entrada e sada de um sistema contnuo Hc podem ser representados por sinais
discretos, ento o funcionamento do sistema contnuo Hc poder tambm ser representado por um conjunto
de relaes entre entre esses sinais discretos, ou seja, por um sistema discreto H.
Enquanto que a relao entrada/sada de um sistema contnuo (unidimensional) normalmente um equao
diferencial, num sistema discreto essa relao normalmente uma equao s diferenas, o que facilita
substancialmente o clculo da resposta do sistema a uma dada entrada.

1998 F. J. Restivo
Processamento Digital de Sinal 6

Exemplo
Consideremos o sistema definido pela equao s diferenas
y(n) = 0.4x(n) + 0.6y(n-1) .
Suponhamos que a este sistema aplicada a entrada
x(n) = 0 se n < 0 ou (n > 0 e n mod 12 > 5)
1 se no ,
e que o sistema se encontra inicialmente relaxado (y(-1) = 0).
A resposta y(n) do sistema obtem-se realizando apenas duas multiplicaes e uma adio para calcular cada
termo de y(n). Em MATLA B, o programa seguinte permite calcular os primeiros termos de y(n),
x=[0 1 1 1 1 1 1 0 0 0 0 0 0 1 1];
y(1)=0;
for i=2:15, y(i)=x(i)+0.5*y(i-1); end
t=-1:1:13;
a=[-1 13 0 2];
clf, subplot(2,1,1), stem(t,x), axis(a)
subplot(2,1,2), stem(t,y), axis(a)
e a representao grfica de x(n) e y(n) j fornece uma ideia do que ser possvel realizar com operaes
simples como estas.

1.5

0.5

0
0 2 4 6 8 10 12

1.5

0.5

0
0 2 4 6 8 10 12

Na realidade, estamos a realizar um sistema discreto de primeira ordem, que poderia ser utilizado, por exemplo,
para estudar o fenmeno da carga/descarga de um condensador.

1998 F. J. Restivo
Processamento Digital de Sinal 7

1.4 Processamento Digital de Sinal


Os fantsticos desenvolvimentos que nos ltimos anos se verificaram na microelectrnica, tornaram possvel
pr em prtica esta ideia de uma forma efectiva, e esto na origem do Processamento Digital de Sinal (PDS),
disciplina que hoje ocupa um papel preponderante nas telecomunicaes, no controlo, na instrumentao, na
engenharia biomdica, etc..
A razo porque se diz processamento digital de sinal decorre do facto de a realizao de um sistema discreto
implicar normalmente a digitalizao das amostras dos seus sinais de entrada e de sada.

PDS

Conversor A/D Conversor D/A

Convm contudo referir que existem actualmente certas implementaes de sistemas discretos (por exemplo,
com condensadores comutados) em que os valores das amostras desses sinais so armazenados de uma
forma analgica, pelo que seria talvez mais correcto falar-se de Processamento Discreto de Sinal.
Importa tambm realar que PDS no apenas a realizao discreta de sistemas contnuos.
Por um lado, existem sinais discretos que no so uma amostragem de sinais contnuos, como , por exemplo,
o sinal v(n)
n - dia do ano
v(n) - veculos que atravessaram a Ponte da Arrbida no dia n,
que pode perfeitamente interessar processar.
Por outro, nem sempre o resultado do processamento de um sinal discreto outro sinal discreto da mesma
natureza, como acontece num sistema de reconhecimento de voz, por exemplo.
Nesta disciplina, comearemos por estudar os sinais e sistemas discretos independentemente da sua relao
com os sinais e sistemas contnuos, e s posteriormente estudaremos essa relao.
Tambm estudaremos apenas os sinais e sistemas discretos unidimensionais, sendo contudo razoavelmente
simples a extenso do estudo aos sinais multidimensionais (imagens, por exemplo).

1.5 Breve Histria do PDS


Os modelos matemticos bsicos dos sinais e sistemas contnuos remontam ao sculo XIX, com as
transformadas de Laplace e de Fourier.
Jean Baptiste Joseph Fourier nasceu em Auxerre, Frana, em 1768 e morreu em Paris em 1830. Um dos maiores
matemticos de todos os tempos, estudou a teoria matemtica da conduo do calor, tendo estabelecido, no
monumental tratado Thorie Analytique de la Chaleur, que publicou em 1822, a equao s derivadas
parciais que governa o fenmeno e obtido a sua soluo usando o desenvolvimentos em srie das funes
trigonomtricas. Os seus trabalhos contribuiram para muitas reas da matemtica, cincia e engenharia.
Pierre Simon, Marqus de Laplace, o maior astrnomo terico depois de Newton, nascido vinte anos antes de
Fourier, aplicou os seus conhecimentos matemticos ao estudo dos movimentos planetrios, dando origem
hoje designada transformada de Laplace, que cedo encontrou aplicao em muitas outras reas cientficas.
Tambm De Moivre, que em 1730 introduziu a hoje chamada transformada em z, deve ser creditado como um
dos precursores do Processamento Digital de Sinal.
No entanto, ao advento dos computadores digitais, verificado nos anos 40, que se deve o nascimento do
PDS como disciplina. Nos anos 50, engenheiros e cientistas como Shannon e Bode nos Bell Telephone
Laboratories e Linville no MIT foram certamente dos primeiros a equacionar a utilizao de computadores de
sinal em processamento de sinal.

1998 F. J. Restivo
Processamento Digital de Sinal 8

No incio dos anos 60, Kaiser, nos laboratrios Bell, apresentou importantes contribuies para a anlise e a
sntese de filtros digitais, e a transformada rpida de Fourier (FFT) foi descoberta em 1965 por Cooley e
Tukey, apesar de a sua origem poder ser atribuda aos matemticos alemes Runge e mesmo Gauss.
A publicao, em 1975, dos livros referncia [5] e [6] marca verdadeiramente o nascimento de PDS como
disciplina, e dos seus autores como os seus verdadeiros criadores.
Actualmente, o PDS emergiu das aplicaes militares onde nasceu e desempenha um papel chave em produtos
de consumo, industriais e de telecomunicaes. Microprocessadores de sinal de baixo custo so
componentes essenciais de jogos electrnicos, telefones celulares, brinquedos, leitores de CDs, discos de
computadores, modems, impressoras, sistemas de reconhecimento de voz e de conferncia vdeo, e muitos
outros produtos familiares. Cada vez mais aplicaes tradicionalmente do domnio dos sistemas analgicos
esto a encontrar solues digitais mais baratas e mais fiveis.

1.6 Vantagens do PDS


Utilizar um conversor AD, um microprocessador, e um conversor DA para a realizao discreta de um sistema
equivalente a um filtro passa baixo do tipo RC elementar, no ser, em princpio, vantajoso do ponto de vista
econmico, embora se pudesse conceber uma situao em fosse interessante, por exemplo, tirando partido do
facto da soluo discreta ser programvel.
Esta poderia mesmo no ser possvel, se a frequncia de amostragem requerida excedesse os limites da
tecnologia dos conversores AD e DA.
Frequncia de amostragem e custo, constituem as duas grandes limitaes utilizao do PDS.
As solues discretas tm, no restante, grandes vantagens sobre as solues contnuas, pois so
normalmente programveis, so fiveis, repetitivas e resistentes ao envelhecimento, permitem controlar com
mais rigor a preciso dos resultados, etc., e so preferidas numa grande gama de aplicaes.
Outras vantagens das solues discretas resultam da facilidade em resolver os problemas de instabilidade, de
implementao de algoritmos adaptativos, de utilizao de cdigos de deteco e correco de erros, de
transmisso e armazenamento e compresso de dados.

1.7 Microprocessadores de Sinal


Todos os grandes fabricantes de microelectrnica oferecem hoje microprocessadores de sinal (e de imagem,
que um sinal bidimensional), adaptados aos algoritmos mais utilizados em PDS: convoluo, transformada de
Fourier discreta, etc..
Nos primeiros dois anos dos anos 80, surgiram no mercado quatro microprocessadores de sinal, sendo
normalmente aceite que o primeiro destes foi o S2811, da American Microsystems Inc.. Quasi ao mesmo
tempo, surgiram o Intel 2920, com conversores AD e DA incorporados, e com o qual se podia realizar
facilmente um modem, por exemplo, e o NEC PD7720. O ltimo, mas definitivamente mais avanado, foi o
TMS32010, da Texas Instruments.
Uma caracteristica comum a estes microprocessadores era a adopo da arquitectura de Harvard, com memria
de programa e memria de dados distintas, o que permitia o acesso simultneo a uma instruo e a um dado.
Actualmente, a Texas Instruments, com a famlia de microprocessadores TMS320Cxx, a Motorola, com os
microprocessadores M56000 e M96000, a NEC, com o microprocessador PD77230, a AT&T, com os
microprocessadores DSP16 e DSP32, a Oki, a Analog Devices, a Inmos, com os microprocessadores IMS
A100, A110 e A121, a Plessey, a Zoran, etc., fornecem dispositivos que permitem realizar aplicaes de PDS
altamente sofisticadas.
Por outro lado, convm no esquecer o progresso que em paralelo se verificou nos componentes analgicos,
e nomeadamente no amplificador operacional, bem como nos componentes que realizam a ligao entre o
mundo analgico e o mundo digital, tais como os conversores A/D e D/A e os comparadores.
Com o progresso das tecnologias VLSI, comeam tambm a ser vulgares implementaes mistas (analgicas e
digitais) directamente no silcio.

1998 F. J. Restivo
Processamento Digital de Sinal 9

1.8 Bibliografia
A bibliografia publicada na rea do PDS muito vasta.
Recomenda-se qualquer um dos dois seguintes livros para o estudo desta disciplina
[1] A. V. Oppenheim, R. W. Schafer, Discrete-Time Signal Processing, Prentice-Hall, 1989,
[2] E. C. Ifeachor, B. W. Jervis, Digital Signal Processing - A Practical Approach, Addison-Wesley, 1993.
Outros livros tm sido utilizados, e continuam a servir como textos de apoio
[3] R. Kuc, Introduction to Digital Signal Processing, McGraw-Hill, 1988
[4] D. J. DeFatta, J. G. Lucas, W. S. Hodgkiss, Digital Signal Processing: A System Design Approach,
Wiley, 1988.
Os dois livros a seguir marcaram o estabelecimento de PDS como uma disciplina cientfica prpria, e so leitura
obrigatria para o seu estudo mais aprofundado
[5] A. V. Oppenheim, R. W. Schafer, Digital Signal Processing, Prentice-Hall, 1975
[6] L. R. Rabiner, B. Gold, Theory and Application of Digital Signal Processing, Prentice-Hall, 1975.
Outros livros cuja leitura se recomenda so
[7] E. O. Brigham, The Fast Fourier Transform, Prentice-Hall, 1974
[8] H. J. Nussbaumer, Fast Fourier Transform and Convolution Algorithms, Springer-Verlag, 1981
[9] D. F. Elliot, K. R. Rao, Fast Transforms: Algorithms, Analyses and Applications, Academic Press, 1982
[10] Inmos, The Digital Signal Processing Databook , Inmos, 1989
[11] I. Ahmed, ed., Digital Control Applications with the TMS320 Family, Texas Instruments, 1991
[12] C. E. Reid, T. B. Passin, Signal Processing in C, Wiley, 1992
[13] A. Antoniou, Digital Filters: Analysis, Design and Applications, 2nd edition, McGraw-Hill, 1993
[14] C. Marven, G. Ewers, A Simple Approach to Digital Signal Processing, Texas Instruments, 1994
[15] P. M. Clarkson, H. Stark, Signal Processing Methods for Audio, Images and Telecommunications,
Academic Press, 1995

[16] S. K. Mitra, Digital Signal Processing A Computer-Based Approach, McGraw-Hill, 1998.


No que respeita a livros orientados para a utilizao de aplicaes informticas como MatLab, MathCad,
Maple, Mathematica e outras para a resoluo de problemas de Processamento de Sinal, , recomenda-se
[17] C. S. Burrus et al., Computer-Based Exercises for Signal Processing Using MatLab, Prentice-Hall
(1994)
[18] P. Denbigh, System Analysis & Signal Processing, Addison-Wesley, 1998.
Est disponvel na FEUPnet a verso 4.2 de MatLab, assim como a maior parte das suas toolbox,
nomeadamente a de Processamento de Sinal.
Finalmente, importa referir as revistas onde publicada a maioria dos trabalhos cientficos em Processamento
de Sinal
[19] IEEE Transactions on Signal Processing, IEEE
[20] IEEE Signal Processing Magazine, IEEE
[21] Signal Processing, Eurasip
[22] Circuits, Systems, and Signal Processing, Birkhauser-Boston, Inc.
[23] IEE Proceedings: Vision, Image and Signal Processing, IEE.
A disciplina de Processamento de Sinal da FEUP tem a sua homepage na Web

1998 F. J. Restivo
Processamento Digital de Sinal 10

http://www.fe.up.pt/~fjr/pds.html/
onde se encontram disponveis todas as informaes relevantes para o seu funcionamento.

1998 F. J. Restivo
Processamento Digital de Sinal 11

2. Sinais e Sistemas Discretos

2.1 Sinais Discretos


Um sinal discreto uma funo da varivel discreta n N.
A soma de dois sinais discretos, a multiplicao de um sinal discreto por uma constante e o atraso (ou melhor,
deslocamento, ou translaco) de um sinal discreto, so operaes elementares envolvendo sinais discretos
que admitimos serem suficientemente bvias.
Um sinal discreto importante o impuls o unitrio (n)
(n) = 1, se n = 0
0, se no ,
devendo notar-se que qualquer sinal discreto pode ser decomposto numa soma de impulsos unitrios,
deslocados e multiplicados por uma constante
+
x( n ) = x (k )(n k ) .
k =

Outro sinal discreto importante o degrau unitrio u(n)


u(n) = 1, se n 0
0, se no .
Um sistema discreto um sistema que aceita na(s) sua(s) entrada(s) um sinal (sinais) discreto(s) e que fornece
na(s) sua(s) sada(s) um sinal (sinais) discreto(s), sendo conhecida de algum modo a(s) relao (relaes)
entre uma(s) e outra(s).
Consideraremos neste estudo apenas os sistemas discretos lineares e invariantes (LI).
Num sistema discreto linear, se aplicarmos uma entrada que uma combinao linear de duas outras, na sua
sada encontramos a mesma combinao linear mas agora das sadas correspondentes a essas duas entradas,
quando aplicadas separadamente.
Um sistema linear obedece ao princpio da sobreposio.
A resposta de um sistema discreto invariante a uma dada entrada independente do instante (ou ordem,
ndice) em que essa entrada aplicada.

2.2 Convoluo Discreta


Se conhecermos a resposta h(n) de um sistema discreto LI entrada (n), podemos determinar a sua resposta
y(n) a qualquer entrada x(n).
Utilizando a decomposio atrs referida
+
x( n ) = x(k)(n k ) ,
k =

1998 F. J. Restivo
Processamento Digital de Sinal 12

e tendo em conta que o sistema invariante, pelo que a resposta do sistema entrada (n-k) h(n-k), e que
linear, pelo que esta combinao linear respeitada,
+
y( n ) = x(k)h(n k ) .
k =

Esta operao entre os sinais discretos x(n) e h(n) designa-se por convoluo discreta, e goza da propriedade
comutativa, entre outras
+ +
x(k)h(n k ) = h(k)x(n k ) .
k = k =

Realmente,
+ + + +
x(k)h(n k ) = x(k n)h(n k - n ) = x(k n)h(k ) = x(n k)h( k ) .
k = k = k = k =

Exemplo
Suponhamos que ao sistema discreto linear e invariante com resposta impulsional
h(n) = (n) + 0.75(n-1) + 0.5(n-2) + 0.25(n-3)

0
-1 0 1 2 3 4 5 6 7

aplicada a entrada
x(n) = u(n) - u(n-4) ,

0
-1 0 1 2 3 4 5 6 7

e determinemos a resposta y(n) do sistema.


A resposta y(n) dada pela convoluo discreta de x(n) com h(n)
+ +
y( n ) = x(k)h(n k ) = h(k)x(n k ) .
k = k =

Interpretando graficamente a primeira destas expresses como exprimindo que a resposta y(n) pode ser obtida
somando os sinais discretos (os restantes sero nulos) x(0)h(n-0), x(1)h(n-1), x(2)h(n-2) e x(3)h(n-3)

1998 F. J. Restivo
Processamento Digital de Sinal 13

1
0.5
0
-1 0 1 2 3 4 5 6 7

1
0.5
0
-1 0 1 2 3 4 5 6 7

1
0.5
0
-1 0 1 2 3 4 5 6 7

1
0.5
0
-1 0 1 2 3 4 5 6 7

obtem-se o resultado

0
-1 0 1 2 3 4 5 6 7

isto ,

y(n) = x(0)h(n) + x(1)h(n-1) + x(2)h(n-2) + x(3)h(n-3)

y(n) = (n) + 1.75(n-1) + 2.25(n-2) + 2.5(n-3) + 1.5(n-4) + 0.75(n-5) + 0.25(n-6) .


A mesma expresso pode tambm ser interpretada como exprimindo que cada elemento y(n) da resposta se
pode obter multiplicando termo a termo os sinais dois discretos x(k) e h(n-k) e realizando a soma desses
produtos.
Exemplificando, para calcular y(2), ser n = 2, como x(k) e h(2-k) so

1998 F. J. Restivo
Processamento Digital de Sinal 14

0
-1 0 1 2 3 4 5 6 7

0
-1 0 1 2 3 4 5 6 7

y(2) = x(0)h(2) + x(1)h(1) + x(2)h(0) = 0.5 + 0.75 + 1 = 2.25 .


Para obter os outros elementos de y(n) seria necessrio deslocar h(n-k) relativamente a x(k), e repetir este
clculo, numa interpretao geomtrica bem conhecida.
De acordo com a propriedade comutativa da convoluo, idnticas interpretaes resultariam se os papis de
x(n) e de h(n) se invertessem.

2.3 Sistemas Discretos FIR e IIR


Os sistemas discretos podem ser classificados em
tipo FIR - com resposta impulsional finita,
tipo IIR - com resposta impulsional infinita,
conforme a sua resposta impulsional h(n) tem ou no um nmero finito de elementos no nulos.
Os sistemas discretos do tipo FIR gozam da propriedade de poderem ser implementados directamente a partir
da sua resposta impulsional, uma vez que a soma
+
y( n ) = h(k)x(n k )
n =

tem nesse caso um nmero finito de termos.


Exemplo
O sistema com resposta impulsional finita
h(n) = (3-n)(u(n) - u(n-3))

0
-1 0 1 2 3 4 5 6 7

pode ser implementado pela equao s diferenas


y(n) = 3x(n) + 2x(n-1) + x(n-2) .
Os coeficientes da equao s diferenas so os termos da resposta impulsional do sistema.

1998 F. J. Restivo
Processamento Digital de Sinal 15

2.4 Sistemas Discretos Recursivos e No Recursivos


O sistema discreto
y(n) = 3x(n) + 2x(n-1) + x(n-2)
do tipo no recursivo, uma vez a resposta y(n) do sistema se pode calcular exclusivamente a partir da sua
entrada x(n).
Um sistema discreto do tipo FIR pode sempre ser implementado no recursivamente, como bvio.
O sistema discreto
y(n) = x(n) + 0.5y(n-1)
do tipo recursivo, uma vez que a sua resposta y(n) depende de respostas anteriores.
A resposta impulsional de um sistema do tipo recursivo normalmente de comprimento infinito.
Supondo que o sistema anterior se encontra inicialmente relaxado, isto , que y(-1) = 0, obtem-se facilmente
y(n) = 0.5nu(n),
o que quer dizer que o sistema do tipo IIR.
Quando utilizadas para realizar a mesma especificao, as solues no recursivas so normalmente mais
complexas do ponto de vista aritmtico, porque no clculo de cada elemento da sua resposta no se utiliza o
trabalho j realizado para o clculo de outros elementos dessa resposta.
Num sistema do tipo no recursivo, , por outro lado, possvel calcular isoladamente um qualquer termo da
sua resposta a uma determinada entrada, o que pode ser vantajoso em determinadas situaes.

2.5 Operao em Tempo Real e Operao em Tempo Diferido


Um sistema opera em tempo real quando recebe os elementos do sinal de entrada medida que vo sendo
produzidos e calcula os elementos do sinal de sada a esse ritmo.
Na equao s diferenas que rege o funcionamento de um sistema em tempo real no podem figurar nem
elementos ainda no recebidos do sinal de entrada nem elementos ainda no calculados do sinal de sada.
Em muitas situaes, os sistemas operam em tempo diferido, com sinais de entrada previamente armazenados.

2.6 Sistemas Discretos Causais


Um sistema que opere em tempo real necessariamente causal, uma vez que no de admitir neste caso um
comportamento antecipatrio relativamente ao sinal de entrada.
De um modo geral, pode dizer-se que um sistema causal se, e s se, para quaisquer duas entradas x1(n) e
x2(n) tais que
x1(n) = x2(n) , n < n 0
as respectivas respostas y 1(n) e y 2(n) forem tais que
y 1(n) = y 2(n) , n < n 0 .
Em termos da sua resposta impulsional h(n), pode demonstrar-se que a condio necessria e suficiente de
causalidade
h(n) = 0 , n < 0 .

2.7 Sistemas Discretos Estveis


Em termo s gerais, num sistema estvel a uma entrada limitada corresponde sempre uma sada limitada.
Os efeitos de uma situao de instabilidade num sistema discreto e num sistema contnuo so contudo de
natureza diferente.

1998 F. J. Restivo
Processamento Digital de Sinal 16

Naqueles, a instabilidade poder eventualmente provocar uma situao de overflow, mas mesmo este pode
muitas vezes ser "evitado" mediante uma representao adequada dos sinais.
Em termos da sua resposta impulsional h(n), pode demonstrar-se que a condio necessria e suficiente de
estabilidade
+
S= h( k) < .
k =

A condio suficiente: na realidade, se esta condio se verificar e se

x( n) < M

ento
+ + +
y( n) = h( k ) x( n k) M h (k ) < h( k) < .
k = k = k =

E a condio necessria: entrada

h ( n )
x(n)= se h(n) 0
h( n )

0 se h(n) = 0

corresponde a sada para n = 0


+ + + h ( k ) +
h ( k)
2
y(0) = h( k) x( k) = h (k ) =
h( k) k = h( k)
= h( k) =S,
k = k = k =

que ilimitada se S = .

2.8 Frequncia de um Sinal Discreto


A importncia do estudo do comportamento dos sistemas LI no domnio das frequncias conhecida.
No caso dos sistemas discretos, o conceito de frequncia difere ligeiramente daquele a que estamos mais
habituados, pelo que o vamos analisar com algum detalhe.
Um sinal contnuo sinusoidal com frequncia f Hz, ou frequncia angular radianos por segundo
(reservamos o smbolo para frequncia angular de um sinal discreto), tem a expresso geral
xc (t) = sin(2ft+) = sin(t+) , = 2f ,
em que a fase da sinuside, e corresponde a uma simples translaco.
O inverso da frequncia o perodo
T = 1/f .
Por exemplo, o sinal contnuo sinusoidal com frequncia angular /2 radianos por segundo
xc (t) = sin(t/2) ,
tem um perodo T igual a 4 s e uma representao grfica perfeitamente clara

1998 F. J. Restivo
Processamento Digital de Sinal 17

0.5

-0.5

-1
0 2 4 6 8 10

Um sinal discreto sinusoidal com frequncia angular radianos tem a expresso geral
x(n) = sin(n+) .
A relao entre o sinal discreto e o sinal contnuo reside no facto de o sinal discreto sinusoidal com
frequncia angular se poder obter por amostragem unitria (perodo 1 s) do sinal contnuo com essa
frequncia.
H, no entanto, uma diferena fundamental, que resulta de no existir a noo de tempo associada ao sinal
discreto sinusoidal, e evidenciada pelo facto de se medir em radianos por segundo e se medir em
radianos. Enquanto que a frequncia angular do sinal contnuo sinusoidal o ngulo que a sinuside
avana por unidade de tempo, a frequncia angular do sinal discreto sinusoidal o ngulo que a sinuside
avana entre dois termos consecutivos do sinal.
O sinal discreto sinusoidal com frequncia angular /2 radianos ser
x(n) = sin(0.5n) = ..., 0, 1, 0, -1, 0, 1, 0, -1, ... ,
e pode obter-se por amostragem unitria do sinal contnuo com essa frequncia representado anteriormente.

0.5

-0.5

-1
0 2 4 6 8 10

2.8.1 Fase
A noo de fase de um sinal discreto no obvia, como se pode concluir comparando dois sinais discretos
sinusoidais com a mesma frequncia e fases diferentes.

1998 F. J. Restivo
Processamento Digital de Sinal 18

0.5

-0.5

-1
0 2 4 6 8 10

0.5

-0.5

-1
0 2 4 6 8 10

A fase corresponde, na realidade, a uma translaco da sinuside contnua associada ao sinal discreto
sinusoidal, que no se pode confundir com uma translaco do sinal discreto propriamente dito.

0.5

-0.5

-1
0 2 4 6 8 10

0.5

-0.5

-1
0 2 4 6 8 10

2.8.2 Gamas de frequncias


Uma vez que as funes sinusoidais so peridicas, com perodo 2,
sin(n+) = sin(( + 2k)n+) , k inteiro ,
e haver uma infinidade de sinais discretos sinusoidais, com frequncias diferindo de um mltiplo de 2, que
so na realidade o mesmo sinal discreto, como a figura a seguir, em que se representa o sinal discreto
sinusoidal
x(n) = sin(2.5n) ,

1998 F. J. Restivo
Processamento Digital de Sinal 19

ilustra.

0.5

-0.5

-1
0 2 4 6 8 10

Este sinal discreto sinusoidal ..., 0, 1, 0, -1, 0, 1, 0, -1, ... pode ser obtido por amostragem unitria de uma
infinidade de sinais sinusoidais contnuos.
De facto, no intervalo [, [, ou no intervalo [0, 2[, por exemplo, podem encontrar-se todas as frequncias
digitais distintas!
Esta ambiguidade da amostragem ser estudada no captulo 3. Por agora, pense-se apenas no seguinte.
Numa imagem muito utilizada, pode gerar-se um sinal sinusoidal contnuo com frequncia angular
imaginando a projeco de um ponto sobre uma circunferncia rodando a radianos por segundo sobre um
eixo que passe pelo seu centro.
Se um observador s puder observar a circunferncia, ou medir o sinal, em instantes discretos n t, e detectar
que entre dois desses instantes a sua posio variou de , no tem meios para saber se realmente a
circunferncia rodou de ou de +2k, k inteiro.

2.9 Resposta em Frequncia de um Sistema Discreto


semelhana do que acontece com os sistemas contnuos, a resposta em frequncia de um sistema discreto
com resposta impulsional h(n) pode obter-se aplicando sua entrada o sinal discreto exponencial complexo
x(n) = ejn ,
sinal a partir da qual se podem definir todos os sinais discretos sinusoidais com frequncia .
Recordam-se aqui algumas relaes importantes

e j n + e jn
cos(n ) =
2

e jn e jn
sin(n ) =
2j

sin(n + ) = sin( ) cos(n ) + cos( ) sin(n ) .

Como vimos anteriormente, a resposta de um sistema discreto com resposta impulsional h(n) ao sinal discreto
exponencial complexo a convoluo discreta destes dois sinais, e vale
+ +
y( n ) = h ( k ) e j ( n k ) = h (k ) e jk e jn = H (e j ) e j n
k = k =

com
+
H ( e j ) = h ( k ) e j k .
k =

A resposta do sistema a sua entrada multiplicada por H(e j ), e esta funo de a resposta em frequncia
do sistema discreto.

1998 F. J. Restivo
Processamento Digital de Sinal 20

H(e j ) uma funo peridica de , com perodo 2


+ +
H ( e j( +2 ) ) = h ( k ) e j( +2 ) k = h (k ) e jk e j2k = H (e j ) .
k = k =

Esta propriedade est obviamente relacionada com a ambiguidade na representao de uma sinuside atravs
de uma sua amostragem, que atrs vimos. Pode-se dizer que, como um sistema discreto no "distingue"
aquelas diferentes frequncias, apresenta o mesmo comportamento a todas elas.
Exemplo
Vamos determinar a resposta em frequncia do sistema discreto
x ( n ) + 2x( n 1) + x ( n 2)
y( n ) = .
4
Como evidente, o sistema discreto dado tem resposta impulsional
h(n) = 0.25(n) + 0.5(n-1) + 0.25(n-2)
e portanto resposta em frequncia
H(e j ) = 0.25 + 0.5e -j + 0.25e -2j = (0.5 + 0.5cos())e -j .
Na figura a seguir, representa-se H(e j ) em mdulo e fase. Os grficos foram obtidos em MATLAB, utilizando
o seguinte programa (fft quer dizer Fast Fourier Transform)
h=fft([0.25 0.5 0.25],128);
w=-pi:pi/64:pi-pi/64;
h=fftshift(h);
a=[-pi,pi,0,1];
f=[-pi,pi,-pi,pi];
clf, subplot(2,1,1), plot(w,abs(h)), axis(a), grid on
subplot(2,1,2), plot(w,angle(h)), axis(f), grid on

0.5

0
-3 -2 -1 0 1 2 3

-2

-3 -2 -1 0 1 2 3

1998 F. J. Restivo
Processamento Digital de Sinal 21

A resposta impulsional de um sistema discreto pode ser obtida a partir sua resposta em frequncia, tirando
partido da periodicidade desta funo. Como
+
H ( e j ) = h (k ) e jk
k =

uma funo peridica de , com perodo 2, ento, H(e j ) pode ser desenvolvida em srie de Fourier, por
exemplo na forma
+
H ( e j ) = C k e jk ,
k =

em que os coeficientes Ck so dados por



1
Ck = H ( e j )e jk d ,
2

e bvio, por comparao das expresses anteriores, que



1
h (k ) = H ( e j )e jk d .
2

2.10 Transformada de Fourier de um Sinal Discreto


A relao biunvoca entre h(n) e H(e j ) a transformada de Fourier, como seria de esperar.
Um sinal discreto x(n) ter transformada de Fourier desde que a soma
+
X ( e j ) = x( n ) e jn
n =

exista, sendo a transformada de Fourier inversa dada por



1
x (n ) = X( e j )e jn d .
2

Exemplo
Pretende-se determinar a resposta impulsional h(n) do filtro digital passa baixo ideal, com frequncia de corte
c . A resposta em frequncia H(e j ) deste sistema naturalmente peridica, de perodo 2, e tem a seguinte
forma no intervalo [, [
H(e j ) = 1, se ||c
0, se no ,
Utilizando a transformada de Fourier inversa, obtem-se
c
c
H ( e j )e j n d = e
jn
1 1
h (n ) = d = sinc( c n ) ,
2 2
c

que uma amostragem da funo seno cardinal.


Representa a seguir h(n) para c = /6 e e para c = /3, respectivamente.

1998 F. J. Restivo
Processamento Digital de Sinal 22

0.3
0.2
0.1
0
-0.1
-20 -15 -10 -5 0 5 10 15 20

0.3
0.2
0.1
0
-0.1
-20 -15 -10 -5 0 5 10 15 20

Os sistemas obtidos so do tipo IIR, pelo que no podem ser realizados directamente a partir da sua resposta
impulsional (nem por qualquer outro processo - so sistemas ideais).
Na prtica, pode-se contudo realizar aproximaes, por exemplo do tipo
h a (n) = h(n)(u(n+n 0) - u(n-n 0-1)) ,
que sero, em princpio, tanto melhores quanto maior for n0. Representam-se a seguir as respostas em
frequncia correspondentes aos dois valores de c atrs indicados, para n 0 = 20.

1.5

0.5

0
-3 -2 -1 0 1 2 3

1.5

0.5

0
-3 -2 -1 0 1 2 3

O programa utilizado para obter estas representaes am MATLAB foi (note-se que, em MATLAB,
sin( x)
sin c( x ) = )
x

1998 F. J. Restivo
Processamento Digital de Sinal 23

n=-20:1:20;
h6=sinc(n/6)/6;
h3=sinc(n/3)/3;
a=[-20,20,-0.1,0.4];
clf, subplot(2,1,1), stem(n,h6), axis(a), grid on
subplot(2,1,2), stem(n,h3), axis(a), grid on
pause
w=-pi:pi/64:pi-pi/64;
x6=fftshift(fft(h6,128));
x3=fftshift(fft(h3,128));
a=[-pi,pi,0,1.5];
subplot(2,1,1), plot(w,abs(x6)), axis(a), grid on
subplot(2,1,2), plot(w,abs(x3)), axis(a), grid on
Note-se que estes sistemas no so causais, pelo que, em tempo real, seria ainda necessrio deslocar h a (n) de
n 0, introduzindo-se assim um atraso n 0 no clculo da resposta do sistema.

2.11 Propriedades da Transformada de Fourier


A transformada de Fourier uma transformada linear, tendo as propriedades da decorrentes: a transformada
de Fourier da soma de dois sinais discretos a soma das suas transformadas de Fourier, e a transformada de
Fourier de um sinal discreto multiplicado por uma constante a sua transformada de Fourier multiplicada por
essa constante.

2.11.1 Propriedade da Translaco


Consideremos um sinal discreto x(n) e a sua transformada de Fourier X(e j ).
A transformada de Fourier do sinal discreto x(n-k)
+ +
x( n k ) e jn = x(n ) e j(n +k ) = e jk X( e j ) .
n = n =

Uma vez que


+ +
e jn x(n) e jn = x (n) e j( )n = X(e j( ) ) ,
n = n =

o sinal discreto cuja transformada de Fourier X(e j()) ejnx(n).

2.11.2 Propriedade da Convoluo


A expresso da transformada de Fourier inversa

1
x (n ) = X( e j )e jn d
2

mostra-nos como um sinal discreto x(n) pode ser decomposto numa combinao linear (integral) de sinais
discretos elementares, as exponenciais complexas ejn.
Se este sinal for aplicado entrada de um sistema discreto com resposta em frequncia H(e j ), como a
resposta do sistema a cada uma daquelas exponenciais H(e j )e jn, a sua resposta entrada x(n) contm a
mesma combinao linear e

1998 F. J. Restivo
Processamento Digital de Sinal 24


1 jn
y( n ) =
2 X(e j )H(e j )e d ,

cuja transformada de Fourier X(e j )H(e j ).


A transformada de Fourier da convoluo de dois sinais discretos assim o produto das suas transformadas
de Fourier.
altura de colocar em paralelo duas expresses j conhecidas, que nos ensinam a decompor um sinal discreto
em sinais discretos elementares, a primeira no domnio dos tempos, em que o sinal elementar o impulso
unitrio
+
x( n ) = x (k )(n k )
k =

e a segunda no domnio das frequncias, em que o sinal elementar a sinuside complexa



1
x (n ) = X( e j )e jn d .
2

A resposta de um sistema discreto LI a um destes sinais elementares, a resposta impulsional h(n) ou a


resposta em frequncia H(e j ), caracteriza completamente um sistema H.

(n) h(n)
H
e jn H(e j)e j n

A transformada de Fourier estabelece a ligao entre estas duas caracterizaes.

2.11.3 Propriedades de Simetria


Se a transformada de Fourier de um sinal discreto x(n) X(e j ), a transformada de Fourier do sinal discreto
conjugado x(n)
+ +
x ( n ) e jn = (x (n ) e jn ) = X(e j ) .
n = n =

Daqui se deduzem algumas propriedades de simetria importantes.


Se um sinal discreto x(n) for puramente real,
x(n) = x(n) ,
a sua transformada de Fourier verifica a igualdade
X(e -j ) = X(e j ) ,
pelo que a transformada de Fourier de um sinal discreto puramente real tem parte real par e parte imaginria
mpar, isto ,
XR(e -j ) = XR(e j ) ,
XI(e -j ) = -XI(e j ) .
Se um sinal discreto x(n) for puramente imaginrio,
x(n) = -x(n) ,
e a sua transformada de Fourier verifica a igualdade
X(e -j ) = -X(e j ) ,

1998 F. J. Restivo
Processamento Digital de Sinal 25

pelo que a transformada de Fourier de um sinal discreto imaginrio puro tem parte real mpar e parte imaginria
par.
Se a transformada de Fourier X(e j ) de um sinal discreto for puramente real,
X(e j ) = X(e j ) ,
e o sinal discreto x(n) verifica a igualdade
x(-n) = x(n) ,
pelo que um sinal discreto com transformada de Fourier puramente real tem parte real par e parte imaginria
mpar.
Se a transformada de Fourier X(e j ) de um sinal discreto for puramente imaginria,
X(e j ) = -X(e j ) ,
e o sinal discreto x(n) verifica a igualdade
x(-n) = -x(n) ,
pelo que um sinal discreto com transformada de Fourier puramente imaginria tem parte real mpar e parte
imaginria par.
Um sinal discreto x(n) real e par tem transformada de Fourier X(e j ) real e par.
As correspondncias

sinal transformada de Fourier


puramente real parte real par, parte imaginria mpar
puramente imaginrio parte real mpar, parte imaginria par
parte real par, parte imaginria mpar puramente real
parte real mpar, parte imaginria par puramente imaginria

podem ser condensadas a partir das noes de parte simtrica conjugada e parte anti-simtrica conjugada de
um sinal discreto x(n) ou da sua transformada de Fourier X(e j ),

x( n ) + x ( n )
x e (n ) = ,
2

x( n ) x ( n )
x o(n ) = ,
2

X ( e j ) + X ( e j )
X e ( e j ) = ,
2

X ( e j ) X ( e j )
X o (e j ) = ,
2
respectivamente.
Estas definies permitem identificar as correspondncias

sinal / transformada de Fourier transformada de Fourier / sinal


parte real parte simtrica conjugada
parte imaginria parte anti-simtrica conjugada

entre o sinal e a sua transformada e reciprocamente.

1998 F. J. Restivo
Processamento Digital de Sinal 26

2.12 Equao s Diferenas e Resposta em Frequncia


Um sistema discreto LI rege-se por uma equao s diferenas
N 1 N 1
y( n ) = a kx (n k ) + bk y( n k ) ,
k =0 k =1

com os coeficientes b k nulos se o sistema for no recursivo.


Esta equao, tal como uma equao diferencial, admite uma soluo constituda por dois termos, um
correspondente resposta natural do sistema e outro correspondente sua resposta forada, e dependente
das condies iniciais, que sero nulas se o sistema for causal.
A resposta natural do sistema tende normalmente para zero num sistema estvel.
No cabe nesta disciplina o estudo das equaes s diferenas, contudo. A transformada em z, que
estudaremos no captulo seguinte, normalmente utilizada nesse estudo.
Calculando a transformada de Fourier dos dois membros da equao anterior
N 1 N-1
Y( e j ) = a k e jk X( e j ) + bk e jk Y(e j ) .
k =0 k =1

pelo que a resposta em frequncia do sistema dada por


N 1

Y( e j )
a k e jk
H ( e j ) = = k =0 .
X ( e j ) N -1
1- bk e j k
k =1

Exemplo
Vamos determinar a equao s diferenas que rege o sistema discreto com resposta impulsional
h(n) = 0.3(0.7)nu(n) .
A resposta em frequncia do sistema discreto
+ +
0.7
n 0.3
H ( e j ) = h ( n ) e jn = 0.3 e jn =
k = n =0 1 0.7e j

e a equao s diferenas respectiva


y(n) = 0.3x(n) + 0.7y(n-1) .

1998 F. J. Restivo
Processamento Digital de Sinal 27

3. Amostragem de Sinais Contnuos

3.1 Introduo
Em muitas situaes, os sinais discretos resultam da amostragem de sinais contnuos.
No caso da amostragem ser peridica, tem-se
x(n) = xc (nT) ,
em que x(n) o sinal discreto, xc (t) o sinal contnuo, e o perodo de amostragem.
A frequncia angular de amostragem
a = 2/T.
Entre as transformadas de Fourier Xc (j), do sinal contnuo, e X(e j ), do sinal discreto, existe necessariamente
uma relao, que vamos estabelecer.
Consideremos, por um lado, a transformada de Fourier inversa do sinal contnuo xc (t)

1 jt
x c(t) =
2 X c( j )e d ,

donde

1 jn T
x( n) =
2 Xc ( j)e d ,

e, por outro lado, a transformada de Fourier inversa do sinal discreto x(n)



1
x (n ) = X( e j )e j n d .
2

Realizando na primeira das duas ltimas expresses a mudana de varivel


,
obtem-se

1 j j n
x( n) =
2T Xc (
T
)e d ,

que se pode escrever, subdividindo o domnio de integrao em intervalos de comprimento 2,


+ ( 2 r +1)
j jn

1
x( n) = Xc ( )e d ,
2T r = T
( 2 r 1)

e, reduzindo todos os integrais ao mesmo domnio de integrao [-, [,

1998 F. J. Restivo
Processamento Digital de Sinal 28


1 + j( + 2r ) j(+ 2 r) n
x( n) =
2T r =
Xc (
T
)e d ,

+
j( + 2r ) jn
Xc (
1
x( n) = )e d ,
2T T
r = -

donde, por simples comparao com a segunda daquels expresses,

1 + j( + 2r)
X ( e j ) =
T r =-
Xc(
T
) .

A transformada de Fourier do sinal discreto x(n) uma soma de uma infinidade de parcelas, cada uma das
quais resultante, a menos do factor 1/T, da transformada de Fourier do sinal contnuo xc (t) atravs da mudana
de varivel linear
+ 2r
.
T
A frequncia angular mede-se em radianos por segundo, e a frequncia angular digital mede-se em
radianos.
A parcela correspondente a r = 0,
1 j
Xc ( ) ,
T T
regista, em termos da amplitude, uma alterao de escala resultante da multiplicao por 1/T e, em termos da
varivel independente, uma alterao de escala resultante da mudana de varivel /T .
Se a transformada de Fourier Xc (j) do sinal analgico for, por exemplo,

0
a M 0 M a
em que a a frequncia angular de amostragem, ento a parcela de X(e j ) correspondente a r = 0

T-1

0
-2 - MT 0 MT 2
frequncia angular de amostragem a = 2/T "corresponde" a frequncia "digital" 2. A frequncia de
amostragem estabelece a relao entre as frequncias "analgica" e "digital".
Cada uma das restantes parcelas,

1998 F. J. Restivo
Processamento Digital de Sinal 29

1 j( + 2r )
Xc ( ) ,
T T
uma translaco de um mltiplo de 2 da parcela correspondente a r = 0

T-1

0
-2 - MT 0 MT 2
Exemplo
O sinal contnuo
xc (t) = e-tu(t)
tem transformada de Fourier
1
X c (j ) = .
1 + j

O sinal discreto que se obtem de xc (t) atravs de uma amostragem frequncia angular
a = 40 radianos/s , = 0.05 s

x(n) = xc (0.05n) ,
tem transformada de Fourier
+

20 1
X(e j ) = .
r = 1 + j20 + j40r
-1

Graficamente, |Xc (j)| pode obter-se com o seguinte programa em MATLAB


w=-60:1:60;
h=1./(1+j.*w);
clf, subplot(2,1,1), plot(w,abs(h)), axis([-60,60,0,1]), grid on
(note-se como simples tratar nmeros complexos em MATLAB) e

0.5

0
-60 -40 -20 0 20 40 60

enquanto que em |X(e j )|, que a seguir tambm se representa, so visveis as mudanas de escala e a
sobreposio das diferentes parcelas presentes.

1998 F. J. Restivo
Processamento Digital de Sinal 30

0
-6 -4 -2 0 2 4 6 8 10 12

De notar que poderamos facilmente obter uma expresso compacta para X(e j ), pois, como
x(n) = e-0.05nu(n) ,
1
X(e j ) = -0.05 -j
,
1-e e
e desenhar o ltimo grfico a partir desta expresso.

3.1 Teorema da Amostragem


A sobreposio das diferentes parcelas de X(e j ) inconveniente do ponto de vista da representao de um
sinal contnuo por uma sua amostragem, uma vez que da transformada de Fourier do sinal discreto no
possvel recuperar novamente a transformada de Fourier do sinal contnuo.
A recuperao apenas ser possvel se as diferentes parcelas de

1 + j( + 2r)
X(e j ) =
T r= -
Xc (
T
)

no se sobrepuserem, isto , se ocuparem regies diferentes de .


Uma condio a que Xc (j) tem de obedecer ocupar uma regio limitada de , isto , xc (t) tem de ser um sinal
com espectro (transformada de Fourier) de banda limitada.
Outra condio a frequncia angular de amostragem 2/T ser tal que as contribuies das diferentes parcelas
de X(e j ) no se sobreponham, isto ,
2/T > 2 M,
em que M a frequncia limite superior de banda do sinal, em radianos por segundo.
Um sinal contnuo com espectro de banda limitada ao intervalo [- M , M] deve ser amostrado a uma
frequncia angular igual ou superior a 2 M, para ser possvel a sua reconstruo exacta a partir do sinal
discreto resultante.

3.2 Aliasing
O fenmeno do aliasing ocorre quando no se verificam as condies do teorema da amostragem, e resulta da
sobreposio das diferentes parcelas de X(e j ).
Quando M > /T, tudo se passa como se as partes do espectro de Xc (j) exteriores ao intervalo [-/T, /T] se
fossem dobrando sucessivamente em torno destas frequncias.

3.2.1 Uma explicao simples


Quando estamos a olhar para as imagens na TV de uma corrida de Frmula 1, por exemplo, apercebemo -nos
por vezes que as rodas dos carros parecem ter movimentos estranhos, parecendo mesmo que se imobilizam,
ou que giram em sentido contrrio ao esperado. Este fenmeno um efeito tpico do aliasing.

1998 F. J. Restivo
Processamento Digital de Sinal 31

Na TV, a realidade amostrada cinquenta vezes por segundo, e a reproduo dessa sequncia de imagens
que chega a nossas casas.
Se duas imagens consecutivas de uma roda de um carro em movimento estiveram na situao que a figura
representa, ns automaticamente as interpretamos (aliasing) como se entre as duas imagens a roda tivesse
girado 45 no sentido retrgrado.

No entanto, nada nos garante que tal tenha acontecido. Pode ter girado qualquer nmero inteiro de voltas
mais 45, no sentido retrgrado, ou pode ter girado qualquer nmero inteiro de voltas mais 315, no sentido
directo, ou pode ter realizado os movimentos mais extravagantes. No possvel saber!
A amostragem , por natureza, uma operao que conduz perda irremedivel de quase a totalidade da
informao contida no sinal amostrado.
Agora, se se souber, por exemplo, que a cadncia de imagens tal que entre duas imagens consecutivas a
roda gira, no mximo, 180, ento, j possvel ter alguma certeza sobre o que se est a passar.
Se a roda girar a f voltas/s, realiza meia volta em 1/2f s, e a cadncia mnima de imagens que permite recuperar o
movimento 2f imagens/s, o dobro da velocidade a que a roda gira.
O teorema da amostragem, ou de Nyquist, diz exactamente isto!
Exemplo
O sinal contnuo
xc (t) = sinc2(10t)
a seguir representado

0.5

0
-1 -0.5 0 0.5 1

tem transformada de Fourier Xc (j) de banda limitada a -20 < < 20 radianos por segundo.
Na realidade, a transformada de Fourier de sinc(10t) um pedestal entre 10 e 10 radianos por segundo, como
se pode confirmar calculando a tansformada de Fourier inversa de um pedestal no domnio das frequncias
X(j) = 1, se || M
0, se no ,
que
+ c
jt j t c
e
1 1
x( n ) = X( j)e d = d = sinc( c t ) .
2 2
c

1998 F. J. Restivo
Processamento Digital de Sinal 32

Atendendo a que ao produto de dois sinais corresponde a convoluo das suas transformadas de Fourier
ento a transformada de Fourier de sinc2(10t) a convoluo deste pedestal com ele prprio, ou seja, um sinal
triangular entre 20 e 20 radianos por segundo.
Se procedermos a uma amostragem daquele sinal frequncia angular de 40 radianos por segundo, isto ,
obedecendo ao teorema da amostragem, no se verificar a ocorrncia de aliasing.

1.5

0.5

0
-3 -2 -1 0 1 2 3
Se realizarmos essa amostragem frequncia angular de, por exemplo, 30 radianos por segundo, isto , no
obedecendo ao teorema da amostragem, verificar-se- a ocorrncia de aliasing.

1.5

0.5

0
-3 -2 -1 0 1 2 3
O programa em MATLAB seguinte serviu para calcular as transformadas de Fourier dos dois sinais
amostrados, no intervalo [-, ]:
n=-64:1:63;
x40=sinc(2*n/4).*sinc(2*n/4);
x30=sinc(2*n/3).*sinc(2*n/3);
h40=fftshift(fft(x40));
h30=fftshift(fft(x30));
w=-pi:pi/64:pi-pi/64;
a=[-pi,pi,0,2];
clf, subplot(2,1,1), plot(w,abs(h40)), axis(a), grid on
subplot(2,1,2), plot(w,abs(h30)), axis(a), grid on

3.3 Reconstruo de um Sinal Amostrado


A reconstruo de um sinal amostrado faz-se calculando Xc (j) a partir de X(e j ), o que s possv el se no
tiver ocorrido aliasing. Esta operao implica por um lado eliminar as bandas de X(e j ) fora do intervalo [-, ]
e por outro realizar a mudana de varivel ,
+
X(e j ) = x(n )e jn
n =

1998 F. J. Restivo
Processamento Digital de Sinal 33

Xc (j) = TX(e jT), se -/T < < /T


0, se no .
Calculando em seguida a transformada de Fourier inversa
/ T + + /T


T T
xc (t) = x(n)e - j Tn e jtd = x(n) e
j( t nT)
d
2 2
/ T n = - n =- / T

x(n) 2 j(t nT) [e j (t nT) ] / T = x(n)sinc(


+ +
T 1 /T (t - nT)
xc (t) = ) .
n = - n = - T

obtem-se um sinal de banda limitada nas condies pretendidas.


Realmente, cada componente
x(n)sinc((t-nT)/T)
de banda limitada, e toma o valor zero em todos os pontos de amostragem, excepto no ponto t = n, onde
toma o valor x(n), como se mostra no exemplo seguinte.

0 2 4 6 8 10

O resultado

0 2 4 6 8 10

3.4 Amostragem Real


A amostragem ideal que estudamos
x(n) = xc (n)
no realizvel na prtica. Uma amostragem real pode contudo em muitos casos ser expressa em termos de
uma amostragem ideal, ficando desse modo completamente caracterizada, para todos os efeitos prticos, e
nomeadamente para a sua compensao.
Exemplo
Um modelo para muitas situaes de amostragem real o do valor mdio

1998 F. J. Restivo
Processamento Digital de Sinal 34

(n+1)T (n+2)T
(n-1)T nT- nT

nT
1
x(n) =
xc (t )dt ,
nT

que se pode exprimir como a amostragem ideal da convoluo


xc (t) (u(t) - u(t-))/ ,
ou seja, do sinal contnuo xc (t) filtrado por um filtro passa baixo com resposta impulsional
h(t) = (u(t) - u(t-))/ .
A resposta em frequncia respectiva
H(j) = sinc(/2)e -0.5j
e, como seria de esperar, quanto menor for , maior a largura de banda do filtro e mais prxima da ideal esta
amostragem real.

0.5

-0.5
-4/ -2/ 0 2/ 4/

Como, normalmente, muito menor que , ento 2/ >> /T e o efeito deste filtro passa-baixo , nesses
casos, muito pequeno.
Por outro lado, esse efeito pode sempre ser compensado noutro ponto da cadeia de processamento,
nomeadamente no processador de sinal.

3.5 Reconstruo Real


A reconstruo do sinal contnuo a partir da expresso
+
(t - nT)
xc (t) = x(n)sinc( T
)
n = -

normalmente problemtica, e mesmo impossvel em tempo real, por ser uma operao no causal.
Em muitos casos, a reconstruo que realmente se faz da forma
+
xc (t) = x(n) (t - nT) ,
n =-

em que (t) uma determinada funo de reconstruo, que se pode facilmente obter reconstruindo o sinal
discreto (n).
Calculando a transformada de Fourier

1998 F. J. Restivo
Processamento Digital de Sinal 35

+
X c (j) = x(n) (j)e - jnT = (j)X(e jT ) ,
n =-

em que (j) a transformada de Fourier de (t).


Comparando esta expresso com a expresso da reconstruo ideal
Xc (j) = TX(e jT), se -/T < < /T
0, se no ,
pode dizer-se que Xc (j) se obtem de X(e j ), no atravs de um filtro passa-baixo ideal, cujo efeito eliminar
as bandas de X(e j ) fora do intervalo [, ], mas sim atravs de um filtro, (j), que, para alm de no ter
ganho constante neste intervalo, eventualmente apenas atenua aquelas bandas.
Exemplos
Na reconstruo de ordem 0,
1.5

0.5

-0.5
-2 0 2 4 6 8 10
2

1.5

0.5

0
-2 0 2 4 6 8 10
(t) = u(t) - u(t-T) ,
(j) = Tsinc(0.5T)e -0.5j ,
como se sabe, e na reconstruo de ordem 1 (interpolao linear),
1.5

0.5

-0.5
-2 0 2 4 6 8 10

1998 F. J. Restivo
Processamento Digital de Sinal 36

1.5

0.5

0
-2 0 2 4 6 8 10
(u(t + 0.5T) - u(t - 0.5T)) (u(t + 0.5T) - u(t - 0.5T))
(t) = ,
T
(j) = Tsinc2(0.5T) .

3.6 Interpolao
A interpolao corresponde ao aumento da frequncia de amostragem do sinal contnuo, e s , naturalmente,
possvel se este tiver j sido amostrado a uma frequncia satisfazendo o teorema da amostragem.
Sejam x(n) um sinal discreto com transformada de Fourier X(e j ) e x0(n) o sinal discreto que se obtem do
anterior intercalando M-1 zeros entre cada dois valores de x(n)
x0(n) = x(n/M), se n mltiplo de M
0, se no .
A transformada de Fourier de x0(n) evidentemente
X0(e j ) = X(e jM) ,
isto , a transformada de Fourier X(e j ) como que comprimida no intervalo [-/M, /M] e depois repetida
periodicamente com perodo 2/M
Se se notar, a partir da expresso
+
j( + 2r )
Xc (
1
X(e j ) = ),
t r =-
t

que amostrar a uma frequncia M vezes maior um sinal contnuo tem exactamente por efeito comprimir M
vezes a transformada de Fourier do sinal discreto resultante e multiplicar por M a sua amplitude, pode-se
concluir que a interpolao se consegue realizando uma filtragem passa baixo de x0 (n) com frequncia de corte
/M e ganho M.

1998 F. J. Restivo
Processamento Digital de Sinal 37

- /M

A interpolao uma situao em que os filtros digitais do tipo no recursivo so muitas vezes utilizados,
tirando partido do facto de apenas 1 em M elementos do sinal discreto x0(n), no mximo, serem no nulos.
Assim, na equao
L 1
x i (n ) = h ( n )x0( n k )
n =0

apenas L/M coeficientes h(k) intervm no clculo de um elemento de xi(n), como se o filtro fosse realmente de
comprimento L/M.
Estes L/M coeficientes variam contudo com a ordem do elemento de xi(n).
Se L for um mltiplo de M, os L coeficientes h(k) podem ser arranjados em M conjuntos
conjunto
0 h(0) h(M) ... h(L-M)
1 h(1) h(M+1) ... h(L-M+1)
... ... ... ... ...
M-1 h(M-1) h(2M-1) ... h(L-1)

sendo utilizado o conjunto n mod M para o clculo do elemento xi(n), e tudo se passando como se fosse
utilizado um filtro no recursivo de comprimento L/M e coeficientes variveis (no invariante).
Em MATLAB, a funo interp realiza a interpolao. O programa a seguir mostra-o:
t=0:1:10;
x=exp(-t/5).*sin(t);
xi=interp(x,8);
ti=0:0.125:10.875;
subplot(2,1,1), fplot('exp(-x/5)*sin(x)',[0 10 -1 1])
hold on, subplot(2,1,1), stairs(t,x), axis([0 10 -1 1]), grid on
subplot(2,1,2), fplot('exp(-x/5)*sin(x)',[0 10 -1 1])
hold on, subplot(2,1,2), stairs(ti,xi), axis([0 10 -1 1]), grid on

1998 F. J. Restivo
Processamento Digital de Sinal 38

0.5

-0.5

-1
0 2 4 6 8 10

0.5

-0.5

-1
0 2 4 6 8 10

3.7 Decimao
A decimao a operao correspondente reduo da frequncia de amostragem do sinal contnuo.
Na realizao desta operao, a nica dificuldade a possvel ocorrncia de aliasing.
Sejam x(n) um sinal discreto com transformada de Fourier X(e j ) e xd(n) o sinal discreto que se obtem do
anterior atravs de uma decimao de M:1
xd(n) = x(Mn) , M inteiro .
Como

1
x(n) = X( e j )e jn d
2


1
x d (n) = X( e j )e jMn d
2

e, realizando a mudana de varivel


M ,
M
1
x d (n) = X( e j M )e jn d
2M
M

integral que possvel reduzir ao domnio de integrao [, ]


M 1 2r
X(e j M + j M )e
1 jn
x d (n) = d
2M
r =0

donde, por simples comparao,

1998 F. J. Restivo
Processamento Digital de Sinal 39

M 1 2r
X(e j M + j M )
1
Xd (e j ) =
M r =0

A decimao ser uma operao reversvel, isto , realizada sem perda de informao, se X(e j ) for zero fora
do intervalo [-/M, /M], ou seja, se for de banda limitada.
A decimao assim habitualmente precedida de uma filtragem passa baixo digital, para que esta situao se
verifique garantidamente.
A decimao outra das situaes em que os filtros digitais do tipo no recursivo so muito utilizados, apesar
de normalmente exigirem mais operaes por sada do que os do tipo recursivo.
Apesar de apenas ser necessrio conservar uma sada do filtro passa baixo de M em M, se o filtro for do tipo
recursivo todas as sadas tm de ser necessariamente calculadas.

3.8 Converso Fraccionria da Frequncia de Amostragem


A multiplicao da frequncia de amostragem de um sinal contnuo por uma fraco M/N realiza-se
encadeando uma interpolao 1:M e uma decimao N:1.
As duas filtragens passa-baixo podem evidentemente ser realizadas por um nico filtro digital, cuja frequncia
de corte seja o mnimo dos valores /M e /N.

1998 F. J. Restivo
Processamento Digital de Sinal 40

4. Transformada em z

4.1 Definio
A transformada em z um instrumento matemtico essencial para a anlise e sntese de sistemas discretos,
desempenhando um papel paralelo ao desempenhado pela transformada de Laplace relativamente aos
sistemas contnuos.
Como se sabe, um sinal discreto x(n) apenas ter transformada de Fourier se a soma
+
X(e j ) = x (n )e j n
n =

existir, sendo a transformada de Fourier inversa dada por



1
x(n) = X( e j )e jn d .
2

A condio de convergncia necessria existncia da transformada de Fourier demasiado exigente, da


resultando que muitos sinais com interesse prtico no tm transformada de Fourier.
A transformada em z, X(z), de um sinal discreto x(n) uma funo complexa da varivel complexa z C, e
define-se como
+
X(z) = x( n ) z n .
n =

Como veremos, esta definio vai permitir que muitos daqueles sinais que no tm transformada de Fourier
tenham transformada em z.
Exemplos
O sinal discreto impulso unitrio
x(n) = (n)
tem transformada
X(z) = 1 .
O sinal discreto degrau unitrio
x(n) = u(n) ,
que no tem transformada de Fourier, tem transformada em z
+
z n
1
X(z) = =
n =0 1 z 1

na regio do plano z |z| > 1 , condio em que este somatrio converge.


A condio de convergncia necessria existncia da transformada em z menos exigente que a condio de
convergncia necessria convergncia da transformada de Fourier.

1998 F. J. Restivo
Processamento Digital de Sinal 41

4.2 Regio de Convergncia


A regio do plano z onde existe a transformada em z de um sinal discreto denomina-se regio de convergncia
da transformada em z desse sinal.
A indicao da regio de convergncia absolutamente obrigatria na transformada em z.
Exemplo
A transformada em z de
x(n) = anu(n)

+
a n z n
1
X(z) = = ,z > a
n =0 1 az 1

e a transformada em z de
x(n) = -anu(-n-1)

1
a 1z
X(z) = a n z n = a n z n =
1 a 1z
, a 1z < 1
n = n =1

1
X( z ) = ,z < a ,
1 az 1
que s difere da anterior na regio de convergncia!
Em certas situaes, a regio de convergncia da transformada em z de um sinal discreto pode ser determinada
muito facilmente.
A regio de convergncia da transformada em z de um sinal discreto de comprimento finito, isto , tal que
n < n 1 ou n > n 2 x(n) = 0 ,
todo o plano z, excepto
z = 0 , se n 2 > 0 ,
uma vez que neste caso
n2
X(z) = x (n )z n
n = n1

contem parcelas com potncias negativas de z, e / ou


|z| = , se n 1 < 0 ,
j que neste caso X(z) contem parcelas com potncias positivas de z.
Se o sinal discreto for de comprimento infinito mas tal que
n < n 1 x(n) = 0 ,
sempre possvel encontrar um valor Rc suficientemente grande que garanta que exista

x( n ) R c n ,
n = n1

o que quer dizer que a regio de convergncia da transformada em z de um sinal discreto nestas condies o
exterior de um crculo centrado na origem do plano z e com raio Rc .

1998 F. J. Restivo
Processamento Digital de Sinal 42

Rc

Similarmente, se o sinal discreto for de comprimento infinito mas tal que


n > n 2 x(n) = 0 ,
sempre possvel encontrar um valor Rc suficientemente pequeno que garanta que exista
n2
x( n )R c n ,
n =

e ento a regio de convergncia da transformada em z de um sinal discreto nestas condies o interior de


um crculo centrado na origem do plano z e com raio Rc .

Rc

Finalmente, se o sinal discreto for de comprimento infinito e no se verificar nenhuma das situaes
anteriores, a regio de convergncia da sua transformada em z, se existir, ser uma coroa circular centrada na
origem do plano z.

Em muitos casos, a transformada em z de um sinal discreto uma fraco cujos numerador e denominador so
dois polinmios em z, ou em z-1.
Os zeros do denominador desta fraco so os polos dessa transformada em z.
Os polos da transformada em z de um sinal discreto situam-se sempre fora da sua regio de convergncia, a
qual, contudo, sempre limitada pelos seus polos.
Seria absurdo que assim no fosse.

1998 F. J. Restivo
Processamento Digital de Sinal 43

4.3 Relao com a Transformada de Fourier


Sejam x(n) um sinal discreto e X(z) a sua transformada em z.
Se a circunferncia de raio unitrio e centrada na origem do plano z
z = ej , - <
pertencer regio de convergncia de X(z), ento a transformada de Fourier de x(n) pode obter-se de X(z)
atravs de

X( e j ) = X( z ) z =e j .

De notar que existiro sinais discretos para os quais no existe transformada de Fourier e existe transformada
em z, e para os quais portanto esta relao no vlida.
Inversamente, pode obter-se a transformada em z de x(n) a partir da sua transformada de Fourier, utilizando a
transformada de Fourier inversa e em seguida a definio de transformada em z
X(e j ) x(n) X(z) .
Esta possibilidade de se obter uma funo definida num plano a partir do conhecimento do seu valor ao longo
de uma linha desse plano, est ligada ao facto de X(z) ser uma funo complexa da varivel complexa z.
No ser esta a ltima vez em que certas propriedades das funes complexas da varivel complexa so
referidas.

4.4 Algumas Propriedades da Transformada em z


A transformada em z uma transformada linear, o que quer dizer que a transformada em z da soma de dois
sinais discretos a soma das suas transformadas em x, e a transformada em z do produto de um sinal discreto
por uma constante o produto da transformada em z desse sinal discreto por essa constante.
A transformada em z do sinal discreto x(n), com transformada em z X(z), deslocado de k, x(n-k),
x(n-k) z-kX(z) ,
como se obtem escrevendo
+ +
x( n )z n + k k = z k x ( n ) z n + k = z k X ( z )
n = n =

A transformada em z do sinal discreto x(n) multiplicado por an, anx(n),


anx(n) X(z/a) ,
com regio de convergncia de raio aRc .
A transformada em z do sinal discreto x(-n)
x(-n) X(z-1) ,
-1
com regio de convergncia de raio Rc .

4.5 Propriedade da Convoluo


Sejam x(n) e h(n) dois sinais discretos e
+
y(n) = x(k)h(n - k )
k =-

a sua convoluo discreta. Ento

1998 F. J. Restivo
Processamento Digital de Sinal 44

+ +
Y(z) = x(k)h(n - k )z n
n = k =-

+ +
Y( z ) = x(k)h(n - k )z n +k k
n = k =-

+ +
Y(z) = x(k)z -k h(n - k)z n +k = X(z)H(z) ,
k =- n =-

sendo necessrio que no seja vazia a interseco das regies de convergncia de X(z) e de H(z). A regio de
convergncia de Y(z) inclui aquela interseco, mas pode exced-la, se houver cancelamento de polos com
zeros.
A transformada em z tem asim a propriedade da convoluo.

4.6 Funo de Transferncia de um Sistema Discreto


Como resulta da propriedade da convoluo, as transformadas em z, X(z), da entrada x(n), e Y(z), da sada y(n),
de um sistema discreto esto relacionadas por
Y(z) = H(z)X(z) ,
em que H(z) a transformada em z da sua resposta impulsional h(n).
H(z) a funo de transferncia do sistema discreto, e, como veremos, desempenha um papel fundamental na
anlise e na sntese de sistemas discretos.

4.7 Estabilidade e Causalidade


Um sistema discreto estvel se e s se a regio de convergncia da sua funo de transferncia contiver a
circunferncia unitria do plano z. Realmente, neste caso h(n) tem transformada de Fourier e satisfaz portanto
ao critrio de estabilidade de um sistema discreto.
Um sistema discreto causal se e s se a regio de convergncia da sua funo de transferncia fr o exterior
de um crculo.
Um sistema discreto causal e estvel tem todos os seus polos no interior da circunferncia unitria do plano z.
Esta circunferncia desemp enha um papel semelhante ao do eixo j do plano s relativamente transformada
de Laplace.

4.8 Avaliao Geomtrica da Transformada de Fourier


Conhecidos os zeros z z e os polos z p da transformada em z, X(z), de um sinal discreto x(n)
i i

X(z) =
(z z z i
)
,
(z z p i
)

e se notarmos que ( z z z i ) e ( z z p i ) so "vectores" no plano z, obtemos um mtodo simples de


avaliao de X(z) quer em mdulo quer em fase, muito utilizado por exemplo quando se pretende uma ideia
aproximada do andamento da transformada de Fourier X(e j ) de x(n).
Interpretando
z = ej
como um ponto mvel z que se desloca ao longo da circunferncia unitria do plano z,

1998 F. J. Restivo
Processamento Digital de Sinal 45

j e j z z i
| X(e )| = ,
e j z p i

arg( X( e j )) = arg( e j z z i ) arg( e j z p i ) .

Exemplo
Em MATLAB, a instruo zplane localiza imediatamente os zeros e polos de uma funo X(z).
Por exemplo, para localizar no plano z os zeros e os polos de

1 0.5 z 1 + 0.5z 2
X( z ) =
1 + z 1 + 0.5z 2 0.1z 3
basta fazer
zplane([1 -0.5 0.5],[1 1 0.5 -0.1])

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
-1 -0.5 0 0.5 1

1998 F. J. Restivo
Processamento Digital de Sinal 46

4.9 Inverso da Transformada em z


Se uma determinada transformada em z, X(z), estiver expressa como um polinmio em z, a sua inverso bvia.
Exemplo
Se
X(z) = 1 - 2z-1
ento
x(n) = (n) - 2(n-1).

4.9.1 Mtodo da Diviso


Se X(z) estiver expressa como um quociente de dois polinmios em z, a realizao da respectiva diviso
permite obter x(n).
Exemplo
Se
1
X(z) = , causal ,
1 az 1
a diviso segundo as potncias decrescentes de z conduz ao resultado pretendido
1 1 - az-1
-1 + az-1 1 + az-1 + a2z-2 + a3z-3 +...
az-1
-az-1 + a2z-2
...
Para se encontrar a soluo no causal, seria necessrio realizar a diviso segundo as potncias crescentes de
z
1 -az-1+1
-1 + a-1z -a-1z - a-2z2 - a-3z3 - ...
a-1z
-a-1z + a-2z2
...
Este mtodo no permite normalmente obter uma expresso compacta para x(n), mas oferece um processo
expedito para o clculo de seus valores iniciais. muito usado em programas de computador.

4.9.2 Mtodo da Decomposio em Fraces Simples


A decomposio de X(z) em fraces simples, no caso em que X(z) uma fraco racional, outro mtodo de
realizar a inverso da transformada em z. O objectivo decompor X(z) em parcelas das quais seja conhecida a
transformada em z inversa e invocar a linearidade da transformada em z para realizar a inverso.
Para aplicar este mtodo, ser til conhecer-se as transformadas
z 1
a n u(n) = ,z > a
z a 1 az 1

z 1
a n u ( n 1) = ,z < a ,
z a 1 az 1

1998 F. J. Restivo
Processamento Digital de Sinal 47

e algumas propriedades elementares da transformada em z.


Exemplo
Seja

z -1
H(z) = , estvel .
1 - 2.25z -1 + 0.5z -2
H(z) apresenta dois polos simples em 0.25 e 2, e, para o sistema ser estvel, a regio de convergncia de H(z)
0.25 < |z| < 2

0.25 2

Decompondo em fraces simples


1 8

z 7
H(z) = , 0.25 <| z| < 2 = , | z| > 0.25 + 7 , | z| < 2 ,
(z - 0.25)(z - 2 ) z 0.25 z2

e, notando que sempre possvel decidir qual a regio de convergncia de cada uma das parcelas em face da
regio de convergncia da transformada em z, j que esta a interseco daquelas,

h (n ) =
1
7
8 4
[ ]
0.25 n 1 u ( n 1) 2 n 1 u ( n ) = 0.25 n u ( n 1) + 2 n u ( n ) .
7 7

4.9.3 Integral de Linha


Existe uma formula integral para o clculo da transformada em z inversa, a qual se pode derivar das
propriedades das funes complexas de varivel complexa.
Uma propriedade importante da funo complexa da varivel complexa zn que o integral de linha

z
n
dz
C

calculado ao longo de uma qualquer linha fechada C que envolva a origem do plano z, e percorrida no sentido
directo, vale

z
n 2j , se n = -1
dz =
C

0 , se no .
Escrevendo X(z) como uma soma de potncias de z
X(z) = ... + x(n-1)z-n+1 + x(n)z-n + x(n+1)z-n-1 + ... ,
multiplicando ambos os termos desta igualdade por zn-1
X(z)zn-1 = ... + x(n-1) + x(n)z-1 + x(n+1)z-2 + ... ,
e calculando o integral de linha atrs referido

X(z )z dz =.. .+ 0 + 2jx ( n ) + 0+. .. ,


n -1

1998 F. J. Restivo
Processamento Digital de Sinal 48

conclui-se imediatamente que


1
x(n) =
2j
X(z)z n -1 dz ,
C

com o integral calculado ao longo de um contorno C desenhado volta da origem do plano z e na regio de
convergncia de X(z).
Esta a forma geral para o clculo da transformada em z inversa.
Um integral de linha como o anterior pode ser calculado pelo mtodo dos resduos, que utiliza o facto de esse
integral ser igual soma dos resduos da funo integranda nos seus polos situados no interior do contorno,
suposto percorrido no sentido directo.
O resduo de uma funo F(z) num polo simples a

(z - a)F(x) z =a

Num polo a com multiplicidade m, o resduo dado por uma expresso um pouco mais complexa

d m 1
1
( m 1)! dz m 1 [
( z a )m F ( z ) ] z =a

Exemplo
Seja novamente

z-1
H(z) = , estvel .
1 2.25z -1 + 0.5z -2
O integral de linha que permite calcular a transformada em z inversa

1 1 zn
h(n) =
2j
H(z)z n -1dz =
2 j (z 0.25)(z 2)
dz ,
C C

apresentando a funo integranda dois polos simples em 0.25 e 2, e um polo de multiplicidade -n em 0, este
para valores negativos de n, apenas.
No caso n 0, verifica-se que apenas o polo em 0.25 se encontra no interior de um contorno de integrao
traado na regio de convergncia de H(z), pelo que, utilizando o teorema dos resduos,

0.25n 4
h(n) = = 0.25 n , n 0 .
1.75 7
No caso n < 0, verifica-se que os polos em 0.25 e em 0 se encontram no interior do contorno, sendo este ltimo
de multiplicidade varivel, o que obrigaria a calcular h(n) termo a termo.
Em muitas situaes, este problema no surge, por se saber, por exemplo, que o sinal original causal, e,
portanto, nulo para valores negativos de n.
No caso geral, a mudana de varivel de integrao
z p -1
permite colocar em (e logo, no exterior de qualquer contorno) o polo que estava em 0 e simplificar o
problema.
No nosso exemplo, a funo a integrar passa a ser

1 p-n 1 -2p-n
h(n) =
2j (p-1 0.25)(p-1 2 ) (-p -2 )dp =
2 j (p 4)(p 0.5)
dp ,
Cp Cp

1998 F. J. Restivo
Processamento Digital de Sinal 49

com polos em 0.5 e 4, e em que Cp o novo contorno de integrao.


O novo contorno de integrao, que est situado necessariamente no interior da nova regio de convergncia
0.5 < |p| < 4 ,
apresenta apenas o polo em 0.5 no seu interior, mas passa a ser percorrido em sentido retrgrado, pelo que ao
aplicar a regra dos resduos necessario trocar o sinal ao resultado, obtendo-se

-2.0.5 -n 4
h(n) = - = - 0.5 -n , n < 0 .
-3.5 7
Escrevendo os dois resultados numa nica expresso,

h(n) = -
4
7 [
0.25n u(n) + 2 n u(-n -1) . ]
que equivalente ao resultado que tinhamos obtido anteriormente.

4.10 Propriedade da Convoluo Complexa


A transformada em z do produto de dois sinais discretos x(n) e w(n), com transformadas em z,
respectivamente, X(z) e W(z),
+ + +
x(n)w (n)z -n
1 1
=
2j
X(v)vn -1dvw(n)z -n =
2 j
X(v) w(n)z -n v n -1 dv
n = n = C C n =

+
x(n)w(n)z -n
1 z
=
2j
X(v)W ( ) v-1dv .
v
n = C

Este integral na realidade uma convoluo! A varivel de integrao v desempenha um papel equivalente ao
da varivel k na expresso da convoluo
+
x(k)h(n k ) .
k=-

A transformada de Fourier do produto de dois sinais discretos x(n) e w(n) , por sua vez,

1 z
2j
X(v)W ( ) v -1 d v
v
.
j
C z= e

Repare-se que se se escolher como contorno de integrao C a circunferncia unitria do plano v, o que
sempre possvel pois de outro modo x(n) e w(n) no teriam transformada de Fourier,
v = ej
v -1dv = jd,
aquele integral fica

1 j
X(e )W ( e j( ) )d
2

expresso que evidencia claramente uma convoluo, com a imagem geomtrica que geralmente lhe est
associada.
Esta propriedade muito utilizada para avaliar o efeito, no domnio das frequncias, da multiplicao de dois
sinais discretos, como acontece, por exemplo, quando se multiplica uma resposta impulsional infinita por uma
janela rectangular
h a (n) = h(n)[u(n+n 0) - u(n-n 0-1)] .

1998 F. J. Restivo
Processamento Digital de Sinal 50

Exemplo
Os sinais discretos
x(n) = 2-nu(n)
e
w(n) = 3-nu(n)
tem transformada em z respectivamente
1 1
X( z ) = , | z| >
1 2
1 z 1
2
e
1 1
W (z ) = , | z| >
1 1 3
1 z
3
e o seu produto
x(n)w(n) = 6-nu(n)
tem transformada em z
1 1
, | z| >
1 1 6
1 z
6
Este resultado pode ser naturalmente obtido atravs da propriedade da convoluo complexa, calculando no
plano v o integral
1 1 1 1 z 1
2j 1 1 1 z 1
v-1dv , | v | >
2
e| |>
v 3
,
C1 v 1 ( )
2 3 v
com o contorno C satisfazendo as condies impostas pelas regies de convergncia de X(z) e W(z), isto ,
1
<| v| < 3| z| .
2
Um contorno nessas condies s existir evidentemente se
1 1
3| z| > | z| >
2 6
que ser a regio de convergncia da transformada em z de x(n)w(n).
O integral pode ser calculado pelo mtodo dos resduos, para o que se torna necessrio determinar os polos
da funo integranda
1 3z 1 1
2j 1
dv , | z| >
6

2
<| v| < 3| z| ,
C (v )(v 3z)
2
que so 1/2 e 3z.
Como apenas o polo 1/2 se encontra no interior do contorno C, o resduo nesse polo,
3z 1 1
= , | z| > ,
1 1 1 6
3z 1 z
2 6
a transformada em z procurada.

1998 F. J. Restivo
Processamento Digital de Sinal 51

Note-se que atravs da propriedade da convoluo complexa foi possvel deduzir no s a expresso da
transformada em z como tambm a sua regio de convergncia.

1998 F. J. Restivo
Processamento Digital de Sinal 52

5. DFT - Transformada de Fourier Discreta

5.1 Introduo
A transformada de Fourier X(e j ) de um sinal discreto x(n) uma funo da varivel contnua , que sabemos
ser peridica, com perodo 2.
Do ponto de vista do seu processamento, interessa evidentemente conhecer em que condies possvel
representar esta transformada de Fourier X(e j ) por uma sua amostragem X(k).
Essas condies so, como vamos ver, o sinal x(n) ser de comprimento limitado, N, e a sua transformada de
Fourier ser amostrada em pelo menos N pontos num perodo, e so da mesma natureza das condies que
estabelecemos quando estudamos a amostragem de sinais contnuos.
Nessas condies, um sinal de banda limitada e de durao limitada poder ento ser representado por N
amostras, do sinal ou da sua transformada de Fourier!

5.1.1 Amostragem nos Domnios do Tempo e da Frequncia


A transformada de Fourier de um sinal contnuo xc (t) , se existir,

-j t
X c (j ) = x c (t )e dt ,

e a sua transformada inversa



1 jt
x c(t) =
2 X c( j )e d ,

Quando se amostra um sinal contnuo xc (t),


x(n) = xc (nt) , nN
sabemos que esta amostragem apenas representa o sinal contnuo se a sua transformada de Fourier Xc (j) for
de banda limitada a um intervalo de largura igual ou inferior a 2/t.

Se esta condio no for satisfeita ocorre o fenmeno designado por aliasing e a amostragem deixa de ser
reversvel.
Atendendo similaridade entre as expresses da transformada de Fourier e da transformada de Fourier
inversa, poderamos verificar que quando se amostra uma transformada de Fourier Xc (j),
X(k) = Xc (jk) , kN

1998 F. J. Restivo
Processamento Digital de Sinal 53

esta amostragem apenas representar a transformada de Fourier se o sinal contnuo xc (t) for de durao
limitada a um intervalo igual ou inferior a 2/, e que de outro modo ocorreria aliasing e a transformada de
Fourier no poderia ser recuperada a partir da amostragem realizada.

Na realidade, amostrar num dos domnios equivale a repetir periodicamente no outro, e o aliasing no mais
que a sobreposio decorrente dessa repetio peridica.

5.1.2 Sinais Peridicos nos Domnios do Tempo e da Frequncia


Um sinal contnuo peridico xp(t) no tm transformada de Fourier, mas, como se sabe, pode ser desenvolvido
em srie de Fourier, com coeficientes

t k

T 2
1 -j kt
Ck =
T x p (t )e T dt ,
0

em que T o perodo do sinal, sendo ento


+ 2
x p( t ) = C k e j T kt .
k =

Os coeficientes Ck so, a menos do factor 1/T, uma amostragem nos pontos 2k/T da transformada de Fourier
do sinal de durao limitada definido por um perodo do sinal peridico xp(t)

T
-jt
X p (j ) = x p ( t )e dt
0

1 2k
Ck = Xp(j ).
T T
No domnio dos tempos, exxis te uma correspondncia biunvoca entre um sinal de durao limitada e um sinal
peridico constitudo por uma repetio peridica daquele, desde que o perodo da repetio seja igual ou
superior durao do sinal.

1998 F. J. Restivo
Processamento Digital de Sinal 54

No domnio das frequncias, desde que se considere um nmero suficiente de amostras, h igualmente uma
correspondncia biunvoca, sendo os coeficientes da srie de Fourier do primeiro uma amostragem, a menos
do factor 1/T, da transformada de Fourier do segundo.

sinal contnuo sinal contnuo


de durao limitada peridico

amostragem
transformada de Fourier srie de Fourier

A situao dual desta pode ser encontrada na transformada de Fourier de um sinal discreto, anteriormente
estudada,

+
X ( e j ) = x( n ) e jn
n =

e na transformada de Fourier inversa de um sinal contnuo


1 jt
x c(t) =
2 X c( j )e d .

Realmente, no domnio das frequncias, pode estabelecer-se uma correspondncia biunvoca entre uma
transformada de Fourier de banda limitada e uma transformada de Fourier peridica obtida por repetio
daquela, desde que o perodo desta seja superior largura de banda daquela, isto , no haja aliasing.
No domnio dos tempos, desde que se considere um nmero suficiente de amostras, h igualmente uma
correspondncia biunvoca, sendo o sinal discreto original da segunda uma amostragem do sinal contnuo
original da primeira.

amostragem
sinal discreto sinal contnuo

transformada de Fourier transformada de Fourier


peridica de banda limitada

O desenvolvimento em srie de Fourier de um sinal contnuo peridico

1998 F. J. Restivo
Processamento Digital de Sinal 55

+ 2
xp ( t ) = Ck e j T kt
k =

e a transformada de Fourier de um sinal discreto (que tambm uma srie de Fourier!)


+
X ( e j ) = x( n ) e jn
n =

so assim expresses intimamente ligadas, podendo em certas condies relacionar-se os respectivos


componentes Ck e x(n).

amostragem
sinal discreto sinal contnuo sinal contnuo sinal contnuo
de durao limitada peridico

amostragem
transformada de Fourier transformada de Fourier transformada de Fourier srie de Fourier
peridica de banda limitada

Um sinal contnuo peridico tem uma transformada de Fourier constituda por "riscas", os coeficientes Ck, e
uma transformada de Fourier peridica tem como original um sinal constitudo por "riscas", o sinal discreto
x(n).

t k

assim possvel estabelecer uma relao entre estes dois sinais discretos, o sinal x(n) e os coeficientes Ck, na
condio de se verificarem as condies requeridas para a realizao das amostragens nos domnios do tempo
e da frequncia, isto , largura de banda 2/t e durao 2/, em que t e so os intervalos de
amostragem respectivos.
Como
+ 2
x p( t ) = C k e j T kt
k =

amostrando xp(t) em N pontos igualmente espaados de t=T/N, nt = nT/N, n = 0 .. N-1


+ 2

T
x (n ) = x p ( n )= C k e j N kn
N k =

Como, por outro lado,

1998 F. J. Restivo
Processamento Digital de Sinal 56

1 2k
Ck = Xp(j ) , k = 0 .. N-1
T T
isto , a menos do factor 1/T, uma amostragem de Xp(j) em N pontos igualmente espaados de =2/T
+
X p ( j ) = tX( e j t ) = t x( n ) e jn t
n =

+ 2 + 2
t
x( n ) e j N k n = N x(n ) e j N kn
1
Ck = .
T n = n =

Estas relaes so vlidas se se verificarem as condies requeridas para a realizao das amostragens nos
domnios do tempo e da frequncia, isto , largura de banda 2N/T e durao T, pelo que apenas N
coeficientes Ck e N amostras x(n) sero no nulos, tornando-se

n k
0 N-1 0 N-1

N 1 2
x (n ) = C k e j N kn
k =0

N 1 2
x( n ) e j N kn
1
Ck = .
N n =0

5.2 DFS - Srie de Fourier Discreta


Um sinal discreto peridico no tem transformada de Fourier.
Na realidade, escrevendo um sinal peridico de perodo N como
+
x p (n) = x(n + rN) ,
r =-

em que x(n) um sinal discreto de comprimento limitado, isto , tal que


n < 0 ou n > N-1 x(n) = 0 ,
verifica-se que a transformada em z de xp(n)
+ + +
X p (z) = x p (n )z n = x(n + r N )z n + rN r N
n =- n = r =-

+ + +
X p (z ) = z rN x(n + r N )z n + rN = X(z ) z r N
r =- n = r =-

no converge em nenhum ponto do plano z (convergiria se o sinal peridico fosse limitado de um dos lados,
mas mesmo neste caso continuaria a no existir transformada de Fourier devido aos polos de Xp (z) sobre a
circunferncia unitria do plano z).
Um sinal discreto peridico, com perodo N, pode contudo ser desenvolvido em srie de Fourier discreta, isto
, pode ser descrito como uma soma de sinais discretos sinusoidais complexos com perodo N ou um seu
submltiplo

1998 F. J. Restivo
Processamento Digital de Sinal 57

+ j2kn


1 N
x p (n) = X p (k ) e
N k =

-1
(o factor N um simples factor de escala).
Como
j 2 k n j2(k +N)n
e N =e N ,
s h efectivamente N sinais discretos sinusoidais complexos de perodo N diferentes, pelo que um sinal
discreto peridico com perodo N pode ser desenvolvido numa srie de Fourier discreta com apenas N termos
diferentes

N 1 j2kn

Xp
1
x p (n) = (k )e N
N k =0

e os coeficientes Xp(k) so dados na realidade por

N 1 -j2kn
X p (k) = x p (n ) e N ,
n =0

sendo til notar que


Xp(k+N) = Xp(k) ,
isto , que Xp(k) um sinal discreto peridico, com perodo N.

5.3 DFT - Transformada de Fourier Discreta


A transformada de Fourier discreta (DFT) de um sinal discreto x(n) de comprimento N uma amostragem da
j
sua transformada de Fourier X(e ) em N pontos igualmente espaados do intervalo [0, 2[
2k
k = , k = 0 .. N -1 ,
N
N -1
X(e j ) = x(n)e -jn ,
n =0

N -1 -j2nk
X(k) = x(n)e N , k = 0 .. N - 1 .
n =0

A relao inversa

N -1 j2nk

X(k)e
1 N
x(n) = , n = 0 .. N -1 .
N k =0

como se pode verificar substituindo nesta expresso X(k) pelo valor dado na expresso anterior

N -1 N -1 -j2rk j2nk


1
x(n) = x(r)e N e N , n = 0 .. N -1
N k =0 r = 0

N -1 N -1 j2(n -r)k

1
x (n ) = x(r) e N , n = 0 .. N - 1
N r =0 k =0

e notando que o somatrio em k vale

1998 F. J. Restivo
Processamento Digital de Sinal 58

N -1 j2( n-r) k

e N = 0 , se r n
k =0
N , se r = n .
Normalmente, as expresses anteriores escrevem-se de uma forma mais compacta, introduzindo a notao
2
j 2 2
WN = e N = cos j sin
N N
e escrevendo-as na sua forma mais usual
N -1
X(k) = x(n)W N n k , k = 0 .. N -1
n =0

N -1
X(k)W N nk , n
1
x(n) = = 0 .. N - 1 .
N k =0

Comparando as respectivas expresses, pode verificar-se que a transformada de Fourier discreta de um sinal
discreto x(n) com comprimento N pode ser interpretada como a srie de Fourier discreta do sinal discreto
peridico com perodo N que se obtem repetindo periodicamente aquele sinal
+
x p (n) = x(n + r N ) ,
r =-

ou ainda, a menos do factor N, como a srie de Fourier do sinal contnuo peridico com perodo T que se
obtem por repetio do sinal de durao T e largura de banda 2N/T cuja amostragem com perodo T/N x(n)
X(k) = NCk .
Exemplos
O sinal discreto de comprimento 4
x(n) = [1, 1, 1, 1]
tem DFT
3
X(k) = W4 n k , k = 0 .. N - 1
n =0

X(k) = [4, 0, 0, 0]
que uma amostragem da transformada de Fourier

X(e j ) = (2cos(/2) + 2cos(3/2))e -3j/2


do sinal discreto dado, nos pontos
2k
k = , k = 0 .. 3 .
4

1998 F. J. Restivo
Processamento Digital de Sinal 59

0
0 1 2 3 4 5 6

Se a transformada de Fourier tivesse sido amostrada em apenas 3 pontos


2k
k = , k = 0 .. 2
3
obteriamos
X(0) = 2 + 2 = 4
-j
X(1) = (1 - 2)e =1
-j2
X(2) = (-1 + 2)e =1

0
0 1 2 3 4 5 6

e, calculando a transformada de Fourier discreta inversa (iDFT) com comprimento 3,


x(0) = (4 + 1 + 1) / 3 = 2

x(1) = (4 + W 3 + W 3 2 ) / 3 = (4 - 1/2 - 3/2j - 1/2 +3/2j) / 3 = 1

x(2) = (4 + W 3 2 + W 3 4 ) / 3 = 1 ,

o que demonstra o fenmeno do aliasing. Na realidade, o sinal discreto original [1, 1, 1, 1]

x(n)

0 1 2 3 4 5

recuperado como [2, 1, 1]

x(n)

0 1 2 3 4 5

1998 F. J. Restivo
Processamento Digital de Sinal 60

com o elemento x(3) do sinal original adicionado a x(0) no sinal obtido atravs da iDFT.
Como se mostra a seguir, a amostragem em 3 pontos da transformada de Fourier deste ltimo sinal
exactamente [4, 1, 1].

0
0 1 2 3 4 5 6

5.4 Propriedades da DFT


As propriedades da DFT reflectem a natureza peridica subjacente a estes sinais x(n) e X(k) de comprimento
N. Um sinal discreto tem uma transformada de Fourier peridica; uma transformada de Fourier discreta ter
como original um sinal peridico.
A DFT goza da propriedade da linearidade.
A DFT do sinal discreto deslocado de m, x((n-m)),
W Nm kX(k),
desde que o deslocamento se entenda como circular ou peridico, como se exemplifica a seguir para N=5 e k =
1, e se simboliza com a notao ((.)),

x(n)

0 1 2 3 4 5

x((n-1))

0 1 2 3 4 5

em que o elemento x(N-1) aps o deslocamento surge ocupando a posio de x(0).


A DFT tem a propriedade da convoluo circular ou peridica, isto , o produto de duas DFT de comprimento
N a convoluo circular ou peridica dos respectivos sinais discretos originais, entendida como um perodo
da convoluo de um deles por um perodo do outro.
Enquanto que na convoluo linear

1998 F. J. Restivo
Processamento Digital de Sinal 61

h(n)

0 1 2 3 4 5

x(n)

0 1 2 3 4 5

x(n)*h(n)

0 1 2 3 4 5

na convoluo circular, com N=5,

x(n)

0 1 2 3 4 5

h(n)

0 1 2 3 4 5

x(n)*h(n)

0 1 2 3 4 5

A convoluo circular introduz aliasing sempre que o comprimento do sinal discreto resultante da
convoluo excede o comprimento da DFT, como o caso da figura.
Existe na DFT uma dualidade entre os domnios original e transformado, traduzido na similaridade das
expresses da DFT e da iDFT.
Se se registar em X(k) um deslocamento circular de m, X((k-m)), o sinal discreto no domnio original ser
W N-nm x(n) ,

1998 F. J. Restivo
Processamento Digital de Sinal 62

e se multiplicarem dois sinais discretos verifica-se a convoluo circular das duas DFT.
Finalmente, as propriedades de simetria conhecidas devem ser interpretadas em termos da periodicidade
subjacente DFT.
O sinal discreto de comprimento 5

x(n)

0 1 2 3 4 5
par, e o sinal discreto, tambm de comprimento 5,

x(n)

0 1 2 3 4 5

mpar, deste ponto de vista.


No caso geral, um sinal de comprimento N par se
x(n) = x(N-n)
e mpar se
x(n) = -x(N-n).

5.5 Relao com a Transformada em z


A DFT de um sinal discreto com comprimento N tambm uma amostragem da sua transformada em z, X(z), em
N pontos igualmente espaados sobre a circunferncia unitria do plano z
-k
zk = W N , k = 0 .. N-1 .

A transformada em z, X(z), pode ser recuperada dessa amostragem, X(k).


Escrevendo
N 1
X(k)W N
1 n k
x(n) = , n = 0 .. N -1
N k =0

obtem-se facilmente

1 N 1 N 1
1 z N N 1
X( k )
X ( z) =
N k= 0
X( k ) ( WN k z 1 ) n =
N 1 W k 1
z
n= 0 k =0 N

Esta expresso a base de um mtodo de projecto de filtros digitais designado por mtodo da amostragem da
funo de transferncia (FST - Frequency Sampling Technique).
Dada uma amostragem H(k) de uma funo de transferncia H(z), como

1998 F. J. Restivo
Processamento Digital de Sinal 63

N 1 N 1 2 N 1
j k 1 z N

1 N z 1 ) n H(k)
H (z ) = H (k ) (e =
N N 2
k =0 n =0 k =0 j k
1 e N z 1

conclui-se que o sistema correspondente pode ser implementado pela associao em srie de um sistema com
funo de transferncia

1 z N
H p (z ) =
N

H
0

H
1

H +
p
H
k

H
N-1

com um sistema constitudo pela associao em paralelo de N sistemas com funo de transferncia
H(k )
H k ( z) = 2
, k = 0 .. N 1.
j k
1 e N z 1

5.6 Convoluo Linear Utilizando a DFT


Os sistemas realizam a convoluo linear, e a DFT a convoluo circular. Cabe aos utilizadores utilizar a DFT
em condies tais que as duas operaes coincidam.
Se se pretender realizar a convoluo linear de dois sinais dis cretos x(n) e h(n), de comprimentos L e M,
respectivamente, o comprimento mnimo da DFT nas condies acima referidas
L + M-1.
Um caso importante aquele em que L muito grande ou mesmo de valor indefinido (caso do processamento
em tempo real), porque nesse caso no possvel realizar uma nica DFT com este comprimento, e
necessrio fraccionar x(n).

5.6.1 Mtodo Overlap-Add


Um dos mtodos que se pode utilizar o mtodo overlap-add, em que x(n) dividido em segmentos
justapostos de comprimento
N-M+1,
sendo N o comprimento da DFT utilizada,

1998 F. J. Restivo
Processamento Digital de Sinal 64

x(n)

0 N-M+1 2(N-M+1) 3(N-M+1) 4(N-M+1) 5(N-M+1) 6(N-M+1)

h(n)

0 M-1

e a convoluo calculada segmento a segmento, adicionando-se os resultados.

x(n)

0 N-M+1 2(N-M+1) 3(N-M+1) 4(N-M+1) 5(N-M+1) 6(N-M+1)

h(n)

0 M-1

0 N-1

N-M+1 2N-M

2(N-M+1) 3N-2M+1

3(N-M+1) 4N-3M+2

4(N-M+1) 5N-4M+3

5(N-M+1) 6N-5M+4

y(n)

+ + + + + +

0 N-M+1 2(N-M+1) 3(N-M+1) 4(N-M+1) 5(N-M+1) 6(N-M+1)

Como cada convoluo parcial tem comprimento


N-M+1+M-1 = N ,
os resultados parciais sobrepem-se dois a dois em M-1 pontos, com o efeito de os resultados relativos aos
ltimos pontos de um segmento terem de aguardar pelos resultados relativos ao segmento seguinte para se
realizar a adio.

1998 F. J. Restivo
Processamento Digital de Sinal 65

5.6.2 Mtodo Overlap-Save


Outro o mtodo overlap-save, em que, atravs da sobreposio dos segmentos de x(n), de comprimento
igual ao comprimento da DFT utilizada (repare-se no posicionamento do primeiro segmento, e nos M-1 zeros
iniciais) se obtem resultados com aliasing nos primeiros M-1 elementos de cada segmento, mas cujas partes
correctas se justapem sem necessidade de qualquer adio suplementar.

x(n)

-M+1 0 N-M+1 2(N-M+1) 3(N-M+1) 4(N-M+1) 5(N-M+1) 6(N-M+1)

h(n)

0 M-1

-M+1 N-M

N-2M+2 2N-2M+1

2N-3M+3 3N-3M+2

3N-4M+4 4N-4M+3

4N-5M+5 5N-5M+4

5N-6M+6 6N-6M+5

y(n)

0 N-M+1 2(N-M+1) 3(N-M+1) 4(N-M+1) 5(N-M+1) 6(N-M+1)

A realizao da convoluo linear utilizando a DFT tem interesse porque existem algoritmos extremamente
eficientes para o clculo desta transformada.

5.7 FFT - Transformada Rpida de Fourier


A publicao por Cooley & Tukey, em 1965, do primeiro algoritmo para a computao rpida da DFT constitu
marco histrico para a evoluo da disciplina de PDS, podendo a importncia dos algoritmos FFT (Fast
Fourier Transform) hoje avaliar-se pelo volume de bibliografia que desde ento lhes tem sido dedicada.
Curiosamente, ter sido Gauss, o eminente matemtico alemo Carl Friedrich Gauss, em 1805, o primeiro a
descobrir um algoritmo similar FFT, nos seus estudos de interpolao das rbitas de corpos celestes,
precedendo mesmo a prpria obra de Jean-Baptiste Joseph Fourier Theorie Analytique de la Chaleur, que foi
publicada em 1822!

1998 F. J. Restivo
Processamento Digital de Sinal 66

Outros ilustres matemticos, como Runge, em 1903, Stumpff, em 1939, e Danielson e Lanczos, em 1942,
descobriram mtodos eficientes para o clculo da DFT.

5.7.1 Decimao no Tempo


O algoritmo de C&T, ou de decimao no tempo, baseia-se no facto de resultar uma substancial reduo no
nmero das operaes aritmticas requeridas para calcular uma DFT de comprimento N, par, se este clculo se
realizar em duas fases, uma primeira em que so calculadas duas DFT de comprimento N/2 e uma segunda em
que estas so combinadas de modo a obter-se o resultado pretendido.
Seja x(n) um sinal discreto de comprimento N, par, e sejam g(n) e h(n) dois sinais discretos de comprimento
N/2 constitudos pelos elementos de ordem par e de ordem mpar de x(n), respectivamente
g(n) = x(2n)
h(n) = x(2n+1) , n = 0 .. N/2 - 1.
Ento
N N
1 1
2 2
g( n )WN h ( n )WN
2nk (2 n + 1 )k
X( k ) = +
n =0 n =0

N N
1 1
2 2
g( n ) WN h ( n ) WN
nk k nk
X( k ) = + WN
n =0 2 n =0 2

k
X(k) = G(k) + W N H(k) ,

em que G(k) e H(k) so as DFT de comprimento N/2 de g(n) e h(n), respectivamente.


Atendendo periodicidade de G(k) e de H(k),
k
X(k+N/2) = G(k) - W N H(k) ,

resultando destas duas expresses que possvel obter dois elementos de X(k) a partir de um elemento de
G(k) e de um elemento de H(k), com uma nica multiplicao e com duas adies complexas, e com uma
aprecivel reduo no nmero das operaes aritmticas requeridas

G(k) X(k)

H(k) X(k+N/2)
n -1
W
k

Por exemplo, se N=1024, o clculo directo da DFT requere


1024*1024 multiplicaes
1024*1023 adies
enquanto que o clculo pelo mtodo descrito requere
2*512*512+512 multiplicaes
2*512*511+2*512 adies.

1998 F. J. Restivo
Processamento Digital de Sinal 67

Se N/2 ainda for par, este mtodo pode ser novamente aplicado ao clculo de G(k) e de H(k), e assim
sucessivamente at as DFT a calcular serem triviais, como a seguir se exemplifica com o clculo de uma DFT
de comprimento 8

x(0) g(0) G(0)

G(3)

h(0) H(0)

x(7) h(3) H(3) X(7)

onde necessrio agora "encaixar" duas DFT de comprimento 4

e em cada uma destas duas de comprimento 2 (triviais)

com o resultado final

1998 F. J. Restivo
Processamento Digital de Sinal 68

x(0)

x(7) X(7)

Este algoritmo pode considerar-se dividido em duas partes, uma primeira em que os elementos de x(n) so
arranjados segundo uma determinada ordem e uma segunda em que os clculos so efectivamente realizados.
A reordenao inicial dos elementos de x(n) habitualmente designada por bit-reverse, uma vez que a posio
que o elemento de ordem n vai ocupar se pode obter escrevendo n na base 2 com log2 N bits e lendo o nmero
binrio obtido na ordem inversa dos bits, como alis se deduz facilmente notando que um ltimo bit 0
corresponde a um elemento de ordem par e um ltimo bit 1 corresponde a um elemento de ordem mpar.
A computao consiste na realizao sistemtica de um conjunto de clculos habitualmente designados por
butterfly, que correspondem s duas equaes que inicialmente deduzimos
k
X(k) = G(k) + W N H(k)

k
X(k+N/2) = G(k) - W N H(k)

e que se podem representar no caso geral por um grfico de fluncia com forma que lembra uma borboleta ...

X (p) X (p)
n n+1

X (q) r X (q)
n WN -1 n+1

A estrutura do algoritmo aponta para a sua realizao andar a andar, num total de log2 N andares e de N/2
butterflies por andar.
O clculo pode ser todo realizado in place, incluindo o bit-reverse, isto , sobre uma nica estrutura de dados,
os quais vo sendo substitudos dois a dois pelos vrios resultados intermdios e pelos resultados finais.
Normalmente utilizam-se trs contadores, um contador de andar, que controla o progresso do clculo da
esquerda para a direita, um contador de grupo, resultante do facto de em cada andar as borboletas a realizar
estarem agrupadas em conjuntos afins, e um contador de borboleta:

1998 F. J. Restivo
Processamento Digital de Sinal 69

procedure FastFourierTransform;
begin
BitReverse;
Andar := 1;
repeat
Grupo := 0;
repeat
Borboleta := 0;
repeat
CalcularIndices;
CalcularBorboleta;
Borboleta := Borboleta + 1;
until Borboleta = Andar;
Grupo := Grupo + 1;
until Grupo = ComprFFT div (2 * Andar);
Andar := 2 * Andar;
until Andar = ComprFFT;
end;
A operao bit-reverse pode ser realizada de diferentes modos. Habitualmente, recorre-se implementao de
um contador em bit-reverse em simultneo com um contador em ordem natural, no exemplo as variveis j e i,
inicializados em N/2 e 1, tendo-se o cuidado de no trocar duas vezes os elementos do array:
procedure BitReverse;
begin
j := ComprFFT div 2;
for i := 1 to ComprFFT - 2 do
begin
if i <= j then
begin
t := x[j];
x[j] := x[i];
x[i] := t;
end;
k := ComprFFT div 2;
while j >= k do
begin
j := j - k;
k := k div 2;
end;
j := j + k;
end;
end;
O clculo de i+1 em bit-reverse dado i em bit-reverse, isto , j, toma em considerao o que acontece, em
termos de "carry", no clculo em binrio de i+1: comeando pela direita, todos os "uns" at ao primeiro "zero"
passam a "zero", e aquele "zero" passa a "um".

1 1 0 1 0 1 1 1 1 1 (863)
+1
1 1 0 1 1 0 0 0 0 0 (864)

Assim, j+1 calcula-se a partir de j subtraindo uma determinada potncia de 2 por cada "um" que passou a
"zero" e somando uma potncia de 2 pelo "zero" que passou a"um".

1998 F. J. Restivo
Processamento Digital de Sinal 70

1 1 1 1 1 0 1 0 1 1 (1003)
-512 -256 -128 -64 -32 +16
0 0 0 0 0 1 1 0 1 1 (27)

Os ndices necessrios ao clculo de uma borboleta so trs, dois relativos aos dois elementos que intervm
r
na borboleta e um terceiro relativo ao factor WN , e que pode ser um apontador para uma tabela de senos e
cossenos:
procedure CalcularIndices;
begin
IndUm := 2 * Andar * Grupo + Borboleta;
IndDois := IndUm + Andar;
IndTab := Borboleta * ComprFFT div (2 * Andar);
end;
Uma borboleta realiza-se com trs operaes com nmeros complexos e com o recurso a uma varivel
temporria:
procedure CalcularBorboleta;
begin
Mult(x[IndDois], w[IndTab], t);
Sub(x[IndUm], t, x[IndDois]);
Add(t, x[IndUm], x[IndUm]);
end;
O nmero total de multiplicaes e de adies complexas requerido pelo algoritmo para a realizao de uma
DFT de comprimento 1024

n.and. n.but. mult./but. ad./but. tot.mult. tot.ad.


10 512 1 2 5120 10240

5.7.2 Decimao na Frequncia


Outro algoritmo, proposto por Sande & Tukey, e conhecido por decimao na frequncia, segue nas suas
linhas gerais este que acabamos de descrever.
Consideremos a DFT de um sinal discreto com comprimento N, par,
N 1
X( k ) = x( n )WN nk

n =0

Os termos de ordem par desta DFT


N 1
x( n )WN
N
, k = 0 .. 1
2nk
X(2 k ) =
n =0
2

N N
1 1
2 2
x( n )WN x( n +
N N
)W N , k = 0 .. 1
2nk 2nk
X (2 k ) = +
n =0 n =0 2 2

N
1
2
( x( n ) + x( n +
N N
)) W N , k = 0 .. 1
nk
X(2 k ) =
n =0
2 2
2

podem ser calculados como a DFT G(k) do sinal discreto com comprimento N/2
g( n ) = x( n ) + x( n + N / 2) , n = 0 .. N / 2 - 1 ,

1998 F. J. Restivo
Processamento Digital de Sinal 71

e os termos de ordem mpar


N 1
x(n )WN 2 nk + n N
X(2 k + 1 ) = , k = 0 .. 1
n =0
2

N N
1 1
2 2 N

x (n )WN x( n +
N n+ N
X (2 k + 1 ) = )W N 2 W N , k = 0 .. 1
n 2nk 2nk
WN +
n =0 n =0 2 2

N
1
2
( x ( n ) - x( n +
N N
X(2 k + 1 ) = )) WN W N , k = 0 .. 1
n nk

n =0
2 2
2

podem ser calculados como a DFT H(k) do sinal discreto com comprimento N/2
n
h ( n ) = ( x( n ) - x( n + N / 2))W N , n = 0 .. N / 2 - 1 ,

resultando destas duas expresses que possvel obter dois elementos de X(k) a partir de um elemento de
G(k) e de um elemento de H(k), com uma nica multiplicao e com duas adies complexas, e com uma
aprecivel reduo no nmero das operaes aritmticas requeridas

g(3)

x(7) -1 W83 h(3) H(3) X(7)

Se N/2 ainda for par, este mtodo pode ser novamente aplicado ao clculo de G(k) e de H(k), e assim
sucessivamente at as DFT a calcular serem triviais.
A estrutura do algoritmo aponta para a sua realizao andar a andar, num total de log2 N andares e de N/2
butterflies por andar, cada uma das quais do tipo

Xn(p) X (p)
n+1

X (q) r X (q)
n -1 W n+1
N

1998 F. J. Restivo
Processamento Digital de Sinal 72

Os dois algoritmos que acabamos de referir admitem muitas variaes, as quais tm em comum o facto de no
ser possvel uma realizao in place sem uma operao de bit-reverse, ou sobre o sinal de entrada ou sobre o
sinal de sada.

5.7.3 Raiz 4
Os algoritmos que estudmos dizem-se de raiz 2, por se basearem na decomposio do sinal de entrada em
dois, com metade do comprimento cada.
Algoritmos equivalentes raiz 4, que se baseiam na decomposio do sinal de entrada em quatro, com um
quarto do comprimento cada, so mais favorveis do ponto de vista do nmero de multiplicaes requeridas.
Refere-se apenas o caso da decimao no tempo.
Se o sinal discreto x(n) tiver comprimento N mltiplo de 4, possvel formar os sinais com comprimento N/4
x i (n) = x(4n + i), n = 0 .. N / 4 1, i = 0 . . 3

de tal modo que


N
1
3 4
X( k ) = x i (n )WN ( 4 n + i )k
i = 0 n =0

N
1
3 4
X( k ) = WN ik x i ( n )WN 4 nk
i=0 n =0

3
X( k ) = WN ik X i (k )
i=0

donde resulta a butterfly raiz 4, decimao no tempo,


k 2k 3k
X(k) = X0 (k) + W N X1 (k) + W N X2 (k) + W N X3 (k)

k 2k 3k
X(k+N/4) = X0 (k) - jW N X1 (k) - W N X2 (k) + jW N X3 (k)

k 2k 3k
X(k+2N/4) = X0 (k) - W N X1 (k) + W N X2 (k) - W N X3 (k)

k 2k 3k
X(k+3N/4) = X0 (k) + jW N X1 (k) - W N X2 (k) - jW N X3 (k)

que se calcula com 3 multiplicaes e 12 "adies" complexas (com as multiplicaes por j imbudas nas
adies).

1998 F. J. Restivo
Processamento Digital de Sinal 73

-j
W1
N -1 j

-1
W2
N -1
j
-1
-j
W3
N

Comparando os dois algoritmos para N = 1024, por exemplo,

n.and. n.but. mult./but. ad./but. tot.mult. tot.ad.


raiz 2 10 512 1 2 5120 10240
raiz 4 5 256 3 12 3840 15360

Nos casos em que o tempo necessrio para o clculo de uma multiplicao muito superior ao tempo
necessrio para o clculo de uma soma, os algoritmos raiz 4 so mais interessantes que os raiz 2.

5.7.4 Raiz Dupla


Algoritmos designados split radix ou raiz dupla, so ainda mais favorveis do ponto de vista do nmero de
multiplicaes, e baseiam-se no uso simultneo das raizes 2 e 4.
Refere-se mais uma vez apenas o caso da decimao no tempo.
Se o sinal discreto x(n) tiver comprimento N mltiplo de 4, possvel escrever
N N N
1 1 1
2 4 4
X( k ) = x( 2n )WN 2 nk + x(4 n + 1)WN (4 n +1 )k + x( 4 n + 3)WN ( 4 n +3 )k
n =0 n =0 n =0

e, designando por G(k), H0 (k) e H1 (k), respectivamente, as DFT de comprimento N/2, N/4 e N/4 de x(2n),
x(4n+1) e x(4n+3),

X( k ) = G( k ) + W N k H 0 ( k ) + WN 3 k H 1 ( k ) .

Atendendo periodicidade destas DFT

X( k + N / 4 ) = G( k + N / 4 ) jWN k H 0 ( k ) + jWN 3 k H1 ( k )

X( k + N / 2 ) = G ( k ) WN k H 0 ( k ) W N 3 k H 1 ( k )

X( k + 3N / 4 ) = G( k + N / 4 ) + jWN k H 0 ( k ) jWN 3 k H 1 ( k )

o que quer dizer que possvel calcular quatro valores de uma DFT de comprimento N a partir de dois valores
de uma DFT de comprimento N/2 e de um valor de cada uma de duas DFT de comprimento N/4.
A butterfly respectiva requere duas multiplicaes e seis adies complexas, desde que se calcule em primeiro
lugar

1998 F. J. Restivo
Processamento Digital de Sinal 74

WN k H 0 ( k ) + WN 3 k H 1 ( k )

W N k H 0 ( k ) WN 3 k H1 ( k ) ,

G(k)

k
W
N
-1
H (k)
0
3k -1
W
N
j -1
H (k)
1

Para N=8, temos a situao seguinte, em que se representa apenas o clculo de X(0), X(2), X(4) e X(6), para
melhor visibilidade

x(0) G(0)

H (0)
0

H1(0)

x(7) X(7)

A DFT de comprimento 4 pode ser calculada pelo mesmo mtodo, isto , a partir de uma DFT de comprimento
2 e de duas de comprimento 1, o que quer dizer que no total teramos 3 butterflies de raiz dupla, isto , 6
multiplicaes e 18 adies, e trs butterflies de raiz 2.
Comparando, para N=8,

n.but. mult./but. ad./but. tot.mult. tot.ad.


raiz 2 12 1 2 12 24
raiz 4 2+4 3/1 12/2 10 32
raiz dupla 3+3 2/1 6/2 9 24

Se observarmos que uma DFT de comprimento N=2n pode ser substituda por uma DFT de comprimento 2n-1,
duas DFT de comprimento 2n-2 e 2n-2 butterflies de raiz dupla, simples concluir que, para o algoritmo
completo, o nmero total de butterflies de raiz dupla a realizar dado pela relao recursiva
b(2) = 1

1998 F. J. Restivo
Processamento Digital de Sinal 75

b(3) = 2
b(n) = b(n-1) + 2b(n-2) + 2n-2 , n 4
e que o nmero total de DFT de comprimento 2 a realizar dado pela relao recursiva
d(1) = 1
d(2) = 1
d(n) = d(n-1) + 2d(n-2) , n 3 .
Resolvendo estas relaes, encontra-se

( 3 n 2) 2 n 1 + ( 1 ) n
b( n ) = ,n 4
9

2n ( 1 ) n
d (n ) = ,n 3
3
donde resulta que o nmero total de multiplicaes complexas a realizar

n 2 n 2( 2 n 1 ( 1) n )
m ( n ) = 2 b( n ) = ,n 4 ,
3 9
tendendo para 2/3 do nmero de multiplicaes correspondente aos algoritmos de raiz 2 quando n cresce, e
que o nmero de adies complexas a realizar

a( n) = 6b( n) + 2d ( n) = n2 n , n 4 ,
isto , exactamente o nmero de adies correspondente aos algoritmos de raiz 2.
Para n=1024, ter-se-ia

n.but. mult./but. ad./but. tot.mult. tot.ad.


raiz 2 5120 1 2 5120 10240
raiz 4 1280 3 12 3840 15360
raiz dupla 1593+341 2/0(a) 6/2 3186 10240
(a) so DFT de comprimento 2

5.8 Transformada de Fourier Discreta Inversa


As expresses da transformada de Fourier discreta e da transformada de Fourier discreta inversa diferem
apenas de um facto N-1 e de um sinal no expoente nk.
Um programa para o clculo da DFT pode ser usado com simples adaptaes no clculo da iDFT.
Uma possibilidade consiste em notar que
-1
x((-n)) = N DFT[X(k)] ,
e que x(n) se obtem de x((-n)) de modo "circular".
Assim, a iDFT pode ser calculada utilizando o programa de clculo da DFT com os coeficientes X(k),
dividindo os resultados obtidos por N, e reordenando-os trocando de posies os elementos de ordem n e N-
n, para n = 1 .. N/2-1.
Alternativamente,
-1
x(n) = N (DFT[X* (k)])* ,
como se conclui de

1998 F. J. Restivo
Processamento Digital de Sinal 76

N 1
N 1 ( DFT [X * ( k )] )* = N 1 ( X * (k )WN n k ) *
k =0

N 1
N 1 ( DFT [X * ( k )] )* = N 1 X( k )WN n k .
k =0

Este segundo mtodo, que consiste em utilizar o programa de clculo da DFT com os conjugados dos
coeficientes X(k), dividir os resultados obtidos por N e calcular os seus conjugados, dispensa a reordenao
exigida pelo mtodo anterior.
Finalmente, pode utilizar-se a relao

xI(n)+jxR(n) = N-1DFT[XI(k)+jXR(k)] ,

como resulta de

N -1 D F T[ X I (k) + jX R ( k )] = N 1 D F T[ jX * ( k )]

N 1
N-1DFT [XI (k) + jX R ( k) ] = jN 1( X(k)WN nk) *
k =0

N -1D F T[X I (k) + jX R ( k ) ] = jx * ( n ) .

Este ltimo mtodo particularmente interessante quando a entrada e a sada das partes real e imaginria dos
dados e resultados se faz separadamente.
Basta utilizar o programa de clculo da DFT com os coeficientes X(k) com as suas partes real e imaginria
trocadas, dividir os resultados obtidos por N, e trocar as suas partes real e imaginria.

5.9 Transformada de Fourier Discreta de Sinais Reais


A transformada de Fourier discreta de um sinal discreto real tem parte real par e parte imaginria mpar, o que
quer dizer que a utilizao directa de um programa para o clculo da DFT neste caso conduz a um duplo
clculo dos mesmos valores.
Sejam g(n) e h(n) dois sinais discretos reais de comprimento N.
Construindo o sinal discreto
x(n) = g(n) + jh(n)
e calculando a sua DFT
X(k) = XR(k) + jXI(k) = G(k) + jH(k) ,

simples concluir que


XR ( k ) + X R (( k )) + j( X I ( k ) X I (( k )))
G(k) =
2
XI ( k ) + XI (( k )) j( X R ( k ) XR (( k )))
H(k) = ,
2
o que mostra que possvel calcular simultaneamente as DFT de dois sinais reais com comprimento N,
considerando um como a parte real e outro como a parte imaginria de um sinal comp lexo, e utilizando as
simetrias das DFT pretendidas.
Quando se pretente calcular apenas a DFT de um sinal discreto real x(n) com comprimento N, possvel
utilizar uma s vez um programa para o clculo de uma DFT de comprimento N/2.
Para isso, basta construir os sinais discretos reais de comprimento N/2

1998 F. J. Restivo
Processamento Digital de Sinal 77

g(n) = x(2n)
h(n) = x(2n+1) ,
calcular simultaneamente as suas DFT como se viu atrs
w(n) = g(n) + jh(n)
WR ( k ) + W R (( k )) + j( W I ( k ) WI (( k )))
G(k) =
2
WI ( k ) + WI (( k )) j( W R ( k ) WR (( k )))
H(k) = ,
2
e recuperar X(k) como se se tratasse do ltimo andar do algoritmo C&T que estudamos
k
X(k) = G(k) + W N H(k)

k
X(k+N/2) = G(k) - W N H(k) .

O clculo da DFT de dois sinais reais de comprimento N, pelo primeiro mtodo, requere, para alm do clculo
de uma DFT de comprimento N, 4N adies e 2N multiplicaes por 1/2.
O clculo da DFT de um sinal real de comprimento N, pelo segundo mtodo, requere, para alm do clculo de
uma DFT de comprimento N/2, 4xN/2 adies e 2xN/2 multiplicaes por 1/2, e ainda N/2 borboletas.
Em ambos os casos, poder-se-ia ainda tirar partido de certas simetrias dos resultados.
Comparando, para N=1024, e em termos de operaes reais

tot.mult. tot.ad.
1 mt. (5120x4+2x1024)/2=11264 (10240x2+5120x2+4x1024)/2=17408
2 mt. 2304x4+2x512+256x4=11264 4608x2+2304x2+4x256+256x2=15360

5.10 CZT - Chirp Z Transform.


O interesse da DFT, quer no domnio da anlise espectral do sinal quer no clculo da convoluo, advm em
grande parte da existncia de algoritmos rpidos para a sua computao.
A DFT e os algoritmos FFT clssicos no do resposta contudo a alguns problemas prticos, um dos quais
resolvido pela CZT.
Na DFT, dois valores consecutivos de X(k) referem-se a frequncias espaadas de a /N, em que a a
frequncia angular de amostragem. Se se pretender diminuir este espaamento, ser assim necessrio
aumentar proporcionalmente o comprimento N da transformada, normalmente custa da extenso com zeros
do sinal x(n), mesmo que se pretenda este aumento de resoluo da transformada apenas numa pequena gama
de frequncias (zoom da DFT).
Imaginemos que pretendamos calcular o valor de M amostras da transformada em z, X(z), de um sinal discreto
x(n) com comprimento N, em M pontos
-k
zk = AW , k = 0,...,M-1 ,

em que A e W so dois complexos


j
A = A 0e

j
W = W 0e .

Nestas condies, o ponto z0 est em A e os restantes esto separados angularmente de e dispostos sobre
uma espiral de raio crescente ou decrescente conforme |W 0 | maior ou menor que um (pode ser um arco da
circunferencia unitria, por exemplo).

1998 F. J. Restivo
Processamento Digital de Sinal 78

Substituindo em
N1
X ( z) = x ( n ) z n
n =0

obtem-se
N 1
X (z k ) = x(n)(AW k ) n
n =0

e tendo em conta que


2 2 2
2nk = -(n-k) + n + k ,

N 1 n2 (n k )2 k2

X( z k ) = x (n )A n
W 2 W 2 W 2 ,
n =0

que podemos interpretar como um conjunto de trs operaes sucessivas


n2
n
multiplicao termo a termo de x(n) por A W2

n2
n
f ( n) = A W 2 x( n) ,

n2

convoluo do resultado obtido f(n) com W 2
N-1
f(k)W -(n-k)
2
g(n) = ,
k =0

ou, trocando os ndices n e k,


N-1
f(n)W -(n-k)
2
g(k) = ,
k =0

k2
e finalmente multiplicao termo a termo do resultado obtido g(k) por W 2 , como se ilustra na figura a
seguir, em que
n2

h ( n) = W 2

h(n)
x(n) f(n) g(k) X(z )
k

A-n 1
h(n) h(k)

Os valores X(zk ) obtm-se na sada deste sistema, podendo a convoluo envolvida ser calculada recorrendo
propriedade da convoluo da DFT.

1998 F. J. Restivo
Processamento Digital de Sinal 79

Neste caso, necessrio atender cuidadosamente no s ao facto de esta propriedade ser circular mas tambm
ao facto de h(n) ser um sinal discreto definido entre - e +.
As DFT devem ser de comprimento N+M-1 e os sinais alinhados de modo tal que os M valores pretendidos
da convoluo estejam isentos de aliasing (como no mtodo overlap-save anteriormente estudado)

h(n)

-N+1 0 M-1
f(n)

0 N-1
f(n)*h(n)
aliasing

-N+1 0 M-1

Uma das possveis aplicaes da CZT diz respeito ao estudo da transformada em z, X(z), ao longo de uma
linha traada no plano z, por exemplo um arco da circunferncia unitria (zoom da DFT) ou uma linha na
vizinhana de um polo de X(z).
Com a emergncia de microprocessadores de sinal especializados na convoluo, a CZT est a encontrar uma
nova aplicao que o clculo da DFT com base na convoluo, o que se consegue fazendo
2k
j
zk = e N , k = 0 .. N-1 .

1998 F. J. Restivo
Processamento Digital de Sinal 80

6. Filtros Digitais

6.1 Introduo
Os filtros digitais so um dos grandes campos de aplicao de Processamento Digital de Sinal.
Projectar um filtro digital determinar um algoritmo que satisfaa as especificaes pretendidas; realizar um
filtro digital implementar esse algoritmo, seja em software ou em hardware, atendendo s implicaes do uso
de preciso finita na representao dos coeficientes e dos sinais de entrada e de sada e na realizao das
operaes aritmticas respectivas.
Os filtros digitais do tipo FIR
N1
y( n) = h(k)x (n k)
n =0

no tm contrapartida no mundo analgico, na medida em que implementam directamente um sistema discreto


a partir da sua resposta impulsional h(n), finita.
Estes filtros podem ser realizados com fase exactamente linear, correspondente a um atraso fixo da sada
relativamente entrada, permitindo que no seu projecto a ateno do projectista se concentre na resposta em
amplitude, e, alm disso, so garantidamente estveis quando implementados no recursivamente.
Os filtros digitais do tipo FIR so tambm muito usados na realizao de sistemas adaptativos.
Os filtros digitais do tipo IIR
N 1 N 1
y( n) = b k y( n k ) + a k x (n k )
k =1 k =0

podem ser facilmente relacionados com filtros analgicos e so normalmente menos exigentes em termos do
nmero de operaes necessrias para realizar uma determinada resposta em frequncia.
H contudo situaes, como por exemplo a decimao e a interpolao, em que esta vantagem apenas
aparente.
Os parmetros do projecto de um filtro digital so normalmente os limites das bandas de passagem e de
rejeio e o ripple mximo admitido em cada uma destas bandas.

6.2 Projecto de Filtros Digitais do Tipo FIR.


Uma das grandes vantagens dos filtros digitais do tipo FIR a possibilidade de serem realizados com fase
exactamente linear.
Pode demonstrar-se que a condio necessria e suficiente para um filtro FIR ser de fase linear
h(n) = h(N-1-n) , se 0 n N-1
0 , se no .

1998 F. J. Restivo
Processamento Digital de Sinal 81

6.2.1 Classificao.
Os filtros digitais do tipo FIR costumam ser classificados de acordo com o sinal desta simetria e com o facto
do seu comprimento ser par ou mpar:
Comprimento mpar Comprimento par
Simetria + Tipo I Tipo II
Simetria - Tipo III Tipo IV

6.2.1.1 Tipo I.
Quando a simetria positiva e N mpar,
N 1
H (e j ) = h(n)e jn
n =0

pode escrever-se, agrupando os termos iguais de h(n),


N 1
N1 1
N 1 j 2
H ( e j ) = h (
2
)e 2 + h ( n)( e j n + e j( 1n ) )
n =0

donde, como
N -1
N 1 - j
- j n - j( N -1- n )
e +e = 2 cos( ( - n)) e 2 ,
2
N 1
j
H ( e j ) = A ( )e 2 ,

com
N 1
1
N 1 2 N 1
A( ) = h(
2
)+ 2 h (n) cos(( 2
n ))
n =0

ou, de uma forma ainda mais compacta,


N1
N1
2 j
H ( e j ) = a( n) cos(n) e 2
n =0

com
N 1
a (0) = h( )
2
N -1 N -1
a(n) = 2h( - n) , se 1 n ,
2 2
isto , a amplitude da resposta em frequncia uma soma de cossenos, com termo contnuo.

6.2.1.2 Tipo II.


Quando a simetria positiva e N par
N
1
2
H ( e j ) = h(n)(e jn + e j( 1n ) )
n= 0

1998 F. J. Restivo
Processamento Digital de Sinal 82

e ento
N -1
j - j
H( e ) = A () e 2 ,

com
N
1
2 N 1
A( ) = 2 h(n) cos(( 2
n))
n =0

ou, de uma forma mais compacta,


N
N1
2 1 j
H( e j
)= b(n ) cos(( n )) e
2
2
n =1

com
N N
b(n) = 2h( - n) , se 1 n .
2 2
Note-se que
j
= H(e ) = 0 ,
pelo que este tipo de filtro FIR no pode ser utilizado como passa alto, por exemplo.

6.2.1.3 Tipo III.


Quando a simetria negativa e N mpar, o que implica que
N 1
h( )=0 ,
2
como
N-1
N 1 - j
- jn - j( N -1- n )
e -e = 2 jsen( ( - n))e 2 ,
2
N -1
- j
H ( e j ) = jB()e 2 ,

com
N1
1
2 N 1
B( ) = 2 h(n)sen(( 2
n ))
n =0

ou, de uma forma ainda mais compacta,


N1
N1
2 j( )
H( e j
)= c( n)sen (n) e 2 2
n =1

com
N -1 N -1
c(n) = 2h( - n) , se 1 n .
2 2
Note-se que

1998 F. J. Restivo
Processamento Digital de Sinal 83

j
= 0 ou = H(e ) = 0 ,
pelo que este tipo de filtro FIR adequado para a realizao de diferenciadores digitais ou de filtros de Hilbert.

6.2.1.4 Tipo IV.


Quando a simetria negativa e N par,
N -1
j - j
H( e ) = jB()e 2 ,

com
N
1
2 N 1
B( ) = 2 h(n)sen(( 2
n))
n =0

ou, de uma forma ainda mais compacta,


N
N1
2 1 j( )
H( e j

) = d (n )sen( (n )) e 2
2
2
n =1

com
N N
d(n) = 2h( - n) , se 1 n .
2 2
Como
j
= 0 H(e ) = 0 ,
este tipo de filtros tem tambm particular interesse para a realizao de diferenciadores digitais ou de filtros de
Hilbert.

6.2.2 Relaes entre os Zeros dos Filtros FIR com Fase Linear.
Sabemos que se os coeficientes de um sistema discreto forem reais, os seus polos e zeros complexos ocorrem
sempre em conjunto com os respectivos conjugados.
Se o sistema for de fase linear verifica-se uma outra propriedade: se zk for um zero do sistema, zk 1 tambm o .

Na realidade, se
N1
h (n )z k n = 0
n =0

ento
N1
h(N 1 n )z k n = 0
n =0

e, pela mudana de varivel


n N-1-n ,
N1
h (n )z k ( N1n) = 0
n =0

ou seja, o que demonstra a afirmao,

1998 F. J. Restivo
Processamento Digital de Sinal 84

N 1
z N +1 h( n) z k n = 0 .
n= 0

-1 -
Os zeros de um filtro do tipo FIR com fase linear ocorrem normalmente em grupos de quatro, zk , zk * , zk e zk *
1
, que podem ser de dois ou de um em certos casos particulares.

-1
z*
k

z
k

z *k

z -1
k

Na realizao de um filtro deste tipo pela associao em srie de sistemas de pequena ordem, estes grupos de
zeros devem naturalmente ser includos no mesmo sistema, a fim de se poder tirar partido da simetria dos
coeficientes.

6.2.3 Mtodos de Projecto.


Os mtodos bsicos para o projecto de filtros digitais do tipo FIR so
- mtodo da janela
- mtodo da amostragem da funo de transferncia
- projecto ptimo (algoritmo de Remez).

6.2.3.1 Mtodo da Janela.


j
A partir da especificao de uma determinada resposta em frequncia Hd(e ), real e par, possvel determinar
a resposta impulsional h d(n) de um sistema discreto com essa resposta em frequncia


1 ej
h n ( n) = H d (e ) e jn d .
2

Esta resposta impulsional normalmente de comprimento infinito, real e par, e torna-se necessrio trunc-la,
utilizando uma janela w(n), isto , um sinal discreto de comprimento limitado, N, obedecendo s condies,
supondo N mpar,
w(n) = w(-n)
N 1 N 1
n<- ou n > w(n) = 0 ,
2 2
isto , tal que
h(n) = w(n)h d(n)

tem comprimento finito.


A resposta em frequncia H(e j ) do sistema resultante dada pela convoluo da transformada de Fourier de
w(n) com Hd(e j )

H(e j ) = W(e j )*Hd(e j ) .

1998 F. J. Restivo
Processamento Digital de Sinal 85

A janela mais bvia, a janela rectangular


N -1 N +1
w R (n) = u(n + ) u(n - ) ,
2 2
j
tem o inconveniente de introduzir um grande overshoot nas descontin uidades de Hd(e ), problema
geralmente conhecido como fenmeno de Gibbs, usando-se normalmente outras janelas, tais como a janela de
Hanning
2n
w N (n) = (0.5 + 0.5cos( )) w R ( n) ,
N -1
a janela de Hamming
2 n
w M (n) = (0.54 + 0.46cos( )) w R (n ) ,
N -1
as janelas de Kaiser, de Dolph-Chebyshev, de Blackman, etc..
Eventualmente, pode ainda ser necessrio tornar o sistema resultante causal, o que se pode realizar atravs da
N 1
introduo de um atraso .
2

6.2.3.1.1 Janela Rectangular.


A transformada de Fourier da janela rectangular
N 1
N 1
2 1 e jN j
j
H R (e ) = e j n
=
1 e j
e 2
N 1
n =
2

N
sen( )
H R ( e j ) = 2

sen( )
2
que se exemplifica a seguir, para N = 21.

25
20
15
10
5
0
-3.14 -2.36 -1.57 -0.79 0.00 0.79 1.57 2.36 3.14
-5

O lobo principal, entre -2/N e 2/N, manifesta-se essencialmente nas bandas de transio do filtro que est a
ser projectado, efeito que pode ser contornado por uma escolha conveniente do comprimento N.
O conjunto de lobos de menor amplitude e largura 2/N manifesta-se, quer nas bandas de passagem quer nas
bandas de bloqueio, pela introduo de um ripple, cuja amplitude no depende do comprimento do filtro!

6.2.3.1.2 Janela de Hamming generalizada.


A janela de Hanning e a janela de Hamming so casos particulares da janela de Hamming generalizada

1998 F. J. Restivo
Processamento Digital de Sinal 86

2n
wH(n) = ( + (1-)cos( ))wR(n) ,
N 1
cuja transformada de Fourier
2 2
1 j( ) j( + )
j j N1 ) + W ( e N1 ))
WH ( e ) = W R (e )+ ( WR ( e R
2
Representa-se a seguir a transformada de Fourier da janela de Hamming para N = 21 (neste caso, = 0.54).

12

0
-3.14 -2.36 -1.57 -0.79 0.00 0.79 1.57 2.36 3.14
-3

O lobo principal situa-se agora entre -4/N e 4/N, o que quer dizer que esta janela tem um efeito mais negativo
sobre as bandas de transio do filtro que est a ser projectado, introduzindo em compensao um ripple
bastante menor nas bandas de passagem e de bloqueio.

6.2.3.1.3 Janela de Blackman.


A janela de Blackman
2n 4n
wB(n) = (0.42 + 0.5cos( ) + 0.08cos( ))wR(n) ,
N 1 N 1
apresenta uma transformada de Fourier com um lobo principal entre -6/N e 6/N, mas tem a vantagem de
introduzir um ainda menor ripple nas bandas de passagem e de bloqueio do filtro que est a ser projectado.
O quadro a seguir, extrado da referncia [6], quantifica alguns destes aspectos

janela max lobo lateral transio max ripple band bloq

rectang -13 dB 0.9 2/N -21 dB

Hanning -31 dB 3.1 2/N -44 dB

Hamming -41 dB 3.3 2/N -53 dB

Blackman -57 dB 5.5 2/N -74 dB

6.2.3.2 Mtodo da Amostragem da Funo de Transferncia.


Como sabemos, dada uma amostragem
H(k) , k = 0 .. N-1
de uma determinada funo de transferncia, a funo

1 z N N1

H( k)
H (z ) =
k 1
k =0 1 W N
N z

1998 F. J. Restivo
Processamento Digital de Sinal 87

satisfaz a essa amostragem, e pode ser realizada pela associao em srie de um filtro digital do tipo FIR

1 zN
H p ( z) =
N
com N zeros em
-k
zk = W N , k = 0 .. N-1 ,

com N filtros digitais do tipo IIR, dispostos em paralelo,


H(k )
H k ( z) = , k = 0 .. N - 1 ,
2
j k
1 e z 1

-k
cada um dos quais com um polo em W N .

O filtro digital resultante do tipo FIR, como resultado do cancelamento destes polos pelos zeros do primeiro
elemento.
O sistema Hp , filtro em pente, caracteriza-se por apresentar N zeros igualmente espaados sobre a
circunferncia unitria do plano z. Para N=32, por exemplo, a sua resposta em frequncia

0.07
0.06
0.05
0.04
0.03

0.02
0.01
0
0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120
/128

Os sistemas Hk , filtros de banda, apresentam um polo cada um, coincidente com um dos zeros de Hp .

Uma vez que os sistemas Hk e KN-k tm polos conjugados e que num sistema com resposta impulsional real
H(k) = H(N-k), se se associarem estes dois sistemas obtem-se um sistema de segunda ordem cuja funo de
transferncia tem coeficientes reais
H (k ) H ( k)
H k ( z ) + H N k ( z ) = + .
2 2
j k j ( N k )
1 e N z 1 1 e N z 1
2 1
2H( k) 2H(k ) cos( k )z
H k ( z) + H N k ( z) = N .
2
1 2 cos( k) z 1 + z 2
N
A resposta em frequncia da associao em paralelo de H1 e H31 , para N=32, seria

1998 F. J. Restivo
Processamento Digital de Sinal 88

100

80

60

40

20

0
0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120
/128

Um dos principais problemas deste mtodo de sntese de filtros resulta da absoluta necessidade de os polos
dos filtros de banda cancelarem os zeros do filtro em pente, o que pode ser difcil de garantir numa
implementao em que os clculos so realizados com preciso finita.
A soluo habitualmente adoptada consiste em localizar esses polos e zeros sobre uma circunferncia de raio r
inferior, mas aproximadamente igual, a 1, de tal modo que mesmo que no coincidam se possam considerar a
igual distncia da circunferncia unitria.
Esta operao corresponde mudana de varivel
z
z
r
donde resulta

1 r N zN
H p ( z) =
N
H( k)
H k (z ) = , k = 0,.., N 1 .
2
j k
1 re N z 1

2 1
2H(k ) 2rH (k ) cos(
k) z
H k ( z) + H N k ( z) = N .
2
1 2r cos( k )z 1 + r 2 z 2
N
Exemplo
Pretende-se remover a componente com frequncia 150 Hz do sinal
x a ( t) = sin(2.50 t) + 0. 5 sin(2. 150 t) .

Utilizando um filtro de comprimento 32, com


H(k) = 0, excepto
H(0) = H(1) = H(2) = H(30) = H(31) = 1,
obter-se- o efeito desejado.
O sinal de entrada amostrado a 1600 Hz

1998 F. J. Restivo
Processamento Digital de Sinal 89

1.5

0.5

0
0 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240

-0.5

-1

-1.5

O filtro pente implementado pela equao

x( n) r N x( n N)
v(n ) =
N
e os filtros H0 , H1 +H31 e H2 +H30 so implementados respectivamente pelas equaes

y 0 ( n) = v(n ) + ry 0 ( n 1)


y1 ( n) = 2v( n) 2r cos( ) v( n 1) + 2r cos( ) y1 ( n 1) r 2 y1 ( n 2)
16 16

y 2 ( n) = 2v(n ) 2r cos( ) v( n 1) + 2r cos( ) y 2 (n 1) r 2 y2 (n 2)
8 8
sendo finalmente
y(n) = y 0 (n) + y 1 (n) + y 2 (n).

Calculando, com N=32 e r=0.999, obtem-se

1.5

0.5

0
0 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240

-0.5

-1

-1.5

H aqui evidentemente um fenmeno transitrio e verifica-se tambm o efeito do comprimento do filtro na


descontinuidade para n=32.
Outro problema srio associado a este mtodo consiste em controlar o andamento da funo de transferncia
entre os pontos de amostragem.
Na prtica, usual, por exemplo no projecto de um filtro passa baixo, no usar apenas amostras nas bandas de
passagem e de bloqueio

1998 F. J. Restivo
Processamento Digital de Sinal 90

0 2

mas definir tambm amostras na banda de transio

0.5

0 2

de modo a obrigar a funo de transferncia resultante a passar por esses pontos.


Os valores destas amostras intermdias normalmente determinado atravs de um critrio de optimizao
adequado.

6.2.3.3 Projecto Optimo.


Um filtro ptimo ser aquele que explora ao mximo o ripple admitido nas bandas de passagem e de rejeio,
com o objectivo de apresentar o comprimento mnimo possvel.
Estes filtros so projectados em computador, normalmente atravs de tcnicas iterativas baseadas no
algoritmo de Remez.
O projectista tem de decidir a priori o tipo de filtro FIR a optimizar.

6.3 Projecto de Filtros Digitais do Tipo IIR.


Os filtros digitais do tipo IIR so normalmente projectados tomando como ponto de partida um filtro
analgico, que transformado num filtro digital por um dos seguintes dois mtodos principais
- mtodo da invarincia da resposta impulsional
- mtodo da transformao bilinear.
Tira-se assim partido do conhecimento que actualmente h sobre vrios tipos de filtros analgicos, como os
de Butterworth, de Chebyshev e elpticos.

6.3.1 Mtodo da Invarincia da Resposta Impulsional.


No possvel reproduzir completamente num filtro digital um determinado filtro analgico (basta pensar que
a resposta em frequncia do filtro digital necessariamente peridica), mas possvel garantir que certas
caractersticas so respeitadas na transformao.
O mtodo da invarincia da resposta impulsional consiste exactamente em impor que a resposta impulsional
do filtro digital uma amostragem da resposta impulsional do filtro analgico
h(n) = Tha(nT) ,

com o factor T a garantir que a amplitude da resposta em frequncia dos dois filtros a mesma, a menos da
ocorrncia de aliasing

1998 F. J. Restivo
Processamento Digital de Sinal 91

+
j( + 2r )
H ( e j ) = Ha ( T
)
r =-

Quando a funo de transferncia do filtro analgico apresenta apenas polos simples


N 1
s ks
A
H s (s ) =
k =0 k

a funo de transferncia do filtro digital


N 1
1 e s kT z 1
A
H (z ) = T
k
k =0

verificando-se que este mtodo corresponde a um mapa dos polos de Ha(s) do plano s sobre o plano z

z k = e sk T .
Este mapa no biunvoco, pois todos os polos
s k + 2jrT-1 , r inteiro

vo recair sobre o mesmo polo zk

plano s
plano z

Na realidade, trata-se de mais uma manifestao do aliasing inerente amostragem, sendo certo que o maior
problema deste mtodo de projecto de filtros digitais do tipo IIR a possibilidade de ocorrncia de aliasing.
De acordo com este mapa, o eixo j do plano s recai sobre a circunferncia unitria do plano z
z = ejT ,
o que est de acordo com a relao j conhecida entre frequncia analgica e frequncia digital.
Pontos situados esquerda do eixo j do plano s recaem sobre o interior da circunferncia unitria do plano
z, o que garante que um sistema causal e estvel d origem a um sistema causal e estvel.
Sintetizando, podemos dizer que o mapa

z = e sT
estabelece um correspondncia biunvoca entre uma "tira" do plano s paralela ao seu eixo real e com largura
2/T, por exemplo a limitada pelas rectas
Im(s) = jT-1
Im(s) = -jT-1 ,
e todo o plano z, com o mapa inverso
s = T-1log(z) .
O logaritmo principal de um nmero complexo um nmero complexo com parte imaginria compreendida entre
-j e j.

1998 F. J. Restivo
Processamento Digital de Sinal 92

6.3.2 Transformao Bilinear.


A transformao bilinear permite passar directamente da funo de transferncia do filtro analgico para a
funo de transferncia do filtro digital, atravs da substituio

2 1 z 1
s
T 1 + z 1
que define um mapa biunvoco do plano s no plano z.
Resolvendo em ordem a z, tem-se
2 + sT
z=
2 sT
e pode facilmente observar-se que ao eixo j do plano s corresponde a circunferncia unitria do plano z
T
j2 arctg( )
z=e 2 ,
o que quer dizer que a resposta em frequncia do filtro digital uma cpia da resposta em frequncia do filtro
analgico, com a distoro resultante da compresso de todo o eixo j numa revoluo a essa circunferncia,
e que ao semiplano esquerdo do plano s corresponde o seu interior, o que quer dizer que um sistema contnuo
causal e estvel d origem a um sistema discreto causal e estvel.
A relao entre as frequncias analgica e digital
T
= 2arctg( ) ,
2
no linear e tem de ser tomada em conta ao projectar-se o filtro analgico de partida.

3.14

1.57

0
-8 -6 -4 -2 0 2 4 6 8
-1.57

-3.14

Exemplo
Consideremos que se pretende amostrar um sinal analgico a
fa = 20 kHz

e realizar uma filtragem digital passa-baixo com frequncia de corte


fc = 1 kHz

com um filtro de 1 ordem obtido a partir de um filtro analgico RC elementar.


Utilizando o mtodo da invarincia da resposta impulsional, devemos partir do filtro analgico
2000
H a (s ) =
s + 2000
resultando o filtro digital

1998 F. J. Restivo
Processamento Digital de Sinal 93

0.1
H ( z) =
1 e 01. z 1
y(n) = 0.314x(n) + 0.730y(n-1)
cuja amplitude resposta em frequncia se representa a seguir

1.5

0.5

0
-3.14 -2.36 -1.57 -0.79 0.00 0.79 1.57 2.36 3.14

O efeito do aliasing visvel, para esta largura de banda.


Utilizando o mtodo da transformao bilinear, necessrio em primeiro lugar determinar a frequncia de corte
c do filtro analgico a que depois da transformao corresponder a frequncia de corte do filtro digital

c = 0.1 ,

2 c
c = tg = 6335 .4 rads -1 ,
T 2
-1
ligeiramente superior frequncia de corte 2000 rads utilizada anteriormente.
Assim, como
6335 .4
H a (s) = ,
s + 6335 .4
pela transformao bilinear

0.137 (1 + z 1 )
H( z ) =
1 0.727 z 1
y(n) = 0.137x(n) + 0.137x(n-1) + 0.727y(n-1) ,
cuja amplitude da resposta em frequncia se representa graficamente a seguir

1.5
1
0.5

0
-3.14 -2.36 -1.57 -0.79 0.00 0.79 1.57 2.36 3.14

Neste caso, no ocorre aliasing. De notar tambm o efeito do zero em z=-1.


Normalmente, o filtro digital especificado pelas suas bandas, de passagem, de transio e de bloqueio, e
pelas atenuaes que necessrio garantir, isto , o filtro analgico no dado.
Este problema resolve-se recorrendo em primeiro lugar ao projecto de um filtro analgico prottipo, utilizando
uma das famlias tradicionais, Butterworth, Chebyshev, etc..

1998 F. J. Restivo
Processamento Digital de Sinal 94

6.3.2.1 Filtros de Butterworth


Os filtros de Butterworth tm resposta em frequncia
1
| H a ( ) |2 = ,
2N
1+ ( )
c

em que c a frequncia angular de corte do filtro e N a sua ordem, e caracterizam-se por apresentarem uma
resposta em frequncia monotnica.
Graficamente, o andamento de |Ha()| tem a forma representada a seguir, para os filtros de ordem 1 a 6, e c =
1.

1.00

0.80

0.60

0.40

0.20

0.00
0.00 1.00 2.00 3.00 4.00 5.00

Os polos de um filtro de Butterworth determinam-se resolvendo a equao


s 2N
1+( ) =0 ,
j c

a qual admite 2N solues igualmente espaadas sobre uma circunferncia de raio c e centrada na origem do
plano s
s
= 2N 1
j c
2
j( +k )
s = j ce 2N 2N , k = 0 .. 2 N - 1
e retendo as solues situadas no semi-plano esquerdo do plano s (N polos).
A funo de transferncia dos filtros de Butterworth do tipo
1
H a (s) =
s s N
1 + a1 + ... + a N ( )
j c j c

em que os coeficientes a1 .. aN tm os valores dados pela tabela seguinte

1998 F. J. Restivo
Processamento Digital de Sinal 95

a1 a2 a3 a4 a5 a6 a7 a8

B1 1

B2 0.707 1

B3 2 2 1

B4 2.613 3.414 2.613 1

B5 3.236 5.236 5.236 3.236 1

B6 3.864 7.464 9.141 7.464 3.864 1

B7 4.494 10.103 14.606 14.606 10.103 4.494 1

B8 5.126 13.138 21.848 25.691 21.848 13.138 5.126 1

Os parmetros c e N determinam-se em primeira aproximao pelos dados relativos ao limite superior da


banda de passagem e ao limite inferior da banda de rejeio, expressos em termos da frequncia analgica.

6.3.2.2 Filtros de Chebyshev


Os filtros de Chebyshev caracterizam-se por apresentarem ripple numa das bandas, passagem ou bloqueio, o
que conduz em muitos casos, a solues mais econmicas em termos da ordem do filtro.
7. Baseiam-se nos polinmios de Chebyshev, os quais se podem definir recursivamente a partir de
TN+1 (x) = 2xT N(x) - TN-1 (x)

com
T0 (x) = 1

T1 (x) = x,

ou ento, de uma forma compacta, como


TN(x) = cos(Ncos -1 (x)) , se |x| 1

cosh(Ncosh -1 (x)) , se no .
Na figura seguinte, representam-se os polinmios de Chebyshev de ordem 0 a 6

14
12
10
8
6
4
2
0
-20.00 1.00 2.00 3.00 4.00

Estes polinmios caracterizam-se por


TN(1) = 1

TN(-1) = 1

1998 F. J. Restivo
Processamento Digital de Sinal 96

|TN(x)| 1 , |x| 1

|TN(x)| 1 , |x| 1 ,

o que os torna apropriados para definir filtros passa-baixo.


Os filtros de Chebyshev do tipo I apresentam ripplena banda de passagem, e tm amplitude da resposta em
frequncia
1
| H a ( j) |2 = ,

1 + TN 2 (
2
)
c

representando-se a seguir os filtros deste tipo com ordem 1 a 6, c = 1 e = 0.5

1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0.00 1.00 2.00 3.00 4.00

Os filtros de Chebyshev do tipo II apresentam ripple na banda de bloqueio, e tm amplitude da resposta em


frequncia
1
| H a ( j) | 2 = .

TN ( b )
2
c
1 + 2

TN 2 ( b )

Como se pode ver por exemplo na referncia [5], no difcil estabelecer as equaes necessrias
determinao do polinmio de Chebyshev de ordem mnima que permite satisfazer uma determinada
especificao, e, a partir da, projectar o filtro digital.
Exemplo
Suponhamos que pretendemos projectar um filtro digital passa-baixo especificado pelo limite superior da
banda de passagem
p = 0.1 rad

e pela mxima atenuao admitida nesta banda


= -0.3 dB ,
e pelo limite inferior da banda de bloqueio
b = 0.3 rad

e pela mnima atenuao exigida nesta banda


= -40 dB .
No exemplo que estamos a considerar

|Ha(j0.1T-1 )|2 = 10-0.03

1998 F. J. Restivo
Processamento Digital de Sinal 97

|Ha(j0.3T-1 )|2 = 10-4

sistema de equaes que se pode escrever

(0.1T-1 / c)2N = 0.0715

(0.3T-1 / c)2N = 9999

donde
N = 5.39

c = 0.401T -1 .

A ordem mnima do filtro de Butterworth que satisfaz as especificaes


N=6,
o que permite uma certa margem de manobra relativamente a c, que pode variar entre um valor calculado a
partir da primeira das duas equaes anteriores, satisfazendo justa a especificao na banda de passagem, e
um valor calculado a partir da segunda dessas equaes, satisfazendo justa a especificao na banda de
bloqueio
-1
c 0.391T

-1
c 0.437T .

Depender agora do mtodo utilizado e do critrio do projectista a fixao de c.

Deixamos por aqui este exemplo. Recomenda-se a leitura da referncia [3] para o estudo detalhado de um
problema semelhante a este. Note-se que no necessrio conhecer T para projectar completamente o filtro,
pois, ao realizar a passagem ao domnio discreto, T intervem novamente, de modo tal que deixa de estar
presente no resultado final.

6.4 Transformaes no Domnio das Frequncias.

6.4.1 Filtros Passa Tudo.


Um filtro digital com amplitude da resposta em frequncia constante para todas as frequncias diz-se um filtro
passa tudo, e a sua principal aplicao consiste na modificao da fase de uma resposta em frequncia sem
alterao da respectiva amplitude.
O seu estudo permite-nos tambm compreender melhor como se pode projectar qualquer filtro digital tomando
como ponto de partida um filtro passa baixo, atravs do uso de transformaes no domnio das frequncias.

Um sistema discreto com um polo em C e um zero em *1 tem estas caractersticas, isto , se

z *1
H ( z) =
z
ento
1
| H( e j ) |= .
| |

Na realidade,

| e j a 1 e j |
| H( e j ) |= , = ae j
j j
|e ae |

1998 F. J. Restivo
Processamento Digital de Sinal 98

| cos + jsen a 1 cos ja 1sen |


| H( e j ) |=
| cos + jsen a cos jasen |

(cos a 1 cos ) 2 + (sen a 1sen) 2


| H(e j ) | 2 =
(cos a cos) 2 + (sen asen) 2

1 + a 2 2a 1 cos cos 2a 1sensen


| H ( e j ) | 2 =
1 + a 2 2a cos cos 2asen sen

1
| H ( e j ) | 2 = .
a2
Um estudo grfico simples teria permitido chegar mais rapidamente a esta concluso,

e j -1
*
-1
||(e j- * )
1

z
pois, como ressalta da figura,

| e j |=| | . | e j *1 | .
j
O modo como arg(H(e )) varia com tambm pode ser estudado analiticamente.
Vamos faz-lo para o caso R , uma vez que qualquer outro caso se resume a uma rotao de .

e j

1 -1

z
Assim,
1
arg(cos + jsen
)
arg(H(e j )) =
arg(cos + jsen )

1998 F. J. Restivo
Processamento Digital de Sinal 99

sen sen
arg(H (e j )) = arctg arctg
1 cos
cos

e, utilizando a identidade trigonomtrica
tg tg
tg( ) =
1 + tgtg

sen sen

1 cos
cos
[
tg arg(H (e j )) =]
sen sen
1+
1 cos
cos

1
sen(cos ) sen(cos
[ ]
)
tg arg(H(e j )) =
1
(cos )(cos ) + sen 2

1
( )sen
arg(H( e j )) = arctg
1
2 ( + ) cos

Graficamente, para = 0.5 ,

3.14

2.36

1.57

0.79

0.00
0.00 0.79 1.57 2.36 3.14 3.93 4.71 5.50 6.28
-0.79

-1.57

-2.36

-3.14

6.4.2 Transformaes no Domnio das Frequncias.


Uma transformao no domnio das frequncias uma mudana de varivel do tipo

z 1 = G ( Z 1 ) .

Dado o sistema discreto Hl(z), esta mudana de varivel transforma-o no sistema discreto

H d ( Z) = H l ( G 1 ( Z 1 )) .

As condies a que deve satisfazer uma mudana de varivel para ser adequada converso de um filtro
digital do tipo passa baixo num filtro digital de outro tipo so as seguintes

1998 F. J. Restivo
Processamento Digital de Sinal 100

G(Z-1) deve ser uma funo racional de Z-1 (ou de Z),


a mudana de varivel deve mapear o interior da circunferncia unitria do plano z no interior da
circunferncia unitria do plano Z,
|G(Z-1)|=1.
Os sistemas discretos do tipo passa-tudo

z *1 z *1
H (z ) = =
z 1 z
permitem deduzir mudanas de varivel com as caractersticas anteriores

Z 1 *1
G( Z 1 ) =
1 Z 1

que, com uma escolha apropriada do parmetro , conduzem s transformaes no domnio das frequncias
mais interessantes do ponto de vista do projecto de filtros digitais

passa baixo passa baixo

passa baixo passa alto

passa baixo passa banda

passa baixo tampo.

Limitamo -nos aqui a escrever as transformaes e as respectivas equaes de projecto.

6.4.2.1 Passa Baixo em Passa Baixo.


A mudana de varivel

Z 1
z 1 =
1 Z 1
em que
p p
sin
= 2
p + p
sin
2
e p e p so as frequncias de corte dos filtros original e pretendido, respectivamente.

6.4.2.2 Passa Baixo em Passa Alto.


A mudana de varivel

Z 1 +
z 1 =
1 + Z 1
em que
p + p
cos
= 2
p p
cos
2

1998 F. J. Restivo
Processamento Digital de Sinal 101

e p e p so as frequncias de corte dos filtros original e pretendido, respectivamente.

6.4.2.1 Passa Baixo em Passa Banda.


A mudana de varivel
2 k 1 k 1
Z 2 Z +
z 1 = k +1 k +1
k 1 2 2k 1
Z Z +1
k +1 k +1
em que
2 + 1
cos
= 2
2 1
cos
2

1 p
k = cot g 2 tg
2 2
e p a frequncia de corte do filtro original e 1 e 2 so as frequncias inferior e superior de corte do filtro
pretendido, respectivamente.

6.4.2.2 Passa Baixo em Tampo.


A mudana de varivel
2 k 1 1 k
Z 2 Z +
z 1
= 1 +k 1+ k
1 k 2 2 1
Z Z +1
1+ k 1+ k
em que
2 + 1
cos
= 2
2 1
cos
2

1 p
k = tg 2 tg
2 2

e p a frequncia de corte do filtro original e 1 e 2 so as frequncias inferior e superior de corte do filtro


pretendido, respectivamente.

1998 F. J. Restivo
Processamento Digital de Sinal 102

7. Realizao de Sistemas Discretos

7.1 Grficos de Fluncia


Um sistema discreto realiza-se atravs da implementao do seu algoritmo, em hardware ou em software.
As operaes envolvidas so basicamente trs, a soma, a multiplicao por uma constante e o atraso.
Um modo simples de compreender o funcionamento dos algoritmos consiste na sua traduo em grficos de
fluncia.

a(n)

a(n)+b(n)

b(n)

a(n) k k.a(n)

a(n) z-1 a(n-1)

Exemplo
Consideremos o sistema discreto recursivo
y(n) = x(n) + A 1x(n-1) + A 2x(n-2) + B1y(n-1) + B2y(n-2) .
O grfico a seguir representa de uma maneira intuitiva o seu funcionamento.

x(n) y(n)

z-1 z-1
A1 -B1

z-1 z-1
A2 -B 2

1998 F. J. Restivo
Processamento Digital de Sinal 103

e permite, por manipulaes simples, a descoberta de outros algoritmos mais vantajosos para a sua
implementao.
Considerando o grfico como uma associao em srie de dois grficos mais simples, e invertendo a sua
ordem

x(n) y(n)

z-1 z-1
-B 1 A1

z-1 z-1
-B 2 A2

v-se imediatamente que possvel implementar o algoritmo com apenas dois atrasos, em vez dos quatro
iniciais.

x(n) y(n)

z-1
-B1 A1

z-1
-B 2 A2

As equaes respectivas so
v(n) = x(n) + B1 v(n-1) + B2 v(n-2)

y(n) = v(n) + A 1 v(n-1) + A 2 v(n-2)

em que v(n) o valor a memorizar (na realidade, uma varivel de estado).

7.2 Formas Directas


As formas directas so aquelas que derivam directamente dos algoritmos que descrevem os filtros digitais.

7.2.1 Filtros FIR


A equao geral de um filtro FIR causal
N 1
y( n ) = h ( k ) x( n k ) ,
k =0

que implementada directamente pelo grfico de fluncia

1998 F. J. Restivo
Processamento Digital de Sinal 104

x(n)

z-1 z-1 z-1


h(0) h(1) h(2) h(N-1)
y(n)

Uma operao simples sobre este grfico, que consiste em inverter o sentido dos ramos e trocar a entrada com
a sada, permite obter uma forma alternativa, de muita importncia por exemplo em realizaes com o
microprocessador de sinal Inmos A100.

x(n)

h(N-1) h(N-2) h(N-3) h(0)


z-1 z-1 z-1 y(n)

Os filtros do tipo FIR so muito usados na implementao de sistemas de fase linear.


Neste caso,
h(n) = h(N-1-n), n = 0 .. N-1
e esta simetria pode ser explorada na realizao do filtro, reduzindo a metade o nmero de multiplicaes, quer
quando o comprimento N mpar

x(n) z-1 z-1 z-1

z-1 z-1 z-1

h(0) h(1) h(2) h( N-1 )


2
y(n)

quer quando N par

x(n) z-1 z-1 z-1

z-1

z-1 z-1 z-1

h(0) h(1) h(2) h( N-1 )


2
y(n)

1998 F. J. Restivo
Processamento Digital de Sinal 105

7.2.2 Filtros IIR


O algoritmo correspondente a um filtro digital do tipo IIR,
N 1 N 1
y( n ) = a k x( n k ) + bk y( n k ) ,
k =0 k =1

pode ser implementado por uma estrutura que a generalizao da do exemplo anterior, e que conhecida por
forma directa 2 ou por forma cannica.

x(n) a y(n)
0

z-1
-b1 a
1

z-1
-b 2 a
2

z-1
-b N-1 a
N-1

7.3 Realizaes Srie e Paralelo


As propriedades da linearidade e da convoluo da transformada em z mostram que soma de funes de
transferncia corresponde a associao em paralelo e ao seu produto a associao em srie.
A realizao de um sistema complexo atravs da associao em paralelo ou em srie de sistemas mais simples
muitas vezes conveniente, quer por razes de modularidade quer por razes associadas diminuio dos erros
causados pela quantificao dos coeficientes do sistema.
Uma regra elementar para a definio desses sistemas mais simples consiste em conservar no mesmo sistema
pares de zeros ou de polos complexos conjugados, para assegurar que os respectivos coeficientes sejam
nmeros reais.

7.3.1 Filtros FIR


Nos filtros do tipo FIR recorre-se normalmente sua realizao pela associao em srie de sistemas de
primeira, segunda ou quarta ordem, correspondendo os primeiros implementao de um zero em z=1

H ( z ) = 1 z 1 ,
os de segunda ordem implementao de um par de zeros reais em e 1/

H ( z ) = (1 z 1 )(1 1 z 1 ) = 1 ( + 1 ) z 1 + z 2 ,
e os de quarta ordem implementao de quatro zeros complexos em , 1/, *e 1/*
1
H ( z ) = (1 ( + 1 )z 1 + z 2 )(1 ( + )z 1 + z 2 )

H ( z ) = 1 1 z 1 + 2 z 2 1 z 3 + z 4

com 1 e 2 reais e dados por

1998 F. J. Restivo
Processamento Digital de Sinal 106

1
1 = + 1 + +
1
2 = ( + 1 )( + ) + 2

que so as combinaes de zeros que podem ocorrer nomeadamente em sistemas de fase linear, e que retm a
simetria dos coeficientes nestas decomposies.
Noutras situaes, podem ainda ocorrer pares de zeros complexos conjugados, que podem ser implementados
atravs de sistemas de segunda ordem.

7.3.2 Filtros IIR


Nos sistemas do tipo IIR, recorre-se normalmente sua realizao pela associao em srie ou em paralelo de
sistemas de primeira ou segunda ordem, correspondendo os primeiros implementao de um polo real e os
de segunda ordem implementao de um par de polos reais ou complexos conjugados.

1998 F. J. Restivo

Você também pode gostar