264
Gerhard Doblinger Zeitdiskrete Signale und Systeme Eine Einf¨ uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 0.1 0.2 0.3 0.4 0.5 0 1 2 3 4 5 g[n] g[n] g[n] g[n] FFT FFT FFT FFT Frequenz (kHz) Zeit (Sekunden) 3. Auflage

Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

  • Upload
    others

  • View
    54

  • Download
    9

Embed Size (px)

Citation preview

Page 1: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Gerhard Doblinger

Zeitdiskrete Signale und Systeme

Eine Einfuhrung in die grundlegenden

Methoden der digitalen Signalverarbeitung

0.1 0.2 0.3 0.4 0.50

1

2

3

4

5

g[n] g[n] g[n] g[n]

FFT FFT FFT FFT

Fre

quen

z (k

Hz)

Zeit (Sekunden)

3. Auflage

Page 2: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Zeitdiskrete Signale und SystemeEine Einfuhrung in die grundlegendenMethoden der digitalen Signalverarbeitung3. Auflage

Dr. Gerhard DoblingerInstitute of TelecommunicationsTechnische Universitat WienGußhausstr. 25/389A-1040 Wien

Email: [email protected]: www.nt.tuwien.ac.at/staff/gerhard-doblinger/

Home Page zu diesem Buch:

www.nt.tuwien.ac.at/about-us/staff/gerhard-doblinger/

c© Gerhard Doblinger, 2015

Dieses Werk einschließlich aller seiner Teile ist urheberrechtlich geschutzt. AlleRechte, insbesondere die Vervielfaltigung, Verbreitung und Ubersetzung liegenbeim Autor. Kein Teil des Werkes darf ohne Genehmigung des Autors, auch nichtfur Unterrichtszwecke, fotokopiert oder durch andere Verfahren reproduziert undverbreitet werden. Eine Einspeicherung und Verarbeitung in Netzwerken (Internet)darf ohne Genehmigung des Autors nicht vorgenommen werden.

MATLABr ist ein eingetragenes Warenzeichen der Firma The MathWorks, Inc.,USA.

Page 3: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Vorwort

Das vorliegende Buch behandelt zeitdiskrete Signale und Systeme und bietet da-mit eine Einfuhrung in die grundlegenden Methoden der digitalen Signalverar-beitung. Diese Methoden werden heute in vielen Bereichen der Elektrotechnik,Informationstechnik und in der angewandten Mathematik benotigt. Die gewahlteDarstellung des an sich anspruchsvollen Stoffgebietes habe ich anwendungsorien-tiert gestaltet, d.h. viele Methoden konnen sofort in die Praxis umgesetzt werden.Trotzdem ist keine Sammlung von Kochrezepten der digitalen Signalverarbeitungentstanden. Ich habe sehr großen Wert darauf gelegt, alle behandelten Ideen undKonzepte herzuleiten. Das gelingt mit erstaunlich geringem mathematischen Auf-wand. Obwohl Formeln im Erscheinungsbild des Buches gehauft auftreten, werdennur grundlegende mathematische Kenntnisse, wie sie im Bachelor-Studium einertechnischen Universitat oder einer Fachhochschule vorhanden sein sollten, voraus-gesetzt.

Fur die Anwendung der Methoden ist naturlich das selbstandige Losen vonUbungsaufgaben unumganglich. Zur Erleichterung habe ich dazu Referenzbeispie-le in das Buch aufgenommen, die vielfach als Anhaltspunkte fur die Losungen vonUbungsaufgaben dienen. Um die praktische Bedeutung des Stoffes zu untermauernund die Methoden noch anschaulicher darzustellen, habe ich MATLAB-Beispieleangegeben, die einfach nachvollziehbar sind. Die Kombination Rechnen und Simu-lieren ist heute fur jeden Ingenieur auf diesem Gebiet eine Grundvoraussetzungzum Problemlosen. Der Programmieraufwand halt sich mit MATLAB in Grenzen,da viele Funktionen vorhanden sind und die Syntax in sehr kurzer Zeit erlernbarist. Der Einsatz eines Computers soll in erster Linie die Problemlosung erganzenbzw. anschaulich gestalten, beispielsweise durch graphische Darstellung der Ergeb-nisse.

Ich mochte aber festhalten, dass Probleme nicht nur durch Simulation gelostwerden sollten, da blindes Vertrauen in nummerische Resultate haufig schief geht.Mit den Rechenmethoden in diesem Buch ist fur viele Problemstellungen aucheine Kontrollmoglichkeit fur nummerische Losungen gegeben. Mit den MATLAB-Beispielen im Buch mochte ich die Herleitungen auflockern und den Leserkreiszum Experimentieren motivieren. Alle MATLAB-Beispiele dieses Buches

Page 4: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

iv Vorwort

sind auf meiner Home Page zu finden. Als Open Source Alternative zuMATLAB empfehle ich OCTAVE (www.gnu.org/software/octave/). OCTAVEkann im MATLAB-Modus betrieben werden und ist fur die Beispiele des Bu-ches mehr als ausreichend. Obwohl nur geringe Abweichungen bestehen, habe ichOCTAVE-Versionen von allen MATLAB-Beispielen angefertigt. Zusatzlich habeich die MATLAB-Beispiele und deren Ergebnisse auch als HTML-Dokumente aufmeiner Home Page gespeichert, so dass MATLAB oder OCTAVE zur Erzeugungder Resultate nicht benotigt werden.

Zu diesem Buch gibt es eine ausfuhrliche Beispielsammlung als PDF-Fileauf meiner Home Page mit Losungen fur die Rechenbeispiele. Aus diesemGrund habe ich keine zusatzlichen Aufgaben in das Buch aufgenommen. Die Sei-tenzahl hatte sich durch die umfangreichen Beispiele und Losungen erheblich ver-großert. Außerdem werden die Aufgaben laufend erganzt, so dass mir eine Ausla-gerung der Beispielsammlung auf meine Home Page als sinnvoll erscheint.

Dieses Buch ist aus einem Skriptum zur Vorlesung uber zeitdiskrete Signa-le und Systeme entstanden, die ich im Sommersemester 2007 fur Studenten desBachelor-Studiums der Elektrotechnik an der Technischen Universitat Wien abge-halten habe. Ich bin daher vielen Studenten fur die positiven Ruckmeldungen unddie Fehlerkorrekturen zum Skriptum sehr dankbar. Mein besonderer Dank geht anHerrn Prof. Dr. W. Mecklenbrauker fur wertvolle Anregungen, Diskussionen undBeitrage. Herrn Dr. J. Schlembach danke ich fur das Interesse an der Publikationdieses Buches und fur die ausgezeichnete Unterstutzung.

Wien, im November 2007 G. Doblinger

Vorwort zur 2. Auflage

Die vorliegende zweite Auflage ist ein Nachdruck mit Korrekturen von Fehlernund mit einigen Erganzungen (z.B. Hullkurvendetektor mit der Hilberttransfor-mation). Fur die Entdeckung von Fehlern bin ich wieder den Studierenden an derTechnischen Universitat Wien sehr dankbar. Bei Herrn Dr. J. Schlembach vomVerlag bedanke ich mich fur seinen Einsatz, der den raschen Nachdruck diesesBuches ermoglicht hat.

Wien, im Marz 2010 G. Doblinger

Page 5: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Vorwort v

Vorwort zur 3. Auflage

Die dritte Auflage erscheint nicht mehr in gedruckter Form, sondern ist als PDF-Datei frei zuganglich. Anfang 2014 hat mich Frau Karin Schlembach vom TodIhres Mannes, Herrn Dr. Jens Schlembach, informiert. Herr Schlembach war ausmeiner Sicht der perfekte Verleger: Wohlwollend, geduldig, und in der Abwicklungder Buchproduktion unkompliziert und absolut verlasslich. Ich bedauere diesenVerlust zutiefst und werde Herrn Dr. Schlembach in dankbarer Erinnerung halten.

In der vorliegenden Auflage sind einige Korrekturen und kleine Erganzungenenthalten. Neu hinzugekommen sind die Einseitenbandmodulation mit dem Hil-berttransformator, eine einfuhrende Behandlung minimalphasiger digitaler Filterund ein Abschnitt uber Signalinterpolation mit der DFT. Eine wesentliche Er-weiterung ist außerdem der Abschnitt uber die Taktratenumsetzung mit belie-bigen Faktoren im Kapitel

”Multiratensignalverarbeitung“. Die Programmsamm-

lung mit den MATLAB-Beispielen des Buches habe ich aktualisiert und mit derderzeit verfugbaren MATLAB-Version 8.5 (R2015a) getestet.

Das Buch bildet auch weiterhin die Grundlage fur eine Vorlesung an der Techni-schen Universitat Wien. Mein Dank geht daher insbesondere an den Vortragendendieser Lehrveranstaltung, Herrn Prof. Dr. N. Gortz, mit dem ich auch zahlreicheanregende Diskussionen zum Themenkreis der Vorlesung hatte.

Wien, im Juni 2015 G. Doblinger

Page 6: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

vi Vorwort

Page 7: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Inhaltsverzeichnis

1 Einleitung 1

2 Zeitdiskrete Signale 5

2.1 Elementare zeitdiskrete Signale und Signaleigenschaften . . . . . . 6

2.2 Zeitachsentransformationen . . . . . . . . . . . . . . . . . . . . . . 15

2.3 Fourierreihendarstellung periodischer, zeitdiskreter Signale . . . . . 19

3 Zeitdiskrete Systeme 29

3.1 Beschreibung im Zeitbereich . . . . . . . . . . . . . . . . . . . . . . 30

3.2 Beschreibung im Frequenzbereich . . . . . . . . . . . . . . . . . . . 45

4 Fouriertransformation fur zeitdiskrete Signale und Systeme 59

4.1 Eigenschaften der Fouriertransformation fur zeitdiskrete Signale . . 67

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale . . . . . 74

4.2.1 Abtastung von Tiefpasssignalen . . . . . . . . . . . . . . . . 75

4.2.2 Abtastung von Bandpasssignalen . . . . . . . . . . . . . . . 81

5 Differenzengleichungen und Z-Transformation 87

5.1 Losung von Differenzengleichungen mit konstanten Koeffizienten . 91

5.2 Frequenzgang zeitdiskreter Netzwerke mit konstanten Koeffizienten 95

5.3 Z-Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

5.4 Inverse Z-Transformation . . . . . . . . . . . . . . . . . . . . . . . 106

5.5 Eigenschaften der Z-Transformation . . . . . . . . . . . . . . . . . 110

5.6 Losung von Differenzengleichungen mit der Z-Transformation . . . 113

5.7 Anfangs- und Endwerttheorem der einseitigen Z-Transformation . 117

Page 8: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

viii Inhaltsverzeichnis

6 Digitale Filter 119

6.1 Idealisierte zeitdiskrete Filter . . . . . . . . . . . . . . . . . . . . . 119

6.2 FIR-Filterentwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

6.2.1 FIR-Filterentwurf nach der Fenstermethode . . . . . . . . . 138

6.2.2 Optimaler FIR-Filterentwurf mit dem Remez-Algorithmus . 142

6.3 IIR-Filterentwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.3.1 Approximation der Impulsantwort . . . . . . . . . . . . . . 145

6.3.2 Bilineare Z-Transformation . . . . . . . . . . . . . . . . . . 148

6.3.3 Minimalphasige Digitalfilter . . . . . . . . . . . . . . . . . . 155

6.4 Realisierung von IIR-Filtern . . . . . . . . . . . . . . . . . . . . . . 158

7 Diskrete Fouriertransformation (DFT) 165

7.1 Eigenschaften der diskreten Fouriertransformation . . . . . . . . . 169

7.2 Zusammenhang DFT und Z-Transformation . . . . . . . . . . . . . 175

7.3 Signalinterpolation mit der DFT . . . . . . . . . . . . . . . . . . . 176

7.4 Fenstereffekt bei der DFT . . . . . . . . . . . . . . . . . . . . . . . 180

7.5 Overlap-Add und Overlap-Save Methode . . . . . . . . . . . . . . . 181

7.6 Die schnelle Fouriertransformation (FFT) . . . . . . . . . . . . . . 186

8 Multiratensignalverarbeitung 191

8.1 Beschreibung von Multiratensystemen im Zeitbereich . . . . . . . . 192

8.2 Beschreibung von Multiratensystemen im Frequenzbereich . . . . . 196

8.3 Effiziente Multiratensysteme . . . . . . . . . . . . . . . . . . . . . . 207

8.3.1 Taktratenumsetzung mit digitalen Abtast-Halte-Elementen 208

8.3.2 Multiratensysteme mit Polyphasenzerlegung . . . . . . . . . 215

8.4 Taktratenumsetzung mit beliebigen Faktoren . . . . . . . . . . . . 220

A Formeln fur Fourier- und Z-Transformation 231

A.1 Fourierreihen zeitkontinuierlicher periodischer Signale . . . . . . . 232

A.2 Fouriertransformation zeitkontinuierlicher Signale . . . . . . . . . . 233

A.3 Fourierreihen zeitdiskreter periodischer Signale . . . . . . . . . . . 235

A.4 Fouriertransformation zeitdiskreter Signale . . . . . . . . . . . . . 237

A.5 Diskrete Fouriertransformation (DFT) . . . . . . . . . . . . . . . . 238

A.6 Z-Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

A.7 Multiratensignalverarbeitung . . . . . . . . . . . . . . . . . . . . . 243

B Literaturempfehlungen 245

Page 9: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Inhaltsverzeichnis ix

Glossar 247

Index 251

Page 10: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

x Inhaltsverzeichnis

Page 11: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

1

Einleitung

Das vorliegende Buch behandelt die Grundlagen zeitdiskreter Signale und Syste-me. Durch die Diskretisierung der Zeitachse konnen Signale mit digitalen Rechnernverarbeitet bzw. zeitdiskrete Systeme mit Rechnern realisiert werden. Dazu ist esnotwendig, dass Signale auch quantisiert werden, also amplitudendiskret sind. DieAmplitudenquantisierung erzeugt bei der Umsetzung analoger Signale in digitaleSignale in vielen Anwendungen vernachlassigbare Fehler. So wird bei Audiosigna-len bei 16 Bit Quantisierung (CD) oder 24 Bit (DVD) das durch Quantisierungentstehende Rauschen kaum wahrgenommen. Daher werden wir bei der Darstel-lung der Methoden in diesem Buch die Amplitudenquantisierung der Signale ver-nachlassigen bzw. nicht berucksichtigen.

Die Diskretisierung der Zeitachse konnen wir hingegen nicht vernachlassigen,da sich in ihr die fundamentalen Unterschiede zwischen zeitdiskreter und zeitkon-tinuierlicher Signalverarbeitung manifestieren. Die zeitdiskrete Verarbeitung hatnicht nur Realisierungsvorteile, sondern ermoglicht auch das Design von Systemenund Anwendungen, die mit Analogtechnik nicht moglich sind. Ein Beispiel sindSysteme mit mehrfachen Abtastraten (Multiratensysteme). Die hauptsachlichenVorteile einer digitalen Signalverarbeitung sind

• exakte Reproduzierbarkeit (daher einfache Massenproduktion),

• meist vernachlassigbare Bauteiltoleranzen, Temperatureinflusse und Alte-rungseffekte,

• verlustfreie Speicherung und Ubertragung von Signalen,

• komprimierte Speicherung und Ubertragung von Signalen,

• verschlusselte Speicherung und Ubertragung von Signalen,

Page 12: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2 1 Einleitung

• effektive Reduktion von Storungen bzw. Korrektur von Ubertragungsfehlern,

• hochempfindliche und prazise Messmoglichkeiten mit verschiedenartigen Sen-soren,

• prazise Regelung und Steuerung von Maschinen und Anlagen.

Diese Vorteile und populare Anwendungen (digitales Audio, digitale Kameras)bringen es mit sich, dass heute kaum jemand die Qualitat und die Vorzuge einerdigitalen Signalverarbeitung in Frage stellt. Auch der Leistungsverbrauch beimEinsatz digitaler Signalprozessoren spielt heute fast keine Rolle mehr, wie bei-spielsweise deren Einsatz in digitalen Horgeraten zeigt.

Durch die Moglichkeit, Digitalrechner (digitale Signalprozessoren) einzusetzen,hat die digitale Signalverarbeitung eine enorme Bedeutung in allen Bereichen derElektrotechnik und Informationstechnik erlangt. Von den tiefsten bis zu den hochs-ten Frequenzen werden heute Methoden der digitalen Signalverarbeitung angewen-det. Einige Beispiele sind

• Verarbeitung seismischer Signale,

• digitales Audio, digitale Kameras, Multimediaanwendungen im Internet,

• Sonar (Sound Navigation and Ranging) (Ortung mit Schallwellen),

• digitaler Rundfunk und digitales Fernsehen,

• digitale, mobile Kommunikation und Funknetzwerke,

• Radar (Radio Detection and Ranging (Ortung mit Funkwellen).

Die notwendigen Entwicklungsschritte zur Realisierung von Anwendungen derdigitalen Signalverarbeitung zeigen wir schematisch dargestellt in Abb. 1.1. DieGrundlagen fur die punktiert umrandeten Blocke bilden den Inhalt des Buches.

Ausgehend von der Beschreibung (Spezifikation) der Anwendung mussen wirein neues System entwerfen oder ein bestehendes modifizieren bzw. verbessern.Mit den theoretischen Grundlagen der digitalen Signalverarbeitung wahlen wirein geeignetes Verfahren (Algorithmus) bzw. vergleichen verschiedene Realisie-rungsmoglichkeiten. Dabei wird der theoretische Ansatz auch einer Simulationunterworfen, um Systemoptimierungen durchzufuhren, Parametereinflusse festzu-stellen, aber auch um mogliche Toleranzprobleme zu behandeln. Toleranzproblemesind bei digitaler Signalverarbeitung nicht die Probleme mit analogen Bauelemen-ten, sondern Einflusse einer endlichen Rechengenauigkeit (Finite Precision Arith-metic) der eingesetzten Signalprozessoren.

Als Simulationssprache ist MATLAB oder OCTAVE sehr verbreitet. Daherwird MATLAB bzw. OCTAVE auch in diesem Buch eingesetzt, und zwar vorwie-gend zur anschaulichen Darstellung der Rechenergebnisse.

Page 13: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

1 Einleitung 3

Systembeschreibung

Algorithmus

High−Level Simulation

DSP−Programmierung

Low−Level Simulation

Hardware−Zielsystem

theoretische Methoden

MATLAB

Assembler, C−Compiler

Simulator, Emulator

Inhalt des Buches

Abbildung 1.1: Entwicklungsschritte bei der Realisierung von Systemen zur digi-talen Signalverarbeitung (DSP = Digitaler Signalprozessor)

Die weiteren Entwicklungsschritte in Abb. 1.1 betreffen die konkrete Implemen-tierung des Systems mit einem digitalen Signalprozessor oder mit einer anderenspeziellen Hardware. Sie sind ahnlich wie jene bei Verwendung eines Mikropro-zessorentwicklungssystems. Mit den gestrichelten Pfaden in Abb. 1.1 deuten wiran, dass der Entwicklungsprozess mehrere Durchlaufe erfordern kann, wenn sichz.B. herausstellt, dass das Assembler- oder das C-Programm zu umfangreich furden verwendeten Prozessor ist.

In den folgenden Kapiteln werden wir die theoretischen Grundlagen Schritt furSchritt vorstellen und mit reprasentativen Rechenbeispielen untermauern. In vielenFallen prasentieren wir neben der Ableitung der Losung auch eine nummerischeLosung mit MATLAB, um die ersten beiden Entwicklungsphasen in Abb. 1.1 zuvertiefen.

Wir beginnen dabei in Kapitel 2 mit der Behandlung einfacher zeitdiskreterSignale und elementarer Signaloperationen und schließen mit der Fourierreihen-darstellung fur periodische Signale. In Kapitel 3 beschreiben wir zeitdiskrete Sys-teme im Zeit- und im Frequenzbereich. Wir betrachten das System als

”Black Box“

und bestimmen die Systemantworten fur verschiedene Eingangssignale. Dabei be-schranken wir uns auf die wichtige Klasse der linearen und zeitlich konstanten(zeitinvarianten) Systeme. Die Beschreibung im Frequenzbereich bildet den Uber-gang zur Fouriertransformation fur zeitdiskrete Signale in Kapitel 4. Wir zeigen dieelementaren Zusammenhange und Eigenschaften dieser Transformation und derenAnwendung auf zeitdiskrete Systeme. Die Fouriertransformation ist bei zeitdiskre-

Page 14: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4 1 Einleitung

ter Signalverarbeitung auch eine wichtige Realisierungsmoglichkeit digitaler Filter.Eine andere Moglichkeit sind zeitdiskrete Netzwerke, die wir in Kapitel 5 mit Dif-ferenzengleichungen und Z-Transformation behandeln. Die Z-Transformation isteine sehr machtige Methode fur die Analyse und Synthese digitaler Filter. DieseFilter besprechen wir eingehend in Kapitel 6. Dabei gehen wir von idealen Filternaus und zeigen, wie diese Filter approximiert und realisiert werden konnen.

In Kapitel 7 geben wir einen Einblick in die diskrete Fouriertransformation,deren Realisierung in Form der FFT (Fast Fourier Transform) ein wichtiger Algo-rithmus fur Anwendungen der digitalen Signalverarbeitung ist.

Den Abschluss bildet eine Einfuhrung in die Multiratensignalverarbeitung inKapitel 8. Eine Formelsammlung im Anhang A kann als rasche Hilfe fur die Losungvon Ubungsaufgaben herangezogen werden. In den Kapiteln des Buches sind nurdort Verweise auf die Fachliteratur vorhanden, wo fur interessierte Leserinnen undLeser eine weitere Vertiefung empfehlenswert ist. Alle anderen Quellen, die ich beider Vorbereitung dieses Buches verwendet habe und die ich fur eine Vertiefung indieses Fachgebiet empfehlen mochte, werden im Anhang B besprochen.

Page 15: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2

Zeitdiskrete Signale

Zeitdiskrete Signale sind im Gegensatz zu analogen Signalen nur zu diskreten Zeit-werten definiert, wobei die Zeitpunkte durch einen Zeitindex n ∈ Z durchnumme-riert werden. Ein zeitdiskretes Signal konnen wir als Folge xn von Amplituden-werten auffassen. Die Amplitudenwerte konnen reell- oder komplexwertige, skalareoder vektorielle Großen sein. Der Index n reprasentiert stets die diskrete Zeitachse.

Ein zeitdiskretes Signal stellen wir auch als Funktion x[n] dar. Eine gebrauch-liche graphische Darstellung eines zeitdiskreten Signals als Funktion x[n] ist inAbb. 2.1 gezeigt. Wir beschranken uns auf eindimensionale Signale, deren Funk-

Zeitindex n

x[n]

1086420-2-4-6-8-10

1

0.5

0

-0.5

-1

Abbildung 2.1: Graphische Darstellung eines zeitdiskreten Signals

tionsverlauf nur von einer unabhangigen Variablen abhangt. In der Notation vonSignalen unterscheiden wir nicht zwischen Funktion und Funktionswert, d.h. x[n]ist sowohl der gesamte Funktionsverlauf als auch der Funktionswert zum Zeitpunktn. Der Definitionsbereich der verwendeten zeitdiskreten, unendlich langen Signale

Page 16: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6 2 Zeitdiskrete Signale

x[n] ist die Menge der ganzen Zahlen (n ∈ Z). Der Wertebereich der Signalam-plituden (Bildbereich von x[n]) umfasst die Menge der reellen Zahlen (x ∈ R)oder die der komplexen Zahlen (x ∈ C). Bei der Verarbeitung von Signalen mitendlicher Rechengenauigkeit sind die Amplitudenwerte quantisiert und damit imAllgemeinen rationale Zahlen (x ∈ Q). Wie bereits in der Einleitung erwahnt,werden wir bei den Rechenmethoden eine Amplitudenquantisierung jedoch nichtberucksichtigen.

Die Verwendung von eckigen Klammern fur die Funktion x[n] ermoglicht dieUnterscheidung zu zeitkontinuierlichen Signalen x(t), bei denen wir runde Klam-mern verwenden. Die Erzeugung zeitdiskreter Signale aus analogen Signalen durchAbtastung behandeln wir erst in Abschnitt 4.2 nach der Darstellung zeitdiskreterSignale im Frequenzbereich. Im Folgenden arbeiten wir direkt mit einigen ele-mentaren zeitdiskreten Signalen. Diese Signale sind deterministisch, d.h. sie wer-den durch einen Zeitverlauf bestimmt, der durch eine Gesetzmaßigkeit (Formel,Tabelle, Rechenvorschrift, etc.) festgelegt ist. Im Gegensatz dazu unterliegt dieErzeugung stochastischer Signale einem Zufallsprozess.

2.1 Elementare zeitdiskrete Signale und Signal-

eigenschaften

Signale lassen sich entsprechend ihren Eigenschaften in Klassen einteilen. Abge-sehen von der Einteilung in deterministische und stochastische Signale ist eineUnterteilung in Signale endlicher und unendlicher Lange naheliegend. Signale un-endlicher Lange konnen wieder in aperiodische und periodische Signale eingeteiltwerden. Betrachten wir zunachst einfache aperiodische Signale:

Einsimpuls:

Das einfachste, von x[n] ≡ 0 verschiedene Signal, ist durch

x[n] = δ[n] =

{

1 n = 0

0 n 6= 0(2.1)

gegeben. Wie wir sehen werden, ist der Einsimpuls auch ein wichtiges Testsignalfur zeitdiskrete Systeme. Im Gegensatz zur Dirac-Funktion δ(t) bei zeitkontinu-ierlichen Signalen ist der Einsimpuls eine gewohnliche Funktion und kann einfachund exakt realisiert werden. Damit kann im Gegensatz zu analogen Filtern z.B. dasEinschwingverhalten (Impulsantwort) eines digitalen Filters exakt im Rahmen derRechengenauigkeit simuliert werden.

Sprungfunktion:

Ein weiteres wichtiges, zeitdiskretes Testsignal ist die Sprungfunktion

x[n] = σ[n] =

{

1 n ≥ 0

0 n < 0. (2.2)

Page 17: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.1 Elementare zeitdiskrete Signale und Signaleigenschaften 7

Verglichen mit der zeitkontinuierlichen Sprungfunktion σ(t), die fur t = 0 denWert σ(0) = 1

2 annimmt, ist im zeitdiskreten Fall σ[0] = 1. Wie der Einsimpuls, istauch die zeitdiskrete Sprungfunktion exakt realisierbar. Zwischen Sprungfunktionund Einsimpuls besteht der folgende Zusammenhang, der auch graphisch leicht zuverifizieren ist:

δ[n] = σ[n]− σ[n− 1], ∀n. (2.3)

Der Funktionsverlauf von σ[n − 1] ist gegenuber jenem von σ[n] um einen Zeit-index nach rechts verschoben, so dass sich bei der Subtraktion alle Signalwertebis auf jenen bei n = 0 ausloschen. Umgekehrt kann auch die Sprungfunktion mitEinsimpulsen dargestellt werden:

σ[n] =

∞∑

k=0

δ[n− k], ∀n. (2.4)

In dieser Summe ist immer nur ein Summand von Null verschieden, namlich jenerfur k = n. Ist n < 0, dann ist der Summand immer Null. Fur n ≥ 0 ist hingegendie Summe immer Eins. Wir werden Gl. 2.3 und Gl. 2.4 bei der Beschreibungzeitdiskreter Systeme mehrfach anwenden.

Exponentialfunktion:

Die Sprungfunktion kann als Sonderfall der einseitigen Exponentialfunktion

x[n] =

{

an n ≥ 0

0 n < 0(2.5)

angesehen werden. Fur a = 1 erhalten wir aus Gl. 2.5 x[n] = σ[n]. Werte imBereich 0 < a < 1 ergeben einen exponentiell abklingenden Funktionsverlauf undWerte in −1 < a < 0 zusatzlich ein oszillierendes Verhalten. Fur |a| > 1 tretenexponentiell anwachsende Amplituden auf. Eine weitere Variante ist die zweiseitigeExponentialfunktion

x[n] = a|n|, ∀n. (2.6)

Gaußformiger Impuls:

Impulse mit der Form einer Gaußschen Glockenkurve haben vielfache Anwen-dungen im Bereich der Signalverarbeitung und Ubertragungstechnik. Im zeitkonti-nuierlichen Fall ist das Frequenzspektrum (Fouriertransformation) eines Gaußim-pulses ebenfalls eine Gaußsche Glockenkurve. Beim zeitdiskreten Gaußimpuls istdieser Zusammenhang nicht exakt erfullt, kann aber mit hinreichender Genauigkeitangenahert werden. Fur den reellwertigen Parameter α > 0 ist der zeitdiskrete,gaußformige Impuls gegeben durch

x[n] = e−αn2

, ∀n. (2.7)

Page 18: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8 2 Zeitdiskrete Signale

Beispiel 2.1

Mit den folgenden MATLAB-Befehlen erzeugen wir einige der angege-benen Signale und stellen sie graphisch dar:

n = 0:10; % create a row vector n containing integers

% (time points) 0, 1, ... 9, 10

a = 0.5;

x = a.^n; % x[n] = a^n

% a.^n means a to power n for each element

% of vector n

stem(n,x); % discrete-time plot

n = -10:10;

x = a.^abs(n); % x[n] = a^|n|

stem(n,x);

alpha = 0.05;

x = exp(-alpha*n.^2); % x[n] = e^(-alpha n^2)

stem(n,x);

Periodische Signale sind dadurch ausgezeichnet, dass eine zeitliche Verschie-bung des Signals um die Periodendauer (oder ein ganzzahliges Vielfaches davon)mit dem ursprunglichen Signal deckungsgleich ist. Da zeitdiskrete Signale nur andiskreten Zeitpunkten definiert sind, muss die Periodendauer ganzzahlig sein. Da-mit ergibt sich fur periodische, zeitdiskrete Signale

x[n+mN ] = x[n], ∀n, (2.8)

mit der Periodendauer N ∈ N und beliebigem m ∈ Z.

Ein elementares periodisches Signal ist der zeitdiskrete δ-Puls

x[n] =

∞∑

k=−∞δ[n+ kN ] =

{

1 n = 0,±N,±2N,±3N, . . .

0 sonst, (2.9)

der durch zeitliche, aquidistante Verschiebungen eines Einsimpulses erzeugt wird(siehe Abb. 2.2). Diese δ-Pulse werden wir bei der Untersuchung zeitdiskreterSysteme verwenden (siehe Beispiel 3.3.8 auf Seite 52).

Das einfachste oszillierende, periodische Signal ist durch folgende Funktiongegeben:

x[n] = (−1)n = ejπn =

{

1 n = 0,±2,±4, . . .

−1 n = ±1,±3,±5, . . .. (2.10)

Page 19: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.1 Elementare zeitdiskrete Signale und Signaleigenschaften 9

Zeitindex n

x[n]

1086420-2-4-6-8-10

1.2

1

0.8

0.6

0.4

0.2

0

Abbildung 2.2: Zeitdiskreter δ-Puls mit der Periodendauer N = 3

Es ist ein Spezialfall der komplexen Exponentialschwingung

x[n] = ejθ0n = cos θ0n+ j sin θ0n, ∀n. (2.11)

Dieses Signal hat im Gegensatz zur zeitkontinuierlichen Exponentialschwingungbemerkenswerte Eigenschaften, die wir anhand des cosinusformigen, zeitdiskretenSignals

x[n] = cos θ0n, ∀n (2.12)

untersuchen wollen. Zunachst ist dieses Signal nicht fur jeden beliebigen Parameterθ0 periodisch, sondern nur dann, wenn θ0 ein rationales Vielfaches von 2π ist. Soergibt sich beispielsweise mit

θ0 =2πk

N(2.13)

(k,N teilerfremd) der Zusammenhang

x[n+N ] = cos

(2πk

N(n+N)

)

= cos2πk

Nn = x[n], (2.14)

d.h. x[n] ist periodisch mit der Periodendauer N .

Die Anderung des Signalverlaufs in Abhangigkeit vom Parameter θ0 ist inAbb. 2.3 dargestellt. Beginnen wir mit dem Diagramm fur θ0 = 0 (links untenin Abb. 2.3). Die Vergroßerung von θ0 ergibt zunachst eine Zunahme der Oszil-lation bzw. der Frequenz des cosinusformigen Verlaufs. Die maximale Oszillationist offensichtlich fur θ0 = π erreicht, wo das Signal in die Funktion x[n] = (−1)n

aus Gl. 2.10 ubergeht. Eine Vergroßerung von θ0 uber den Wert π hinaus verrin-gert nach Abb. 2.3 die Oszillation, bis wir bei θ0 = 2π wieder am Ausgangspunkt(θ0 = 0) angelangt sind. Wir erkennen daher, dass der Parameter θ0 die Bedeutungeines Frequenzparameters (im Folgenden kurz Frequenz genannt) hat.

Das Frequenzverhalten des zeitdiskreten, cosinusformigen Signals – und damitauch der komplexen Exponentialschwingung – ist also 2π-periodisch. Dieses pe-riodische Verhalten werden wir auch bei der Abtastung analoger Signale und bei

Page 20: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

10 2 Zeitdiskrete Signale

θ0 = 2πθ0 = 15π/8θ0 = 7π/4

θ0 = 3π/2θ0 = πθ0 = π/2

θ0 = π/4θ0 = π/8θ0 = 0

Abbildung 2.3: Zeitdiskrete cosinusformige Signale x[n] = cos θ0n in Abhangigkeitvom Parameter θ0 = 2π k

N mit N = 16

der Beschreibung zeitdiskreter Signale und Systeme im Frequenzbereich mit derFouriertransformation antreffen.

Die graphische Darstellung des zeitdiskreten Cosinussignals x[n] = cos( 2πN kn)in Abb. 2.3 zeigt, dass sich die Kurvenform fur k > N/2 (d.h. θ0 > π) in umgekehr-ter Reihenfolge wiederholt. Frequenzen θ0 = 2π

N k und θ′0 = 2π− 2πN k = 2π

N (N − k)ergeben den gleichen Signalverlauf in Abb. 2.3. Setzen wir namlich θ′0 in x[n] ein,so erhalten wir

x′[n] = cos θ′0n = cos

(2π

N(N − k)n

)

= cos

(2π

Nkn

)

= x[n]. (2.15)

Hingegen ergibt sich z.B. fur x[n] = sin θ0n

x′[n] = sin θ′0n = sin

(2π

N(N − k)n

)

= − sin

(2π

Nkn

)

= −x[n], (2.16)

also das ursprungliche Signal mit Vorzeichenumkehr. Im allgemeinen Fall hat x′[n]einen anderen Signalverlauf als x[n]. Wie bei der Abtastung in Abschnitt 4.2 nahererlautert, bezeichnet man x′[n] als das zu x[n] gehorende Aliasing-Signal. Cha-rakteristisch fur dieses Signal ist das im Vergleich zum ursprunglichen Signal ge-spiegelte Frequenzverhalten.

Page 21: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.1 Elementare zeitdiskrete Signale und Signaleigenschaften 11

Fur diskrete, aquidistante Frequenzen erhalt man aus Gl. 2.11 die Signale

x[n] = ej2πN kn, k = 0, 1, . . . , N − 1, ∀n, (2.17)

wobei N die Periodendauer der Grundfrequenz θ0 = 2πN ist. Da die Frequenzen die-

ser Signale ganzzahlige Vielfache der Grundfrequenz sind, bezeichnet man sie auchals harmonische Exponentialschwingungen. Im Gegensatz zu den zeitkonti-nuierlichen Signalen, bei denen es unendlich viele Harmonische zu einer Grundfre-quenz gibt, treten im zeitdiskreten Fall maximal N Harmonische auf. EineFolge davon ist, dass z.B. ein periodisches, zeitdiskretes Signal maximal N Har-monische (Grundschwingung und N−1 Oberschwingungen) besitzen kann. DiesenSachverhalt werden wir in Abschnitt 2.3 bei den Fourierreihen naher behandeln.

Graphisch lasst sich die Exponentialschwingung als dreidimensionales Dia-gramm darstellen, wenn wir Realteil und Imaginarteil auf getrennten Achsen auf-tragen (siehe Abb. 2.4).

−1

0

1

−1

0

10

20

40

60

80

100

ℜe{x[n]}ℑm{x[n]}

n

Abbildung 2.4: Exponentialschwingung x[n] = ej2πN n mit N = 50

Ein fundamentaler Zusammenhang fur harmonische Exponentialschwingungensoll im folgenden Beispiel gezeigt werden. Diese Beziehung werden wir spater bei

Page 22: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

12 2 Zeitdiskrete Signale

der Ableitung der Fourierreihendarstellung auf Seite 19 und bei der diskretenFouriertransformation verwenden.

Beispiel 2.2

Die Summation der N harmonischen Exponentialschwingungen vonGl. 2.17 ergibt

1

N

N−1∑

k=0

ej2πN kn =

∞∑

k=−∞δ[n+ kN ] =

{

1 n = 0,±N,±2N,±3N, . . .

0 sonst.

(2.18)Zum Beweis verwenden wir die Summenformel einer endlichen geome-trischen Reihe

N−1∑

k=0

xk =1− xN

1− x(2.19)

und erhalten

1

N

N−1∑

k=0

ej2πN kn =

1

N

1− ej2πn

1− ej2πN n

. (2.20)

Der rechte Ausdruck in Gl. 2.20 ist nur fur n = 0,±N,±2N, . . . vonNull verschieden. Fur diese Werte entsteht der unbestimmte Ausdruck0/0, dessen Wert hier gleich N ist, wenn man formal die Regel von deL’Hospital anwendet.

Zur Klassifizierung von Signalen konnen wir auch Signalenergie und Signalleis-tung heranziehen. Die Signalenergie fur zeitdiskrete Signale ist definiert durch

Ex =

∞∑

n=−∞|x[n]|2 (2.21)

und kann bei unendlich langen Signalen einen endlichen oder einen unendlichenWert haben. Die mittlere Signalleistung ist definiert als Grenzwert

Px = limL→∞

1

2L+ 1

L∑

n=−L

|x[n]|2 . (2.22)

Fur Signale mit endlicher Energie ist demnach die mittlere Signalleistung Null.Bei der Leistungsberechnung fur periodische Signale erfolgt die Summation

Page 23: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.1 Elementare zeitdiskrete Signale und Signaleigenschaften 13

uber eine Periodenlange N :

Px =1

N

N−1∑

n=0

|x[n]|2 . (2.23)

Die Energie eines periodischen Signals ist nach Gl. 2.21 unendlich. Daher kannman bei periodischen Signalen alternativ die Energie fur eine Periode angeben:Ep =

∑N−1n=0 |x[n]|2.

Beispiel 2.3

Als Beispiel berechnen wir die mittlere Leistung der Sprungfunktionx[n] = σ[n] (siehe Gl. 2.2):

Px = limL→∞

1

2L+ 1

L∑

n=0

1 = limL→∞

L+ 1

2L+ 1=

1

2. (2.24)

Etwas umfangreicher gestaltet sich die Berechnung der mittleren Leis-tung eines cosinusformigen Signals der Form x[n] = cos θ0n (sieheGl. 2.12). Wenn θ0 kein rationales Vielfaches von 2π ist, dann ist x[n],wie bereits erwahnt, nicht periodisch und man darf nicht Gl. 2.23, son-dern muss Gl. 2.22 anwenden:

Px = limL→∞

1

2L+ 1

L∑

n=−L

cos2 θ0n. (2.25)

Mit cos2 α = 12 + 1

2 cos 2α erhalten wir

L∑

n=−L

cos2 θ0n = L+1

2+

1

2

L∑

n=−L

cos 2θ0n

= L+1

2+

sin[(2L+ 1)θ0]

2 sin θ0

(2.26)

Der zweite Ausdruck in Gl. 2.26 ergibt sich durch die Aufspaltungcosα = 1

2 (ejα + e−jα) und Anwendung der Summenformel Gl. 2.19.

Der Grenzubergang in Gl. 2.25 liefert schließlich

Px =

{

1 θ0 = 0,±π,±2π, . . .12 sonst

. (2.27)

Page 24: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

14 2 Zeitdiskrete Signale

Wir konnen auch Signaleigenschaften in Form von Symmetriebeziehungen zurEinteilung von Signalen verwenden. Reellwertige, gerade Signale sind sym-metrisch bezuglich n = 0. Ihr Amplitudenverlauf bei negativen Zeitindizes istspiegelbildlich zum Verlauf fur n > 0:

x[−n] = x[n], ∀n. (2.28)

Reellwertige, ungerade Signale sind antisymmetrisch zum Nullpunkt n = 0:

x[−n] = −x[n], ∀n. (2.29)

Damit kann jedes reellwertige, unendlich lange Signal x[n] in einen geraden undin einen ungeraden Anteil aufgespalten werden:

x[n] = xg[n] + xu[n], ∀n, mit (2.30)

xg[n] =1

2(x[n] + x[−n]) , ∀n, und (2.31)

xu[n] =1

2(x[n]− x[−n]) , ∀n. (2.32)

Fur endlich lange Signale gibt es Einschrankungen in der Art, dass das Signalim Zeitintervall −N ≤ n ≤ N, N > 0 definiert sein muss und daher eine unge-rade Lange 2N + 1 aufweisen muss. Wie wir bei der Behandlung der diskretenFouriertransformation in Kapitel 7 zeigen werden, lassen sich auch Signale, dienur fur 0 ≤ n ≤ N − 1 definiert sind, in einen geraden und ungeraden Anteilzerlegen. Wir erreichen das durch periodische Fortsetzung des Signals uber denDefinitionsbereich hinaus.

Bei komplexwertigen, unendlich langen Signalen erfolgt die Aufspaltung ineinen konjugiert-symmetrischen und einen konjugiert-antisymmetrischen Anteil:

x[n] = xcs[n] + xca[n], ∀n, mit (2.33)

xcs[n] =1

2(x[n] + x∗[−n]) , ∀n, und (2.34)

xca[n] =1

2(x[n]− x∗[−n]) , ∀n, (2.35)

mit xcs[n] = x∗cs[−n] und xca[n] = −x∗

ca[−n] (∗ = konjugiert komplex).

Beispiel 2.4

Die folgenden MATLAB-Befehle konnen zur Darstellung periodischerund komplexer Signale verwendet werden. Bei periodischen Signalenist naturlich zu beachten, dass bei der Simulation mit MATLAB nurendliche Ausschnitte der periodischen Signale erzeugt werden konnen.

Page 25: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.2 Zeitachsentransformationen 15

N = 5; % period length

n = -4*N:4*N; % n = -4N, ..., -1, 0, 1, ..., 4N

x = mod(n,N) == 0; % x[n] = 1 at n = 0, +-N, +-2N,...

% mod() = modulo operation

stem(n,x);

x = ones(size(n));

x(2:2:end) = -1; % x[n] = (-1)^n

stem(n,x);

x = cos(2*pi/30*n+pi/4);

x_g = 0.5*(x + x(end:-1:1)); % even part

x_u = 0.5*(x - x(end:-1:1)); % odd part

stem(n,x_g); % what is the influence of phase

stem(n,x_u); % on x_g, and x_u?

x = exp(1i*2*pi/30*n); % 1i = j = sqrt(-1)

x_cs = 0.5*(x + conj(x(end:-1:1))); % conjugate-sym. part

x_ca = 0.5*(x - conj(x(end:-1:1))); % conjugate-antisym. part

stem(n,real(x_cs)); % plot real part

stem(n,imag(x_ca)); % plot imaginary part

2.2 Zeitachsentransformationen

Eine Vielzahl von wichtigen Signalverarbeitungsalgorithmen bezieht sich auf Trans-formationen der Zeitachse. Beispiele sind Filteroperationen oder die Taktratenum-setzung bei zeitdiskreten Signalen. Zeitachsentransformationen in der Form derZeitverschiebung x[n−k] oder x[n+k] haben wir in Gl. 2.3, Gl. 2.4 und bei derDarstellung periodischer Signale bereits kennengelernt. Die zweite elementare Ope-ration ist die Zeitinversion x[−n], die bei den Symmetriebeziehungen auf Seite14 benotigt wird. Diese Operationen kommen in der Signalverarbeitung haufig vor(z.B. bei der Filterung und Korrelation von Signalen). Betrachten wir zunachstdie Zeitverschiebung fur aperiodische Signale in Abb. 2.5.

Bei der Signalverzogerung wird das Argument n von x[n] durch n−k, k > 0ersetzt. Damit verschiebt sich z.B. der Funktionswert x[0] zum Zeitpunkt n = k(Verschiebung des Signals nach rechts). Dieser markante Signalwert tritt daher umk Zeitpunkte spater auf, als beim ursprunglichen Signal. Im Gegensatz dazu wirdbei der Signalvoreilung n in x[n] durch n+ k, k > 0 ausgetauscht, so dass x[0]an den Zeitpunkt n = −k verschoben wird (Verschiebung des Signals nach links).

Page 26: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

16 2 Zeitdiskrete Signale

n0 1 2 3 4 5 6 7 8 9−1−2−3−4−5−6−7

n0 1 2 3 4 5 6 7 8 9−1−2−3−4−5−6−7

n0 1 2 3 4 5 6 7 8 9−1−2−3−4−5−6−7

x[n+ k]

k = 4

k = 5

(k > 0)

n → n+ k

Voreilung

(k > 0)

n → n− k

Verzogerung

x[n− k]

x[n]

Abbildung 2.5: Zeitverschiebung bei zeitdiskreten Signalen

Die Signalverzogerung ist im Vergleich zur analogen Signalverarbeitung digitalohne großen Aufwand zu realisieren. Bei x[n − k] werden k Signalwerte gespei-chert und verzogert aus dem Speicher ausgelesen. Bei der Signalvoreilung ist zubedenken, dass x[n+ k] um k Zeitpunkte fruher als x[n] auftritt, d.h. das Verhal-ten ist nicht kausal. In der Simulation von Systemen (Offline-Verarbeitung) stortdas nicht, da nur gespeicherte Signale (und damit Signale endlicher Lange) ver-arbeitet werden konnen und die Nummerierung der Zeitachse willkurlich ist. Beider Echtzeitverarbeitung werden die Signalwerte laufend von Peripheriegeraten(z.B. Analog-Digitalwandler) in einen Pufferspeicher eingelesen und konnen dahernicht voreilend aus dem Speicher ausgelesen werden.

Bei periodischen Signalen bewirkt die Zeitverschiebung eine Phasenverschie-bung, wobei die Verschiebung k auf eine Periodendauer N beschrankt werdenkann (|k| < N). Fur periodische Signale x[n+N ] = x[n] gilt daher:

x[n+ k] = x[n+ (k ⊕N)] (2.36)

(⊕ ist die Modulooperation a⊕ b = a− b⌊ab

⌋).

Die Zeitinversion oder Zeitumkehr ist in Abb. 2.6 fur ein aperiodisches Si-gnal graphisch dargestellt. Mit Analogtechnik kann die zeitliche Inversion von Au-diosignalen beispielsweise durch Abspielen eines Tonbandes in umgekehrter Rich-

Page 27: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.2 Zeitachsentransformationen 17

n0 1 2 3 4 5 6 7 8 9−1−2−3−4−5−6−7

n0 1 2 3 4 5 6 7 8 9−1−2−3−4−5−6−7

x[−n]

x[n]

Abbildung 2.6: Zeitumkehr bei zeitdiskreten Signalen

tung realisiert werden. Bei digitaler Signalverarbeitung wird der Speicher in um-gekehrter Einleserichtung ausgelesen. Die MATLAB-Funktion timereverse.m derProgrammsammlung zu diesem Buch demonstriert die Zeitinversion bei Audiosi-gnalen.

Die Zeitumkehr kann bei aperiodischen Signalen nur dann realisiert werden,wenn diese Signale eine endliche Lange besitzen. Periodische Signale x[n + N ] =x[n] konnen jedoch ohne Einschrankung zeitinvertiert werden:

x[−n] = x[−n+N ] = x[N − n], n = 0, 1, . . . , N − 1. (2.37)

Beispiel 2.5

In diesem Beispiel wird der zeitdiskrete Rechteckimpuls

r[n] =

{

1 0 ≤ n ≤ L− 1

0 sonst(2.38)

mit Sprungfunktionen auf zwei verschiedene Arten dargestellt:

r[n] = σ[n]− σ[n− L] (2.39)

r[n] = σ[n]σ[−n+ L− 1] . (2.40)

Page 28: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

18 2 Zeitdiskrete Signale

Beispiel 2.6

Zweiseitige Signale konnen ebenfalls mit Hilfe von Sprungfunktionenals Summe zweier einseitiger Signale zerlegt werden. Als Beispiel ver-wenden wir die zweiseitige Exponentialfunktion von Gl. 2.6:

x[n] = a|n| = anσ[n] + a−nσ[−n− 1]. (2.41)

Diese Signalzerlegungen werden wir bei der Fouriertransformation vor-teilhaft einsetzen. Mit MATLAB lasst sich dieser Zusammenhang leichtuberprufen:

np = 0:10;

nm = -10:-1;

a = 0.7;

x = [a.^-nm a.^np]; % x[n] = a^|n|

stem([nm np],x);

Beispiel 2.7

Ein weiteres Anwendungsbeispiel fur die Zeitverschiebungsoperationist die periodische Fortsetzung von Signalen endlicher Dauerdurch Verwendung der Modulooperation. Mit dem Signal x[n], n ∈[0, N − 1] erhalt man das periodische Signal

x[n] =

∞∑

k=−∞x[n− kN ] = x[n⊕N ]. (2.42)

Mit den folgenden MATLAB-Befehlen wird ein endliches Signal x[n],n ∈ [0, N −1] periodisch in einem langeren Zeitintervall n ∈ [0, 4N −1]fortgesetzt:

N = 20; % period length

n = 0:N-1;

x = 0.7 .^ n; % finite length signal x[n]

n = 0:4*N-1;

xp = x(mod(n,N)+1); % use modulo operation to periodically

% extend signal x[n]

stem(n,xp);

Page 29: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.3 Fourierreihendarstellung periodischer, zeitdiskreter Signale 19

2.3 Fourierreihendarstellung periodischer, zeit-

diskreter Signale

In diesem Abschnitt werden wir uns mit Fourierreihen beschaftigen, die fur zeit-diskrete Signale aus mehreren Grunden eine uberragende Bedeutung haben:

• Wie bereits auf Seite 11 erwahnt, gibt es im zeitdiskreten Fall nur endlichviele Harmonische. Die Fourierreihendarstellung weist nur endliche Summenauf und ist somit nummerisch exakt berechenbar.

• Es treten keine Integrale (wie bei zeitkontinuierlichen Signalen) auf.

• Die Fourierreihendarstellung bildet auch die Grundlage der diskreten Fourier-transformation (DFT), die auf Signale endlicher Lange angewendet wird (sie-he Kapitel 7). Die Beziehungen der Fourierreihendarstellung konnen mit ge-ringen Modifikationen direkt auf die DFT angewendet werden.

• Fourierreihen zeitdiskreter Signale konnen sehr effizient mit der schnellenFouriertransformation (Fast Fourier Transform, FFT) nummerisch berechnetwerden.

Bei der Fourierreihendarstellung wird ein allgemeines periodisches Signal mitder Periodendauer N als Linearkombination von elementaren periodischen Funk-tionen (Basisfunktionen) beschrieben. Man wahlt nicht irgendwelche periodischenBasisfunktionen, sondern die harmonischen Exponentialfunktionen von Gl. 2.17,um folgende Reihenentwicklung zu erhalten:

x[n] = x[n+N ] =N−1∑

k=0

ck ej 2π

N kn, n = 0, 1, . . . , N − 1. (2.43)

Der Vorteil in der Verwendung der harmonischen Exponentialfunktionen liegt da-rin, dass die Koeffizienten ck der Reihendarstellung mit einer einfachen Formelberechnet werden konnen. Bei Verwendung anderer Basisfunktionen musste einGleichungssystem mit N Gleichungen fur die N Koeffizienten ck gelost werden.Der Rechenaufwand ware dabei proportional N3 und nicht N2. Mit der FFTsteigt der Rechenaufwand sogar nur etwas starker als proportional zu N (typischN log2 N , log2 = Logarithmus zur Basis 2). So werden beispielsweise fur N = 1000etwa 109 Arithmetikoperationen fur die Losung des Gleichungssystems benotigt,bei Verwendung der harmonischen Exponentialfunktionen nur 106 bzw. ≈ 104 mitder FFT!

Page 30: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

20 2 Zeitdiskrete Signale

Zur Berechnung der Fourierreihenkoeffizienten ck multiplizieren wir beide Sei-ten von Gl. 2.43 mit e−j 2π

N ln und summieren beidseitig uber n = 0, . . . , N − 1:

N−1∑

n=0

x[n] e−j 2πN ln =

N−1∑

n=0

e−j 2πN ln

N−1∑

k=0

ck ej 2π

N kn

=

N−1∑

n=0

N−1∑

k=0

ck ej 2π

N (k−l)n

=N−1∑

k=0

ck

N−1∑

n=0

ej2πN (k−l)n

︸ ︷︷ ︸

N, fur k=l, 0 sonst

= clN .

(2.44)

In Gl. 2.44 haben wir die Summen auf der rechten Seite vertauscht (was bei end-lichen Summen ohne Bedenken moglich ist) und die bereits in Gl. 2.18 abgeleiteteBeziehung fur die harmonischen Exponentialfunktionen verwendet. Damit erhaltenwir die Fourierreihendarstellung fur zeitdiskrete, periodische Signale

x[n] =N−1∑

k=0

ck ej 2π

N kn, n = 0, 1, . . . , N − 1 (2.45)

ck =1

N

N−1∑

n=0

x[n] e−j 2πN kn, k = 0, 1, . . . , N − 1. (2.46)

Diese Gleichungen haben die gleiche Struktur und konnen, wie wir spater sehenwerden, mit der FFT effizient ausgewertet werden. Außerdem ergeben sich wichtigeZusammenhange zwischen x[n] und ck, die wir gleich betrachten werden. Zuvorwollen wir jedoch einige Beispiele fur die Reihenkoeffizienten angeben.

Beispiel 2.8

Wir beginnen mit dem δ-Puls x[n] =∑∞

k=−∞ δ[n+ kN ] (Gl. 2.9), beidem im Intervall n ∈ [0, N − 1] nur ein einziger Einsimpuls auftritt.Damit erhalten wir fur die Reihenkoeffizienten

ck =1

N

N−1∑

n=0

δ[n] e−j 2πN kn =

1

N, k = 0, 1, . . . , N − 1. (2.47)

Als zweites Beispiel betrachten wir die Cosinusschwingung

x[n] = cos2π

Nmn =

1

2

(

ej2πN mn + e−j 2π

N mn)

(2.48)

Page 31: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.3 Fourierreihendarstellung periodischer, zeitdiskreter Signale 21

(0 ≤ m ≤ N − 1) und berechnen mit Gl. 2.46 die Koeffizienten

ck =1

2N

N−1∑

n=0

ej2πN (m−k)n +

1

2N

N−1∑

n=0

e−j 2πN (m+k)n

=1

2δ[k −m] +

1

2δ[k +m−N ], k = 0, 1, . . . , N − 1, m 6= 0.

(2.49)

Fur m = 0 (x[n] = 1, ∀n) ergibt sich ck = δ[k]. Dabei haben wir wie-der Gl. 2.18 zur Berechnung der Summen verwendet und ck+N = ckberucksichtigt. Bei dieser Cosinusschwingung sind demnach nur zweiReihenkoeffizienten von Null verschieden, einer fur k = m und derandere fur k = N − m. Man kann daher die Reihenkoeffizienten alsspektrale Koeffizienten interpretieren. Die gegebene Cosinusschwin-gung hat damit eine Spektrallinie bei der Frequenz θ0 = 2π

N m und beiθ0 = 2π

N (N−m). Das Linienspektrum der zeitdiskreten Cosinusschwin-gung ist in Abb. 2.7 graphisch dargestellt.

Frequenzindex k

ck

302826242220181614121086420

1

0.8

0.6

0.4

0.2

0

Abbildung 2.7: Linienspektrum ck von x[n] = cos 2πN mn, mit N = 32

und m = 5

Diese Beispiele zeigen, dass die Fourierreihenkoeffizienten ck das Linienspek-trum des Signals x[n] darstellen. Der Index k wird dabei als Frequenzindex be-zeichnet, da k die diskreten Frequenzen als Vielfache der Grundfrequenz 2π

N durch-nummeriert. Beim δ-Puls erhalten wir ein konstantes Linienspektrum, d.h. alleFrequenzlinien sind gleich stark vertreten. Bei der Cosinusschwingung treten zweiLinien auf (siehe Abb. 2.7). Das Verhalten zeitdiskreter periodischer Signale ent-spricht damit dem Frequenzverhalten der zeitkontinuierlichen Signale, mit demUnterschied, dass nur endlich viele (und zwar N) harmonische Frequenzen auftre-ten.

Page 32: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

22 2 Zeitdiskrete Signale

In einem weiteren Beispiel berechnen wir das Linienspektrum einer zeitdis-kreten Rechteckschwingung und zeigen das Gibbssche Phanomen bei der Ap-proximation von Sprungstellen. Bei zeitdiskreten periodischen Signalen tritt dieserEffekt nur dann auf, wenn nicht alle N Glieder der Fourierreihe verwendet werden.

Beispiel 2.9

Wir gehen von einem Rechteckimpuls aus, der im Intervall n ∈ [0, N−1]durch

x[n] =

1 0 ≤ n ≤ N1

1 N −N1 ≤ n ≤ N − 1

0 sonst

(2.50)

gegeben ist. Die Rechteckschwingung erhalten wir durch periodischeFortsetzung von x[n] mit der Periodendauer N . Mit ck aus Gl. 2.46ergibt sich

ck =1

N

N1∑

n=0

e−j 2πN kn +

1

N

N−1∑

n=N−N1

e−j 2πN kn

=1

N

N1∑

n=0

e−j 2πN kn +

1

N

N1−1∑

n=0

e−j 2πN k(n+N−N1)

=1

N

N1−1∑

n=0

e−j 2πN kn

(

1 + ej2πN kN1

)

+1

Ne−j 2π

N kN1

=1

N

1− e−j 2πN kN1

1− e−j 2πN k

(

1 + ej2πN kN1

)

+1

Ne−j 2π

N kN1

=1

N

ej2πN kN1 − e−j 2π

N k(N1+1)

1− e−j 2πN k

=1

N

sin(πN k(2N1 + 1)

)

sin πN k

.

(2.51)

Das Linienspektrum ist in Abb. 2.8 fur N = 32 und N1 = 3 graphischdargestellt.

Aus der Fourierreihendarstellung zeitkontinuierlicher Funktionen ist bekannt,dass bei Signalen mit Sprungstellen an diesen Stellen eine Abweichung in Form vonUberschwingen auftritt, das auch bei unendlich vielen Reihengliedern nicht ver-schwindet (Gibbssches Phanomen). Dieser Effekt wird auch im zeitdiskreten Fall

Page 33: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.3 Fourierreihendarstellung periodischer, zeitdiskreter Signale 23

Frequenzindex k

ck

302826242220181614121086420

0.25

0.2

0.15

0.1

0.05

0

-0.05

Abbildung 2.8: Linienspektrum ck der Rechteckschwingung mitN = 32und N1 = 3

beobachtet, allerdings verschwindet das Uberschwingen, wenn alle Reihenglieder inder Fourierreihe vorhanden sind, d.h. Sprungstellen bei periodischen, zeitdiskretenSignalen werden exakt dargestellt!

Diesen Sachverhalt zeigen wir in Abb. 2.9 am Beispiel einer Rechteckschwin-gung. Verwendet man weniger als N Reihenglieder, so darf man nicht einfachdie Koeffizienten ck ab einem bestimmten k = M < N Null setzen. Es ist zuberucksichtigen, dass bei reellwertigen Signalen die Werte von ck eine Symmetrieaufweisen, die man auch in Abb. 2.8 erkennen kann. Man muss daher die ck-Wertesymmetrisch im Bereich um N/2 Null setzen, wenn man das Gibbssche Phanomenbeobachten will.

Das MATLAB-Programm gibbs.m, das in der Programmsammlung zu diesemBuch enthalten ist, zeigt die Effekte in einer animierten Graphik. Eine Auswahlvon 5 Ergebnissen ist in Abb. 2.9 gezeigt. Werden bei der Reihenentwicklung nur 2Harmonische verwendet (Gleichanteil und Grundschwingung), dann erhalten wirdas Diagramm ganz oben in Abb. 2.9. Je mehr Harmonische, also Reihengliederberucksichtigt werden, desto besser wird die Approximation, bis wir schließlich beiallen Reihengliedern (M = 17 im Diagramm ganz unten) die exakte Darstellungder periodischen Rechteckschwingung erhalten.

Symmetrieeigenschaften der Fourierreihendarstellung

Wie wir den Abbildungen 2.7 und 2.8 entnehmen konnen, weisen die Linienspek-tren reellwertiger Signale eine Symmetrie auf, so dass nur N

2 + 1 (N+12 , fur N

ungerade) Reihenkoeffizienten ck benotigt werden. Um diesen, fur die praktischeAnwendung wichtigen Zusammenhang zu zeigen, spalten wir fur N gerade die

Page 34: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

24 2 Zeitdiskrete Signale

0 5 10 15 20 25 30−0.5

0

0.5

1

1.5

n

xM

[n]

Discrete Fourier Series: rectangular signal approximation, N = 32, M = 2

0 5 10 15 20 25 30−0.5

0

0.5

1

1.5

n

xM

[n]

Discrete Fourier Series: rectangular signal approximation, N = 32, M = 5

0 5 10 15 20 25 30−0.5

0

0.5

1

1.5

n

xM

[n]

Discrete Fourier Series: rectangular signal approximation, N = 32, M = 10

0 5 10 15 20 25 30−0.5

0

0.5

1

1.5

n

xM

[n]

Discrete Fourier Series: rectangular signal approximation, N = 32, M = 15

0 5 10 15 20 25 30−0.5

0

0.5

1

1.5

n

xM

[n]

Discrete Fourier Series: rectangular signal approximation, N = 32, M = 17

Abbildung 2.9:”Gibbssches Phanomen“ bei der zeitdiskreten Rechteckschwingung

mit N = 32 und N1 = 10 (M gibt die Anzahl der berucksichtigten Harmonischeninklusive Gleichanteil an.)

Page 35: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.3 Fourierreihendarstellung periodischer, zeitdiskreter Signale 25

Summe in Gl. 2.45 folgendermaßen auf:

x[n] =N−1∑

k=0

ck ej 2π

N kn = c0 + c1 ej 2π

N n + cN−1 ej2πN (N−1)n

︸ ︷︷ ︸

e−j 2πN

n

+ c2 ej 2π

N 2n

+ cN−2 ej2πN (N−2)n

︸ ︷︷ ︸

e−j 2πN

2n

· · · cN/2 ejπn︸︷︷︸

(−1)n

= c0 + cN/2(−1)n +

N2 −1∑

k=1

(

ck ej 2π

N kn + cN−k e−j 2π

N kn)

.

(2.52)

Damit x[n] reell ist, muss ck daher die folgenden Eigenschaften besitzen:Gerade Periodendauer N :

c0, cN/2 reell (2.53)

ck = c∗N−k, k = 1, 2, . . . ,N

2− 1. (2.54)

Als vereinfachte Fourierreihendarstellung fur reellwertige Signale x[n] er-halten wir

x[n] = c0 + cN/2(−1)n + 2ℜe

N2 −1∑

k=1

ck ej 2π

N kn

. (2.55)

Die Fourierreihendarstellung fur reellwertige Signale besteht bei geradzahliger Pe-riodendauer N daher nur aus N

2 + 1 Reihengliedern, so dass der Rechenaufwandfur nummerische Auswertungen auch nur halb so groß wie bei komplexwertigenSignalen ist.

Ungerade Periodendauer N :

c0 reell (2.56)

ck = c∗N−k, k = 1, 2, . . . ,N − 1

2(2.57)

x[n] = c0 + 2ℜe

N−12∑

k=1

ck ej 2π

N kn

. (2.58)

(Der Term bei N/2 entfallt.)

Eine ahnliche Symmetrie wie in Gl. 2.54 erhalten wir fur reellwertige Linien-spektren ck. Ein solches Spektrum tritt in Beispiel 2.9 auf, wo die Rechteckschwin-gung ein gerades Signal (Gl. 2.28) ist. Umgekehrt ergibt sich fur ungerade Signale

Page 36: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

26 2 Zeitdiskrete Signale

(Gl. 2.29) ein rein imaginares Linienspektrum.

x[n] = x[N − n] (reell, gerade) ck reell, gerade (2.59)

x[n] = −x[N − n] (reell, ungerade) ck imaginar, ungerade . (2.60)

Beispiel 2.10

In diesem Beispiel berechnen wir das Linienspektrum eines reellen, ge-raden, periodischen Signals fur den Fall, dass die Periodendauer N ge-radzahlig ist. Wir konnen die Summe in der Beziehung fur die Fourier-reihenkoeffizienten in folgender Weise aufspalten:

ck =1

N

N−1∑

n=0

x[n] e−j 2πN kn

=1

N

N2 −1∑

n=0

x[n] e−j 2πN kn +

1

N

N−1∑

n=N2

x[n] e−j 2πN kn

=1

N

N2 −1∑

n=0

x[n] e−j 2πN kn +

1

N

1∑

n=N2

x[N − n]︸ ︷︷ ︸

x[n]

e−j 2πN k(N−n)

=1

N

N2 −1∑

n=0

x[n] e−j 2πN kn +

1

N

N2 −1∑

n=0

x[n] ej2πN kn − 1

Nx[0]

+1

Nx[N/2](−1)k

=2

N

N2 −1∑

n=0

x[n] cos2π

Nkn− 1

Nx[0] +

1

Nx[N/2](−1)k,

(2.61)

d.h. das Linienspektrum ck ist reell und eine gerade Funktion in k. Inahnlicher Weise kann der Zusammenhang fur reelle, ungerade Signalegezeigt werden.

Weitere Beziehungen fur die Fourierreihendarstellung zeitdiskreter, periodi-scher Signale sind im Anhang A.3 auf Seite 235 zusammengestellt. Diese Formelnerleichtern in vielen Fallen die Berechnung der Linienspektren. Der Beweis furdiese Beziehungen ist eine sehr gute Ubungsaufgabe und sollte mit den Beispielendieses Abschnitts ohne großen Aufwand moglich sein.

Page 37: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

2.3 Fourierreihendarstellung periodischer, zeitdiskreter Signale 27

Parsevalsche Beziehung fur periodische Signale

Die Signalleistung periodischer, zeitdiskreter Signale haben wir in Gl. 2.23 defi-niert. Wir konnen jedoch auch das Linienspektrum zur Berechnung dieser Signal-kenngroße verwenden. Dazu setzen wir die Fourierreihendarstellung Gl. 2.43 vonx[n] in Gl. 2.23 ein:

1

N

N−1∑

n=0

|x[n]|2 =1

N

N−1∑

n=0

x[n]x∗[n] =1

N

N−1∑

n=0

N−1∑

k=0

ck ej 2π

N knN−1∑

l=0

c∗l e−j 2π

N ln

=

N−1∑

k=0

N−1∑

l=0

ckc∗l

1

N

N−1∑

n=0

ej2πN (k−l)n

︸ ︷︷ ︸

1 fur l=k, 0 sonst

=N−1∑

k=0

|ck|2 .

(2.62)

Dabei haben wir wieder Gl. 2.18 fur die Summe der harmonischen Exponenti-alfunktionen verwendet. Die Signalleistung kann bei periodischen Signalen auchdurch Summation der Betragsquadrate der Reihenkoeffizienten ck berechnet wer-den. Diese Beziehung, die sich durch die Verwendung der harmonischen Exponen-tialfunktionen als Basisfunktionen der Fourierreihen ergibt, wird als ParsevalscheBeziehung bezeichnet. Besteht ein Signal nur aus wenigen Spektrallinien, dann istdiese Berechnung wesentlich einfacher als die Summenbildung im Zeitbereich.

Beispiel 2.11

Der Ton A4 (440 Hz Grundfrequenz) einer Klarinette kann durch dreiHarmonische (f1 = 440 Hz, f3 = 1320 Hz und f4 = 1760 Hz) approxi-miert werden:

xa(t) = sin 2πf1t+ sin 2πf3t+ 0, 7 sin 2πf4t. (2.63)

Durch Abtastung mit der Abtastfrequenz fs = 11 kHz erhalten wir daszeitdiskrete Signal

x[n] = xa(nT ) = sin2πf1fs

n+ sin2πf3fs

n+ 0, 7 sin2πf4fs

n. (2.64)

(Die Abtastung analoger Signale wird in Abschnitt 4.2 behandelt.) Derzeitliche Verlauf einer Periode des abgetasteten Klarinettentons ist inAbb. 2.10 dargestellt. Die Periodendauer N = 25 errechnet sich aus der

Page 38: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

28 2 Zeitdiskrete Signale

0 5 10 15 20 25−3

−2

−1

0

1

2

3

n

x[n

]

1 period of clarinet tone A4

0 5 10 15 20 250

0.2

0.4

0.6

0.8

k

|ck|

line spectrum (magnitude) of clarinet tone A4

Abbildung 2.10: Eine Periode des Klarinettentons A4 (Grundfrequenz440 Hz) und der Betragsverlauf des Linienspektrums

Grundfrequenz θ0 = 2πN = 2πf1

fs. Die Fourierreihenkoeffizienten konnen

wir in ahnlicher Weise, wie in Gl. 2.49 berechnen:

ck =1

2j

(δ[k − 1] + δ[k − 3] + 0, 7 δ[k − 4]

− δ[k + 1−N ]− δ[k + 3−N ]− 0, 7 δ[k + 4−N ]),

k = 0, 1, . . . N − 1.

(2.65)

Mit diesen Fourierreihenkoeffizienten und Anwendung der Parseval-schen Beziehung erhalten wir fur die mittlere Signalleistung

Px =

N−1∑

k=0

|ck|2 = 1 +1

20, 72 = 1.245. (2.66)

Page 39: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3

Zeitdiskrete Systeme

Die Verarbeitung zeitdiskreter Signale erfolgt mit zeitdiskret arbeitenden Syste-men, die normalerweise direkt mit digitalen Rechnern realisiert oder exakt (imRahmen der Rechengenauigkeit) simuliert werden konnen. Wir betrachten aberauch, ahnlich wie bei zeitkontinuierlichen Systemen, so genannte schematisierte(idealisierte) Systeme, die fur die Systemanalyse und -synthese eine große Be-deutung haben. Ein Beispiel ist ein idealisiertes Tiefpassfilter, das spektrale Anteileeines Signals bis zur Grenzfrequenz unverandert lasst, Anteile oberhalb der Grenz-frequenz jedoch eliminiert. Idealisierte Systeme konnen mit steigendem Aufwandhinreichend genau approximiert werden. Mit idealisierten Systemen konnen wirallgemeine Aussagen uber Signalverarbeitungssysteme machen, ohne die genaueImplementierung der Systeme zu kennen oder Simulationsmethoden einsetzen zumussen. In vielen Fallen bilden idealisierte Systeme die Entwurfsgrundlage furreale Systeme, beispielsweise in der Nachrichtenubertragungstechnik. Schließlichkonnen mit schematisierten Systemen Simulationsergebnisse uberpruft werden.Wir werden schematisierte Systeme in Abschnitt 6.1 naher untersuchen.

Wir teilen Signalverarbeitungssysteme entsprechend den folgenden Eigenschaf-ten ein in

• lineare Systeme, wie z.B. linearer Mittelwertbilder, frequenzselektive Filter,

• nichtlineare Systeme (z.B. Minimum/Maximumdetektor, Einweggleichrich-ter, Betragbilder, Quadratbilder),

• zeitinvariante Systeme (mit zeitlich konstanten Systemparametern),

• zeitvariante Systeme, wie z.B. Systeme mit Modulatoren, Systeme mit meh-reren Taktraten (Multiratensysteme),

Page 40: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

30 3 Zeitdiskrete Systeme

• adaptive Systeme (automatische, zeitabhangige Anpassung von Systempara-metern).

Eine weitere Einteilung kann nach bestimmten Eigenschaften wie Kausalitat,Stabilitat, Minimalphasigkeit, Linearphasigkeit, Invertierbarkeit erfolgen. DieseEigenschaften werden wir spater etwas genauer kennenlernen. Wir konzentrierenuns in diesem Kapitel auf zeitdiskrete Systeme, die linear und zeitinvariant sind.Diese Klasse von Systemen hat vielfaltige Anwendungen und kann vergleichsweiseeinfach mathematisch beschrieben werden. Wir beginnen mit der Darstellung derSysteme im Zeitbereich und verwenden im Anschluss daran Fouriermethoden zurBeschreibung im Frequenzbereich.

3.1 Beschreibung linearer, zeitinvarianter, zeit-

diskreter Systeme im Zeitbereich

Ein zeitdiskretes System verarbeitet das Eingangssignal x[n] durch Anwendungeines zeitdiskret arbeitenden Algorithmus T {·} zu einem Ausgangssignal y[n]:

y[n] = T {x[n]} . (3.1)

T wird auch als Systemoperator oder Transformation bezeichnet. Obwohl die-se Systembeschreibung sehr allgemein ist, beschranken wir sie auf die Beziehungzwischen Eingangs- und Ausgangssignal. Bei einer solchen Systemcharakterisie-rung wird die interne Struktur des Systems bzw. bei dynamischen Systemen dereninnerer Speicherzustand nicht berucksichtigt. Wir setzen daher voraus, dass dasSystem ausschließlich durch das Eingangssignal angeregt wird. Bei der Realisie-rung zeitdiskreter, dynamischer Systeme wird das dadurch erreicht, dass vor demEinschalten des Eingangssignals der gesamte Speicher des Systems geloscht (aufNull gesetzt) wird. Eine Systembeschreibung, die den inneren Speicherzustandberucksichtigt, werden wir in Kapitel 5 kennenlernen.

Graphisch wird der Zusammenhang in Gl. 3.1 durch das Blockschaltbild inAbb. 3.1 dargestellt.

x[n] y[n] = T {x[n]}

T {·}

Abbildung 3.1: Blockschaltbild fur das Eingangs/Ausgangsverhalten zeitdiskreterSysteme (Beschreibung durch den Systemoperator T )

Page 41: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 31

Bei linearen Systemen ist die Antwort auf eine Summe von Eingangssignalengleich der Summe der Einzelantworten. Die Summenbildung ist mit der Transfor-mation T {·} vertauschbar (Superpositionsprinzip):

y[n] = T {ax1[n] + bx2[n]} = aT {x1[n]}+ bT {x2[n]} ∀n, a, b . (3.2)

Zusatzlich weisen lineare Systeme auch die folgende Eigenschaft auf:

x[n] ≡ 0 =⇒ y[n] ≡ 0. (3.3)

So beschreibt zum Beispiel y[n] = 2x[n] ein lineares System. Ein System mit y[n] =2x[n]+1 ist jedoch nichtlinear, obwohl der Zusammenhang zwischen Eingangs- undAusgangssignal eine lineare Beziehung ist. Das System verhalt sich zwar linearbezuglich des Eingangssignals, hat aber eine Komponente am Systemausgang, dienicht vom Eingang her beeinflusst werden kann.

Fur lineare Systeme lasst sich der Zusammenhang zwischen Eingangs- undAusgangssignal unmittelbar herleiten, wenn wir das Eingangssignal als Summezeitverschobener und gewichteter Einsimpulse nach der Beziehung

x[n] =∞∑

k=−∞x[k]δ[n− k] (3.4)

darstellen. Einen Spezialfall von Gl. 3.4 haben wir bereits bei der Sprungfunktion(siehe Gl. 2.4) kennengelernt. Jeder Einsimpuls in Gl. 3.4 selektiert in der Summenur den x-Wert bei n = k. Alle anderen Werte werden mit Null gewichtet. Damitist Gl. 3.4 die wohl einfachste Darstellung einer beliebigen zeitdiskreten Funktionals Uberlagerung der elementaren Basissignale δ[n − k]. Mit Gl. 3.4 konnen wirdas Superpositionsprinzip Gl. 3.2 anwenden:

y[n] = T{ ∞∑

k=−∞x[k]δ[n− k]

}

=∞∑

k=−∞x[k]T {δ[n− k]} =

∞∑

k=−∞x[k]h[n, k] ,

(3.5)mit der Impulsantwort h[n, k] = T {δ[n−k]}. Dabei setzen wir die Vertauschbar-keit der Operation T {·} mit der unendlichen Summe voraus. Das Eingangs/Aus-gangsverhalten des linearen Systems wird dann durch die Impulsantwort komplettcharakterisiert. Im allgemeinen Fall hangt die Impulsantwort h[n, k] sowohl vomZeitindex n, als auch vom Summationsindex k ab. Wenn wir uns auf den Fall zei-tinvarianter Systeme beschranken, dann genugt die Beschreibung durch eineeindimensionale Funktion h[n], da bei diesen Systemen

T {δ[n− k]} = h[n− k] (3.6)

ist. Bei zeitinvarianten Systemen andert sich die Form des Ausgangssignals nicht,wenn das Eingangssignal zu verschiedenen Zeitpunkten angelegt wird. Es tritt le-diglich eine Zeitverschiebung auf, die gleich jener des Eingangssignals ist. Damit

Page 42: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

32 3 Zeitdiskrete Systeme

erhalt man fur lineare, zeitinvariante Systeme die grundlegende Eingangs/Aus-gangsrelation

y[n] =∞∑

k=−∞x[k]h[n− k] =

∞∑

k=−∞x[n− k]h[k] , (3.7)

die als Faltungsoperation oder Faltungssumme bezeichnet wird.1 Die zweite(rechte) Variante der Faltungsoperation ergibt sich durch die Substitution k →n− k. Bevor wir uns diese Beziehung graphisch veranschaulichen, betrachten wirzwei einfache Beispiele, bei denen die Impulsantwort nur aus zwei Einsimpulsenbesteht.

Beispiel 3.1

Ist die Impulsantwort eines linearen, zeitinvarianten Systems durch

h[n] =1

2(δ[n] + δ[n− 1]) (3.8)

gegeben, dann erhalten wir mit Gl. 3.7

y[n] =1

2

∞∑

k=−∞x[k]δ[n−k]+

1

2

∞∑

k=−∞x[k]δ[n−1−k] =

1

2(x[n]+x[n−1]).

(3.9)Dieses System liefert als Ausgangssignal den arithmetischen Mittel-wert zweier aufeinanderfolgender Werte von x[n] (Mittelwertbilder).Ist das Eingangssignal die Sprungfunktion σ[n], dann erhalten wir amAusgang des Mittelwertbilders die Sprungantwort a[n]:

y[n] = a[n] =1

2(σ[n] + σ[n− 1]). (3.10)

Es ist leicht zu erkennen, dass nur die Sprungstelle verandert wird, daa[0] = 1

2 ist und alle anderen Werte gleich bleiben. Der Mittelwertbilder

verflacht daher sprunghafte Anderungen in Signalen und wirkt damit

1Die Faltungsoperation ist nicht fur alle linearen und zeitinvarianten Systeme gultig. Ein ein-faches System, das nicht durch Gl. 3.7 beschrieben werden kann, ist y[n] = limm→−∞ x[m]. Esliefert einen konstanten Ausgangswert. Die Impulsantwort ist h[n] = limm→−∞ δ[m] = 0. Damitergibt sich mit der Faltungsoperation y[n] = 0 (und nicht x[−∞]). Eine erweiterte Systembe-schreibung, die auch diese Grenzfalle mit einschließt, ist in der folgenden Veroffentlichung zufinden: I. W. Sandberg, “A representation theorem for linear systems,” IEEE Trans. Circuits

and Systems-I: Fundamental Theory and Applications, vol. 45, pp. 578-580, May 1998.

Page 43: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 33

als Tiefpassfilter. Diese Filterwirkung werden wir bei der Frequenz-bereichsdarstellung zeitdiskreter Systeme naher untersuchen. Die Fil-teroperation des Mittelwertbilders konnen wir jedoch auch erkennen,wenn wir als Eingangssignal das Signal mit der starksten Oszillationx[n] = ejπn = (−1)n verwenden (siehe Abb. 2.3 auf Seite 10):

y[n] =1

2

∞∑

k=−∞(−1)k δ[n− k] +

1

2

∞∑

k=−∞(−1)k δ[n− 1− k]

=1

2

∞∑

k=−∞[(−1)k + (−1)k−1] δ[n− k]

≡ 0,

(3.11)

d.h. dieses”hochfrequente“ Signal wird vom Mittelwertbilder komplett

unterdruckt.

Beispiel 3.2

Das Gegenstuck zum Mittelwertbilder ist ein System mit der Impuls-antwort

h[n] = δ[n]− δ[n− 1], (3.12)

das die Differenz zwischen zwei aufeinanderfolgenden Werten bildet:

y[n] =∞∑

k=−∞x[k]δ[n−k]−

∞∑

k=−∞x[k]δ[n−1−k] = x[n]−x[n−1]. (3.13)

Als Sprungantwort dieses Systems erhalten wir

a[n] = σ[n]− σ[n− 1] = δ[n], (3.14)

also den Einsimpuls. Der Differenzbilder detektiert demnach sprung-hafte Anderungen im Signal und verhalt sich daher so ahnlich wie einDifferenzierer fur zeitkontinuierliche Signale. Die Antwort des Diffe-renzbilders auf x[n] = (−1)n erhalten wir mit

y[n] = (−1)n − (−1)n−1 = 2(−1)n. (3.15)

Der Differenzbilder verstarkt dieses”hochfrequente“ Signal und ver-

andert nicht dessen zeitlichen Verlauf. Seine Wirkungsweise entspricht

Page 44: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

34 3 Zeitdiskrete Systeme

einem Hochpassfilter, was man auch daran erkennt, dass z.B. ein Gleich-anteil x[n] ≡ 1 durch die Differenzbildung komplett unterdruckt wird.

In den beiden Beispielen hat die Impulsantwort h[n] eine endliche Dauer. Syste-me mit einer solchen Impulsantwort werden als Finite Impulse Response DurationFilter, FIR-Filter, bezeichnet. Im Gegensatz dazu nennt man Systeme mit einerImpulsantwort unendlich langer Dauer Infinite Impulse Response Duration Filter,IIR-Filter.

Die Wirkungsweise der Faltungsoperation Gl. 3.7 illustrieren wir in Abb. 3.2.Dazu benotigen wir die in Abschnitt 2.2 vorgestellte Zeitverschiebung und Zeit-

k

kn0

0

0

0

h[n0 − k]

h[k]

h[−k]

0

y[n0]

n0n

...

k

x[k]

0

y[n]

k

(a)

(b)

(c)

(d)

(e)

Abbildung 3.2: Graphische Darstellung der Faltung y[n] =∑∞

k=−∞ x[k]h[n − k](Impulsantwort (a), Zeitinversion (b), Zeitinversion+Verschiebung (c), Eingangs-signal (d), Ausgangssignalwert bei n = n0 (e))

Page 45: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 35

inversion. Wir erhalten die Systemantwort y[n] in Abb. 3.2 durch Verschiebender zeitinvertierten Impulsantwort uber das Signal. Die Impulsantwort wirkt da-her als Fensterfunktion, die alle Eingangssignalwerte innerhalb dieses Zeitfenstersgewichtet. Die Summe dieser Werte bestimmt den Ausgangssignalwert zum ak-tuellen Zeitpunkt. Die graphische Faltung fur das Beispiel in Abb. 3.2 konnenwir mit dem MATLAB-Programm convolve_demo.m demonstrieren, das in derProgrammsammlung zu diesem Buch zu finden ist.

Ist die Impulsantwort h[n] = 0 fur n < 0, dann haben wegen der Zeitinversionvon h[n] nur vergangene Eingangssignalwerte einen Einfluss auf y[n]. Die Dauerder Impulsantwort bestimmt das Gedachtnis (den Speicher) des Systems. Lineare,zeitinvariante Systeme ohne Gedachtnis sind statische Systeme und mussen dahereine Impulsantwort der Form h[n] = aδ[n] haben. Speicherlose Systeme reagie-ren augenblicklich (verzogerungsfrei) auf Eingangssignale und bewirken nur eineAmplitudenanderung des Eingangssignals (falls a reellwertig ist).

Fur die Berechnung der Faltungssumme ist die Auswertung der Summen ingeschlossener Form moglich, wenn wir Summenformeln von Reihen verwendenkonnen. Die am haufigsten benotigten Summenformeln sind jene der geometrischenReihen:

N−1∑

n=0

an =

{

N a = 11−aN

1−a sonst(3.16)

∞∑

n=0

an =1

1− a, |a| < 1. (3.17)

Durch Differenzieren dda beider Seiten dieser Gleichungen erhalten wir auch

N−1∑

n=0

nan =

{N(N−1)

2 a = 1

a 1+(N−1)aN−NaN−1

(1−a)2 sonst(3.18)

∞∑

n=0

nan =a

(1− a)2, |a| < 1. (3.19)

Beispiel 3.3

Wir berechnen die Antwort y[n] eines Systems mit der exponentiellenImpulsantwort

h[n] =

(1

2

)n

σ[n] (3.20)

Page 46: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

36 3 Zeitdiskrete Systeme

auf den Sagezahnimpuls

x[n] =

{

n 0 ≤ n ≤ 9

0 sonst. (3.21)

Mit der Faltungssumme Gl. 3.7 und Gl. 3.18 erhalten wir

y[n] =∞∑

k=−∞x[k]h[n− k] =

9∑

k=0

k

(1

2

)n−k

σ[n− k]

=

0 n < 0(1

2

)n n∑

k=0

k

(1

2

)−k

0 ≤ n ≤ 9

(1

2

)n 9∑

k=0

k

(1

2

)−k

n ≥ 10

=

0 n < 0

2(n− 1) +(12

)n−10 ≤ n ≤ 9

(2 + 213

) (12

)nn ≥ 10

.

(3.22)

Mit den folgenden MATLAB-Befehlen kann das Ergebnis kontrolliertbzw. graphisch dargestellt werden (siehe Abb. 3.3).

0 5 10 15 20 25 30 35 400

5

10

15

20

n

y[n

]

Abbildung 3.3: Antwort des Systems auf den Sagezahnimpuls

n = 0:19;

h = 0.5 .^ n;

x = [n(1:10) zeros(1,10)];

Page 47: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 37

y = conv(x,h); % convolution of x and h

stem(0:length(y)-1, y); % plot output signal y

% (length of y = length of x

% + length of h - 1)

Der MATLAB-Befehl conv(x,h) berechnet die Faltungssumme der alsVektoren gespeicherten Signale. Da in der MATLAB-Simulation dieSignale endliche Langen Nx = 20 und Nh = 20 haben, ist die Langedes Ausgangssignals Ny = Nx +Nh − 1 = 39.

Die Faltung zweier Signale endlicher Dauer ergibt ein Signal, das langer alsdie gefalteten Signale ist. Zur allgemeinen Bestimmung der Ausgangssignaldau-er stellen wir die Intervalle, in denen Beitrage ungleich Null zur Faltungssummeauftreten, graphisch in der nk-Ebene dar (Abb. 3.4).

������������������������������������������������������������������������

������������������������������������������������������������������������

0

k

n

Nx

Ny = Nx +Nh − 1

Nh

Nx − 1

Nx − 1 Nh − 1 Ny − 1

n− k = Nh − 1n− k = 0

Abbildung 3.4: nk-Ebene der Faltungsoperation∑Nx−1

k=0 x[k]h[n − k] (Nur imschraffierten Bereich ist das Produkt x[k]h[n− k] von Null verschieden!)

Bei der Faltung von x[n], n ∈ [0, Nx−1] und h[n], n ∈ [0, Nh−1] liefern nur vonNull verschiedene Produkte x[k]h[n−k] Beitrage. In der nk-Ebene sieht man jenenBereich fur n und k, wo solche Beitrage liegen (Summationsgebiet). Der Bereich, indem x[n] definiert ist, ist in der nk-Ebene durch den Streifen zwischen den Geradenk = 0 und k = Nx − 1 festgelegt. Der Bereich fur h[n − k] ist durch die Geradenn − k = 0 und n − k = Nh − 1 begrenzt. Damit erhalten wir den schraffiertenBereich als gesuchtes Summationsgebiet. Die Lange des Faltungsergebnisses istdaher Ny = Nx +Nh − 1. Mit dieser graphischen Darstellung kann man sich auchfur komplizierte Signale, die stuckweise auf der Zeitachse von Null verschiedensind, rasch einen Uberblick uber das Summationsgebiet machen.

Page 48: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

38 3 Zeitdiskrete Systeme

Die Faltungssumme Gl. 3.7 zeigt, dass fur die Beschreibung linearer, zeitin-varianter Systeme im Zeitbereich eine einzige Funktion h[n] ausreichend ist, umdie Systemantwort auf alle moglichen Eingangssignale zu bestimmen. Das ist eingroßer Vorteil dieser Systeme gegenuber Systemen, die etwa nichtlinear sind. Einweiterer Vorteil ergibt sich bei der Zusammenschaltung linearer, zeitinvari-anter Systeme. Hier ergeben sich durch die Eigenschaften der FaltungssummeVereinfachungen, die die Analyse komplexer Systeme erleichtern.

Wir beginnen mit der in Abb. 3.5 gezeigten Parallelschaltung zweier Systememit den Impulsantworten h1[n] und h2[n]. Die Impulsantwort des Gesamtsystemserhalten wir mit Gl. 3.7 aus

y[n] =

∞∑

k=−∞x[n− k]h1[k] +

∞∑

k=−∞x[n− k]h2[k]

=∞∑

k=−∞x[n− k] (h1[k] + h2[k])

︸ ︷︷ ︸

h[n]

(3.23)

als Summe der Impulsantworten der Teilsysteme: h[n] = h1[n] + h2[n].

h[n]

h1[n]

h2[n]

Abbildung 3.5: Parallelschaltung zweier linearer, zeitinvarianter Systeme

Bei der Kettenschaltung (Kaskadenschaltung) (Abb. 3.6) zweier stabilerSysteme mit den Impulsantworten h1[n] und h2[n] ist die Reihenfolge der Systemevertauschbar und das Gesamtsystem hat eine Impulsantwort

h[n] =∞∑

k=−∞h1[k]h2[n− k] =

∞∑

k=−∞h1[n− k]h2[k] . (3.24)

Wichtig dabei ist, dass die Teilsysteme stabil sind, da sonst unendliche Summender Faltungsoperation – und damit die Reihenfolge der Teilsysteme – im Allge-meinen nicht vertauschbar sind. Das Ausgangssignal y[n] der Kettenschaltung derlinken Anordnung in Abb. 3.6 erhalten wir durch zweimalige Anwendung der Fal-

Page 49: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 39

h1[n] h2[n] h2[n] h1[n] h[n]

Abbildung 3.6: Kettenschaltung zweier linearer, zeitinvarianter, stabiler Systeme

tungssumme Gl. 3.7:

y[n] =∞∑

k=−∞h2[k]

∞∑

l=−∞h1[l]x[n− k − l

︸ ︷︷ ︸

n−m

]

=

∞∑

k=−∞h2[k]

∞∑

m=−∞h1[m− k]x[n−m]

=∞∑

m=−∞

∞∑

k=−∞h2[k]h1[m− k]

︸ ︷︷ ︸

h[m]

x[n−m].

(3.25)

In ahnlicher Weise kann auch die Gesamtimpulsantwort bei Vertauschung derTeilsysteme hergeleitet werden. Fur das Vertauschen der unendlichen Summen inGl. 3.25 mussen diese Summen fur Eingangssignale mit beschrankten Amplitudenabsolut konvergieren. So gilt mit

∞∑

k=−∞|h[k]| < ∞ (3.26)

fur den Betrag des Ausgangssignals

|y[n]| =∣∣∣∣∣

∞∑

k=−∞h[k]x[n− k]

∣∣∣∣∣≤

∞∑

k=−∞|h[k]| |x[n− k]| < ∞, (3.27)

falls die Eingangssignalamplitude beschrankt ist. Wenn Gl. 3.26 erfullt ist, dannwird das System als BIBO-stabiles System bezeichnet (BIBO = Bounded InputBounded Output). Filter mit einer Impulsantwort endlicher Dauer (FIR-Filter)sind daher immer stabil.

Beispiel 3.4

Als Beispiel behandeln wir die Kettenschaltung zweier Teilsysteme, vondenen eines nicht stabil nach Gl. 3.26 ist. Die Teilsysteme seien durch

Page 50: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

40 3 Zeitdiskrete Systeme

folgende Impulsantworten gegeben:

h1[n] =

{1N 0 ≤ n ≤ N − 1

0 sonsth2[n] = sin

Nn σ[n]. (3.28)

Als Testsignal soll x[n] = sin 2πN n eingesetzt werden. Wenn wir das

System mit h1[n] vor das System mit h2[n] schalten, dann ergibt sichals Zwischensignal

y1[n] =

∞∑

k=−∞h1[k]x[n− k] =

1

N

N−1∑

k=0

sin2π

N(n− k)

=1

2jN

N−1∑

k=0

ej2πN (n−k) − 1

2jN

N−1∑

k=0

e−j 2πN (n−k) ≡ 0

(3.29)

Damit ist das Eingangssignal fur das zweite System Null und wir er-halten y[n] ≡ 0 am Ausgang der Kaskadenschaltung. Vertauschen wirdie Reihenfolge, d.h. wird zuerst die Faltung von x[n] mit h2[n] durch-gefuhrt, dann ist das Zwischensignal

y2[n] =

∞∑

k=−∞h2[k]x[n− k] =

∞∑

k=0

sin2π

Nk sin

N(n− k), (3.30)

dessen Amplitude fur n → ∞ gegen Unendlich geht. Diese Divergenzerkennt man, wenn man sinα sinβ = 1

2 cos(α − β) + 12 cos(α + β) an-

wendet und die Summe uber endlich viele (L) Cosinusterme bildet. DasMaximum von y2[n] ist dann proportional zu L. Wir erhalten also einkomplett anderes Verhalten bei Vertauschung der Reihenfolge der Teil-systeme. Wir sehen, dass man in diesem Beispiel das Ausgangssignaldes Gesamtsystems nicht durch Berechnung der Ausgangssignale derTeilsysteme bestimmen kann. Der Grund liegt in der Instabilitat desTeilsystems mit der Impulsantwort h2[n].

Das Gesamtsystem der Kettenschaltung hat aber zwei bemerkenswer-te Eigenschaften, die wir durch Berechnung der Gesamtimpulsantwort

Page 51: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 41

h[n] aus den beiden Teilimpulsantworten erkennen konnen:

h[n] =

∞∑

k=−∞h1[k]h2[n− k] =

1

N

N−1∑

k=0

sin2π

N(n− k)σ[n− k]

=

0 n < 0

1

N

n∑

k=0

sin2π

N(n− k) =

1

N

n∑

k=0

sin2π

Nk 0 ≤ n ≤ N − 1

1

N

N−1∑

k=0

sin2π

N(n− k) = 0 n ≥ N

=

sin πN n sin π

N (n+ 1)

N sin πN

0 ≤ n ≤ N − 1

0 sonst

.

(3.31)

Es ergibt sich somit erstens ein stabiles Gesamtsystem, das wir imGegensatz zur Kettenschaltung der Einzelsysteme realisieren konnen.Zweitens hat das Gesamtsystem eine Impulsantwort endlicher Dauer,ist also ein FIR-System. Mit den folgenden MATLAB-Befehlen kanndie Gesamtimpulsantwort simuliert werden:

N = 20;

n = 0:N-1;

h1 = 1/N*[ones(1,N) zeros(1,N)];

h2 = sin(2*pi/N*n);

h = conv(h1,h2); % use convolution

stem(n,h(1:N)); % only the first N samples are used (why?)

% an alternative computation

ha = sin(pi/N*n).*sin(pi/N*(n+1))/(N*sin(pi/N));

stem(n,ha);

Beispiel 3.5

In diesem Beispiel zeigen wir, dass durch Vertauschen von Systemeneine erheblich einfachere Berechnung des Gesamtsystems moglich ist.

Page 52: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

42 3 Zeitdiskrete Systeme

Das Blockschaltbild des Systems in Abb. 3.7 enthalt Teilsysteme mitden Impulsantworten

h1[n] =1

(n+ 1)2σ[n], h2[n] =

(1

2

)n

σ[n], h3[n] = −1

2δ[n− 1].

(3.32)

h1[n]

h2[n]

h3[n]h2[n]

Abbildung 3.7: Gegebene Anordnung der Teilsysteme

Zur Vereinfachung der Berechnung der Impulsantwort h[n] des Gesamt-systems gibt es mehrere Moglichkeiten zur Anderung der Anordnungder Teilsysteme. Wir betrachten jene in Abb. 3.8, bei der die Teilsyste-me mit h2[n] aus der Parallelschaltung nach links verschoben werdenund die verbleibende Parallelanordnung zum System mit h4[n] zusam-mengefasst wird. Bei der Kettenschaltung in Abb. 3.8 konnten wir

h1[n] h4[n]h2[n]

h4[n] = δ[n] + h3[n]

Abbildung 3.8: Alternative Anordnung der Teilsysteme

zunachst die Faltung von h1[n] und h2[n] berechnen und danach dieFaltung des Ergebnisses mit h4[n] ausfuhren. Wir stellen aber raschfest, dass diese Berechnung sehr schwierig ist. Wesentlich einfacher ist

Page 53: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.1 Beschreibung im Zeitbereich 43

es, zuerst die Faltungssumme mit h2[n] und h4[n] zu berechnen:

h5[n] =

∞∑

k=−∞h2[k]h4[n− k]

=

∞∑

k=−∞

(1

2

)k

σ[k]

(

δ[n− k]− 1

2δ[n− 1− k]

)

=

(1

2

)n

σ[n]− 1

2

(1

2

)n−1

σ[n− 1]

=

(1

2

)n

(σ[n]− σ[n− 1])︸ ︷︷ ︸

δ[n]

= δ[n].

(3.33)

Damit erhalten wir fur die Impulsantwort des Gesamtsystems

h[n] =

∞∑

k=−∞h1[k]h5[n− k] = h1[n] =

1

(n+ 1)2σ[n]. (3.34)

Ein weiterer Begriff bei den Systemeigenschaften ist die Kausalitat, die beilinearen, zeitinvarianten Systemen direkt an Hand der Impulsantwort uberpruftwerden kann. Bei kausalen Systemen eilt die Systemantwort der Systemanre-gung nicht voraus. Die Systemantwort fur jeden Zeitindex n0 hangt nur von Signal-werten x[n] zu Zeitpunkten n ≤ n0, also von vergangenen Eingangssignalwerten,ab. Daraus folgt mit der Faltungssumme Gl. 3.7

y[n0] =

∞∑

k=−∞h[k]x[n0 − k

︸ ︷︷ ︸

≤n0

] (3.35)

als Konsequenz fur die Impulsantwort kausaler Systeme

h[n] = 0 fur n < 0, (3.36)

da sonst Werte x[n0 + 1], x[n0 + 2], . . . in der Faltungssumme auftreten, diebezuglich des Zeitpunktes n0 in der Zukunft liegen.

Ein kausales Systemverhalten ist immer dann notwendig, wenn Echtzeitver-arbeitung angestrebt wird. Bei dieser Betriebsart werden nicht im Rechner ge-speicherte Signale verarbeitet, sondern Signale, die laufend von peripheren Geraten(z.B. Analog/Digitalwandler) eingelesen oder ausgegeben werden (z.B. mit Digi-tal/Analogwandlern). Der Datenstrom ist permanent vorhanden und darf wahrend

Page 54: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

44 3 Zeitdiskrete Systeme

des Systembetriebes nicht unterbrochen werden. Bei der Verarbeitung gespeicher-ter und damit endlicher Signale (z.B. Simulaton mit MATLAB) spielt Kausalitatinsofern keine Rolle, da die Wahl einer Zeitachse willkurlich ist. So konnen wir, wiebereits bei der Zeitinversion auf Seite 17 erwahnt, endliche Signale zeitinvertiertverarbeiten, was im Echtzeitbetrieb bei potentiell unendlich langen Signalen nichtmoglich ist.

In diesem Abschnitt haben wir gesehen, dass die Faltungsoperation eine wichti-ge Analysemethode fur lineare, zeitinvariante Systeme ist, um das Eingangs/Aus-gangsverhalten zu untersuchen. Im Gegensatz zur Faltungsoperation bei zeitkon-tinuierlichen Systemen, konnen wir bei zeitdiskreten Systemen die Faltung auchdirekt zur Realisierung verwenden. So treten bei FIR-Systemen nur endlicheSummen auf, so dass Gl. 3.7 direkt als Rechnerprogramm implementiert werdenkann. In MATLAB gibt es dazu die bereits verwendete Funktion conv(h,x), furdie als Vektoren h und x gespeicherten Signale. Wir konnen die Faltungssumme

y[n] =∑Nx−1

k=0 x[k]h[n− k] aber auch selbst programmieren:

% for-loop implementation of convolution

x = ones(1,10); % rectangular input signal

h = ones(1,5); % rectangular impulse response

Nx = length(x);

Nh = length(h);

Ny = Nx+Nh-1;

y = zeros(1,Ny);

for n = 1:Ny % time index loop

for k = max(1,n-Nh+1):min(n,Nx) % summation index loop

y(n) = y(n) + x(k)*h(n-k+1);

end

end

stem(0:Ny-1,y);

% fast convolution function of MATLAB

y1 = conv(h,x);

stem(0:Ny-1,y1); % to obtain the same result

Die Grenzen fur den Summationsindex k konnen wir am besten mit Abb. 3.4bestimmen. Dabei ist zu beachten, dass bei MATLAB Vektorindizes immer großerals Null sein mussen. Bei der Besprechung der diskreten Fouriertransformation inKapitel 7 werden wir sehen, dass wir noch eine wesentlich effizientere Methode zurImplementierung der Faltungsoperation haben. Diese schnelle Faltung mit derFFT spielt in den Anwendungen der digitalen Signalverarbeitung eine bedeutendeRolle. Um dieses Verfahren zu verstehen, mussen wir uns aber vorher mit derBeschreibung zeitdiskreter Systeme im Frequenzbereich beschaftigen.

Page 55: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 45

3.2 Beschreibung linearer, zeitinvarianter, zeit-

diskreter Systeme im Frequenzbereich

Zur Untersuchung zeitdiskreter Systeme im Frequenzbereich werden diese Systeme,so wie bei analogen Filtern, mit sinusformigen Signalen angeregt. Durch Variationder Frequenz des Eingangssignals kann schrittweise der Frequenzgang des Sys-tems bestimmt werden. Wir gehen zunachst von unendlich langen Signalen aus, sodass transiente Vorgange (Einschwingvorgange), die durch das Anlegen des Ein-gangssignals an das System hervorgerufen werden, im Ausgangssignal nicht mehrvorhanden sind. Wir werden sehen, dass die Amplituden der Einschwingvorgangebei stabilen Systemen stets gegen Null streben. Wir behandeln daher vorerst denso genannten eingeschwungenen Zustand des Systems und setzen voraus, dassdas System stabil ist.

Wir gehen bei der folgenden Ableitung von der Faltungsoperation Gl. 3.7 aus,die das Eingangs/Ausgangsverhalten linearer und zeitinvarianter Systeme fur al-le Arten von Eingangssignalen beschreibt. Zur Untersuchung des Frequenzgangssetzen wir eine komplexe Exponentialschwingung anstelle von Sinus- oder Cosi-nussignalen ein. Damit ersparen wir uns das umstandliche Rechnen mit trigo-nometrischen Summenformeln. Diese Vorgehensweise entspricht der komplexenWechselstromrechnung, also dem Rechnen mit komplexen Zeigern, in der Ana-logtechnik. Mit dem Eingangssignal x[n] = ejθn erhalten wir mit der Faltungsope-ration

y[n] =

∞∑

k=−∞h[k]x[n− k] =

∞∑

k=−∞h[k] ejθ(n−k)

︸ ︷︷ ︸

x[n−k]

= ejθn∞∑

k=−∞h[k]e−jθk

︸ ︷︷ ︸

H(ejθ)

= H(ejθ)ejθn .

(3.37)

Die komplexe Exponentialschwingung ejθn tritt damit auch am Systemausgangauf. Die zeitliche Form des Eingangssignals wird im vorliegenden Fall durch dasSystem nicht verandert. Nur Amplitude und Phase werden mit dem komplexenFaktor H

(ejθ)in Abhangigkeit von der Frequenz θ modifiziert. Als Funktionsar-

gument von H hat sich die Verwendung von ejθ statt jθ eingeburgert, um die2π-Periodizitat von H

(ejθ)bezuglich θ zu unterstreichen.

Es ist eine grundlegende Eigenschaft linearer, zeitinvarianter Systeme, die Kur-venform von Exponentialschwingungen (und damit auch von Sinus- und Cosinus-signalen) nicht zu verandern. Daher konnen mit diesen Signalen die Frequenzgangeder Systeme einfach durch Betrags- und Phasenmessungen bestimmt werden. Der

Page 56: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

46 3 Zeitdiskrete Systeme

Frequenzgang wird dabei durch die Ubertragungsfunktion

H(ejθ)=

∞∑

k=−∞h[k]e−jθk (3.38)

charakterisiert, die durch die Impulsantwort festgelegt ist und das System imFrequenzbereich beschreibt. Dieser Zusammenhang zwischen H

(ejθ)und h[n],

der sich unmittelbar aus der Faltungsoperation ergibt, wird als Fouriertrans-formation fur zeitdiskrete Signale FT {·} bezeichnet:

H(ejθ)= FT {h[n]} . (3.39)

So wie die Fourierreihendarstellung fur periodische Signale beschreibt die Fourier-transformation das Frequenzverhalten von aperiodischen Signalen. Im Gegensatzzur Fourierreihendarstellung Gl. 2.45 auf Seite 20 ist die Fouriertransformationfur aperiodische Signale Gl. 3.38 eine kontinuierliche Funktion in der Frequenz-variablen θ. In Abschnitt 4.1 werden wir die Eigenschaften dieser Transformationausfuhrlich besprechen und zeigen, wie die Anwendung der Fouriertransformationauch auf periodische Signale erweitert werden kann.

Die Ubertragungsfunktion stellen wir in ublicher Weise mit BetragsverlaufA(θ) und Phasenverlauf φ(θ) entsprechend

H(ejθ)= A(θ) ejφ(θ) (3.40)

dar. Beide Verlaufe beeinflussen direkt den Betrag und die Phase eines cosi-nusformigen Eingangssignals der Form x[n] = cos θ0n = ℜe{ejθ0n}. Mit Gl. 3.37erhalten wir als Ausgangssignal

y[n] = ℜe{H(ejθ0

)ejθ0n

}= A(θ0) cos (θ0n+ φ(θ0)) . (3.41)

Wegen der Linearitat und Zeitinvarianz des Systems konnen wir die Realteilbil-dung durch das System

”schieben“, d.h. wir berechnen die Systemantwort auf die

komplexe Exponentialschwingung und bilden dann den Realteil des Ausgangssi-gnals. In gleicher Weise konnen wir durch Imaginarteilbildung die Systemantwortauf x[n] = sin θ0n bestimmen. Die Amplitude des Cosinussignals wird nach Gl. 3.41durch den Betrag der Ubertragungsfunktion bei der Eingangsfrequenz θ0 modifi-ziert, wahrend die Phase durch den Phasenverlauf bei θ0 beeinflusst wird.

Beispiel 3.6

Als Beispiel einer Ubertragungsfunktion eines einfachen digitalen Fil-ters betrachten wir ein exponentielles Signal (siehe Gl. 2.5) als Impuls-antwort unendlich langer Dauer (IIR-Filter):

h[n] = anσ[n] =

{

an n ≥ 0

0 n < 0. (3.42)

Page 57: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 47

Diese Signalform weist fur 0 < a < 1 einen exponentiell abklingendenFunktionsverlauf auf. Wird Gl. 3.42 in Gl. 3.38 eingesetzt, dann erhal-ten wir mit der Summenformel einer unendlichen, geometrischen Reihe(siehe Gl. 3.17) die Ubertragungsfunktion

H(ejθ)=

∞∑

k=−∞h[k]e−jθk =

∞∑

k=0

(ae−jθ

)k=

1

1− ae−jθ(3.43)

bzw. als Betragsverlauf

A(θ) =∣∣H(ejθ)∣∣ =

1√1 + a2 − 2a cos θ

. (3.44)

Der in Abb. 3.9 dargestellte Betragsfrequenzgang zeigt eine Tiefpass-charakteristik fur dieses digitale Filter. Wir erkennen auch die 2π-

a = 0, 87

θ

∣∣H(ejθ)∣∣

−2π −π 0 π 2π

8

6

4

2

0

Abbildung 3.9: Betragsverlauf der Ubertragungsfunktion des digitalenIIR-Filters als Funktion der Frequenzvariablen θ

Periodizitat des Frequenzgangs, die wir schon bei den cosinusformigen,zeitdiskreten Signalen auf Seite 10 kennengelernt haben. Da in Abb. 3.9der Parameter a < 1 ist, erhalten wir ein stabiles System. Die Impuls-antwort in Gl. 3.42 konvergiert absolut und damit konvergiert auch dieunendliche, geometrische Reihe in Gl. 3.43. Die Ubertragungsfunktionist damit fur alle Frequenzwerte endlich und stetig. Wie wir spater se-hen werden, ist ein System mit unstetiger Ubertragungsfunktion nichtstabil.Mit MATLAB kann die Ubertragungsfunktion des gegebenen zeitdis-kreten Systems mit den folgenden Befehlen ausgewertet werden:

theta = linspace(0,pi,200); % create 200 equally spaced

% frequency points from 0 to pi

Page 58: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

48 3 Zeitdiskrete Systeme

H = 1 ./ (1 - 0.87*exp(-1i*theta)); % 1i = j = sqrt(-1)

plot(theta,abs(H)); % show magnitude response

plot(theta,angle(H)); % show phase response

[H,theta] = freqz(1,[1 -0.87],256); % faster computation

Beispiel 3.7

Ein weiteres, illustratives Beispiel ist ein FIR-Filter mit einer Impuls-antwort endlicher Dauer der Form

h[n] =

{1N 0 ≤ n ≤ N − 1

0 sonst. (3.45)

Diese Impulsantwort ist ein rechteckformiges Zeitfenster, das bei An-wendung der Faltungsoperation uber das Eingangssignal geschobenwird und mit dem ein laufender arithmetischer Mittelwert des Signalsgebildet wird. Es ist eines der einfachsten digitalen Filter mit vielenAnwendungsmoglichkeiten. Mit Ausnahme des Faktors 1

N werden kei-ne Multiplikationen benotigt, sondern nur Additionen und Speicher-operationen. Setzen wir Gl. 3.45 in die Faltungssumme Gl. 3.7 ein, sofolgt fur das Ausgangssignal

y[n] =1

N

N−1∑

k=0

x[n− k] =1

N

n∑

k=n−N+1

x[k] (3.46)

und damit die erwahnte gleitende Mittelwertbildung. Die Ubertra-gungsfunktion kann fur h[n] aus Gl. 3.45 mit Hilfe der Summenformeleiner endlichen, geometrischen Reihe (siehe Gl. 3.16) berechnet werden:

H(ejθ)=

1

N

N−1∑

k=0

e−jθk =1

N

1− e−jθN

1− e−jθ=

1

N

sin θN2

sin θ2

e−j N−12 θ .

(3.47)Fur den Betragsverlauf dieses FIR-Filters erhalten wir

∣∣H(ejθ)∣∣ =

1

N

∣∣∣∣∣

sin θN2

sin θ2

∣∣∣∣∣. (3.48)

Page 59: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 49

N = 6

θ

∣∣H(ejθ)∣∣

−2π −π 0 π 2π

1.2

1

0.8

0.6

0.4

0.2

0

Abbildung 3.10: Betragsverlauf der Ubertragungsfunktion des gleiten-den Mittelwertbilders mit einer Impulsantwort der Lange N = 6

Nach Abb. 3.10 zeigt auch der Mittelwertbilder im Frequenzbereichein Tiefpassverhalten. Zusatzlich treten bei Vielfachen von 2π/N Null-stellen auf, d.h. sinusformige Signale mit diesen Frequenzen (Sperr-frequenzen) werden komplett unterdruckt. Im Frequenzbereich sind(im Gegensatz zum Zeitbereich) Sperrfrequenzen an Hand der Uber-tragungsfunktion sehr leicht erkennbar.Die Ubertragungsfunktion des gleitenden Mittelwertbilders berechnenwir mit den folgenden MATLAB-Befehlen:

N = 6;

h = 1/N*ones(1,N); % impulse response

[H,theta] = freqz(h,1,256); % frequency response

plot(theta,abs(H));

plot(theta,angle(H));

Ein Vorteil der Beschreibung zeitdiskreter Systeme im Frequenzbereich ist dasleichte Erkennen der Filtercharakteristik (z.B. Tiefpassfilter) und spezieller Fre-quenzen (z.B. Sperrfrequenzen). Ein weiterer Vorteil besteht darin, dass die Fil-teroperation im Frequenzbereich einen einfachen Zusammenhang ergibt, der nichtnur theoretisch, sondern auch fur Anwendungen interessant ist. Dieser Zusammen-hang, der die Grundlage der auf Seite 44 erwahnten schnellen Faltung darstellt,beschreibt die Beziehung zwischen den Fouriertransformationen (Spektren) desEingangs- und des Ausgangssignals. Wir konnen den Zusammenhang wieder durchAnwendung der Faltungsbeziehung herleiten. Dabei beschranken wir uns zunachstauf ein aperiodisches Eingangssignal, dem wir eine Fouriertransformation zu-

Page 60: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

50 3 Zeitdiskrete Systeme

ordnen konnen (so wie bei der Impulsantwort in Gl. 3.38):

X(ejθ)=

∞∑

n=−∞x[n]e−jθn = FT {x[n]} . (3.49)

In gleicher Weise gilt fur das Ausgangssignal

Y(ejθ)=

∞∑

n=−∞y[n]e−jθn = FT {y[n]} . (3.50)

Wir setzen voraus, dass die Signale x[n] und y[n] absolut summierbar sind (sowie h[n] in Gl. 3.26). Damit existieren die Fouriertransformationen Gl. 3.49 undGl. 3.50 und wir konnen in der folgenden Herleitung auch unendliche Summenvertauschen. Setzen wir die Faltungsoperation Gl. 3.7 in Gl. 3.50 ein, so folgt

Y(ejθ)=

∞∑

n=−∞

∞∑

k=−∞x[k]h[n− k]

︸ ︷︷ ︸

y[n]

e−jθn

=∞∑

k=−∞x[k]

∞∑

n=−∞h[n− k]e−jθ(n−k)

︸ ︷︷ ︸

H(ejθ)

e−jθk

= H(ejθ)X(ejθ).

(3.51)

Die Filteroperation (Faltungssumme im Zeitbereich) entspricht damit einerMultiplikation des Eingangssignalspektrums mit der Ubertragungsfunktion. Durchgeeignete Wahl der Ubertragungsfunktion konnen durch die multiplikative Ver-knupfung bestimmte Frequenzkomponenten unterdruckt bzw. selektiert werden(siehe Abb. 3.11). Die Filterfunktion ist im Frequenzbereich unmittelbar ersicht-lich, d.h. wir erkennen sofort, welche Frequenzkomponenten des Eingangssignalsdurch das Filter unterdruckt bzw. durchgelassen werden.

Einen ahnlichen Zusammenhang konnen wir auch fur periodische Eingangs-signale herleiten. Mit der Fourierreihendarstellung x[n] =

∑N−1l=0 cl e

j 2πN ln (siehe

Gl. 2.45) und der Faltungssumme Gl. 3.7 erhalten wir

y[n] =∞∑

k=−∞h[k]

N−1∑

l=0

cl ej 2π

N l(n−k)

︸ ︷︷ ︸

x[n−k]

=N−1∑

l=0

cl

∞∑

k=−∞h[k] e−j 2π

N lk

︸ ︷︷ ︸

dl

ej2πN ln

=

N−1∑

l=0

dl ej 2π

N ln, n = 0, 1, . . . , N − 1.

(3.52)

Page 61: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 51

0 π−πθ

0 π−πθ

0 π−πθ

−θ0 θ0

1

X(ejθ)

H(ejθ)

Y(ejθ)= H

(ejθ)X(ejθ)

θ0−θ0

Abbildung 3.11: Beispiel fur eine ideal frequenzselektive Bandpassfilterung

Die Antwort des stabilen, linearen und zeitinvarianten Systems auf ein periodi-sches Signal ist ebenfalls periodisch, mit der gleichen Periodendauer N und denFourierreihenkoeffizienten

dl = cl

∞∑

k=−∞h[k] e−j 2π

N lk

︸ ︷︷ ︸

H(ejθ)∣∣θ=2π

Nl

= H(ej

2πN l)cl, l = 0, 1, . . . , N − 1. (3.53)

Die Fourierreihenkoeffizienten des Ausgangssignals ergeben sich aus den Fourierrei-henkoeffizienten des Eingangssignals gewichtet mit den Werten der Ubertragungs-funktion an den harmonischen Frequenzen, oder anders formuliert: Das Linien-spektrum am Systemausgang ist gleich dem Linienspektrum am Systemeingangmultipliziert mit der Ubertragungsfunktion an den harmonischen Frequenzen.

Fur ein cosinusformiges Eingangssignal der Form x[n] = cos 2πN mn ergibt sich

Page 62: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

52 3 Zeitdiskrete Systeme

daher mit Gl. 2.49 und Gl. 3.40

y[n] =1

2H(ej

2πN m)ej

2πN mn +

1

2H(e−j 2π

N m)e−j 2π

N mn

=1

2A(2π

Nm)

ejφ(2πN m)ej

2πN mn +

1

2A(2π

Nm)

e−jφ( 2πN m)e−j 2π

N mn

= A(2π

Nm)

cos(2π

Nmn+ φ

(2π

Nm))

,

(3.54)

in Ubereinstimmung mit Gl. 3.41.

Beispiel 3.8

In diesem Beispiel untersuchen wir die Systemantwort auf einen δ-Puls.Wir zeigen, dass die Ubertragungsfunktion des Systems mit einem δ-Puls als Eingangssignal gemessen werden kann, ohne dass wir (wiebei sinusformigen Signalen) punktweise bei verschiedenen Frequenzenmessen mussen.Auf Seite 20 haben wir fur den δ-Puls x[n] =

∑∞k=−∞ δ[n + kN ] die

Fourierreihenkoeffizienten ck = 1N erhalten. Am Ausgang des Systems

mit der Ubertragungsfunktion H(ejθ)ergeben sich daher mit Gl. 3.53

die Fourierreihenkoeffizienten

dk = ck H(ej

2πN k)=

1

NH(ej

2πN k), k = 0, 1, . . . , N − 1. (3.55)

Die Ubertragungsfunktion H(ejθ)des Systems an diskreten Frequen-

zen θ = 2πN k kann daher direkt aus der Fourierreihendarstellung des

Ausgangssignals bestimmt werden. Die Frequenzauflosung ist dabeidurch die Grundfrequenz der Fourierreihe bzw. durch die Periodendau-er N des δ-Pulses gegeben. Die Fourierreihendarstellung von y[n] kannmit der schnellen Fouriertransformation FFT nummerisch effizient be-rechnet werden, wie z.B. mit dem folgenden MATLAB-Programm:

N = 50; % period length

Nx = 10*N; % input signal length

Nh = 100; % impulse response length

n = 0:Nx-1;

x = mod(n,N) == 0; % delta-pulse (1 at multiples of N,

% zero elsewhere)

h = 0.87.^[0:Nh-1]; % exponential impulse response

y = conv(h,double(x)); % output signal

H = fft(y(1:N)); % Fourier series coefficients

% (use 1st period of y[n])

Page 63: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 53

H1 = fft(y(N+1:2*N)); % repeat for 2nd period

max(abs(H)-abs(H1)) % why is there a small difference?

stem([0:N-1],abs(H1)); % plot transfer function magnitude

Der Vergleich mit dem Ergebnis von Beispiel 3.6 zeigt, dass wir an dendiskreten Frequenzen den gleichen Betragsverlauf der Ubertragungs-funktion wie in Abb. 3.9 erhalten.Bei der Messung der Ubertragungsfunktion ist zu beachten, dass beieiner MATLAB-Simulation des Systems keine unendlich langen pe-riodischen Signale verwendet werden konnen. Das periodische Signalwird in diesem Beispiel bei n = 0 eingeschaltet und nach 10 Periodenausgeschaltet. Es wird daher ein Ein- und ein Ausschwingvorgang desSystems zu beobachten sein.

Einschwingverhalten linearer, zeitinvarianter und zeitdiskreterSysteme

Beim Ein- bzw. Ausschalten von Signalen am Eingang dynamischer Systeme be-obachten wir Ein- bzw. Ausschwingvorgange am Systemausgang. Erst nach einerbestimmen Zeit, der Einschwingzeit, nimmt das System einen stationaren Zustandan. Will man Amplitudenmessungen (oder bei sinusformigen Signalen auch Pha-senmessungen) am Systemausgang vornehmen, dann muss die Einschwingzeit desSystems abgewartet werden, um Messfehler zu vermeiden. In diesem Abschnitt un-tersuchen wir das Einschwingverhalten mit Hilfe der Faltungsoperation und setzenvoraus, dass das System kausal und stabil ist.

Wir beginnen mit einer sprunghaften Systemanregung x[n] = σ[n], die mitder Faltungsoperation das Ausgangssignal

y[n] =

∞∑

k=0

h[k]σ[n− k] =

n∑

k=0

h[k]

=

∞∑

k=0

h[k]

︸ ︷︷ ︸

y∞[n]=konst.

−∞∑

k=n+1

h[k]

︸ ︷︷ ︸

yt[n]

(3.56)

erzeugt. Der erste Signalteil y∞[n] ist das Ausgangssignal im eingeschwungenenZustand, das bei einer Sprungfunktion am Systemeingang gegen den Gleichanteilstrebt. Die Amplitude des Gleichanteils ist durch die Summe der Impulsantwort-werte gegeben und kann auch Null sein. Der zweite Signalteil yt[n] ist der transiente

Page 64: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

54 3 Zeitdiskrete Systeme

Vorgang, der bei einem stabilen System fur n → ∞ gegen Null geht, da

|yt[n]| =∣∣∣∣∣

∞∑

k=n+1

h[k]

∣∣∣∣∣≤

∞∑

k=n+1

|h[k]| ≤∞∑

k=0

|h[k]| (3.57)

begrenzt ist.

Die Bestimmung der Einschwingzeit hangt vom Verhalten der Impulsantwortab. Bei FIR-Systemen, deren Impulsantworten eine endliche Dauer haben, ist dieEinschwingzeit gleich N − 1 (Impulsantwortdauer N). Bei FIR-Filtern geht dasSystem nach der Dauer N − 1 exakt in den eingeschwungenen Zustand uber.Bei IIR-Systemen mit einer Impulsantwort unendlich langer Dauer ist das nichtexakt erfullt. Bei diesen Systemen wird man daher die Einschwingzeit durch denZeitpunkt Nt definieren, ab dem |yt[n]| ≤ ε ist, wobei ε der absolute Fehler deseingeschwungenen Ausgangssignals ist. Den Zeitpunkt Nt erhalt man aus

∣∣∣∣∣

∞∑

k=Nt+1

h[k]

∣∣∣∣∣≤ ε, (3.58)

normalerweise durch nummerische Auswertung der Impulsantwort.

Vollig analog konnen wir das Systemverhalten fur eingeschaltete, sinus-formige Eingangssignale untersuchen. Diese Signale sind wichtige Testsignalezur Bestimmung des Frequenzgangs. Wir betrachten daher wie auf Seite 45 eineExponentialschwingung am Systemeingang, nur mit dem Unterschied, dass diesebei n = 0 eingeschaltet wird:

x[n] = ejθn σ[n]. (3.59)

Mit der Faltungsoperation ergibt sich dann

y[n] =∞∑

k=0

h[k] ejθ(n−k)σ[n− k] =n∑

k=0

h[k] ejθ(n−k)

= ejθn∞∑

k=0

h[k] e−jθk

︸ ︷︷ ︸

H(ejθ)

− ejθn∞∑

k=n+1

h[k] e−jθk

= H(ejθ)ejθn

︸ ︷︷ ︸

y∞[n]

− ejθn∞∑

k=n+1

h[k] e−jθk

︸ ︷︷ ︸

yt[n]

.

(3.60)

Der Signalteil y∞[n] ist wieder das Ausgangssignal im eingeschwungenen System-zustand und entspricht dem Ausgangssignal in Gl. 3.37. Der transiente Term hangt

Page 65: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 55

hier im Vergleich zu Gl. 3.56 auch von der Frequenz θ des Eingangssignals ab. Dasergibt einen interessanten Unterschied zwischen FIR- und IIR-Systemen:Bei FIR-Systemen ist die Einschwingzeit nur durch die Lange der Impulsantwortgegeben und unabhangig von der Frequenz des eingeschalteten sinusformigen Si-gnals. Die Einschwingzeit bei IIR-Systemen hangt im Allgemeinen auch von derFrequenz θ des Eingangssignals ab. Entsprechend Gl. 3.58 erhalten wir

∣∣∣∣∣

∞∑

k=Nt+1

h[k] e−jθk

∣∣∣∣∣≤ ε (3.61)

zur Bestimmung der Einschwingzeit Nt. Bei IIR-Filtern kann die Einschwing-zeit insbesondere fur eingeschaltete sinusformige Signale mit Frequenzen nahe derGrenzfrequenz zwischen Durchlass- und Sperrbereich stark ansteigen.

Beispiel 3.9

Wir zeigen das Einschwingverhalten des FIR-Filters von Beispiel 3.7.Dieses System hat eine rechteckformige Impulsantwort der Dauer Nund verandert nicht den Gleichanteil des Eingangssignals. Sinusformi-ge Signale mit Frequenzen, die ganzzahlige Vielfache von 2π

N sind, wer-den jedoch unterdruckt (siehe Abb. 3.10 auf Seite 49). Im folgendenMATLAB-Programm wird zuerst die Systemantwort fur x[n] = σ[n]bestimmt und danach das Ausgangssignal fur x[n] = sin 2π

N nσ[n].

N = 6;

h = 1/N*ones(1,N); % rectangular impulse response h[n]

Nx = 40;

x = ones(1,Nx); % x[n] = 1, n = [0,Nx-1]

y = conv(x,h);

Ny = Nx+N-1;

subplot(2,1,1), stem((0:Ny-1),y);

xlabel(’n’), ylabel(’y[n]’);

title(’x[n] = 1’);

x = sin(2*pi/N*(0:Nx-1)); % x[n] = sin(2pi/N n), n = [0,Nx-1]

y = conv(x,h);

subplot(2,1,2), stem((0:Ny-1),y);

xlabel(’n’), ylabel(’y[n]’);

title(’x[n] = sin(2pi/N n)’);

Da in beiden Fallen die Eingangssignale die Lange Nx haben, tretenEin- und Ausschwingvorgange durch die Anwendung der Faltungsope-ration y = conv(x,h) auf (siehe Abb. 3.12). Die Dauer dieser transi-

Page 66: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

56 3 Zeitdiskrete Systeme

enten Vorgange wird durch die Lange N der Impulsantwort des FIR-Filters bestimmt. Der eingeschwungene Zustand des Systems tritt furn ≥ N − 1 = 5 bis n = Nx − 1 = 39 in Erscheinung.

0 5 10 15 20 25 30 35 40 450

0.5

1

n

y[n

]

x[n] = 1

0 5 10 15 20 25 30 35 40 45−0.1

0

0.1

0.2

0.3

n

y[n

]

x[n] = sin(2pi/N n)

Abbildung 3.12: Ein- und Ausschwingverhalten des gleitenden Mittel-wertbilders mit einer Impulsantwort der Lange N = 6

Inverse Fouriertransformation

Mit der Fouriertransformation Gl. 3.49 erhalten wir fur ein aperiodisches, zeitdis-kretes Signal x[n] eine Frequenzbereichsdarstellung als Superposition von Expo-nentialschwingungen, ahnlich wie bei periodischen Signalen, nur mit dem Unter-schied, dass die Frequenzen der Exponentialschwingungen nicht diskrete Werte an-nehmen, sondern kontinuierlich sind. Wir erhalten jedoch auch die 2π-Periodizitatim Frequenzbereich. Die Fouriertransformation

X(ejθ)=

∞∑

n=−∞x[n]e−jθn = FT {x[n]} (3.62)

ist ja eine periodische Funktion in der Frequenzvariablen θ und Gl. 3.62 kannals Fourierreihendarstellung dieser kontinuierlichen, periodischen Funktion inter-pretiert werden, mit x[n] als Fourierreihenkoeffizienten. Damit erhalten wir die

Page 67: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

3.2 Beschreibung im Frequenzbereich 57

inverse Fouriertransformation, das ist die Darstellung von x[n] durch X(ejθ),

direkt als Formel fur die Koeffizienten einer Fourierreihe:

x[n] =1

ˆ π

−π

X(ejθ)ejθndθ = FT −1

{X(ejθ)}

. (3.63)

Das Integrationsintervall muss nicht das Grundintervall [−π, π] oder [0, 2π] sein,sondern kann sich uber eine beliebige Periode erstrecken. Im nachsten Kapitelwerden wir die Eigenschaften der Fouriertransformation fur zeitdiskrete Signaleausfuhrlich untersuchen und auf verschiedene wichtige Signale und Systeme an-wenden. Schon jetzt erkennen wir, dass mit der inversen Fouriertransformationauch eine alternative Systemrealisierung zur Faltungsoperation gegeben ist.

X(ejθ)

Y(ejθ)= X

(ejθ)H(ejθ)

FT ↓h[n]

FT ↓H(ejθ)

y[n] =∞∑

k=−∞

x[k]h[n− k]

FT −1 ↑x[n]

Abbildung 3.13: Beschreibung zeitdiskreter Systeme im Zeit- und im Frequenzbe-reich

Nach Abb. 3.13 konnen wir das Ausgangssignal eines linearen, zeitinvariantenSystems entweder im Zeitbereich durch Faltung des Eingangssignals mit der Impuls-antwort oder im Frequenzbereich durch Multiplikation der Fouriertransformationdes Eingangssignals mit der Ubertragungsfunktion und anschließender inverserFouriertransformation bestimmen. Der Weg uber den Frequenzbereich scheint aufden ersten Blick aufwendiger zu sein. Er benotigt außerdem die Auswertung einesIntegrals. Mit Hilfe der in Abschnitt 7 behandelten schnellen Fouriertransfor-mation (FFT) ist jedoch eine effiziente Implementierung von FIR-Filtern mitBlockverarbeitung moglich.

Page 68: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

58 3 Zeitdiskrete Systeme

Page 69: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4

Fouriertransformation furzeitdiskrete Signale undSysteme

Im vorigen Kapitel haben wir die Fouriertransformation fur zeitdiskrete Signaleeingefuhrt und damit zeitdiskrete Systeme im Frequenzbereich charakterisiert. Da-bei haben wir bereits gesehen, dass die Fouriertransformation eine machtige analy-tische Methode zur Untersuchung von Signalen und Systemen ist. Sie hat aber auchin Form der schnellen Fouriertransformation (FFT) eine enorme Bedeutung fur dieSimulation und Realisierung von digitalen Signalverarbeitungssystemen. ModerneSysteme der digitalen Audio- und Videoverarbeitung, sowie der Mobilkommunika-tion verwenden FFT-Methoden zur Implementierung von Signalverarbeitungsal-gorithmen. Die Beherrschung der Grundlagen der Fourieranalyse ermoglicht einenraschen Einblick in die Funktion komplexer Systeme, die man haufig durch Ver-wendung der bereits erwahnten schematisierten Systeme auch ohne nummerischeSimulationsmethoden untersuchen kann.

Aus historischen Grunden sei erwahnt, dass man fruher Telefonie- und Tele-graphieubertragungssysteme nach analytischen Methoden der Systemtheorie undohne nennenswerte Computersimulationen dimensioniert hat. Die heutigen kom-plexen Systeme konnen bestenfalls in einem ersten Schritt ohne Computerun-terstutzung entwickelt werden. Fur den endgultigen Entwurf und die Optimierungder Systeme ist der Einsatz von Rechnern unumganglich.

Page 70: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

60 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

In Kapitel 3 haben wir die Fouriertransformation und die inverse Fouriertrans-formation

X(ejθ)= FT {x[n]} =

∞∑

n=−∞x[n] e−jθn (4.1)

x[n] = FT −1{X(ejθ)}

=1

ˆ π

−π

X(ejθ)ejθndθ, (4.2)

fur aperiodische, zeitdiskrete und absolut summierbare Signale x[n] hergeleitet.Mit der Bedingung

∞∑

n=−∞|x[n]| < ∞ (4.3)

ist die Existenz der Fouriertransformation durch die gleichmaßige Konvergenzder Funktionenreihe in Gl. 4.1 sichergestellt. Bei Signalen endlicher Lange existiertdaher die Fouriertransformation immer, da wir im zeitdiskreten Fall nur Signalemit endlicher Amplitude betrachten. Die Fouriertransformation kann auch fur Si-gnale mit endlicher Energie (siehe Gl. 2.21 auf Seite 12)

∞∑

n=−∞|x[n]|2 < ∞ (4.4)

angegeben werden. Damit wird der Anwendungsbereich der Fouriertransformati-on auf eine großere Klasse von Signalen erweitert. Es ist allerdings zu beachten,dass fur X

(ejθ)die Konvergenz im quadratischen Mittel erfolgt, wenn die

Signale nur Gl. 4.4 und nicht auch Gl. 4.3 erfullen. Das bedeutet, dass bei derApproximation von X

(ejθ)durch eine endliche Reihe

X(m, ejθ

)=

m∑

n=−m

x[n] e−jθn (4.5)

beim Grenzubergang m → ∞ die Approximation X(m, ejθ

)nicht fur alle θ gegen

X(ejθ)strebt, sondern nur

limm→∞

ˆ π

−π

∣∣∣X(ejθ)− X

(m, ejθ

)∣∣∣

2

dθ = 0 (4.6)

erreicht werden kann. Nur bei absolut summierbaren Signalen streben die Partial-summen in Gl. 4.5 furm → ∞ gegen die Fouriertransformation. Die Abweichungenzeigen sich an Unstetigkeitsstellen von X

(ejθ), an denen das aus den Fourierreihen

bekannte Gibbssche Phanomen auftritt.

Im folgenden Beispiel untersuchen wir ein Signal, das eine endliche Energiebesitzt, das aber nicht absolut summierbar ist.

Page 71: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4 Fouriertransformation fur zeitdiskrete Signale und Systeme 61

Beispiel 4.1

Wir wollen das Signal x[n] berechnen, das als FouriertransformationX(ejθ)den rechteckformigen Verlauf eines idealisierten Tiefpassfilters

hat:

X(ejθ)=

{

1 0 ≤ |θ| ≤ θg

0 θg < |θ| ≤ π. (4.7)

(Die 2π-Periodizitat von X(ejθ)wird nicht extra angefuhrt.) Wir be-

zeichnen ein solches Signal auch als ein mit der Grenzfrequenz θg idealbandbegrenztes Signal. Es ist ein haufig verwendetes Modell fur band-begrenzte Signale. Mit der inversen Fouriertransformation Gl. 4.2 er-halten wir

x[n] =1

ˆ θg

−θg

ejθndθ =1

1

jn

(ejθgn − e−jθgn

)=

sin θgn

πn. (4.8)

Dieses Signal ist in Abb. 4.1 fur θg = π4 im Intervall n ∈ [−32, 32]

graphisch dargestellt. Da die Einhullende des Signals nur mit 1/n fur

x[n] = sin θgnπn

mit θg =π4

n

x[n]

3020100-10-20-30

0.3

0.2

0.1

0

-0.1

Abbildung 4.1: Zeitlicher Verlauf eines ideal tiefpassbandbegrenztenSignals

n → ∞ abnimmt, konvergiert die unendliche Reihe in Gl. 4.1 nicht furalle Werte von θg. Nur fur θg = π konvergiert die Reihe, denn dann istx[n] = δ[n]. Das Signal in Gl. 4.8 hat jedoch eine endliche Energie, dadie Einhullende von x2[n] proportional 1/n2 ist.Das Fehlen der absoluten Summierbarkeit ist bedingt durch die Unste-tigkeit des Verlaufs der gegebenen Fouriertransformation Gl. 4.7. DasGibbssche Phanomen bei der Approximation von Unstetigkeitsstellenin der Fouriertransformation hat weitreichende Folgen beim Entwurf

Page 72: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

62 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

von digitalen Filtern und bei der Spektralanalyse. Es kann am ein-fachsten durch eine MATLAB-Simulation veranschaulicht werden:

M = 100; n = -M:M; % vector of 2M+1 time points

tg = 1/2; % cutoff frequency theta_g/pi

x = tg*sinc(tg*n); % sinc(x) = sin(pi*x)/(pi*x)

Nft = 1024; % number of frequency points

X = fft(x,Nft);

f = linspace(0,1,Nft/2+1); % frequency axis theta/pi

plot(f,abs(X(1:Nft/2+1))), xlabel(’\theta/\pi’);

ylabel(’|X(e^{j\theta})|’), grid on;

Durch Variation von M in diesem MATLAB-Beispiel konnen wir fest-stellen, dass bei den Sprungstellen immer ein Uberschwingen von etwa9% auftritt, das mit großer werdendem M nicht abnimmt.

Fur die Frequenzbereichsanalyse von Signalen und Systemen ist es wichtig,die Fouriertransformation von komplexen Exponentialschwingungen zukennen, da mit Signalen der Form x[n] = ejθ0n z.B. eine Verschiebung im Fre-quenzbereich (Modulation) erreicht werden kann. Fur Exponentialschwingungenmit konstanter Amplitude konvergiert die unendliche Reihe in Gl. 4.1 sicher nicht.Wir konnen zwar die Fouriertransformation in der Form von Gl. 4.1 anschreiben,nur ist X

(ejθ)dann keine gewohnliche Funktion mehr. Eine solche spezielle (oder

verallgemeinerte) Funktion ist die Dirac-Funktion δ(x). Wir konnen daher ver-muten, dass die Fouriertransformation einer komplexen Exponentialschwingungaus Stossfunktionen bestehen wird, ahnlich wie ein periodisches Signal ein Lini-enspektrum hat. Da jedoch die zeitdiskrete, komplexe Exponentialschwingung imallgemeinen Fall nicht periodisch ist (siehe Seite 9), konnen wir den allgemeinenFall auch nicht als Fourierreihe darstellen. Die Fouriertransformation X

(ejθ)von

x[n] = ejθ0n mit beliebigem θ0 muss eine kontinuierliche Funktion in θ sein, dieim Frequenzintervall θ ∈ [−π, π] um die Frequenz θ0 ”

stark konzentriert“ ist, alsonur eine Frequenzkomponente bei θ0 hat. Wir erreichen das, indem wir bei θ0 eineStossfunktion ansetzen (siehe Abb. 4.2):

X(ejθ)= 2πδ(θ − θ0), −π ≤ θ ≤ π, −π ≤ θ0 ≤ π. (4.9)

In Gl. 4.9 bzw. in Abb. 4.2 ist die Fouriertransformation nur fur das Grundfre-quenzintervall [−π, π] angegeben. Die periodische Fortsetzung von X

(ejθ)mit der

Periode 2π werden wir nur dann berucksichtigen, wenn sie wirklich benotigt wird,wie z.B. spater bei der Abtastung analoger Signale, bei Systemen mit Modulatorenund bei der Mehrfachtaktverarbeitung.

Page 73: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4 Fouriertransformation fur zeitdiskrete Signale und Systeme 63

X(ejθ)

−π 0 θ0 πθ

Abbildung 4.2: Dirac-Funktion im Frequenzbereich [−π, π] als Fouriertransforma-tion von x[n] = ejθ0n (Der Faktor 2π gibt die Flache der Stossfunktion an.)

Mit dem Ansatz Gl. 4.9 fur die Fouriertransformation der komplexen Expo-nentialschwingung und der inversen Fouriertransformation Gl. 4.2 folgt

x[n] =1

ˆ π

−π

X(ejθ)ejθndθ =

ˆ π

−π

δ(θ − θ0) ejθndθ = ejθ0n. (4.10)

Dabei haben wir von der Siebeigenschaft der Deltafunktion Gebrauch ge-macht:

ˆ b

a

δ(x− x0)f(x)dx = f(x0), x0 ∈ [a, b] (4.11)

(f(x) definiert im Intervall [a, b]). Damit konnen wir der komplexen Exponential-schwingung tatsachlich eine Stossfunktion im Frequenzintervall [−π, π] zuordnenund die Anwendbarkeit der Fouriertransformation erheblich erweitern.

Beispiel 4.2

Wir berechnen die Fouriertransformation des cosinusformigen Signalsx[n] = cos θ0n. Mit x[n] = 1

2ejθ0n + 1

2e−jθ0n folgt direkt aus Gl. 4.9

X(ejθ)= πδ(θ − θ0) + πδ(θ + θ0), −π ≤ θ ≤ π, θ0 ≤ π. (4.12)

Das Spektrum von x[n] = cos θ0n ist in Abb. 4.3 dargestellt.

X(ejθ)

−π 0 θ0 πθ

π

−θ0

π

Abbildung 4.3: Fouriertransformation von x[n] = cos θ0n im Frequenz-intervall [−π, π]

Page 74: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

64 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Ein Sonderfall ist ein konstantes Signal (Gleichanteil) mit x[n] = 1, ∀n,das als Fouriertransformation X

(ejθ)= 2πδ(θ), θ ∈ [−π, π] hat.

Beispiel 4.3

In diesem Beispiel berechnen wir die Fouriertransformation der Sprung-funktion x[n] = σ[n] und zeigen, dass die Berechnung tuckisch seinkann. Nach Gl. 2.3 auf Seite 7 gilt fur die Sprungfunktion

x[n]− x[n− 1] = σ[n]− σ[n− 1] = δ[n]. (4.13)

Nun ist die Fouriertransformation des verzogerten Signals

FT {x[n− 1]} =

∞∑

n=−∞x[n− 1] e−jθn =

∞∑

n=−∞x[n] e−jθ(n+1)

= e−jθX(ejθ),

(4.14)

so dass wir mit Gl. 4.13 die folgende Beziehung erhalten:

X(ejθ)− e−jθX

(ejθ)= 1. (4.15)

Daraus konnten wir schließen, dass die Fouriertransformation von x[n]= σ[n] durch X

(ejθ)= 1

1−e−jθ gegeben ist. Das ist jedoch falsch, dadurch die Differenzbildung in Gl. 4.15 der Gleichanteil der Sprungfunk-tion verloren geht!Wir mussen daher die Sprungfunktion in ein gerades und in ein unge-rades Signal aufspalten (siehe Gl. 2.30 auf Seite 14):

2xg[n] = σ[n] + σ[−n] = 1 + δ[n] (4.16)

2xu[n] = σ[n]− σ[−n] =

−1 n ≤ −1

0 n = 0

1 n ≥ 1

. (4.17)

Da das ungerade Signal xu[n] keinen Gleichanteil hat, konnen wir wieoben die Differenz bilden und erhalten

2xu[n]− 2xu[n− 1]) = δ[n] + δ[n− 1] (4.18)

2Xu

(ejθ)− 2e−jθXu

(ejθ)= 1 + e−jθ. (4.19)

Page 75: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4 Fouriertransformation fur zeitdiskrete Signale und Systeme 65

(Den Zusammenhang im Zeitbereich (Gl. 4.18) erkennt man am ein-fachsten durch die graphische Darstellung von xu[n].) Fur die Fourier-transformation des geraden Signals ergibt sich aus Gl. 4.16

Xg

(ejθ)= πδ(θ) +

1

2. (4.20)

Die Kombination von Gl. 4.19 und Gl. 4.20 liefert die gesuchte Fourier-transformation der Sprungfunktion

X(ejθ)= Xg

(ejθ)+Xu

(ejθ)= FT {σ[n]} =

1

1− e−jθ+πδ(θ). (4.21)

Mit der Fouriertransformation der Exponentialschwingung konnen wir jetztdie Fouriertransformation fur periodische, zeitdiskrete Signale angeben.Dabei ist zu beachten, dass die Fouriertransformation 2π-periodisch in θ ist unddamit

ejθ0nFT⇐⇒ 2π

∞∑

l=−∞δ(θ − θ0 − 2πl), ∀θ (4.22)

fur die Exponentialschwingung zu verwenden ist. Mit θ0 = 2πN k und der Fourier-

reihe (siehe Gl. 2.43) folgt somit

X(ejθ)= FT

{N−1∑

k=0

ck ej 2π

N kn

}

=∞∑

l=−∞

N−1∑

k=0

2π ck δ

(

θ − 2π

Nk − 2πl

)

, ∀θ.

(4.23)Die Fourierreihenkoeffizienten ck sind periodisch mit N . Daher konnen wir auchck+lN statt ck in Gl. 4.23 verwenden und erhalten

X(ejθ)=

∞∑

l=−∞

N−1∑

k=0

2π ck+lN δ

(

θ − 2π

N(k + lN)

)

, ∀θ. (4.24)

Ersetzen wir jetzt k+ lN durch den Index m, dann konnen wir die Doppelsummedurch eine einzige Summe uber m ersetzen, da sowohl mit m als auch mit k +lN, k = 0, . . . , N−1, l = 0,±1,±2, . . . alle Indizes von −∞, . . . ,∞ erfasst werden.Damit ergibt sich aus Gl. 4.24

X(ejθ)=

∞∑

m=−∞2π cm δ

(

θ − 2π

Nm

)

, ∀θ. (4.25)

In der Fouriertransformation eines periodischen Signals treten Dirac-Funktionenan den harmonischen Frequenzen auf. Die Flachen der Stossfunktionen ergeben

Page 76: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

66 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

sich direkt aus den Fourierreihenkoeffizienten (2π ck). Das Linienspektrum derFourierreihendarstellung (ck uber dem Frequenzindex k dargestellt) entsprichtdaher einem Spektrum mit Dirac-Funktionen an den harmonischen Frequenzenθ = 2π

N k.

Beispiel 4.4

Auf Seite 20 haben wir die Fourierreihe eines δ-Pulses untersucht. Furdas periodische Signal x[n] =

∑∞k=−∞ δ[n+kN ] haben wir die Fourier-

reihenkoeffizienten ck = 1N , k = 0, 1, . . . , N − 1 in Gl. 2.47 hergeleitet.

Die Fouriertransformation des δ-Pulses ist daher

X(ejθ)=

N

∞∑

k=−∞δ

(

θ − 2π

Nk

)

, ∀θ. (4.26)

Der δ-Puls und dessen Fouriertransformation sind in Abb. 4.4 gra-phisch dargestellt, mit Einsimpulsen im Zeitbereich und mit Dirac-Funktionen im Frequenzbereich.

X(ejθ)

0 2πN

θ

0 N

1

n

2πN

x[n]

Abbildung 4.4: Fouriertransformation des zeitdiskreten δ-Pulses (Peri-odendauer N)

Page 77: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.1 Eigenschaften der Fouriertransformation fur zeitdiskrete Signale 67

4.1 Eigenschaften der Fouriertransformation fur

zeitdiskrete Signale

Im vorigen Abschnitt haben wir bereits einige Eigenschaften der Fouriertransfor-mation kennengelernt und verwendet. Ein Beispiel ist die Berechnung der Fourier-transformation der Sprungfunktion auf Seite 64, wo wir Linearitat, Zeitverschie-bung und Aufspaltung in den geraden und ungeraden Signalanteil angewendethaben. Der Vorteil ist eine Vereinfachung der Rechenschritte, wenn grundlegen-de Eigenschaften, wie zum Beispiel Symmetriebeziehungen, berucksichtigt werden.Wir zeigen daher im Folgenden die wichtigsten Zusammenhange der Fouriertrans-formation fur zeitdiskrete Signale und geben einige typische Beispiele fur derenAnwendungen an. In der Formelsammlung im Anhang A sind zum Vergleich auchdie Beziehungen fur zeitkontinuierliche Signale angegeben.

Linearitat

Die Fouriertransformation Gl. 4.1 und deren inverse Transformation Gl. 4.2 sindlineare Operationen. Es gilt das Superpositionsgesetz

a1x1[n] + a2x2[n]FT⇐⇒ a1X1

(ejθ)+ a2X2

(ejθ). (4.27)

Zeitverschiebung und Zeitinversion

In Gl. 4.14 haben wir schon die Auswirkung einer zeitlichen Verschiebung desSignals hergeleitet:

x[n−N0]FT⇐⇒ e−jθN0X

(ejθ), N0 ∈ Z. (4.28)

Die Zeitverschiebung bewirkt im Frequenzbereich eine Phasenanderung des Fourier-spektrums. Fur die Zeitinversion x[−n] ergibt sich

FT {x[−n]} =

∞∑

n=−∞x[−n] e−jθn =

∞∑

n=−∞x[n] ejθn = X

(e−jθ

)(4.29)

und damitx[−n]

FT⇐⇒ X(e−jθ

). (4.30)

Frequenzverschiebung (Amplitudenmodulation)

Dual zur Zeitverschiebung ist die Verschiebung des Spektrums:

FT −1{

X(ej(θ−θ0)

)}

=1

ˆ π

−π

X(ej(θ−θ0)

)ejθndθ = ejθ0nx[n]. (4.31)

Page 78: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

68 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Die Frequenzverschiebung entspricht im Zeitbereich der Multiplikation des Signalsmit einer komplexen Exponentialschwingung.

ejθ0nx[n]FT⇐⇒ X

(ej(θ−θ0)

). (4.32)

Beispiel 4.5

Wir stellen die Frequenzverschiebung fur ein dreieckformiges Signal-spektrumX

(ejθ)graphisch dar. Als Modulationssignal wird ein cosinus-

formiges Signal verwendet (siehe Abb. 4.5). Damit ergibt sich fur dasSpektrum des modulierten Signals:

Y(ejθ)= FT {x[n] cos θ0n} =

1

2X(ej(θ−θ0)

)+

1

2X(ej(θ+θ0)

). (4.33)

X(ejθ)

0 π−πθ

FT {cos θ0n}

0 π−π −θ0

ππ

θ0θ

Y(ejθ)

0 π−π −θ0 θ0θ

−θg θg

1

1

12

Abbildung 4.5: Frequenzverschiebung durch Modulation mit einem co-sinusformigen Signal im Frequenzintervall [−π, π]

Page 79: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.1 Eigenschaften der Fouriertransformation fur zeitdiskrete Signale 69

Durch den Modulationsvorgang wird das Spektrum X(ejθ)von der

ursprunglichen Position (Tiefpasslage) in die Bandpasslage verscho-ben. Das Modulationssignal cos θ0n wird als Trager mit der Tragerfre-quenz θ0 bezeichnet. Wir mussen beachten, dass die maximale Frequenzdes Spektrums in der Bandpasslage kleiner als π ist, d.h. θ0 + θg ≤π. Sonst machen sich die periodischen Fortsetzungen der Spektrenin Form von zusatzlichen Frequenzkomponenten, den so genanntenAliasing-Komponenten, im Intervall θ ∈ [−π, π] bemerkbar.Mit dem folgenden MATLAB-Beispiel konnen wir diesen Effekt de-monstrieren:

M = 100;

n = -M:M;

tg = 1/8;

x1 = tg*sinc(tg*n); % signal (rectangular low pass spect.)

x = x1 .*x1; % signal (triangular low pass spect.)

y = x .* cos(2*pi*0.25*n); % signal (triangular band pass spect.)

Nf = 512; % number of frequency points

Y = fftshift(fft(y,Nf)); % compute FT from -pi...pi

ya = x .* cos(2*pi*0.4*n); % modulation frequency increased

Ya = fftshift(fft(ya,Nf)); % spectrum shows aliasing

theta = linspace(-1,1,Nf); % frequency axis theta/pi

subplot(2,1,1), plot(theta,abs(Y)), grid on;

xlabel(’\theta/\pi’), ylabel(’|Y(e^{j\theta})|’);

title(’spectrum without aliasing’);

subplot(2,1,2), plot(theta,abs(Ya)), grid on;

xlabel(’\theta/\pi’), ylabel(’|Y_a(e^{j\theta})|’);

title(’spectrum with aliasing’);

Ein Sonderfall ist die Verschiebung des Spektrums durch Modulationdes Signals mit (−1)n = ejπn. Durch die Verschiebung mit der Modula-tionsfrequenz θ0 = π geht ein Tiefpassspektrum mit der Grenzfrequenzθg in ein Hochpassspektrum mit der Grenzfrequenz π − θg uber. Dasfolgende MATLAB-Programm zeigt diesen Zusammenhang.

M = 100;

n = -M:M;

tg = 1/4;

x = tg*sinc(tg*n); % signal (rectangular low pass spect.)

y = x;

y(2:2:end) = -y(2:2:end); % y[n] = (-1)^n x[n]

Nf = 512; theta = linspace(-1,1,Nf);

X = fftshift(fft(x,Nf));

Y = fftshift(fft(y,Nf));

subplot(2,1,1), plot(theta,abs(X)), grid on;

Page 80: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

70 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

xlabel(’\theta/\pi’), ylabel(’|X_{lp}(e^{j\theta})|’);

title(’low pass spectrum’);

subplot(2,1,2), plot(theta,abs(Y)), grid on;

xlabel(’\theta/\pi’), ylabel(’|X_{hp}(e^{j\theta})|’);

title(’high pass spectrum’);

Symmetrie der Fouriertransformation bei reellwertigen Signalen

Bei den Fourierreihen auf Seite 23 wurde die Symmetriebeziehung ck = c∗N−k derReihenkoeffizienten ck hergeleitet. Eine entsprechende Symmetrie konnen wir mitHilfe der inversen Fouriertransformation Gl. 4.2 zeigen:

x[n] =1

ˆ π

−π

X(ejθ)ejθndθ =

1

ˆ π

0

X(ejθ)ejθndθ +

1

ˆ 0

−π

X(ejθ)ejθndθ

=1

ˆ π

0

(X(ejθ)ejθn +X

(e−jθ

)e−jθn

)

︸ ︷︷ ︸

muss reell sein

(4.34)

Damit der Integrand reellwertig ist, muss folgende Symmetrie fur die Fouriertrans-formation erfullt sein:

x[n] reellwertigFT⇐⇒ X

(e−jθ

)= X∗(ejθ

). (4.35)

Diese Symmetrie hat folgende Konsequenzen fur reellwertige Signale:

• Realteil und Betrag der Fouriertransformation sind gerade Funktionen,

• Imaginarteil und Phase der Fouriertransformation sind ungerade Funktionen,

• es genugt die Bestimmung der Fouriertransformation fur θ ∈ [0, π].

Differenzieren im Frequenzbereich

Durch Differenzieren im Frequenzbereich erhalten wir

dX(ejθ)

dθ=

∞∑

n=−∞x[n]

de−jθn

dθ= −j

∞∑

n=−∞nx[n] e−jθn (4.36)

bzw.

nx[n]FT⇐⇒ j

dX(ejθ)

dθ. (4.37)

Page 81: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.1 Eigenschaften der Fouriertransformation fur zeitdiskrete Signale 71

Beispiel 4.6

Wir berechnen das Zeitsignal, das zu einem dreieckformigen Tiefpass-spektrum gehort. Das gegebene Spektrum und dessen differenziertes

0 π−πθ

π−πθ

1

0

−θg θg

1θg

− 1θg

−θg

θg

dX(ejθ)

X(ejθ)

Abbildung 4.6: Dreieckspektrum und differenziertes Spektrum

Spektrum sind in Abb. 4.6 dargestellt. Das differenzierte Spektrumbesteht aus zwei rechteckformigen Spektren mit der Grenzfrequenz

θg2 ,

die umθg2 nach links und rechts verschoben sind. Das zugehorende

Zeitsignal besteht damit aus zwei modulierten Tiefpasssignalen:

dX(ejθ)

FT⇐⇒ −jnx[n]

−jnx[n] =1

θg

sinθg2 n

πne−j

θg2 n − 1

θg

sinθg2 n

πnej

θg2 n

=−2j

θg

sinθg2 n

πnsin

θg2n

x[n] =2π

θg

(

sinθg2 n

πn

)2

.

(4.38)

Fur das Tiefpasssignal haben wir jenes von Gl. 4.8 verwendet, das derImpulsantwort eines idealisierten Tiefpassfilters entspricht.

Page 82: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

72 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Faltungseigenschaft der Fouriertransformation

Auf Seite 50 haben wir in Gl. 3.51 den Zusammenhang zwischen der Faltungsope-ration im Zeitbereich und der Fouriertransformation hergeleitet:

∞∑

k=−∞x1[k]x2[n− k]

FT⇐⇒ X1

(ejθ)X2

(ejθ). (4.39)

Der Faltungsoperation im Zeitbereich entspricht die Multiplikation der Spektren.Umgekehrt konnen wir zeigen, dass bei der Multiplikation von Signalen die Fal-tungsoperation im Frequenzbereich auftritt:

Y(ejθ)=

∞∑

n=−∞x1[n]x2[n] e

−jθn =

∞∑

n=−∞

1

ˆ π

−π

X1

(ejη)ejηndη

︸ ︷︷ ︸

x1[n]

x2[n] e−jθn

=1

ˆ π

−π

X1

(ejη)

∞∑

n=−∞x2[n] e

−j(θ−η)n

︸ ︷︷ ︸

X2

(ej(θ−η)

)

x1[n]x2[n]FT⇐⇒ 1

ˆ π

−π

X1

(ejη)X2

(ej(θ−η)

)dη.

(4.40)

In ahnlicher Weise erhalten wir auch

x1[n]x∗2[n]

FT⇐⇒ 1

ˆ π

−π

X1

(ejη)X∗

2

(e−j(θ−η)

)dη. (4.41)

Einen Spezialfall dieser Beziehung haben wir bei der Amplitudenmodulationvon Signalen kennengelernt, bei der ein Signal der cosinusformige Trager ist (sieheBeispiel 4.5). Das Spektrum Y

(ejθ)des modulierten Signals in Abb. 4.5 entsteht

nach Gl. 4.40 durch eine Faltungsoperation mit Dirac-Funktionen.

Parsevalsche Beziehung

Aus der Faltungseigenschaft Gl. 4.41 ergibt sich fur θ = 0

∞∑

n=−∞x1[n]x

∗2[n] =

1

ˆ π

−π

X1

(ejη)X∗

2

(ejη)dη. (4.42)

Damit erhalten wir fur die Signalenergie die Parsevalsche Beziehung1

1In der mathematischen Literatur uber die Fouriertransformation wird diese Beziehung alsSatz von Plancherel bezeichnet.

Page 83: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.1 Eigenschaften der Fouriertransformation fur zeitdiskrete Signale 73

Ex =

∞∑

n=−∞|x[n]|2 =

1

ˆ π

−π

∣∣X(ejθ)∣∣2dθ, (4.43)

wobei wir die Frequenzvariable η durch θ ersetzt haben.

Beispiel 4.7

Mit der Parsevalschen Beziehung konnen wir sehr einfach zeigen, dassdie Impulsantwort des idealisierten Tiefpassfilters von Beispiel 4.1 eineendliche Energie besitzt. Mit

h[n] =sin θgn

πn

FT⇐⇒ H(ejθ)=

{

1 0 ≤ |θ| ≤ θg

0 θg < |θ| ≤ π(4.44)

und Gl. 4.43 ist die Energie der Impulsantwort

Eh =

∞∑

n=−∞h2[n] =

∞∑

n=−∞

(sin θgn

πn

)2

=1

ˆ θg

−θg

dθ =θgπ. (4.45)

Poissonsche Summenformel

Die Poissonsche Summenformel bezieht sich auf eine Eigenschaft der Fourier-transformation fur zeitkontinuierliche Signale. Wir geben sie hier an, da sieden Zusammenhang zwischen der Fouriertransformation abgetasteter zeitkontinu-ierlicher Signale und jener von zeitdiskreten Signalen herstellt. Wir werden denAbtastvorgang im nachsten Abschnitt naher untersuchen.

Die Poissonsche Summenformel ist eine Identitat zwischen Summen mit demzeitkontinuierlichen Signal x(t) und dessen Fouriertransformation X(jω):

∞∑

n=−∞x(t+ nT ) =

1

T

∞∑

n=−∞X(jω0n) e

jω0nt, mit ω0 =2π

T. (4.46)

Dieser Zusammenhang ist bemerkenswert. Die rechte Summe sieht auf den erstenBlick aus wie die Fourierreihendarstellung des Signals auf der linken Seite. DieseInterpretation ware richtig, wenn das Signal x(t) auf das Intervall t ∈ [−T

2 ,T2 ]

zeitbegrenzt ist und damit außerhalb Null ist. Dann gibt die linke Summe ein-fach die periodische Fortsetzung dieses zeitbegrenzten Signals an und die rechte

Page 84: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

74 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Summe ist die Fourierreihendarstellung des periodisierten Signals mit den Rei-

henkoeffizienten ck = X(jω0n)T und der Grundfrequenz ω0 = 2π

T . Die PoissonscheSummenformel besagt nun, dass dieser Zusammenhang auch dann gilt, wenn x(t)nicht auf [−T

2 ,T2 ] zeitbegrenzt ist. Es kommt daher zu einer Uberlappung der

periodischen Fortsetzungen.

Fur die Herleitung der Poissonschen Summenformel stellen wir die linke Summein Gl. 4.46 als zeitkontinuierliche Faltungsoperation des Signals x(t) mit einemKamm aus Diracschen δ-Funktionen dar:

xp(t) =∞∑

n=−∞x(t+ nT ) =

ˆ ∞

−∞x(τ )p(t− τ ) dτ, mit p(t) =

∞∑

n=−∞δ(t− nT ).

(4.47)Die Fouriertransformation von xp(t) erhalten wir mit den Beziehungen des An-hangs A.2 (Eigenschaften der Fouriertransformation fur zeitkontinuierliche Signa-le) zu

Xp(jω) = X(jω)P (jω) = X(jω)2π

T

∞∑

n=−∞δ(ω − ω0n)

=2π

T

∞∑

n=−∞X(jω0n) δ(ω − ω0n).

(4.48)

Wenn wir auf diese Gleichung die inverse Fouriertransformation anwenden, dannerhalten wir mit 2πδ(ω − ω0n) ↔ ejω0nt die Poissonsche Summenformel Gl. 4.46.

Ein Sonderfall der Poissonschen Summenformel ergibt sich fur t = 0 in Gl. 4.46:

∞∑

n=−∞x(nT ) =

1

T

∞∑

n=−∞X(jω0n), mit ω0 =

T. (4.49)

Diese Beziehung ist der Ausgangspunkt fur die Behandlung der Abtastung zeit-kontinuierlicher Signale im nachsten Abschnitt.

4.2 Abtastung und Rekonstruktion zeitkontinuier-licher Signale

Bei der bisherigen Betrachtung zeitdiskreter Signale haben wir die Signale ohneBeziehung zu analogen (zeitkontinuierlichen) Signalen behandelt. Wie in der Ein-leitung erwahnt, bietet die digitale Signalverarbeitung in vielen Bereichen eindeu-tig bessere Verarbeitungsmoglichkeiten als die Analogtechnik. Das setzt jedochvoraus, dass analoge Signale in digitale (zeit- und amplitudendiskrete) Signaleumgesetzt werden. Umgekehrt mussen analoge Signale aus den digitalen Signalen

Page 85: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale 75

erzeugt werden. Die dabei entstehenden Fehler sollten vernachlassigbar sein, da-mit die digitale Signalverarbeitung ihre Vorzuge ausspielen kann. Bei den heutigenAnalog/Digitalwandlern bzw. Digital/Analogwandlern spielen Fehler bei der Am-plitudenquantisierung nur noch eine unbedeutende Rolle. Wir konnen uns daherauf den Vorgang der zeitlichen Abtastung und auf die Rekonstruktion konzentrie-ren. Die idealisierte Abtastung und Rekonstruktion analoger Signale ist in Abb. 4.7dargestellt.

T

xa(t)

Xa(jω)

xa(t)

Xa(jω)

x[n] = xa(nT )

X(ejθ)

Abbildung 4.7: Umwandlung eines zeitkontinuierlichen Signals in Abtastwerte (lin-kes System) und Ruckwandlung (Rekonstruktion) des zeitdiskreten Signals in einzeitkontinuierliches Signal (rechtes System)

Die Abtastung in Abb. 4.7 ist idealisiert, da bei realen Abtastsystemen aucheine Filteroperation vorhanden ist, die das analoge Eingangssignal entsprechendder zeitkontinuierlichen Faltung xa(t) =

´∞−∞ xa(τ )h(t− τ ) dτ modifiziert (Filter-

impulsantwort h(t)). Damit erhalten wir fur die Abtastwerte

x[n] = xa(nT ) =

ˆ ∞

−∞xa(τ )h(nT − τ ) dτ . (4.50)

Die idealisierte Abtastung ergibt sich aus Gl. 4.50 fur h(t) = δ(t).

4.2.1 Abtastung von Tiefpasssignalen

Bei der idealisierten Abtastung des zeitkontinuierlichen Signals xa(t) werden zuaquidistanten Zeitpunkten im Abstand T Signalwerte entnommen. Die Folge dieserAbtastwerte xa(nT ) bildet das zeitdiskrete Signal x[n]. Die Wahl des Abtastinter-valls T bzw. der Abtastfrequenz fs = 1

T hat eine entscheidende Bedeutung furdie Rekonstruktion des zeitkontinuierlichen Signals aus den Abtastwerten. Da beiEchtzeitbetrieb die Anforderung an die Verarbeitungsgeschwindigkeit der Hardwa-re bzw. im Offline-Betrieb der Umfang des gespeicherten Signals proportional zurAbtastfrequenz steigt, sollte fs so niedrig wie moglich sein. Ist sie jedoch zu nied-rig, dann ist keine eindeutige Rekonstruktion des Signals moglich. Diesen Effektuntersuchen wir am besten im Frequenzbereich.

Wir erhalten den Zusammenhang zwischen dem Spektrum Xa(jω) des zeitkon-tinuierlichen Signals und dem Spektrum X

(ejθ)des zeitdiskreten Signals x[n] =

xa(nT ) mit Hilfe der Poissonschen Summenformel Gl. 4.49. Dazu setzen wir x(t) =

Page 86: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

76 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

xa(t)e−jωt fur x(t) in Gl. 4.49 ein und erhalten mit X(jω) = Xa(j(ω + ω))

∞∑

n=−∞xa(nT )e

−jωnT =1

T

∞∑

n=−∞Xa(jω0n+ jω). (4.51)

Es ist zweckmaßig, fur die folgenden Beziehungen die Notation in Gl. 4.51 zuandern, und zwar ω statt ω bzw. ωs = 2πfs statt ω0. Die linke Summe in Gl. 4.51ist mit θ = ωT und x[n] = xa(nT ) die Fouriertransformation des zeitdiskretenSignals:

X(ejθ)=

∞∑

n=−∞x[n]e−jθn =

1

T

∞∑

k=−∞Xa

(

T+ j

Tk

)

. (4.52)

Das Spektrum des zeitdiskreten Signals ergibt sich direkt als periodische Fortset-zung des Analogsignalspektrums. Der Zusammenhang zwischen der Frequenz θ furzeitdiskrete Signale und jener fur zeitkontinuierliche Signale ist

θ = ωT = 2πf

fs. (4.53)

Die Frequenz θ = 2π entspricht daher der Abtastfrequenz fs, mit der einerseitsdas analoge Signal abgetastet wird und andererseits die periodische Fortsetzungim Frequenzbereich des zeitdiskreten Signals erfolgt.

Diese Zusammenhange sind in Abb. 4.8 anschaulich dargestellt. Dazu ver-wenden wir ein bandbegrenztes, reellwertiges Analogsignal mit einem drei-eckformigen Spektrum (Abb. 4.8 oben). Wird die Abtastfrequenz fs großer als die

ωs−ωs 0−ωg ωg

−2π −π 0 π 2π

X(ejθ)

Xa(jω)

ω

θ

−ωs

2ωs

2

Abbildung 4.8: Spektrum des zeitkontinuierlichen Signals (oben) und des zeitdis-kreten Signals (unten) bei Abtastung mit fs > 2fg (ausreichende Abtastung)

Page 87: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale 77

doppelte Grenzfrequenz fg gewahlt, dann erhalten wir das Spektrum des zeitdis-kreten Signals einfach als periodische Fortsetzung des dreieckformigen Verlaufs.Wir werden sehen, dass in diesem Fall das analoge Signal aus dem abgetastetenSignal unverandert rekonstruiert werden kann. Das ist nicht der Fall, wenn wir dieAbtastfrequenz zu niedrig wahlen (fs < 2fg). Nach Abb. 4.9 kommt es dann zu

ωs−ωs 0

−2π −π 0 π 2π

X(ejθ)

Xa(jω)

ω

θ

−ωs

2ωs

2

ωg−ωg

Abbildung 4.9: Spektrum des zeitkontinuierlichen Signals (oben) und des zeitdis-kreten Signals (unten) bei Abtastung mit fs < 2fg (nicht ausreichende Abtastung)

einer Uberlappung der periodisch fortgesetzten Spektren des Analogsignals. DieserEffekt wird Aliasing im Frequenzbereich genannt. Es treten Verzerrungen deszeitdiskreten Signals in Form zusatzlicher Spektralanteile auf. Die Bedingungfur die richtige Wahl der Abtastfrequenz

fs > 2fg (4.54)

setzt daher voraus, dass das zeitkontinuierliche Signal bandbegrenzt ist:

Xa(jω) = 0, fur |ω| > ωg. (4.55)

Ist das Signal nicht bandbegrenzt, dann muss ein Tiefpassfilter vor der Ana-log/Digitalumsetzung eingesetzt werden. Eine exakte Bandbegrenzung ist bei rea-len Signalen nicht moglich, so dass bei der Abtastung immer ein Aliasing-Anteilim Spektrum des zeitdiskreten Signals vorhanden sein wird. Durch ein geeignetesDesign eines Tiefpassfilters zur Bandbegrenzung kann Aliasing vernachlassigbarklein gemacht werden, wie beispielsweise bei Audiosignalen, bei denen mit mo-dernen Audiocodecs die Aliasing-Komponenten unterhalb der Horschwelle liegen.Das Aliasing-Phanomen konnen wir mit dem MATLAB-Programm aliasing.m

aus der Programmsammlung zu diesem Buch demonstrieren.

Page 88: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

78 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Bei der Rekonstruktion zeitkontinuierlicher Signale aus den Abtast-werten mussen die periodischen Fortsetzungen im Spektrum des zeitdiskretenSignals unterdruckt werden. Dazu wird ein Tiefpassfilter benotigt, das nur dasBasisband |ω| ≤ ωg durchlasst.

Um herauszufinden, wie die Rekonstruktion im Idealfall durchgefuhrt werdenkann, gehen wird von einem ideal-bandbegrenzten Signal xa(t) mit dem SpektrumXa(jω) aus. Mit der inversen Fouriertransformation erhalten wir

xa(t) =1

ˆ ωg

−ωg

Xa(jω) ejωtdω

x[n] = xa(nT ) =1

ˆ ωg

−ωg

Xa(jω) ejωnTdω.

(4.56)

Nach Gl. 4.56 konnen wir x[n] als die Fourierreihenkoeffizienten von Xa(jω) auf-fassen, wenn Xa(jω) mit der Periode ωs = 2ωg periodisch fortgesetzt wird. Damitlasst sich dieses Spektrum als Fourierreihe anschreiben:

Xa(jω) =π

ωg

∞∑

n=−∞x[n]e

−jnπ ωωg , −ωg < ω < ωg, (4.57)

wobei wir T = 2πωs

= πωg

in Gl. 4.56 eingesetzt haben. Da Xa(jω) bandbegrenzt ist,

konnen wir das Spektrum, ohne es zu verandern, mit der Ubertragungsfunktion

Ha(jω) =

{

1 |ω| < ωg

0 sonst(4.58)

eines idealisierten Tiefpassfilters multiplizieren:

Xa(jω) = Ha(jω)π

ωg

∞∑

n=−∞x[n]e

−jnπ ωωg , −ωg < ω < ωg. (4.59)

Mit dem Zusammenhang (siehe Formelsammlung im Anhang A)

Ha(jω)e−jnπ ω

ωgFT⇐⇒ ωg

π

sin(ωgt− nπ)

ωgt− nπ(4.60)

erhalten wir aus Gl. 4.59 die fundamentale Beziehung

xa(t) =

∞∑

n=−∞x[n]

sin(ωgt− nπ)

ωgt− nπ=

∞∑

n=−∞x[n]

sin(ωg(t− nT )

)

ωg(t− nT )(4.61)

zur Rekonstruktion des bandbegrenzten analogen Signals xa(t) aus dessen Ab-tastwerten x[n]. Gleichung 4.54 und Gl. 4.61 bilden zusammen das Abtasttheo-rem nach C. Shannon, das besagt, dass jedes bandbegrenzte analoge Signal oh-ne Informationsverlust aus seinen Abtastwerten rekonstruiert werden kann, wenn

Page 89: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale 79

Gl. 4.54 erfullt ist.2 Es stellt die Grundlage fur die digitale Verarbeitung vonanalogen Signalen dar. Wegen des idealisierten Tiefpassfilters ist wie beim Ab-tastvorgang auch die Rekonstruktion nicht exakt mit realen Systemen moglich.Die Annaherung an die ideale Beziehung Gl. 4.61 ist jedoch heutzutage innerhalberreichbarer Messgenauigkeiten ohne großen Aufwand zu erzielen.

Gleichung 4.61 konnen wir auch als Interpolationsformel mit sinx/x-formigenFunktionen und aquidistanten Stutzstellen t = nT interpretieren. Die sin x/x-In-terpolationsfunktionen haben den Vorteil, dass bei bandbegrenzten Signalen dieInterpolation exakt ist. Verwenden wir andere Interpolationsfunktionen, dann er-geben sich Fehler, die wir im folgenden Beispiel untersuchen.

Beispiel 4.8

Die Rekonstruktion von zeitkontinuierlichen Signalen aus Abtastwer-ten mit allgemeinen Interpolationsfunktionen g(t) ist entsprechend zuGl. 4.61 durch

xa(t) =∞∑

n=−∞x[n] g(t− nT ) (4.62)

gegeben. Die einfachste Interpolationsfunktion zur Umwandlung eineszeitdiskreten Signals in ein zeitkontinuierliches Signal ist die Rechteck-funktion (Sample-Hold Funktion)

g(t) =

{

1 0 < t < T

0 sonst, (4.63)

die ein stufenformiges Signal erzeugt (siehe Abb. 4.10). Jeder konven-tionelle Digital/Analogwandler (DAC) erzeugt ein stufenformiges Si-gnal aus digitalen Eingangswerten.

Die Fouriertransformation der Sample-Hold Funktion ist

G(jω) =

ˆ ∞

−∞g(t)e−jωtdω =

ˆ T

0

e−jωtdω = Tsin ωT

2ωT2

e−jω T2 . (4.64)

Diese Filterubertragungsfunktion ist weit vom Verhalten eines ideali-sierten Tiefpasses entfernt, so dass ein starker Einfluss im Spektral-bereich auftritt. Wir erhalten mit Gl. 4.62 das Spektrum Xa(jω) des

2Der Ursprung dieses klassischen Abtasttheorems geht neben C. Shannon u.a. auch zuruckauf E.T. Whittaker, V.A. Kotel´nikov und H. Nyquist (M. Unser,

”Sampling - 50 years after

Shannon,“ Proc. IEEE, vol. 88, pp. 569-587, April 2000).

Page 90: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

80 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

g(t)

xa(t)

T

T0

0 1n

t

t

x[n]

Abbildung 4.10: Rekonstruktion mit rechteckformiger Interpolation beiVerwendung eines realen Digital/Analogwandlers

rekonstruierten Signals xa(t):

Xa(jω) =∞∑

n=−∞x[n]G(jω)e−jωTn = G(jω)

∞∑

n=−∞x[n] e−jωTn

︸ ︷︷ ︸

X(ejθ)∣∣∣θ=ωT

= Tsin ωT

2ωT2

e−jω T2 X

(ejωT

).

(4.65)

Die Sample-Hold Funktion bewirkt daher eine sin x/x-formige Verzer-rung des Spektrums X

(ejθ)des zeitdiskreten Signals. Zusatzlich treten

durch die nichtideale Sperrdampfung bei der Rekonstruktion spektra-le Komponenten in Bereichen um Vielfache der Abtastfrequenz auf.Daher wird bei einem realen Digital/Analogwandler ein analoges Tief-passfilter benotigt, das diese spektralen Komponenten unterdruckt unddas eine sinx/x-Entzerrung im Durchlassbereich gewahrleistet.Mit dem folgenden MATLAB-Beispiel konnen die Effekte an Hand ei-nes rechteckformigen Spektrums anschaulich vorgefuhrt werden.

M = 100;

n = -M:M;

Nx = 2*M+1;

tg = 3/4; % cut-off frequency

Page 91: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale 81

x = tg*sinc(tg*n); % signal with rectangular

% low pass spectrum

T = 6;

g = ones(1,T); % interpolation function

Ny = Nx*T;

y = zeros(1,Ny);

for n = 1:Nx

y((n-1)*T+1:n*T) = x(n)*g; % stair case signal

end

Y = fft(y); % spectrum of interpolated signal

f = linspace(0,T,Ny/2+1); % frequency axis

plot(f,abs(Y(1:Ny/2+1)));

xlabel(’\theta/\pi’), ylabel(’|Y(e^{j\theta})|’), grid on;

title(’spectrum of stair case interpolation’);

Bei dieser Simulation mit MATLAB mussen wir beachten, dass dieInterpolation auch zeitdiskret ist und damit kein echtes zeitkontinuier-liches Signal xa(t) erzeugt werden kann. Die sin x/x-Entzerrung konnenwir mit folgender Erganzung zu dem oben angefuhrten MATLAB-Beispiel simulieren:

th = [0:M]/Nx;

Hc = 1./sinc(th).*exp(j*pi*th); % sin x/x compensation function

Yc = Hc .* Y(1:M+1);

plot(2*th,abs(Y(1:M+1)),2*th,abs(Yc));

xlabel(’\theta/\pi’);

ylabel(’|Y(e^{j\theta})|, |Y_c(e^{j\theta})|’), grid on;

title(’sin x/x compensation’);

4.2.2 Abtastung von Bandpasssignalen

Bei der aquidistanten Abtastung analoger Signale haben wir Signale vorausge-setzt, die tiefpassbandbegrenzt sind. Bei diesen Signalen ist das Spektrum nur imFrequenzbereich von f = 0 bis |f | < fg von Null verschieden. Fur reellwertigeTiefpasssignale ist bei einer Abtastfrequenz fs ≥ 2fg eine exakte Rekonstruktionaus den Abtastwerten mit einem idealen Tiefpassfilter moglich. Analoge Band-passsignale haben eine untere Grenzfrequenz fl > 0 und eine obere Grenzfrequenzfu (siehe Abb. 4.11). Bei der Abtastung dieser Signale mit fs ≥ 2fu entstehen da-mit nach Gl. 4.52 Lucken zwischen den periodischen Fortsetzungen im Spektrumdes zeitdiskreten Signals, in denen das Spektrum Null ist. In diesem Abschnittzeigen wir, dass bei Bandpasssignalen wesentlich geringere Abtastfrequenzen als

Page 92: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

82 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Xa(j2πf)

0−fl−fu fl fu

f

Abbildung 4.11: Spektrum eines analogen Bandpasssignals mit unterer Grenzfre-quenz fl und oberer Grenzfrequenz fu (schematisierte Darstellung)

fs = 2fu moglich sind. Das Prinzip dazu besteht darin, die Abtastfrequenz so zuwahlen, dass die periodischen Fortsetzungen im Spektrum des zeitdiskreten Signalsin spektrale Lucken fallen. Damit wird Aliasing im gewunschten Frequenzbereichvermieden und das Bandpasssignal kann mit einem idealen Bandpassfilter exaktrekonstruiert werden.

Wir zeigen die Abtastung von Bandpasssignalen zunachst fur den Spezial-fall, dass die untere Grenzfrequenz fl ein ganzzahliges Vielfaches der BandbreiteB = fu − fl ist. Fur diesen Fall ergibt sich namlich die minimal mogliche Ab-tastfrequenz fs = 2B. Die Entstehung des Spektrums des zeitdiskreten Band-passsignals aus dem Spektrum des abgetasteten analogen Bandpasssignals ent-sprechend der Beziehung Gl. 4.52 ist in Abb. 4.12 gezeigt. Wir erkennen, dassdie Verschiebungen des Analogsignalspektrums exakt in die Bandlucken fallen, sodass das Spektrum des zeitdiskreten Bandpasssignals nicht durch Aliasing ver-formt wird. Mit einem Bandpassfilter kann aus dem zeitdiskreten Bandpasssignaldas ursprungliche Analogsignal wieder rekonstruiert werden. Die Bedingung, dasswir nur die doppelte Bandbreite als Abtastfrequenz benotigen ist fl = B (oder einganzzahliger Vielfaches von B). Das Bandpassspektrum muss sich daher in einenFrequenzraster der Breite B einfugen.

Mit Abb. 4.12 konnen wir auch den allgemeinen Fall fur beliebiges fl undfu herleiten. Wenn wir die Verschiebungen fur k = 1 und k = 2 in Abb. 4.12betrachten, dann muss fur k = 1 einerseits die Bedingung kfs ≤ 2fl erfullt sein,damit sich der linke Teil des Spektrums Xa(j2πf) nicht mit dem rechten Teil beider Verschiebung uberlappt. Andererseits erkennen wir an Hand der Verschiebungfur k = 2, dass (k + 1)fs ≥ 2fu sein muss, um eine Uberlappung zu vermeiden.Die Kombination dieser beiden Bedingungen ergibt

2fuk + 1

≤ fs ≤2flk

. (4.66)

Das Intervall der erlaubten Abtastfrequenzen hangt neben den beiden Grenzfre-quenzen auch von k ab. Mit k werden die Verschiebungen nummeriert, wobei k = 0dem Abtasttheorem fs ≥ 2fu fur Tiefpasssignale entspricht, d.h. wir wahlen ein-fach die doppelte obere Grenzfrequenz als Abtastfrequenz. Den Maximalwert von

Page 93: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale 83

k erhalten wir durch die maximal mogliche Verschiebung (minus 1, da k von Nullweg gezahlt wird), die zum Auffullen aller Lucken im Spektrum notwendig ist. Be-trachten wir wieder den Fall in Abb. 4.12, dann konnen wir auf den Maximalwertkmax = ⌊ fu

B ⌋ − 1 (mit B = fu − fl) schließen. Damit erhalten wir das folgendeAbtasttheorem fur (reellwertige) Bandpasssignale:

2fuk + 1

≤ fs ≤2flk

, k = 0, . . . ,

⌊fu

fu − fl

− 1. (4.67)

0−fl−fu fl fu

0

0

0

f

f

f

B = fu − fl

kfs

kfs

kfs

f

k = 2

k = 1

k = −1

k = 0

Xa(j2πf − j2πkfs)

Xa(j2πf − j2πkfs)

Xa(j2πf − j2πkfs)

Xa(j2πf)

f

X(ej2π

ffs

)= 1

T

k Xa(j2πf − j2πkfs)

0 fs 2fs−fs−2fs

Abbildung 4.12: Entstehung des Spektrums X(ejθ) = X(ej2πffs ) aus dem Spek-

trum Xa(j2πf) des abgetasteten analogen Bandpasssignals nach Gl. 4.52 (fl = Bund fs = 2B, B = fu − fl)

Page 94: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

84 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Beispiel 4.9

Zur Untersuchung der Abtastung von Bandpasssignalen bestimmenwir die moglichen Abtastfrequenzen mit MATLAB und zeichnen furdie gewahlte Abtastfrequenz die Spektren. Dazu kann das MATLAB-Programm BP_sampling(fl,fu) aus der Programmsammlung zu die-sem Buch herangezogen werden. Damit konnen wir alle erlaubten Ab-tastfrequenzintervalle nach Gl. 4.67 berechnen und das Spektrum desabgetasteten Bandpasssignals graphisch darstellen. Als Analogsignal-spektrum wird dabei der in Abb. 6.2 angegebene Verlauf verwendet.Fur den Spezialfall mit fl = B und fu = 2fl erhalten wir beispiels-weise mit dem Programmaufruf BP_sampling(100,200) das folgendeErgebnis:

fs >= 400.00

fs = 200.00

Je kleiner die Bandbreite B im Vergleich zu den Grenzfrequenzen ist,desto mehr mogliche Intervalle fur die Abtastfrequenz erhalten wir. Soergeben sich z.B. mit dem Programmaufruf BP_sampling(310,350)folgende erlaubte Intervalle fur fs:

fs >= 700.00

350.00 <= fs <= 620.00

233.33 <= fs <= 310.00

175.00 <= fs <= 206.67

140.00 <= fs <= 155.00

116.67 <= fs <= 124.00

100.00 <= fs <= 103.33

87.50 <= fs <= 88.57

Das Spektrum des abgetasteten Signals fur fs = 120 Hz ist in Abb. 4.13angegeben. Neben der reduzierten Abtastrate hat die Unterabtastungvon Bandpasssignalen auch den entscheidenden Vorteil, dass wir bei derRekonstruktion nicht nur das Originalfrequenzband (fett in Abb. 4.13eingezeichnet), sondern durch ein geeignetes Analogfilter auch einesder anderen Bander auswahlen konnen. Dadurch ist gleichzeitig aucheine Frequenzverschiebung (Modulation bzw. Demodulation) moglich,die zum Beispiel beim digitalen Radio (Software Radio) Anwendungfindet. Zu beachten ist jedoch, dass einige der Bander in Kehrlage(d.h. frequenzinvers zum Originalspektrum) auftreten. Die Lage derTeilbander andert sich mit der Wahl der Abtastfrequenz.Bei der Anwendung ist außerdem zu berucksichtigen, dass das Rekon-struktionsfilter eine endliche Flankensteilheit aufweist. Zwischen denBandern mussen daher noch ausreichend breite Lucken vorhanden sein

Page 95: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

4.2 Abtastung und Rekonstruktion zeitkontinuierlicher Signale 85

−300 −200 −100 0 100 200 3000

0.2

0.4

0.6

0.8

1

f in Hz

|X(e

j2π f/f

s)|

spectra of analog signal (bold), and sampled signal fl = 310 Hz, f

u = 350 Hz, f

s = 120 Hz

Abbildung 4.13: Spektrum des abgetasteten analogen Bandpasssignalsmit fl = 310 Hz, fu = 350 Hz und fs = 120 Hz

(wie zum Beispiel in Abb. 4.13). Wird eine sehr kleine Abtastfrequenzgewahlt, dann ist das erlaubte Frequenzintervall sehr schmal und wirmussen die Abtastfrequenz auch sehr genau realisieren. Jede Toleranz-abweichung oder Drift der Abtastfrequenz wird bei sehr starker Un-terabtastung Aliasing im gewunschten Frequenzband hervorrufen. Mitdem MATLAB-Programm konnen wir fur eine gegebene Anwendungdie erforderliche Abtastfrequenz sehr leicht finden und gleichzeitig dieLage der Teilbander kontrollieren.

Page 96: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

86 4 Fouriertransformation fur zeitdiskrete Signale und Systeme

Page 97: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5

Differenzengleichungen undZ-Transformation

Ahnlich wie bei analogen Systemen konnen auch zeitdiskrete Systeme als Netz-werke realisiert werden. In Abb. 5.1 sind grundlegende Elemente dieser Netzwer-ke, wie Addierer, Multiplizierer (mit Konstanten), Modulator (Multiplizierer mitSignalen) und Verzogerungselement (Speicher) dargestellt. Fur nichtlineare oderzeitvariante Netzwerke gibt es noch weitere Elemente, die wir nur fur Spezialfalleangeben werden, wie zum Beispiel bei Systemen mit Mehrfachtaktverarbeitung inKapitel 8.

x1[n] + x2[n] x[n]T

x1[n]

x2[n]

x1[n]x2[n] x[n] c x[n]

x[n− 1]x1[n]

x2[n]

c

Abbildung 5.1: Netzwerkelemente fur die zeitdiskrete Signalverarbeitung (Addie-rer, Verzogerungselement, Modulator, Konstantenmultiplizierer)

Page 98: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

88 5 Differenzengleichungen und Z-Transformation

Durch die Verbindung dieser Elemente entstehen Netzwerke, die entweder Ruck-kopplungen enthalten (rekursive Systeme) oder Strukturen ohne Ruckkopplun-gen (nichtrekursive Systeme).

Zwei einfache Beispiele fur die Zusammenschaltung von Netzwerkelementensind in Abb. 5.2 gegenubergestellt. Nichtrekursive Systeme haben immer eine Im-

x[n] y[n]

a

x[n] y[n]

a

y[n− 1]ax[n− 1]x[n− 1] ay[n− 1]

y[n] = x[n] + ax[n− 1] y[n] = ay[n− 1] + x[n]

h[n] = an n ≥ 0h[n] = δ[n] + aδ[n− 1]

T T

Abbildung 5.2: Nichtrekursives zeitdiskretes System (links) und rekursives System(rechts) mit zugehorigen Impulsantworten h[n]

pulsantwort h[n] endlicher Dauer und werden auch als FIR-Filter (siehe Seite 34)bezeichnet. Ihr Eingangs/Ausgangsverhalten wird durch eine Faltungssumme mitendlichem Summationsintervall beschrieben. Rekursive Systeme weisen Ruckkopp-lungsschleifen auf. Sie besitzen im Normalfall eine Impulsantwort unendlich langerDauer (IIR-Filter, siehe Seite 34) und damit ein unendliches Summationsintervallbei der Faltungsoperation.

Die Berechnung der Systemantwort an Hand des zeitdiskreten Netzwerks er-folgt zunachst durch Aufstellung der Differenzengleichungen. Diese erhaltenwir, indem fur jeden Addierer die Gleichung fur das Signal am Addiererausgangangeschrieben wird. Wenn das Netzwerk nur einen Addierer enthalt, dann erhal-ten wir eine Differenzengleichung, die den Zusammenhang zwischen Eingangs- undAusgangssignal des Netzwerks beschreibt (siehe Abb. 5.2).

Sind mehrere Addierer vorhanden, dann ergeben sich im Allgemeinen mehre-re Differenzengleichungen, wobei neben Ein- und Ausgangssignal auch noch Zwi-schensignale auftreten. Wir erhalten also ein System von Differenzengleichungenmit mehreren Variablen. Das folgende Beispiel zeigt das Aufstellen der Differen-zengleichungen an Hand eines gegebenen Schaltbildes fur das Netzwerk.

Page 99: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5 Differenzengleichungen und Z-Transformation 89

Beispiel 5.1

Wir betrachten ein rekursives System mit dem in Abb. 5.3 gegebenenSchaltbild.

T

u[n− 1]

x[n] u[n] y[n]

a b

Abbildung 5.3: Rekursives System mit zwei Addierern

Fur die Ausgangssignale der beiden Addierer erhalten wir

u[n] = x[n] + au[n− 1] (5.1)

y[n] = u[n] + bu[n− 1]. (5.2)

Es ergeben sich zwei Differenzengleichungen, bei denen wir nicht ein-fach das Zwischensignal u[n] eliminieren konnen, um eine einzige Glei-chung nur mit Eingangs- und Ausgangssignal zu erhalten. In Abschnitt5.6 werden wir sehen, dass mit Hilfe der Z-Transformation eine Reduk-tion eines Systems von Differenzengleichungen auf eine einzige Glei-chung einfach zu erreichen ist. Außerdem bietet die Z-Transformationauch gleich eine Losungsmoglichkeit zur Berechnung des Ausgangssi-gnals. Hier wollen wir Gl. 5.1 und Gl. 5.2 Schritt fur Schritt losen, in-dem wir ab einem bestimmen Zeitpunkt n0 ein Eingangssignal x[n] andas Netzwerk anlegen und sukzessive u[n] und y[n] fur n = n0, n0+1, . . .berechnen. Als Einschaltzeitpunkt wahlen wir n0 = 0.

Um die Differenzengleichungen aufzulosen, muss neben dem Eingangs-signal auch der Wert u[−1] des Zwischensignals gegeben sein. Die-ser Wert wird Anfangswert genannt und ist der Speicherinhalt desVerzogerungselements vor dem Einschalten des Eingangssignals. Beider Systembeschreibung durch Differenzengleichungen bestimmen so-wohl das Eingangssignal als auch die Anfangswerte das Ausgangssignal.Wir berechnen das Ausgangssignal mit a = b = 1

2 , u[−1] = 1 und mit

Page 100: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

90 5 Differenzengleichungen und Z-Transformation

dem Eingangssignal x[n] = δ[n]:

u[0] = 1 +1

2=

3

2

y[0] = u[0] +1

2= 2

u[1] = 0 +1

2u[0] =

3

4

y[1] =3

4+

3

4=

3

2

u[2] = 0 +1

2u[1] =

3

8

y[2] =3

8+

3

8=

3

4...

y[n] = 3

(1

2

)n

− δ[n], n ≥ 0.

Dieser Losungsweg ist elementar, aber muhsam und nicht immer laßtsich eine geschlossene Losung einfach angeben. Er kann aber unmittel-bar mit einem Rechnerprogramm, z.B. in MATLAB, durchgefuhrt wer-den. Das ist ein weiterer Vorteil von zeitdiskreten Systemen gegenuberanalogen Systemen, da keine Differentialgleichungen auftreten, derenLosung nummerisch im Allgemeinen nur naherungsweise moglich ist.

a = 1/2; b = 1/2;

Nx = 10; % number of time points

x = [1 zeros(1,Nx-1)]; % input signal x[n] = delta[n]

u_1 = 1; % initial condition u[-1] = 1

u = zeros(1,Nx); % vector to store u[n]

y = zeros(1,Nx); % and y[n]

u(1) = x(1) + a*u_1; % diff. eq. for u[0]

y(1) = u(1) + b*u_1; % and y[0]

for m = 2:Nx % (m = n+1)

u(m) = x(m) + a*u(m-1);

y(m) = u(m) + b*u(m-1);

end

stem(y);

Bei diesem Programm mussen wir beachten, dass MATLAB nur Vek-torindizes großer als Null erlaubt. Wir verwenden daher als Schleifen-variable m = n+1, damit der Zeitpunkt n = 0 dem ersten Vektorindexm = 1 entspricht. Die Differenzengleichungen fur n = 0 werden außer-halb der Schleife berechnet, um den Zugriff auf u(-1) zu vermeiden.

Page 101: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.1 Losung von Differenzengleichungen mit konstanten Koeffizienten 91

5.1 Losung von Differenzengleichungen mit

konstanten Koeffizienten

Das vorhergehende Beispiel zeigt, dass die einfachste Form der nummerischen Be-rechnung der Systemantwort die sukzessive Losung der Differenzengleichung ist,beginnend von einem Startzeitpunkt und unter Berucksichtigung eventuell vor-handener Anfangsbedingungen. Im allgemeinen Fall hat die Differenzengleichungdie Form

N∑

k=0

aky[n− k] =M∑

k=0

bkx[n− k] , (5.3)

wobei diese Form auch fur Zwischensignale gilt, wie im Beispiel 5.1. In gleicherWeise wie bei Differentialgleichungen setzt sich die allgemeine Losung aus demBeitrag der Anfangsbedingungen und dem Einfluss des Eingangssignals zusam-men. Die Systemantwort auf die Anfangsbedingungen und x[n] ≡ 0 wird als Null-eingangsantwort (Zero-Input Response) yzi[n] bezeichnet. Die Antwort aufdas Eingangssignal bei verschwindenden Anfangsbedingungen stellt die Nullzu-standsantwort (Zero-State Response) yzs[n] dar, die wir fur lineare, zeitinva-riante Systeme bereits mit der Faltungsoperation zwischen Impulsantwort undEingangssignal angegeben haben (siehe Seite 32). Bei der Systembeschreibung mitder Faltungsoperation haben wir ja vorausgesetzt, dass das System nur vom Ein-gang her angeregt wird.

Fur die Nulleingangsantwort gilt mit Gl. 5.3

N∑

k=0

ak yzi[n− k] = 0. (5.4)

Wollen wir yzi[n] ab dem Zeitpunkt n0 = 0 fur n > 0 eindeutig finden, dannmussen auch die N Anfangsbedingungen yzi[−1], yzi[−2], . . ., yzi[−N ] gegebensein. Sind diese Anfangsbedingungen Null, dann ist yzi[n] = 0, n ≥ 0.

Zur Bestimmung von yzi[n] versuchen wir einen Ansatz mit einem exponenti-ellen Signal

yzi[n] = λn, ∀n, (5.5)

mit komplexwertigem λ, um auch Exponentialschwingungen als Losung zuzulas-sen. Dieser Ansatz ist naheliegend, da Netzwerke mit Ruckkopplungen schwin-gungsfahige Systeme sind. Mit yzi[n− k] = λnλ−k erhalten wir aus Gl. 5.4

λnN∑

k=0

akλ−k = 0 (5.6)

und damit ein Polynom in λ−k als nichttriviale Losung

a0 + a1λ−1 + a2λ

−2 + . . .+ aNλ−N = 0, (5.7)

Page 102: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

92 5 Differenzengleichungen und Z-Transformation

das als charakteristisches Polynom bezeichnet wird. Wenn dieses Polynom Nverschiedene, einfache Nullstellen hat, also als Produkt

(λ−1 − λ−11 )(λ−1 − λ−1

2 ) . . . (λ−1 − λ−1N ) = 0, oder

(λ− λ1)(λ− λ2) . . . (λ− λN ) = 0(5.8)

darstellbar ist, dann hat die Nulleingangsantwort die allgemeine Form

yzi[n] = c1λn1 + c2λ

n2 + . . .+ cNλn

N . (5.9)

Die Teilsignale λnk werden als Eigenschwingungen des Systems bezeichnet,

da sie fur das Systemverhalten charakteristisch sind. Die N Koeffizienten ck derLinearkombination in Gl. 5.9 ergeben sich mit den N Anfangsbedingungen yzi[−1],yzi[−2], . . ., yzi[−N ] als Losung eines linearen Gleichungssystems.

Dieser Losungweg ist im allgemeinen Fall relativ langwierig und ohne Rech-nerunterstutzung nicht durchfuhrbar. Außerdem ist das Auffinden der Nullstellendes charakteristischen Polynoms auch nummerisch ein heikles Problem, so dasssich die Frage stellt, warum wir nicht gleich die sukzessive Auflosung der Differen-zengleichung bevorzugen. Die Methode mit dem charakteristischen Polynom hatjedoch entscheidende Vorteile:

• An den Nullstellen erkennen wir sofort, ob das System stabil ist, d.h. ob alleEigenschwingungen fur n → ∞ abklingen. Die Simulation der Differenzen-gleichung wird dazu im Normalfall langer dauern.

• Die sukzessive Losung der Differenzengleichung durch Simulation kann we-gen der Fehlerfortpflanzung bei der Rekursion auch nummerische Problemeaufweisen, insbesondere bei Systemen, die hart an der Stabilitatsgrenze ar-beiten.

• Wir werden sehen, dass das charakteristische Polynom auch das Frequenz-verhalten des Systems bestimmt.

• Beim Entwurf von rekursiven digitalen Filtern werden wir zeigen, dass dergewunschte Frequenzgang durch Polynomfunktionen approximiert wird, wo-bei auch hier das charakteristische Polynom eine wichtige Rolle spielt.

• Schließlich ist die Methode mit dem charakteristischen Polynom eng ver-wandt mit Methoden der Z-Transformation, die wir in Abschnitt 5.6 behan-deln werden.

Fur die Berechnung der Nullzustandsantwort benotigen wir die Impulsant-wort h[n] des Systems, mit der wir dann durch Faltung mit dem Eingangssignaldie Systemantwort bestimmen konnen:

yzs[n] =

∞∑

k=−∞x[k]h[n− k]. (5.10)

Page 103: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.1 Losung von Differenzengleichungen mit konstanten Koeffizienten 93

Mit Gl. 5.3 ist die Impulsantwort die Losung der Differenzengleichung

N∑

k=0

ak h[n− k] =M∑

k=0

bk δ[n− k], (5.11)

mit den Anfangsbedingungen h[−1] = h[−2] = . . . = h[−N ] = 0. Fur n > M istder rechte Teil von Gl. 5.11 Null, so dass wir fur h[n], n > M ein homogenes Glei-chungssystem mit den Anfangsbedingungen h[M ], h[M − 1], . . . , h[M −N + 1] er-halten. Fur 0 ≤ n ≤ M ist Gl. 5.11 ein lineares Gleichungssystem mit h[0] . . . h[M ]als Unbekannte. Die Losung ist einfach, da das Gleichungssystem Dreiecksformhat.

Die komplette Losung der Differenzengleichung Gl. 5.3 ist die Summe vonNullzustands- und Nulleingangsantwort

y[n] = yzs[n] + yzi[n], n ≥ 0. (5.12)

Setzen wir namlich Gl. 5.12 in Gl. 5.3 ein, so folgt

N∑

k=0

ak yzs[n− k] +

N∑

k=0

ak yzi[n− k]

︸ ︷︷ ︸

0

=

M∑

k=0

bk x[n− k]. (5.13)

Die Aufspaltung der Losung von Differenzengleichungen mit konstanten Koef-fizienten in eine Nullzustands- und eine Nulleingangsantwort ist der ubliche An-satz in der Signal- und Systemtheorie, da beide Antworten auch einfach gemessenwerden konnen. Außerdem kann der Zustand digitaler Filter sehr leicht durchVerandern der Inhalte von Speicherelementen beeinflusst werden. So konnen bei-spielsweise digitale Filter durch richtiges Setzen des Anfangszustands sofort ein-schwingen. Das gilt naturlich auch fur analoge Systeme, nur ist dort das Setzendes Anfangszustands (z.B. bei RLC-Netzwerken) praktisch nicht moglich.

In der Mathematik ist bei der Losung von Differenzengleichungen die Auf-spaltung in die so genannte homogene Antwort (Natural Response) undpartikulare Antwort (Forced Response) ublich. Diese Antworten stimmenjedoch nicht mit der Nulleingangs- und Nullzustandsantwort des Systems uberein.In der homogenen Losung werden namlich alle Eigenschwingungen des Systemszusammengefasst. Die homogene Losung hat die gleiche Form wie in Gl. 5.9, je-doch mit anderen Koeffizienten ck. Die partikulare Losung enthalt hingegen keineEigenschwingungskomponenten, sondern ist nur durch die Form des Eingangssi-gnals bestimmt. Im Gegensatz dazu enthalt die Nullzustandsantwort auch Terme,die von den Eigenschwingungen des Systems herruhren, da ja bei einem dynami-schen System die Eigenschwingungen sowohl vom Eingangssignal als auch durchden Anfangszustand angestoßen werden.

Page 104: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

94 5 Differenzengleichungen und Z-Transformation

Beispiel 5.2

In diesem Beispiel berechnen wir die Losung y[n], n ≥ 0 der Differen-zengleichung

y[n]− 1

2y[n− 1] = x[n]− x[n− 2] (5.14)

fur das Eingangssignal x[n] = σ[n] und mit der Anfangsbedingungy[−1] = 1. Die Nulleingangsantwort folgt aus yzi[n]− 1

2 yzi[n − 1] = 0mit dem Ansatz yzi[n] = λn (Gl. 5.5), wobei sich λ aus dem charakte-ristischen Polynom ergibt:

λn − 1

2λnλ−1 = 0 → λ =

1

2. (5.15)

Das charakteristische Polynom besitzt nur eine Nullstelle, so dass dieNulleingangsantwort die Form yzi[n] = c1

(12

)nhat. Den Koeffizienten

c1 erhalten wir mit der Anfangsbedingung:

y[−1] = yzi[−1] = 1 = c1

(1

2

)−1

→ c1 =1

2. (5.16)

Damit ist die Nulleingangsantwort der gegebenen Differenzengleichung

yzi[n] =

(1

2

)n+1

. (5.17)

Fur die Nullzustandsantwort berechnen wir zunachst die Impulsant-wort h[n] des Systems aus der Differenzengleichung

h[n]− 1

2h[n− 1] = δ[n]− δ[n− 2], (5.18)

(h[−1] = 0). Die Werte von h[n] fur n = 0, 1, 2 ergeben sich direkt ausGl. 5.18:

h[0]− 1

20 = 1 → h[0] = 1

h[1]− 1

21 = 0 → h[1] =

1

2

h[2]− 1

2

1

2= −1 → h[2] = −3

4.

(5.19)

Fur Zeitpunkte n > 2 verschwindet die rechte Seite von Gl. 5.18und h[n] folgt aus der Nulleingangsantwort mit der Anfangsbedingung

Page 105: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.2 Frequenzgang zeitdiskreter Netzwerke mit konstanten Koeffizienten 95

h[2] = − 34 . Mit h[n] = c1

(12

)nund h[2] = − 3

4 = c1(12

)2ergibt sich

c1 = −3 und damit in Kombination mit Gl. 5.19

h[n] =

(1

2

)n

σ[n]−(1

2

)n−2

σ[n− 2]. (5.20)

Die Nullzustandsantwort fur das Eingangsignal x[n] = σ[n] berechnenwir als Faltung der Impulsantwort mit der Sprungfunktion und erhaltennach kurzer Zwischenrechnung

yzs[n] =

(

2−(1

2

)n)

σ[n]−(

2−(1

2

)n−2)

σ[n− 2] . (5.21)

Schließlich ergibt sich das Ausgangssignal fur n ≥ 0 als Summe vonNulleingangs- und Nullzustandsantwort:

y[n] = yzi[n] + yzs[n]

=

(1

2

)n+1

σ[n] +

(

2−(1

2

)n)

σ[n]−(

2−(1

2

)n−2)

σ[n− 2] .

(5.22)

Zur Analyse der Differenzengleichung Gl. 5.3 mit MATLAB konnen wirdie Funktionen filter() und filtic() einsetzen, um die Systemant-wort fur dieses Beispiel zu bestimmen bzw. zu kontrollieren:

x = ones(1,10); % x = sigma[n]

a = [1 -1/2]; % a = [a0 a1]

b = [1 0 -1]; % b = [b0 b1 b2]

y_1 = 1; % y[-1] = 1

z0 = filtic(b,a,y_1,0); % initial filter state z0

y = filter(b,a,x,z0); % output signal for n >= 0

stem(y);

5.2 Frequenzgang zeitdiskreter Netzwerke mit

konstanten Koeffizienten

In Abschnitt 3.2 haben wir die Beschreibung zeitdiskreter Systeme im Frequenz-bereich behandelt und sind dabei von der Faltungsoperation im Zeitbereich aus-gegangen. Der Frequenzgang hat sich nach Gl. 3.38 als Fouriertransformation der

Page 106: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

96 5 Differenzengleichungen und Z-Transformation

Impulsantwort ergeben. Als Alternative konnen wir den Frequenzgang auch mitHilfe der Differenzengleichung Gl. 5.3 berechnen, wenn wir verschwindende An-fangsbedingungen voraussetzen, so dass das Netzwerk nur vom Eingang her ange-regt wird.

Wie in Abschnitt 3.2 verwenden wir die Exponentialschwingung x[n] = ejθn

als Systemanregung und setzen die zugehorige Systemantwort y[n] = H(ejθ)ejθn

(siehe Gl. 3.37) in die Differenzengleichung Gl. 5.3 ein:

a0H(ejθ)ejθn +H

(ejθ)ejθn

N∑

k=1

ake−jθk = ejθn

M∑

k=0

bke−jθk . (5.23)

Damit folgt fur die Ubertragungsfunktion

H(ejθ)=

M∑

k=0

bke−jθk

1 +N∑

k=1

ake−jθk

, (5.24)

wenn wir a0 = 1 setzen (ohne Einschrankung des allgemeinen Falls). Mit derkomplexen Variablen z = ejθ ergibt sich schließlich

H(z) =

M∑

k=0

bkz−k

1 +

N∑

k=1

akz−k

. (5.25)

Die Ubertragungsfunktion des zeitdiskreten Netzwerks mit konstanten Koeffi-zienten ist eine rationale Funktion, bestehend aus einem Zahlerpolynom vomGrad M und einem Nennerpolynom N -ten Grades. Die Nullstellen des Zahler-polynoms bestimmen die M Sperrstellen z = z0k, bei denen H(z0k) = 0 ist.Die Resonanzen (Polstellen) sind durch die N Nullstellen z = z∞k des Nen-nerpolynoms festgelegt (|H(z∞k)| → ∞). Das Nennerpolynom stimmt mit demcharakteristischen Polynom uberein (siehe Seite 91).

Bei der Besprechung der Z-Transformation im nachsten Abschnitt werden wirdie Bedeutung der Pol- und Sperrstellen naher untersuchen. Wir werden sehen,dass Gl. 5.25 nicht nur fur z = ejθ gilt, sondern auch fur ein allgemeines z derForm z = rejθ (r reellwertig, r > 0). In Kapitel 6 verwenden wir die Ubertra-gungsfunktion Gl. 5.25 als Ausgangspunkt fur den Entwurf rekursiver Filter, umeinen vorgegebenen Amplitudenfrequenzgang zu approximieren. Außerdem bildetdie Ubertragungsfunktion in Gl. 5.25 auch die Grundlage fur die Realisierung vonIIR-Filtern als Kaskaden- oder Parallelschaltung in Abschnitt 6.4.

Page 107: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.2 Frequenzgang zeitdiskreter Netzwerke mit konstanten Koeffizienten 97

Beispiel 5.3

Wir bestimmen den Frequenzgang fur das Netzwerk mit der Differen-zengleichung aus Beispiel 5.2:

y[n]− 1

2y[n− 1] = x[n]− x[n− 2] . (5.26)

Mit Gl. 5.24 erhalten wir

H(ejθ)=

1− e−j2θ

1− 12e

−jθ. (5.27)

Betrags- und Phasenverlauf lassen sich mit der MATLAB-Funktionfreqz() darstellen (siehe Abb. 5.4).

0 0.2 0.4 0.6 0.8 10

0.5

1

1.5

2

θ/π

|H(e

jθ)|

0 0.2 0.4 0.6 0.8 1−100

−50

0

50

100

θ/π

∠ H

(ejθ)

in °

Abbildung 5.4: Betrags- und Phasenverlauf des Frequenzgangs H(ejθ)

a = [1 -1/2]; % a = [a0 a1]

b = [1 0 -1]; % b = [b0 b1 b2]

[H,w] = freqz(b,a);

Hmag = abs(H);

Hphi = angle(H);

subplot(2,1,1), plot(w/pi,Hmag);

xlabel(’\theta/\pi’), ylabel(’|H(e^{j\theta})|’), grid on;

subplot(2,1,2), plot(w/pi,Hphi*180/pi);

xlabel(’\theta/\pi’), ylabel(’\angle H(e^{j\theta}) in \circ’);

grid on;

Wir erkennen zwei Sperrstellen bei θ = 0 und θ = π, die wir auch ausdem Zahler von Gl. 5.27 (1− e−j2θ = 0) finden konnen.

Page 108: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

98 5 Differenzengleichungen und Z-Transformation

5.3 Z-Transformation

Fur die Beschreibung zeitdiskreter Signale und Systeme haben wir in Kapitel 4die Fouriertransformation eingefuhrt, die dem zeitdiskreten Signal x[n] die Fourier-transformierte (das Spektrum) X

(ejθ)zuordnet:

X(ejθ)= FT {x[n]} =

∞∑

n=−∞x[n] e−jθn . (5.28)

Fur die Existenz der Fouriertransformation muss x[n] absolut summierbar sein,wodurch wichtige Signale mit z.B. sin x/x-formigem Verlauf zunachst ausgeschlos-sen sind. Durch die schwachere Forderung einer endlichen Signalenergie, kann derAnwendungsbereich der Fouriertransformation jedoch erweitert werden. Beispie-le sind schematisierte Systeme mit rechteckformigen Betragsverlaufen der Fre-quenzgange. Allerdings mussen wir dabei das Gibbssche Phanomen an den Sprung-stellen in Kauf nehmen. Die Fouriertransformation kann auch auf periodische Si-gnale angewendet werden, wenn wir im Spektralbereich Dirac-Funktionen zulas-sen. Durch diese Erweiterungen ist die Fouriertransformation eine sehr machtigeAnalysemethode, speziell fur schematisierte Systeme.

Fur die Analyse und Synthese realer Systeme in Form zeitdiskreter Netzwerkebietet jedoch die Z-Transformation wichtige Vorteile, wie z.B. fur den Entwurf di-gitaler Filter oder bei der Untersuchung des Einschwingverhaltens dieser Systeme.Mit der Z-Transformation wird die Behandlung von Differenzengleichungen aufalgebraische Methoden (Polynome, lineare Gleichungssysteme) zuruckgefuhrt, dieauch sehr gut fur die Simulation mit Rechnern geeignet sind.

Ahnlich wie die Fouriertransformation in Gl. 5.28 ordnet die Z-Transformationdem zeitdiskreten Signal x[n] die Z-Transformierte X(z) zu:

X(z) = ZT {x[n]} =

∞∑

n=−∞x[n] z−n , (5.29)

wobei z = rejθ (mit r, θ ∈ R, r ≥ 0) eine komplexwertige Variable ist. Der Zusam-menhang zwischen Z-Transformation und Fouriertransformation ist mit Gl. 5.28und Gl. 5.29 sofort ersichtlich:

X(z) =∞∑

n=−∞(x[n]r−n) e−jθn = FT

{x[n]r−n

}. (5.30)

Die Z-Transformierte des Signals x[n] entspricht der Fouriertransformierten vonx[n]r−n. Fur |z| = r > 1 und n > 0 ergibt sich eine Signaldampfung, die dasKonvergenzverhalten der Z-Transformation gegenuber der Fouriertransformationverbessert. Ob die Z-Transformation konvergiert, hangt daher nicht nur von x[n],

Page 109: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.3 Z-Transformation 99

sondern auch von r ab. Jener Wertebereich von r, fur den die Z-Transformationkonvergiert, wird als Konvergenzbereich der Z-Transformation bezeichnet.Nach Gl. 5.30 ist die Fouriertransformation der Spezialfall der Z-Transformationfur |z| = r = 1:

X(ejθ)= X(z)

∣∣∣z=ejθ

. (5.31)

Die Fouriertransformation von x[n] konvergiert daher nur dann, wenn |z| = 1 imKonvergenzbereich der Z-Transformation von x[n] liegt. In der komplexen Zahlen-ebene, die durch ℜe{z} und ℑm{z} aufgespannt wird, ist |z| = 1 der Einheitskreis.

Die Z-Transformation X(z) konnen wir uns als komplexwertige Funktion uberder komplexen z-Ebene vorstellen, indem wir beispielsweise |X(z)| in Abhangigkeitvon Real- und Imaginarteil der Variablen z als dreidimensionale Graphik darstel-len.

Beispiel 5.4

Als illustratives Beispiel berechnen wir die Z-Transformation fur dasexponentielle Signal x[n] = an σ[n]:

X(z) =

∞∑

n=0

anz−n =

∞∑

n=0

(az−1

)n=

1

1− az−1=

z

z − a. (5.32)

Die Summe der unendlichen geometrischen Reihe in Gl. 5.32 existiertfur

∣∣az−1

∣∣ < 1 bzw. |z| > |a|. Zur anschaulichen Interpretation des

Verhaltens der Z-Transformation fur dieses einfache Signal zeigen wirden Betrag der Z-Transformierten in dreidimensionaler Darstellung inAbb. 5.5.Das Diagramm konnen wir mit den folgenden MATLAB-Befehlen er-zeugen:

a = 0.5; % x[n] = a^n, n > 0

% X(z) = B(z)/A(z)

% B(z) = b0 + b1 z ...

% A(z) = a0 + a1 z ...

B = [1 0]; % B = [b1 b0]

A = [1 -a]; % A = [a1 a0]

[x,y] = meshgrid(-1:0.03:1, -1:0.03:1); % x,y coord. of 3d plot

z = x + 1i*y; % complex variable z

Xmag = abs(polyval(B,z))./(abs(polyval(A,z))+eps);

% polyval(p,z) evaluates polynomial

% with coeffient vector p at value z

mesh(x,y,min(Xmag,10)); % 3d plot of |X(z)| (limited to 10)

Page 110: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

100 5 Differenzengleichungen und Z-Transformation

−1−0.5

00.5

1

−1

−0.5

0

0.5

10

2

4

6

8

10

ℜe{z}ℑm{z}

|X(z

)|

Abbildung 5.5: Betragsverlauf von X(z) =z

z − afur a = 1

2

view([-28,26]);

xlabel(’\Ree\{z\}’);

ylabel(’\Imm\{z\}’);

zlabel(’|X(z)|’);

axis([-1 1 -1 1 0 10]) % axis limits of plot

In Abb. 5.5 sehen wir die Polstelle (Nullstelle des Nennerpolynomsvon X(z)) bei z = a = 1

2 , bei der der Betrag der Z-Transformiertengegen Unendlich strebt. Die Nullstelle von X(z) bei z = 0 ist durcheine Delle im Ursprung des Diagramms zu erkennen. Der Verlauf derZ-Transformierten wird durch die Lage der Pol- und Nullstellen vonX(z) in eindrucksvoller Weise gepragt.

An Hand dieses Beispiels konnen wir noch weitere Schlusse ziehen. Wenn wirden Betragsverlauf der Z-Transformierten entlang des Einheitskreises |z| = 1 be-trachten, dann erhalten wir den Amplitudenfrequenzgang

∣∣X(ejθ)∣∣ des Signalspek-

trums mit Verstarkungen im Bereich von Polen und Abschwachungen in der Nahevon Nullstellen. Liegt eine Nullstelle des Zahlers von X(z) am Einheitskreis, dannist der Amplitudenfrequenzgang dort Null, d.h. das Signal hat bei der Frequenzder Nullstelle keine spektrale Komponente.

Kritisch ist die Lage der Polstellen. Generell gilt, dass wir die Z-Transformationan einer Polstelle nicht auswerten konnen, da die Reihe in Gl. 5.29 nicht konver-giert. Im Konvergenzbereich der Z-Transformation durfen daher keine Singula-ritaten liegen. Mit Ausnahme der Polstellen existiert die Z-Transformation uberall

Page 111: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.3 Z-Transformation 101

im Konvergenzbereich. Der Konvergenzbereich der Fouriertransformation ist we-sentlich starker eingeschrankt. Liegt ein Pol am Einheitskreis, dann existiert dieFouriertransformation nicht. Wir konnen aber trotzdem eine Fouriertransforma-tion angeben, wenn wir Dirac-Funktionen im Spektrum vorsehen. Ein Pol amEinheitskreis entspricht einer Schwingung mit konstanter Amplitude und damiteinem δ-Impuls im Frequenzbereich (siehe Seite 62). Liegen die Pole jedoch außer-halb des Einheitskreises, dann wachst die Signalamplitude fur n → ∞ uber alleGrenzen und die Fouriertransformation existiert nicht. Im Gegensatz dazu existiertdie Z-Transformation sehr wohl fur instabile Signale mit anklingenden Amplitu-den, wenn |z| im Konvergenzbereich liegt und damit eine ausreichende Dampfungdes instabilen Signals gewahrleistet ist.

Es gibt noch einen weiteren Unterschied zwischen Fourier- und Z-Transformati-on: Wahrend die Fouriertransformation eindeutig ist, gibt es zu X(z) nicht nurein Signal x[n], da das Ergebnis der Rucktransformation vom Konvergenzbereichabhangt. Die Z-Transformation ist jedoch eindeutig, wenn wir zusatzliche Forde-rungen an das Signal stellen, wie Stabilitat und Kausalitat. Diese fur die Anwen-dungen wichtigen Zusammenhange werden wir jetzt naher untersuchen.

Wir beginnen mit der Darstellung des Konvergenzbereiches in der komple-xen z-Ebene. Fur das in Beispiel 5.4 untersuchte Signal ist das Pol/Nullstellen-diagramm in Abb. 5.6 dargestellt. Am Beispiel des Signals x[n] = anσ[n], |a| < 1

���������������������������������������������������������������������������������������������������

���������������������������������������������������������������������������������������������������

ℑm{z}

ℜe{z}

Polstelle bei z = a = 12

Nullstelle bei z = 0

Abbildung 5.6: Pol/Nullstellendiagramm fur X(z) aus Beispiel 5.4 (Konvergenz-bereich schraffiert, Einheitskreis im Konvergenzbereich)

erkennen wir, dass das Pol/Nullstellendiagramm eines kausalen und stabilenSignals folgende Merkmale besitzt:

• Der Einheitskreis |z| = 1 liegt im Konvergenzbereich |z| > Rmax (Rmax istder großte Polradius) bzw. alle Pole liegen innerhalb des Einheitskreises.

• Der Konvergenzbereich enthalt z = ∞.

Page 112: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

102 5 Differenzengleichungen und Z-Transformation

Befindet sich der Einheitskreis nicht im Konvergenzbereich (im Beispiel fur |a| >1), dann liegt ein kausales und instabiles Signal vor. Kausale Signale werdenauch als rechtsseitige Signale bezeichnet, die fur n < 0 Null sind. Bei linkssei-tigen Signalen verschwindet x[n] fur n > 0, sie sind daher nicht kausal. Ebenfallsnicht kausal sind zweiseitige Signale, die Anteile fur n ≥ 0 und n < 0 haben.

Beispiel 5.5

Wir berechnen die Z-Transformation fur ein nichtkausales, exponenti-elles Signal x[n] = −anσ[−n− 1] (linksseitiges Signal).

X(z) = −−1∑

n=−∞anz−n = 1−

∞∑

n=0

(a−1z

)n= 1− 1

1− a−1z=

z

z − a.

(5.33)Die Konvergenz ist sichergestellt, wenn |z| < |a| ist. Die Z-Trans-formierte fur dieses Signal ist gleich jener des Signals x[n] = anσ[n],jedoch mit einem anderen Konvergenzbereich! Die Angabe der Z-Trans-formation ohne Konvergenzbereich ist daher nicht eindeutig. Der Kon-vergenzbereich von x[n] fur a = 2 ist in Abb. 5.7 dargestellt.

����������������������������������������������������������������

����������������������������������������������������������������

ℑm{z}

ℜe{z}

Polstelle bei z = a = 2Nullstelle bei z = 0

Abbildung 5.7: Pol/Nullstellendiagramm fur X(z) (Konvergenzbereichschraffiert, Einheitskreis im Konvergenzbereich)

Das Signal ist stabil (die Amplitude klingt fur n → −∞ ab). DerEinheitskreis liegt damit im Konvergenzbereich. Mit MATLAB kanndas Pol/Nullstellendiagramm mit zplane(B,A) gezeichnet werden:

zplane([1 0],[1 -2]); % X(z) = B(z)/A(z) =

% = (b0 + b1 z^-1)/(a0 + a1 z^-1)

Page 113: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.3 Z-Transformation 103

An Hand dieses Beispiels erkennen wir folgende Eigenschaften fur das Pol/Null-stellendiagramm eines linksseitigen und stabilen Signals:

• Der Einheitskreis |z| = 1 liegt im Konvergenzbereich |z| < Rmin (Rmin istder kleinste Polradius) bzw. alle Pole liegen außerhalb des Einheitskreises.

• Der Konvergenzbereich enthalt z = 0.

Beispiel 5.6

Zweiseitige Signale bestehen aus einem links- und einem rechtssei-tigen Anteil. Ein einfaches Beispiel ist das Signal x[n] = a|n|, ∀n. DieZ-Transformierte von x[n] ergibt sich mit Verwendung von Gl. 5.32und Gl. 5.33:

X(z) =∞∑

n=−∞a|n|z−n =

−1∑

n=−∞a−nz−n +

∞∑

n=0

anz−n

= − z

z − 1a

+z

z − a=

z(a− 1

a

)

(z − a)(z − 1

a

) .

(5.34)

Das Pol/Nullstellendiagramm fur a = 12 ist in Abb. 5.8 gezeigt.

����������������������������������������������������������������

����������������������������������������������������������������

ℑm{z}

ℜe{z}

Polstellen bei z = 1a= 2, z = a = 1

2

Nullstellen bei z = 0, z = ∞

Abbildung 5.8: Pol/Nullstellendiagramm fur X(z) (Konvergenzbereichschraffiert, Einheitskreis im Konvergenzbereich)

Wir erhalten einen ringformigen Konvergenzbereich, der durch die bei-den Polradien begrenzt ist. Fur a = 1

2 ist das Signal stabil und derEinheitskreis liegt im Konvergenzbereich.

Page 114: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

104 5 Differenzengleichungen und Z-Transformation

Fur den allgemeinen Fall zweiseitiger, stabiler Signale konnen wir damitfolgende Schlusse ziehen:

• Es ergibt sich ein ringformiger Konvergenzbereich R1 < |z| < R2.

• Der Konvergenzbereich enthalt weder z = 0 noch z = ∞.

• Der linksseitige Signalanteil wird durch Pole z∞ mit |z∞| > 1 bestimmt.

• Der rechtsseitige Signalanteil ist durch Pole z∞ mit |z∞| < 1 festgelegt.

Die verschiedenen Konvergenzbereiche fur Z-Transformationen mit 2 reellen Po-len konnen mit der MATLAB-Funktion IZT_demo() aus der Programmsammlunganalysiert werden.

Ein wichtiger Sonderfall sind Signale endlicher Lange, die wir bereits alsImpulsantworten von FIR-Filtern kennengelernt haben (siehe Seite 34 und 48).Die Z-Transformation fur Signale x[n], n ∈ [N1, N2] hat die Form

X(z) =

N2∑

n=N1

x[n]z−n . (5.35)

Fur N1 < 0 und N2 > 0 gibt es Reihensummanden mit zn und z−n. Die endlicheSumme hat daher mit Ausnahme z = 0 und z = ∞ immer einen endlichen Wert.Der Konvergenzbereich bei Signalen endlicher Dauer umfasst damit diegesamte z-Ebene mit Ausnahme des Ursprungs und z = ∞. Bei kausalen, endlichenSignalen (N1 = 0, N2 > 0) liegen alle Pole im Ursprung z = 0. Nichtkausale,endliche Signale (N2 = 0, N1 < 0) haben alle Pole in z = ∞.

Beispiel 5.7

Ein System mit endlicher Impulsantwort haben wir als Mittelwertbilderim Beispiel 3.7 auf Seite 48 untersucht. Dieses kausale FIR-Filter hateine Impulsantwort der Form

x[n] =

{1N 0 ≤ n ≤ N − 1

0 sonst. (5.36)

Mit Gl. 5.36 ist die Z-Transformierte von x[n]

X(z) =1

N

N−1∑

n=0

z−n =1

N

1− z−N

1− z−1=

1

N

1

zN−1

zN − 1

z − 1. (5.37)

Page 115: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.3 Z-Transformation 105

Die Nullstellen von X(z) ergeben sich aus zN = 1 = ej2πk zu z0k =

ej2πN k, k = 0, 1, . . . , N − 1. Ein Pol von X(z) liegt in z = 1 und ein

(N − 1)-facher in z = 0. Der Pol bei z = 1 wird durch die Nullstellez00 = 1 kompensiert. Damit liegen alle N − 1 Pole im Ursprung. DieN − 1 Nullstellen liegen am Einheitskreis, d.h. es gibt Sperrstellen beiden Frequenzen θk = 2π

N k, k = 1, 2, . . . , N − 1 (siehe Abb. 3.10 aufSeite 49).

Mit dem folgenden MATLAB-Beispiel kann das Pol/Nullstellendia-gramm von X(z) in Gl. 5.37 graphisch dargestellt werden:

N = 6;

A = [1 -1]; % denominator of X(z) = 1 - z^-1

B = [1 zeros(1,N-1) -1]; % numerator of X(z) = 1 - z^-N

zplane(B,A);

Zur Zusammenfassung der Diskussion des Konvergenzbereiches sind in Tabelle5.1 die Konvergenzbereiche wichtiger Signalklassen angegeben. Generell muss furstabile Signale der Einheitskreis im Konvergenzbereich liegen. Der Konvergenzbe-reich ist so zu konstruieren, dass keine Singularitaten (Polstellen) von X(z) imKonvergenzbereich liegen.

Tabelle 5.1: Zusammenfassung Konvergenzbereich der Z-Transformation (minima-ler Polradius Rmin, maximaler Polradius Rmax)

Signal Konvergenzbereich (KB)

rechtsseitig (x[n] = 0, n < 0) |z| > Rmax, z = ∞ ∈ KB

linksseitig (x[n] = 0, n > 0) |z| < Rmin, z = 0 ∈ KB

zweiseitig ringformig

endliche Dauer konvergiert ∀zmit Ausnahme z = 0 und/oder z = ∞

Die Zusammenfassung in Tabelle 5.1 kann auch auf die Impulsantwort h[n]linearer, zeitinvarianter und zeitdiskreter Systeme angewendet werden. So liegenzum Beispiel die Pole der Ubertragungsfunktion H(z) = ZT {h[n]} eines kausalenund stabilen zeitdiskreten Systems innerhalb des Einheitskreises in der komplexenz-Ebene.

Page 116: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

106 5 Differenzengleichungen und Z-Transformation

5.4 Inverse Z-Transformation

Wie die Fouriertransformation hat auch die Z-Transformation eine Umkehrope-ration (Rucktransformation), mit der aus X(z) = ZT {x[n]} das Signal x[n] =ZT −1{X(z)} berechnet werden kann. Wir erhalten die inverse Z-Transformation,indem wir davon ausgehen, dass nach Gl. 5.30 X(z) die Fouriertransformation desSignals r−nx[n] ist (mit r im Konvergenzbereich). Dann konnen wir x[n] mit derinversen Fouriertransformation berechnen:

x[n] = rn FT −1{X(rejθ

)}=

1

ˆ 2π

0

X(rejθ

)rnejθn dθ, (5.38)

wobei wir Gl. 4.2 fur die inverse Fouriertransformation verwendet haben. Mit derSubstitution z = rejθ (r = konst.) erhalten wir mit dz = jrejθdθ bzw. dθ =1j z

−1dz die inverse Z-Transformation

x[n] =1

2πj

X(z) zn−1 dz. (5.39)

Das Integrationsintervall θ ∈ [0, 2π] entspricht in Gl. 5.39 einem kreisformigenIntegrationsweg |z| = r (r im Konvergenzbereich), der entgegen dem Uhrzeiger-sinn durchlaufen wird. Fur die Auswertung des Integrals werden Methoden derFunktionentheorie herangezogen, wie z.B. der Residuensatz. In einer Vielzahlvon Anwendungen kommen wir jedoch mit den Tabellen der Formelsammlung inAnhang A aus. Das gilt insbesondere fur Signale, deren Z-Transformationen ra-tionale Funktionen sind. Bei der Behandlung zeitdiskreter Netzwerke haben wirgesehen, dass die Ubertragungsfunktionen aus Polynomen bestehen, deren Koeffi-zienten konstant sind, wenn nur zeitinvariante Netzwerkelemente vorhanden sind(siehe Gl. 5.25 auf Seite 96).

Bei rationalen Funktionen konnen wir durch Partialbruchzerlegung die Be-rechnung der inversen Z-Transformation auf elementare Terme zuruckfuhren, dieeinfach in den Zeitbereich transformiert werden konnen. Wir beginnen mit demFall, dass X(z) nur einfache, voneinander verschiedene Pole besitzt:

X(z) =B(z)

A(z)=

bMzM + bM−1zM−1 + . . .+ b1z + b0

zN + aN−1zN−1 + . . .+ a1z + a0

=bMzM + bM−1z

M−1 + . . .+ b1z + b0(z − z1)(z − z2) · · · (z − zN )

.

(5.40)

Ist der Grad M des Zahlerpolynoms großer oder gleich dem Nennergrad N , danndividieren wir zuerst B(z) durch A(z) und erhalten mit K = M −N :

X(z) = cKzK + cK−1zK−1 + . . .+ c1z + c0

︸ ︷︷ ︸

Null fur M<N

+bN−1z

N−1 + bN−2zN−2 + . . .+ b0

(z − z1)(z − z2) · · · (z − zN ).

(5.41)

Page 117: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.4 Inverse Z-Transformation 107

Auf den Rest

X(z) =bN−1z

N−1 + bN−2zN−2 + . . .+ b0

(z − z1)(z − z2) · · · (z − zN )=

P (z)

(z − z1)(z − z2) · · · (z − zN )(5.42)

wenden wir die Partialbruchzerlegung an:

X(z) =c1

z − z1+

c2z − z2

+ . . .+cN

z − zN. (5.43)

Die Koeffizienten ck ergeben sich einfach nach der Methode von Heavisidedurch beiderseitige Multiplikation von Gl. 5.43 mit (z − zk) und Auswertung derbeiden Gleichungsseiten fur z = zk:

ck =(

(z − zk)X(z))∣∣∣z=zk

, k = 1, 2, . . . , N. (5.44)

Auch bei mehrfachen Polen von X(z) lasst sich die Partialbruchzerlegunganwenden. Wir nehmen an, dass z1 in Gl. 5.42 ein r-facher Pol ist:

X(z) =P (z)

(z − z1)r(z − z2) · · · (z − zN ′). (5.45)

Dann mussen zur Partialbruchzerlegung in Gl. 5.43 Terme mit Potenzen bis zurVielfachheit r hinzugefugt werden:

X(z) =d0

(z − z1)r+

d1(z − z1)r−1

+ . . .+dr−1

(z − z1)

+c2

z − z2+

c3z − z3

+ . . .+cN ′

z − zN ′

.(5.46)

Die Koeffizienten ck der einfachen Pole ergeben sich mit Gl. 5.44. Fur die Bestim-mung der Koeffizienten dk bei den mehrfachen Nullstellen konnen wir wieder nachHeaviside die Gleichungsseiten von Gl. 5.46 mit (z−z1)

r multiplizieren, jetzt abervor dem Auswerten an z = z1 entsprechend oft nach z differenzieren, so dass derReihe nach jeder Koeffizient dk isoliert wird:

dk =1

k!

dk

dzk

(

(z − z1)rX(z)

)∣∣∣z=z1

, k = 0, 1, . . . , r − 1. (5.47)

Beispiel 5.8

Wir berechnen eine inverse Z-Transformation fur

X(z) =z2 + z

z2 + 32z − 1

=z(z + 1)

(z − 1

2

)(z + 2)

. (5.48)

Page 118: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

108 5 Differenzengleichungen und Z-Transformation

Die Nullstellen liegen bei z = 0 und z = −1, die Pole bei z = 12 und

z = −2. Fur die Rucktransformation gibt es drei Moglichkeiten, je nachWahl des Konvergenzbereiches:

1. Konvergenzbereich |z| < 12 , z = 0 im Konvergenzbereich:

Nach Tabelle 5.1 ergibt sich ein linksseitiges Signal. Der Ein-heitskreis liegt nicht im Konvergenzbereich und das Signal ist in-stabil.

2. Konvergenzbereich 12 < |z| < 2:

Ein Blick in die Tabelle 5.1 liefert ein zweiseitiges Signal. DerEinheitskreis ist im Konvergenzbereich. Das Signal ist stabil.

3. Konvergenzbereich |z| > 2, z = ∞ im Konvergenzbereich:

Tabelle 5.1 zeigt ein rechtsseitiges Signal. Der Einheitskreisliegt nicht im Konvergenzbereich und das Signal ist instabil.

Wir beschranken die Berechnung von x[n] auf den 2. Fall, fur denx[n] ein stabiles zweiseitiges Signal ist. Die Ausarbeitung der anderenbeiden Falle verlauft analog. Fur die Partialbruchzerlegung spalten wirz im Zahler von X(z) ab, d. h. X(z) = zX(z). Wir ersparen uns dieDivision des Zahlerpolynoms durch das Nennerpolynom und erhalten

X(z) =c1

z − 12

+c2

z + 2. (5.49)

Die Koeffizienten c1 = 35 und c2 = 2

5 folgen aus Gl. 5.44. Somit ergibtsich eine Darstellung von X(z) mit einfachen Termen zur Rucktrans-formation:

X(z) =3

5

z

z − 12

︸ ︷︷ ︸

rechtsseitiger Signalanteil

+2

5

z

z + 2︸ ︷︷ ︸

linksseitiger Signalanteil

(5.50)

Fur die Rucktransformation der Terme zz−a konnen wir die Ergebnis-

se der Beispiele 5.4 und 5.5 oder die Formelsammlung in Anhang Averwenden:

x[n] =3

5

(1

2

)n

σ[n]− 2

5(−2)n σ[−n− 1] . (5.51)

Fur die Berechnung der inversen Z-Transformation mit MATLAB mussfur die Partialbruchzerlegung mit residuez() die Z-Transformierte alsrationale Funktion in z−1 gegeben sein:

X(z) =1 + z−1

1 + 32z

−1 − z−2. (5.52)

Page 119: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.4 Inverse Z-Transformation 109

In dieser Darstellung ist der Zahlergrad kleiner als der Nennergrad undwir benotigen keine Polynomdivision. Im folgenden MATLAB-Beispielsetzen wir voraus, dass nur einfache Pole vorhanden sind.

% X(z) = (b0 + b1z^-1 + b2z^-2)/(a0 + a1z^-1 + a2z^-2)

b = [1 1 0]; % b = [b0 b1 b2]

a = [1 3/2 -1]; % a = [a0 a1 a2]

[c,p] = residuez(b,a); % X(z) = c(1)/(1-p(1)z^-1)

% + c(2)/(1-p(2)z^-1)

L = 10; % number of time points = 2L

nl = -L:-1; % negative time axis

nr = 0:L-1; % positive time axis

xl = zeros(size(nl)); % xl = left-sided signal part

xr = zeros(size(nr)); % xr = right-sided signal part

for k = 1:length(p)

if abs(p(k)) <= 1 % poles within (and on) unit circle

xr = xr + c(k)*p(k).^nr;

else % poles outside unit circle

xl = xl - c(k)*p(k).^nl;

end

end

x = [xl xr];

stem([nl nr],x), xlabel(’n’), ylabel(’x[n]’);

Fur den Fall mehrfacher Pole ist bei der Verwendung der Funktionresiduez() Vorsicht geboten, da das Auffinden mehrfacher Nullstellenvon Polynomen ein nummerisch heikles Problem ist. Hier ist die alter-native Funktion residue() unter Umstanden besser, bei der X(z) alsrationale Funktion in z (statt z−1) angegeben wird. Wir zeigen dienummerischen Fehler am Beispiel

X(z) =z3

(z − 1)4=

z3

z4 − 4z3 + 6z2 − 4z + 1

=z−1

1− 4z−1 + 6z−2 − 4z−3 + z−4

=1

z − 1+

3

(z − 1)2+

3

(z − 1)3+

1

(z − 1)4

= − 1

(1− z−1)3+

1

(1− z−1)4.

(5.53)

Mit MATLAB erhalten wir die maximalen Fehler fur die Pollagen:

[c,p] = residuez([0 1],[1 -4 6 -4 1])

Page 120: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

110 5 Differenzengleichungen und Z-Transformation

p_error = max(abs(p-1)) % max. error = 2.2337e-04

[c,p] = residue([1 0 0 0],[1 -4 6 -4 1])

p_error = max(abs(p-1)) % max. error = 6.6613e-16

Der maximale Fehler liegt bei residue() im Bereich der Rechengenau-igkeit. Der Fehler von residuez() kann jedoch in vielen Fallen nichttoleriert werden.

5.5 Eigenschaften der Z-Transformation

In Abschnitt 4.1 haben wir die Eigenschaften der Fouriertransformation zeitdis-kreter Signale behandelt und als Motivation die Vereinfachung von Rechenopera-tionen bei Verwendung dieser Eigenschaften erwahnt. Das Gleiche trifft auch furdie Z-Transformation zu, deren wichtigste Eigenschaften wir in diesem Abschnittangeben.

In den folgenden Beziehungen verwenden wir die Z-Transformation fur zwei-seitige Signale, also fur Signale, bei denen sowohl fur positive Zeitpunkte n alsauch fur negative Zeitindizes von Null verschiedene Werte vorhanden sein konnen(siehe Gl. 5.29):

X(z) = ZT {x[n]} =

∞∑

n=−∞x[n] z−n . (5.54)

Linearitat

Die Z-Transformation erfullt die Linearitatsbeziehung

a1x1[n] + a2x2[n]ZT⇐⇒ a1X1(z) + a2X2(z). (5.55)

Der Konvergenzbereich fur die Summe von zwei Z-Transformierten mit ringformi-gen Konvergenzbereichen ist der Uberlappungsbereich der beiden Ringe. Er kannjedoch auch großer sein, wenn zum Beispiel die Summe zweier unendlich langerSignale ein endlich langes Signal ergibt.

Zeitverschiebung und Zeitinversion

Fur x[n−N0] ergibt sich mit Gl. 5.54

x[n−N0]ZT⇐⇒ z−N0 X(z) . (5.56)

Page 121: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.5 Eigenschaften der Z-Transformation 111

Der Konvergenzbereich bleibt bei der Zeitverschiebung erhalten, mit Ausnahmeeventueller zusatzlicher Pole bei z = 0 und z = ∞, bedingt durch den Faktorz−N0 .

Fur die Zeitinversion erhalten wir

ZT {x[−n]} =

∞∑

n=−∞x[−n] z−n =

∞∑

n=−∞x[n] zn = X

(1

z

)

(5.57)

und damit

x[−n]ZT⇐⇒ X

(1

z

)

. (5.58)

Liegt z1 im Konvergenzbereich von X(z), dann ist 1z1

im Konvergenzbereich von

X(1z

)enthalten. Daraus folgt, dass der Radius R, der den Konvergenzbereich von

X(z) begrenzt, in den Radius 1R fur den Konvergenzbereich von X

(1z

)ubergeht.

Frequenzverschiebung (Amplitudenmodulation)

Durch Multiplikation von x[n] mit ejθ0n ergibt sich wie bei der Fouriertransforma-tion eine Verschiebung im Frequenzbereich:

ejθ0nx[n]ZT⇐⇒ X

(ze−jθ0

). (5.59)

Durch∣∣e−jθ0

∣∣ = 1 andert sich der Konvergenzbereich nicht. Die Multiplikation

von z mit e−jθ0 bewirkt eine Drehung von X(z) in der Z-Ebene um den Winkel θ0entgegen dem Uhrzeigersinn. Dadurch wird auch die Lage der Pole und Nullstellenvon X(z) um diesen Winkel gedreht. So wird zum Beispiel eine Nullstelle von X(z)bei z = 1 (Faktor z− 1 in Zahlerpolynom von X(z)) in eine Nullstelle bei z = ejθ0

transformiert.

Eine elementare Anwendung dieser Eigenschaft der Z-Transformation ist dieMultiplikation eines Signals mit (−1)n, also die Vorzeichenumkehr bei jedem zwei-ten Zeitindex. Mit

y[n] = (−1)nx[n] = ejπnx[n] (5.60)

erhalten wir mit Gl. 5.59

Y (z) = X(−z). (5.61)

Symmetrie der Z-Transformation bei reellwertigen Signalen

Fur reellwertige Signale x[n] gilt entsprechend zur Gl. 4.35

x[n] reellwertigZT⇐⇒ X(z∗) = X∗(z). (5.62)

Page 122: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

112 5 Differenzengleichungen und Z-Transformation

Ist X(z) eine rationale Funktion, dann mussen als Konsequenz die Koeffizientenvon Zahler- und Nennerpolynom reellwertig sein. Nur dann ist nach Gl. 5.40 dieBeziehung Gl. 5.62 erfullt. Wegen der reellwertigen Polynomkoeffizienten mussenPole und Nullstellen entweder reellwertig sein oder in konjugiert komplexen Paarenauftreten.

Differenzieren im Z-Bereich

Differenzieren von X(z) nach z ergibt

dX(z)

dz=

∞∑

n=−∞x[n]

dz−n

dz= −z−1

∞∑

n=−∞nx[n] z−n (5.63)

bzw.

nx[n]ZT⇐⇒ −z

dX(z)

dz. (5.64)

Beispiel 5.9

Wir wenden den Zusammenhang Gl. 5.64 auf die Z-Transformierte

X(z) = logez

z − 1= loge z − loge(z − 1) (5.65)

an (loge ist der naturliche Logarithmus). Mit dX(z)dz = 1

z − 1z−1 erhalten

wir

− zdX(z)

dz= −1 +

z

z − 1

ZT⇐⇒ −δ[n] + σ[n], (5.66)

wenn wir den Konvergenzbereich |z| > 1 fur zz−1 nehmen. Damit ergibt

sich mit Gl. 5.64

x[n] =1

nσ[n− 1]. (5.67)

Faltungseigenschaft der Z-Transformation

Auch fur die Z-Transformation gilt die Faltungseigenschaft, die wir bei der Fourier-transformation auf Seite 72 hergeleitet haben:

∞∑

k=−∞x1[k]x2[n− k]

ZT⇐⇒ X1(z)X2(z). (5.68)

Page 123: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.6 Losung von Differenzengleichungen mit der Z-Transformation 113

Der Konvergenzbereich des Produkts der beiden Z-Transformierten ist der Uber-lappungsbereich der einzelnen Konvergenzbereiche. Er kann aber auch großer sein,wenn beispielsweise eine Polstelle von X1(z) durch eine Nullstelle von X2(z) kom-pensiert wird.

5.6 Losung von Differenzengleichungen mit der

Z-Transformation

Einen Weg zur Losung von Differenzengleichungen mit konstanten Koeffizientenhaben wir bereits in Abschnitt 5.1 kennengelernt. Durch den Ansatz yzi[n] = λn

fur die Nulleingangsantwort haben wir aus der homogenen Differenzengleichungein Polynom in λ erhalten. Noch einfacher ist die Losung durch Verwendung derZ-Transformation, mit der nach Gl. 5.56 Zeitverzogerungen um N0 Werte in Mul-tiplikationen mit z−N0 ubergefuhrt werden. Dadurch erhalten wir Polynome imZ-Bereich.

Um Anfangsbedingungen vor dem Einschalten des Eingangssignals zu beruck-sichtigen, wird nicht die Z-Transformation fur zweiseitige Signale verwendet, son-dern der Spezialfall fur rechtsseitige Signale

X(z) = ZT 1{x[n]} =

∞∑

n=0

x[n] z−n, (5.69)

die auch als einseitige oder unilaterale Z-Transformation bezeichnet wird.Wir betrachten die Anregung zeitdiskreter Netzwerke stets beginnend mit demZeitpunkt n = 0, mit eventuell vorhandenen Anfangsbedingungen fur n < 0. Dahergenugt die Verwendung der einseitigen Z-Transformation. Alle Z-Transformiertendieses Abschnitts beziehen sich daher stets auf die einseitige Z-Transformation.

Bei Verwendung der einseitigen Z-Transformation gibt es bei Zeitverschiebun-gen einen Unterschied zur zweiseitigen Transformation. Die einseitige Z-Trans-formation von x[n−N0], N0 ∈ N ergibt namlich

ZT 1{x[n−N0]} =∞∑

n=0

x[n−N0] z−n =

∞∑

n=−N0

x[n]z−n−N0

= z−N0

−1∑

n=−N0

x[n]z−n + z−N0

∞∑

n=0

x[n]z−n

= z−N0

N0∑

n=1

x[−n]zn

︸ ︷︷ ︸

Anfangsbedingungen

+z−N0X(z).

(5.70)

Page 124: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

114 5 Differenzengleichungen und Z-Transformation

Damit erhalten wir fur die Zeitverzogerung (und in entsprechender Weise furdie Voreilung) bei Verwendung der einseitigen Z-Transformation

x[n−N0]ZT 1⇐⇒ z−N0X(z) + z−N0

N0∑

n=1

x[−n]zn, N0 > 0 (5.71)

x[n+N0]ZT 1⇐⇒ zN0X(z)− zN0

N0−1∑

n=0

x[n]z−n, N0 > 0 (5.72)

und fur die haufig vorkommenden Spezialfalle N0 = ±1,±2

x[n− 1]ZT 1⇐⇒ z−1X(z) + x[−1] (5.73)

x[n− 2]ZT 1⇐⇒ z−2X(z) + z−1x[−1] + x[−2] (5.74)

x[n+ 1]ZT 1⇐⇒ zX(z)− zx[0] (5.75)

x[n+ 2]ZT 1⇐⇒ z2X(z)− z2x[0]− zx[1]. (5.76)

Mit der Zeitverschiebungseigenschaft Gl. 5.71 der einseitigen Z-Transformationund der allgemeinen Differenzengleichung (siehe Gl. 5.3 auf Seite 91)

y[n] +N∑

k=1

aky[n− k] =M∑

k=0

bkx[n− k] , (5.77)

erhalten wir

Y (z)

(

1 +

N∑

k=1

akz−k

)

+

N∑

k=1

akz−k

k∑

m=1

y[−m]zm = X(z)

M∑

k=0

bkz−k

+M∑

k=0

bkz−k

k∑

m=1

x[−m]zm.

(5.78)

Ohne Einschrankung des allgemeinen Falls haben wir dabei a0 = 1 gesetzt, da wirfur a0 6= 0 alle Koeffizienten der Differenzengleichung auf a0 normieren (d.h. durcha0 dividieren) konnen. Fur die Losung der allgemeinen Differenzengleichung ergibt

Page 125: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.6 Losung von Differenzengleichungen mit der Z-Transformation 115

sich daher im Z-Bereich

Y (z) =

M∑

k=0

bkz−k

1 +

N∑

k=1

akz−k

X(z)

︸ ︷︷ ︸

H(z)X(z)

+

M∑

k=1

bkz−k

k∑

m=1

x[−m]zm −N∑

k=1

akz−k

k∑

m=1

y[−m]zm

1 +

N∑

k=1

akz−k

︸ ︷︷ ︸

Beitrag der Anfangsbedingungen

.

(5.79)

Der erste Term in Gl. 5.79 entspricht im Zeitbereich der Faltung des Eingangs-signals mit der kausalen Impulsantwort (h[n] ↔ H(z)) und ist damit die Null-zustandsantwort. Der zweite Term ist die Nulleingangsantwort, die bei von Nullverschiedenen Anfangsbedingungen vorhanden ist. In beiden Termen tritt im Nen-ner das charakteristische Polynom auf, das wir bereits auf Seite 92 kennenge-lernt haben. Damit bestimmen die Pole der Ubertragungsfunktion H(z) die Eigen-schwingungen des zeitdiskreten Netzwerks. Diese Eigenschwingungen sind sowohlin der Nulleingangs- als auch in der Nullzustandsantwort enthalten. Die Losungvon Differenzengleichungen mit der Z-Transformation fuhrt damit unmittelbar aufdie Aufspaltung der Losung in Nulleingangs- und Nullzustandsantwort.

Beispiel 5.10

Ein zeitdiskretes Netzwerk sei durch das Schaltbild in Abb. 5.9 gege-ben. Aus dem Schaltbild erhalten wir die Differenzengleichung

y[n] = x[n] + a1y[n− 1] + a2y[n− 2] (5.80)

bzw. mit der einseitigen Z-Transformation

Y (z) = X(z)+a1z−1Y (z)+a1y[−1]+a2z

−2Y (z)+a2z−1y[−1]+a2y[−2]

(5.81)(fur x[n] = 0, n < 0). Aus dieser Gleichung ergibt sich die Losung imZ-Bereich:

Y (z) =z2

z2 − a1z − a2X(z) +

y[−1](a1z2 + a2z) + y[−2]a2z

2

z2 − a1z − a2. (5.82)

Page 126: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

116 5 Differenzengleichungen und Z-Transformation

x[n]

T

T

a1

y[n]

a2

Abbildung 5.9: Rekursives System mit zwei Ruckkopplungen

Als Beispiel verwenden wir fur die Koeffizienten a1 = cos π4 = 1√

2,

a2 = − 14 und fur das Eingangssignal den Einsimpuls x[n] = δ[n].

Bei verschwindenden Anfangsbedingungen y[−1] = y[−2] = 0 ergibtsich damit die Ubertragungsfunktion des Systems

H(z) =z2

z2 − cos π4 z + 1

4

. (5.83)

Die Pole von H(z) liegen bei z1 = 12 e

j π4 und z2 = z∗1 = 1

2 e−j π

4 . MitGl. 5.44 erhalten wir fur die Partialbruchzerlegung

H(z) = z

(c1

z − z1+

c∗1z − z∗1

)

, (5.84)

mit c1 = z1z1−z∗

1= ej

π4

2j sin π4. Fur die inverse Z-Transformation folgt mit

zz−z1

↔ zn1 σ[n] schließlich die Impulsantwort des Systems

h[n] =√2

(1

2

)n

sin(π

4(n+ 1)

)

σ[n]. (5.85)

Mit den speziellen Anfangsbedingungen y[−1] = 0 und y[−2] = 4 liefertGl. 5.82 das Ausgangssignal y[n] = 0, n ≥ 0. Diese Losung erkennenwir auch am Schaltbild Abb. 5.9, da fur n = −2 am Eingang des unte-ren Verzogerungselements der Wert −1 gespeichert wird. Dieser Wertkommt zum Zeitpunkt n = 0 an den Eingang des oberen Addierers undkompensiert dort den Einsimpuls vom Eingang. Damit tritt fur n ≥ 0kein Ausgangssignal auf.Mit dem kurzen MATLAB-Programm konnen die Losungen kontrol-liert und h[n] graphisch dargestellt werden. Die Koeffizientenvektoren

Page 127: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

5.7 Anfangs- und Endwerttheorem der einseitigen Z-Transformation 117

b und a beziehen sich auf die Polynomkoeffizienten, wenn Zahler undNenner von H(z) als Polynome in z−1 angegeben werden. Mit derFunktion filtic() werden die Anfangsbedingungen gesetzt.

Nx = 10;

b = 1; % numerator coefficients

a = [1 -cos(pi/4) 1/4]; % denominator coefficients

x = [1 zeros(1,Nx-1)]; % x[n] = delta[n]

h = filter(b,a,x); % impulse response

z0 = filtic(b,a,[0 4]); % set initial conditions of filter()

y = filter(b,a,x,z0) % y = 0!

stem(0:Nx-1,h);

xlabel(’n’), ylabel(’h[n]’);

5.7 Anfangs- und Endwerttheorem der einseitigen

Z-Transformation

Bei der Untersuchung von Einschwingvorgangen konnen wir die Berechnung des Si-gnalwertes beim Einschalten (x[0]) und des Endwertes x[n], n → ∞ vereinfachen.Fur ein kausales Signal x[n] mit der einseitigen Z-Transformation X(z) erhaltenwir

x[0] = limz→∞

X(z) . (5.86)

Dieser Zusammenhang ergibt sich unmittelbar aus

limz→∞

X(z) = limz→∞

∞∑

n=0

x[n]z−n = x[0] + limz→∞

∞∑

n=1

x[n]z−n

︸ ︷︷ ︸

Null wegen 1zn → 0

. (5.87)

Soll bei kausalen Systemen x[0] endlich sein, dann muss nach Gl. 5.86 auchX(z) fur z → ∞ endlich sein. Daraus ergibt sich fur rationale X(z), dass der Graddes Zahlerpolynoms nicht großer als jener des Nennerpolynoms sein darf.

Fur den Endwert eines kausalen Signals mit der einseitigen Z-Transforma-tion X(z) gilt der Zusammenhang

limn→∞

x[n] = limz→1

(z − 1)X(z), (5.88)

sofern alle Pole von (z−1)X(z) im Inneren des Einheitskreises liegen. Zum Beweisdieser Beziehung berechnen wir zunachst die einseitige Z-Transformation Y (z) des

Page 128: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

118 5 Differenzengleichungen und Z-Transformation

Signals y[n] = x[n+ 1]− x[n]:

Y (z) = ZT 1 {x[n+ 1]}−ZT 1 {x[n]} = zX(z)−zx[0]−X(z) = (z−1)X(z)−zx[0],(5.89)

mit Gl. 5.75 fur die Zeitverschiebung. Fur z → 1 folgt damit

limz→1

Y (z) = limz→1

(z − 1)X(z)− x[0]. (5.90)

Wir konnen den Grenzubergang aber auch direkt mit der Definition der einseitigenZ-Transformation fur Y (z) berechnen:

Y (z) =

∞∑

n=0

(x[n+ 1]− x[n]) z−n

= limk→∞

k∑

n=0

(x[n+ 1]− x[n]) z−n

= limk→∞

(−x[0] + x[1]

(1− z−1

)+ x[2]

(1− z−1

)z−1 + . . .+ x[k + 1]z−k

).

(5.91)

Fur den Grenzubergang folgt daher

limz→1

Y (z) = limz→1

limk→∞

(− x[0] + x[1]

(1− z−1

)+ x[2]

(1− z−1

)z−1 + . . .

+ x[k + 1]z−k)

= limk→∞

limz→1

(− x[0] + x[1]

(1− z−1

)+ x[2]

(1− z−1

)z−1 + . . .

+ x[k + 1]z−k)

= −x[0] + limk→∞

x[k + 1].

(5.92)

Die Vertauschung der Grenzubergange in Gl. 5.92 ist zulassig, da wir vorausset-zen, dass die Z-Transformation existiert und damit die Summe konvergiert. DerVergleich von Gl. 5.92 mit Gl. 5.90 liefert das Endwerttheorem Gl. 5.88.

Page 129: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6

Digitale Filter

Digitale Filter werden in vielen zeitdiskreten Signalverarbeitungssystemen be-notigt. In erster Linie werden sie zur Selektion oder Unterdruckung von Frequenz-bereichen verwendet, um Teile des Eingangssignalspektrums hervorzuheben oderzu entfernen. Ein typisches Beispiel ist die Unterdruckung unerwunschter Signalewie Rauschen, Oberwellen bei nichtlinearen Verzerrungen oder 50 Hz-Storungen(Netzbrummen).

Wir behandeln in diesem Kapitel lineare, zeitinvariante, digitale Filter, derenEingangs/Ausgangsverhalten im Zeitbereich durch die Faltungsoperation und imFrequenzbereich durch Multiplikation des Eingangssignalspektrums mit der Uber-tragungsfunktion charakterisiert wird. Wir verwenden bevorzugt die Beschreibungdurch die Ubertragungsfunktion, da Filterspezifikationen hauptsachlich im Fre-quenzbereich in Form des Frequenzgangs (Amplituden- und Phasenverlauf) gege-ben sind.

Wir beginnen mit der Darstellung idealisierter digitaler Filter als schematisierteSysteme (oder kurz ideale Systeme), deren Bedeutung fur die Signalverarbeitungwir bereits am Anfang von Kapitel 3 besprochen haben. Im Anschluss daran gehenwir auf den Entwurf realer Filter ein, deren Frequenzgang durch eine realisierbareUbertragungsfunktion H(z) approximiert wird. Dabei unterscheiden wir zwischenFIR-Filtern, bei denen die Approximation des Frequenzgangs durch ein Polynomerfolgt, und IIR-Filtern, bei denen H(z) eine rationale Funktion ist.

6.1 Idealisierte zeitdiskrete Filter

Idealisierte Filter haben einen rechteckformigen Amplitudenfrequenzgang. In denDurchlassbereichen wird das Eingangssignalspektrum nicht verandert. In den Sperr-

Page 130: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

120 6 Digitale Filter

bereichen erfolgt die vollstandige Unterdruckung spektraler Komponenten des Ein-gangssignals. Ein Beispiel dazu haben wir in Abb. 3.11 auf Seite 51 bereits angege-ben. Idealisierte Filter haben einen Phasenverlauf der entweder Null oder linear furalle Frequenzen ist. Wir geben jedoch auch Filter an, die einen speziellen Phasen-verlauf und einen konstanten Amplitudenfrequenzgang besitzen. Allen idealisier-ten Filtern ist gemeinsam, dass sie nicht kausal und stabil sind. Sie konnen durchdie Fouriertransformation beschrieben werden, wobei an den Unstetigkeitsstellendas Gibbssche Phanomen auftritt. Die Z-Transformation idealisierter, zeitdiskre-ter Filter existiert wegen der Unstetigkeitsstellen am Einheitskreis (d.h. wegen desrechteckformigen Frequenzgangs) nicht.

Ideales Tiefpassfilter

Fur ein ideales Tiefpassfilter mit rechteckformigem Frequenzgang H(ejθ)und der

Grenzfrequenz θg haben wir im Beispiel 4.1 auf Seite 61 die Impulsantwort h[n]hergeleitet:1

H(ejθ)=

{

e−jθn0 0 ≤ |θ| ≤ θg

0 θg < |θ| ≤ π(6.1)

h[n] =sin θg(n− n0)

π(n− n0), ∀n. (6.2)

In Gl. 6.1 ist ein linearer Phasenterm enthalten, der nach Gl. 4.28 eine zeitlicheVerschiebung der Impulsantwort bewirkt. Fur n0 = 0 erhalten wir ein idealesFilter mit Phase Null (ein so genanntes Nullphasenfilter). Die Impulsantwort istnicht kausal, nicht absolut summierbar und weist eine gerade Symmetrie bezuglichn = n0 auf:

h[n0 + k] = h[n0 − k], ∀k ∈ Z. (6.3)

Wenn wir die aquivalente Dauer der Impulsantwort th als jene Dauer definie-ren, die eine rechteckformige Impulsantwort mit gleicher Signalsumme hat, dannergibt sich mit thhmax =

∑∞n=−∞ h[n] = H

(ej0)= 1 und hmax = h[n0] =

θgπ :

th =

∞∑

n=−∞h[n]

hmax=

π

θg. (6.4)

Dieses Zeitintervall ist auch gleich dem Abstand des ersten Nulldurchgangs dersin x/x-formigen Impulsantwort, vom Zeitpunkt des Maximums der Impulsant-wort aus gemessen. Die aquivalente Dauer th ist nur dann ganzzahlig, wenn θg =

1Die 2π-Periodizitat der Frequenzgange wird in diesem Kapitel nicht extra angegeben.

Page 131: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 121

πN , N ∈ N ist. Eine alternative Definition der aquivalenten Dauer der Impuls-antwort kann uber die Signalenergie erfolgen. Mit der Parsevalschen BeziehungGl. 4.43 und Gl. 4.45 erhalten wir

thE=

∞∑

n=−∞h[n]2

h2max

θg= th. (6.5)

Die aquivalente Dauer der Impulsantwort ist auch gleich der Einschwingzeit desFilters. Als Einschwingzeit definieren wir bei einem Tiefpassfilter die Ubergangs-zeit der Sprungantwort vom niedrigen zum hoheren stationaren Signalwert, wenndie Sprungantwort durch einen rampenformigen Verlauf approximiert wird (sieheAbb. 6.1).

n0

th0

0.5

1

a[n]

n

Abbildung 6.1: Sprungantwort des idealen Tiefpassfilters (θg = π4 )

In Abb. 6.1 ist die Verzogerungszeit n0 und die Anstiegszeit th eingezeichnet.Die Anstiegszeit umfasst 4 Abtastintervalle und liegt symmetrisch zum Zeitpunkt,bei dem die Sprungantwort den Wert 1

2 annimmt (bei entsprechender Interpolati-on!). Die Flanke der rampenformigen Naherung fur die Sprungantwort ist punktierteingezeichnet.

Beispiel 6.1

Wir berechnen und zeichnen die Sprungantwort a[n] mit MATLAB.Mit der Faltungsoperation erhalten wir die Sprungantwort aus der Im-pulsantwort:

a[n] =

∞∑

k=−∞h[k]σ[n− k] =

n∑

k=−∞h[k] . (6.6)

Page 132: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

122 6 Digitale Filter

Das folgende MATLAB-Beispiel berechnet die Sprungantwort des idea-len Tiefpassfilters mit der Grenzfrequenz θg = π

4 :

n = 0:60; % vector of time indices

tg = 1/4; % theta_g/pi

n0 = 30; % delay

h = tg*sinc(tg*(n-n0)); % impulse response

a = cumsum(h); % cumulated sum of vector elements

stem(n,a);

xlabel(’n’), ylabel(’a[n]’);

Ideales Hochpassfilter

Der Frequenzgang eines idealen Hochpassfilters mit der Grenzfrequenz θg ist kom-plementar zum Frequenzgang des idealen Tiefpassfilters:

H(ejθ)= e−jθn0 −HTP

(ejθ)=

{

0 0 ≤ |θ| ≤ θg

e−jθn0 θg < |θ| ≤ π(6.7)

h[n] = δ[n− n0]−sin θg(n− n0)

π(n− n0), ∀n. (6.8)

Denselben Frequenzgang des Hochpassfilters erhalten wir auch durch Verschiebungdes Tiefpassfrequenzgangs mit der Grenzfrequenz π−θg zur Frequenz θ = π. NachGl. 4.32 entspricht diese Verschiebung einer Modulation der Impulsantwort mitejπn = (−1)n:

H(ejθ)= HTP

(ej(θ−π)

)(6.9)

h[n] = (−1)n−n0sin ((π − θg)(n− n0))

π(n− n0), ∀n. (6.10)

Die Impulsantwort des idealen Hochpassfilters zeigt ebenfalls eine gerade Sym-metrie, wie in Gl. 6.3. Die Berechnung der aquivalenten Dauer der Impulsantwortmussen wir uber die Signalenergie durchfuhren, da beim idealen Hochpassfilter dieSumme uber alle Impulsantwortwerte Null ist. Das ideale Hochpassfilter eliminiertja wegen H

(ej0)= 0 den Gleichanteil von Signalen. Mit Gl. 6.5 und Gl. 6.10

erhalten wir

thE=

∞∑

n=−∞h[n]2

h2max

π − θg. (6.11)

Page 133: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 123

Die Sprungantwort des idealen Hochpassfilters ergibt sich aus Gl. 6.8 zu

a[n] = σ[n− n0]− aTP[n]. (6.12)

Ihr Verlauf ist damit gleich der Abweichung der Sprungantwort des idealen Tief-passfilters von der Sprungfunktion. Wegen der Unterdruckung des Gleichanteilsdurch das Hochpassfilter geht a[n] fur n → ∞ gegen Null.

Beispiel 6.2

Mit diesem MATLAB-Beispiel konnen wir Impulsantwort, Sprungant-wort und den Betragsverlauf des Frequenzgangs eines Hochpassfiltersberechnen und graphisch darstellen. Dabei mussen wir beachten, dassdie sinx/x-formige Impulsantwort zeitlich begrenzt wird.

n = 0:60; % vector of time indices

tg = 1/4; % theta_g/pi

n0 = 30; % delay

h_lp = tg*sinc(tg*(n-n0)); % low pass filter impulse response

h = -h_lp;

h(n0+1) = 1 + h(n0+1); % high pass filter impulse response

stem(n,h), xlabel(’n’), ylabel(’h[n]’);

pause; % press a key to continue

a = cumsum(h); % step response

stem(n,a), xlabel(’n’), ylabel(’a[n]’);

pause;

Nf = 512; % number of freq. points in [0,2pi]

f = linspace(0,1,Nf/2+1); % normalized frequency axis

H = fft(h,Nf); % DFT of h for theta in [0,2pi]

H = H(1:Nf/2+1); % freq. response for theta in [0,pi]

plot(f,abs(H)), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})|’), grid on;

Ideales Bandpassfilter

Ein ideales Bandpassfilter selektiert spektrale Anteile des Eingangssignals in denFrequenzintervallen |θ| ≤ θg2 − θg1 (θg2 > θg1). Der Frequenzgang ist damit furθ ∈ [−π, π]:

H(ejθ)=

{

e−jθn0 θg1 ≤ θ ≤ θg2 und − θg2 ≤ θ ≤ −θg10 sonst

. (6.13)

Page 134: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

124 6 Digitale Filter

Die Impulsantwort konnen wir direkt mit der inversen Fouriertransformation Gl. 4.2berechnen:

h[n] =1

ˆ −θg1

−θg2

ejθ(n−n0)dθ +1

ˆ θg2

θg1

ejθ(n−n0)dθ

=1

2πj(n− n0)

(

e−jθg1 (n−n0) − e−jθg2 (n−n0) + ejθg2 (n−n0) − ejθg1 (n−n0))

=sin θg2(n− n0)− sin θg1(n− n0)

π(n− n0)

= 2sin(

θg2−θg12 (n− n0)

)

π(n− n0)︸ ︷︷ ︸

hTP[n]

cos( θg1 + θg2

2︸ ︷︷ ︸

θ0

(n− n0))

, ∀n.

(6.14)

Die Bandpassimpulsantwort zeigt wie die Tiefpassimpulsantwort die gerade Sym-metrie nach Gl. 6.3 und ergibt sich als cosinusformig modulierte Tiefpassimpuls-antwort. Die Modulationsfrequenz ist gleich der Mittenfrequenz (arithmetischesMittel) θ0 des Bandpassfilters. Die Grenzfrequenz des Tiefpassfilters ist durchdie halbe Bandbreite des Bandpasses gegeben. Durch die Modulation wird derFrequenzgang des Tiefpassfilters in die Bandpasslage verschoben. Das Tiefpassfil-ter wird auch als aquivalentes Tiefpassfilter des Bandpassfilters bezeichnet.Aquivalente Tiefpassfilter werden vielfach zur Analyse von Ubertragungssystemeneingesetzt.

Mit der Parsevalschen Beziehung Gl. 4.43 konnen wir wieder die aquivalenteDauer der Impulsantwort berechnen:

thE=

∞∑

n=−∞h[n]2

h2max

θg2 − θg1. (6.15)

Die Bandbreite bestimmt die Dauer der Impulsantwort und damit auch das Ein-schwingverhalten des Filters. Die Berechnung des Einschwingverhaltens von Band-passfiltern ist jedoch etwas komplizierter, da diese Filter normalerweise mit ein-geschalteten cosinusformigen Signalen getestet werden. Wir berechnen zunachstdie Sprungantwort und spezialisieren uns auf den fur die Anwendungen wichtigenFall von Schmalbandsystemen. Bei diesen Systemen setzen wir voraus, dass die

Bandbreite wesentlich kleiner als die Mittenfrequenz ist, d.hθg2−θg1

2 ≪ θg1+θg22 .

Dadurch andert sich das Spektrum des Eingangssignals innerhalb des Durchlassbe-reiches nur sehr wenig und kann als konstant vorausgesetzt werden. Wir erhalten

Page 135: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 125

daher fur die Fouriertransformation A(ejθ)der Sprungantwort mit Gl. 4.21:

A(ejθ)= H

(ejθ)(

1

1− e−jθ+ πδ(θ)

)

e−jθn0 11−e−jθ0

θg1 ≤ θ ≤ θg2e−jθn0 1

1−ejθ0−θg2 ≤ θ ≤ −θg1

0 sonst

,

(6.16)

mit der Mittenfrequenz θ0 =θg1+θg2

2 und θ ∈ [−π, π]. Fur die Sprungantwort a[n]ergibt sich daher nach einigen Umformungen

a[n] ≈ 1

sin θ02

hTP[n] sin

(

θ0

(

n− n0 +1

2

))

(6.17)

mit hTP[n] aus Gl. 6.14. Der Verlauf der Sprungantwort des schmalen Band-passfilters ist gleich der Impulsantwort, mit Ausnahme eines phasenverschobenenTragers. Amplitude und Phasenverschiebung der Sprungantwort hangen von derMittenfrequenz des Bandpassfilters ab.

Beispiel 6.3

Wir berechnen und zeichnen Impuls- und Sprungantwort eines nahe-rungsweise idealen und schmalen Bandpassfilters mit MATLAB, umdie Ergebnisse dieses Abschnitts zu veranschaulichen. Die Impulsant-wort des Filters bestimmen wir mit der Funktion fir1(). Diese Funk-tion wendet die Fenstermethode zum Entwurf von FIR-Filtern an, diewir in Abschnitt 6.2 vorstellen werden.

N = 200;

n = 0:N; % time axis

t0 = 1/4; % center frequency theta_0/pi

tg = 1/40; % cut-off frequency theta_g/pi of

% equivalent low pass filter

h = fir1(N,[t0-tg t0+tg]); % band pass filter impulse response

a = cumsum(h); % step response

plot(n,h,’b’,n,a,’r’), xlabel(’n’), grid on;

ylabel(’h[n], a[n]’), legend(’h[n]’,’a[n]’);

pause; % press a key to continue

x = 0.1*cos(pi*t0*n); % step-modulated input signal

y = filter(h,1,x); % filtered output signal

plot(n,h,’b’,n,y,’r’), xlabel(’n’), grid on;

ylabel(’h[n], y[n]’), legend(’h[n]’,’y[n]’);

Mit diesem MATLAB-Beispiel bestimmen wir auch das Ausgangssi-gnal fur eine eingeschaltete Cosinusschwingung mit einer Fre-quenz gleich der Mittenfrequenz des Bandpassfilters. Es zeigt sich, dass

Page 136: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

126 6 Digitale Filter

auch das Einschwingverhalten dieses Signals von der Dauer der Impuls-antwort des aquivalenten Tiefpassfilters bestimmt wird. Der zeitlicheVerlauf der Einhullenden der Antwort auf das eingeschaltete Cosinus-signal entspricht in diesem Fall (Cosinusfrequenz gleich Bandpassmit-tenfrequenz) der Sprungantwort des aquivalenten Tiefpassfilters.

Ideales Bandsperrfilter

Der Amplitudenfrequenzgang einer idealen Bandsperre ist komplementar zu jenemdes Bandpassfilters. Ahnlich wie beim Hochpassfilter ergibt sich der Frequenzgangder Bandsperre fur θ ∈ [−π, π] aus der Beziehung

H(ejθ)= e−jθn0 −HBP

(ejθ)=

{

0 θg1 ≤ θ ≤ θg2 und − θg2 ≤ θ ≤ −θg1e−jθn0 sonst

.

(6.18)Fur die Impulsantwort erhalten wir

h[n] = δ[n−n0]−2sin(

θg2−θg12 (n− n0)

)

π(n− n0)cos

(θg1 + θg2

2(n− n0)

)

, ∀n. (6.19)

Die Impulsantwort der Bandsperre kann nicht als Modulation der Impulsantworteines aquivalenten Hochpassfilters mit einem cosinusformigen Tragersignal inter-pretiert werden. Das ware nur dann der Fall, wenn in Gl. 6.19 2δ[n − n0] stattδ[n − n0] vorhanden ware. Die Impulsantwort in Gl. 6.19 ist gerade symmetrischbezuglich des Zeitpunktes n0.

Die Dauer der Impulsantwort der Bandsperre berechnen wir wieder mit Hilfeder Parsevalschen Beziehung:

thE=

∞∑

n=−∞h[n]2

h2max

π − (θg2 − θg1). (6.20)

Die Berechnung der Sprungantwort a[n] der Bandsperre kann mit Gl. 6.19 aufdie Sprungantwort des Bandpassfilters aBP[n] zuruckgefuhrt werden:

a[n] = σ[n− n0]− aBP[n]. (6.21)

Da die Sprungantwort des Bandpassfilters fur n → ∞ gegen Null geht, nimmt dieSprungantwort der Bandsperre im eingeschwungenen Zustand den Wert Eins an.

Page 137: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 127

Die Bandsperre verandert ja den Gleichanteil des Eingangssignals nicht. Wenn wirdas Einschwingverhalten einer schmalen Bandsperre betrachten, dann erkennenwir an Gl. 6.21, dass der Einschwingvorgang sprunghaft erfolgt, da bei einemSchmalbandsystem aBP[n] klein gegenuber σ[n−n0] ist. Der Einfluss der Sprung-antwort aBP[n] des Bandpassfilters in Gl. 6.21 außerst sich lediglich in Form einerWelligkeit, die der Sprungfunktion uberlagert ist.

Beispiel 6.4

Wir wiederholen Beispiel 6.3 fur den Fall der Bandsperre mit folgendemMATLAB-Programm:

N = 200;

n = 0:N; % time axis

t0 = 1/4; % center frequency theta_0/pi

tg = 1/40; % cut-off frequency theta_g/pi of

% equivalent high pass filter

h = fir1(N,[t0-tg t0+tg],’stop’); % band stop filter

% impulse response

a = cumsum(h); % step response

plot(n,h,’b’,n,a,’r’), xlabel(’n’), grid on;

ylabel(’h[n], a[n]’), legend(’h[n]’,’a[n]’);

pause; % press a key to continue

x = 0.1*cos(pi*t0*n); % step-modulated input signal

y = filter(h,1,x); % filtered output signal

plot(n,h,’b’,n,y,’r’), xlabel(’n’), grid on;

ylabel(’h[n], y[n]’), legend(’h[n]’,’y[n]’);

Bei der Antwort der Bandsperre auf ein eingeschaltetes Cosinussignalmit einer Frequenz gleich der Mittenfrequenz der Bandsperre ergibtsich ein Einschwingvorgang mit kleiner Amplitude. Im eingeschwunge-nen Zustand wird dieses Signal jedoch unterdruckt.

Idealer Hilberttransformator

Ein fur viele Anwendungen interessantes Filter ist der Hilberttransformator, derals breitbandiger 90◦-Phasenschieber wirkt, mit einem konstanten Betragsverlaufdes Frequenzgangs. Mit der ublichen Signalverzogerung um n0 Zeitpunkte (linearer

Page 138: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

128 6 Digitale Filter

Phasenterm e−jθn0) hat der Frequenzgang fur θ ∈ [−π, π] die Form

H(ejθ)= −j sign(θ) e−jθn0 =

e−j(θn0+π2 ) 0 < θ < π

0 θ = 0, θ = ±π

e−j(θn0−π2 ) −π < θ < 0

, (6.22)

(sign(·) ist die Vorzeichenfunktion, d.h. sign(x) = x|x| , sign(0) = 0). Die Impuls-

antwort des idealen Hilberttransformators berechnen wir direkt mit der inversenFouriertransformation:

h[n] =j

ˆ 0

−π

ejθ(n−n0)dθ − j

ˆ π

0

ejθ(n−n0)dθ

=1

2π(n− n0)

(

1− e−jπ(n−n0) − ejπ(n−n0) + 1)

=1− (−1)n−n0

π(n− n0)

=2(sin π

2 (n− n0))2

π(n− n0)= 2

sin π2 (n− n0)

π(n− n0)sin

π

2(n− n0), ∀n.

(6.23)

Die Impulsantwort des Hilberttransformators kann nach Gl. 6.23 auch als Mo-dulation der Impulsantwort eines idealen Tiefpassfilters (Grenzfrequenz π

2 ) inter-pretiert werden. Das Modulationssignal ist sinusformig mit der Frequenz π

2 . ImGegensatz zu den bisher vorgestellten Filtern ist die Impulsantwort des Hilbert-transformators unsymmetrisch bzgl. des Zeitpunktes n0:

h[n0 + k] = −h[n0 − k], ∀k ∈ Z. (6.24)

Die aquivalente Dauer der Impulsantwort berechnen wir auch hier uber die Signal-energie und erhalten mit hmax = 2

π

thE=

∞∑

n=−∞h[n]2

h2max

=(π

2

)2

. (6.25)

Beispiel 6.5

Wir berechnen Impuls- und Sprungantwort eines naherungsweise idea-len Hilberttransformators. Die Naherung ergibt sich durch die zeitlicheBegrenzung der Impulsantwort. Durch diese Naherung tritt ein Uber-schwingen an den Sprungstellen im Amplitudenfrequenzgang auf. DerPhasenverlauf ist jedoch exakt! Zur graphischen Darstellung der Pha-se wird der lineare Phasenterm (bedingt durch die Signalverzogerung

Page 139: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 129

um n0) kompensiert, so dass nur die −90◦-Verschiebung ubrig bleibt.Die Funktion unwrap() wird benotigt, da die Funktion angle() nurPhasenwerte in [−π, π] liefert.

n = 0:60; % vector of time indices

tg = 1/2; % theta_g/pi

n0 = 30; % delay

h_lp = tg*sinc(tg*(n-n0)); % low pass filter impulse response

h = 2*h_lp .* sin(pi*tg*(n-n0));

stem(n,h), xlabel(’n’), ylabel(’h[n]’);

pause; % press a key to continue

a = cumsum(h); % step response

stem(n,a), xlabel(’n’), ylabel(’a[n]’);

pause;

Nf = 512;; % number of freq. points in [0,2pi]

f = linspace(0,1,Nf/2+1); % normalized frequency axis

H = fft(h,Nf); % DFT of h for theta in [0,2pi]

H = H(1:Nf/2+1); % freq. response for theta in [0,pi]

plot(f,abs(H)), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})|’), grid on;

pause;

phase = unwrap(angle(H)) + n0*f*pi;

plot(f,180/pi*phase), xlabel(’\theta/\pi’);

ylabel(’\angle H(e^{j\theta}) in \circ’), grid on;

Beispiel 6.6

In diesem Beispiel werden wir eine fur praktische Anwendungen wich-tige Darstellung allgemeiner, reellwertiger Bandpasssignale herleitenund zur Bestimmung der Einhullenden dieser Signale heranziehen. DasSpektrum allgemeiner Bandpasssignale ist unsymmetrisch bezuglich ei-ner Modulationsfrequenz (Bezugsfrequenz) θ0 (siehe Abb. 6.2). BeimSpezialfall symmetrischer Bandpasssignale (siehe Gl. 6.14 auf Seite124) ist θ0 gleich dem arithmetischen Mittel der beiden Grenzfrequen-zen).Wir bilden nun das so genannte analytische Signal x+[n], das imGegensatz zum ursprunglichen Bandpasssignal keine Frequenzkompo-nenten fur θ ∈ [−π, 0] hat. Damit kann das Bandpasssignal einfachdurch Modulation mit e−jθ0n in die Tiefpasslage verschoben werden

Page 140: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

130 6 Digitale Filter

1

0

θ

−θ0 θ0 π−π

X(ejθ)

Abbildung 6.2: Spektrum eines unsymmetrischen Bandpasssignals (Be-zugsfrequenz θ0, θ ∈ [−π, π])

2

2

0

θ

θ0 π−π

X+

(ejθ)

0

θ

π−π

Xl

(ejθ)= X+

(

ej(θ+θ0))

Abbildung 6.3: Spektrum des analytischen Signals (oben) und des aqui-valenten Tiefpasssignals (unten)

(Abb. 6.3). Wir erhalten das zum Bandpasssignal gehorende aquiva-lente Tiefpasssignal xl[n] = x+[n]e

−jθ0n. Das analytische Signalx+[n] ist komplexwertig, wobei der Realteil gleich dem ursprunglichenSignal x[n] ist und der Imaginarteil durch Anwendung der Hilbert-transformation H{·} auf x[n] gebildet wird. Dadurch ergibt sich mitx+[n] = x[n] + jH{x[n]} fur das Spektrum

X+

(ejθ)= X

(ejθ)+ sign(θ)X

(ejθ)

=

{

2X(ejθ)

0 < θ ≤ π

0 −π ≤ θ ≤ 0,

(6.26)

mit der Ubertragungsfunktion des Hilberttransformators aus Gl. 6.22(ohne linearen Phasenterm e−jθn0). In Gl. 6.26 setzen wir voraus, dassx[n] keinen Gleichanteil (Offset) hat, d.h.X

(ejθ)|θ=0 = 0). Andernfalls

Page 141: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 131

ware X+

(ej0)= X

(ej0)6= 0 (bedingt durch sign(0) = 0).2 Fur die

Darstellung des allgemeinen Bandpasssignals erhalten wir

x[n] = ℜe{x+[n]} = ℜe{|x+[n]| ejϕ+[n]} = |x+[n]| cosϕ+[n], (6.27)

mit der Einhullenden |x+[n]| und der Momentanphase ϕ+[n] desSignals x[n]. Ein allgemeines (unsymmetrisches) Bandpasssignal kanndamit als amplituden- und phasenmoduliertes Signal dargestellt wer-den. Im Fall eines symmetrischen Bandpasssignals ergibt sich eine reineAmplitudenmodulation (siehe Gl. 6.14).Eine alternative Darstellung erhalten wir mit dem aquivalenten Tief-passsignal xl[n] = x+[n]e

−jθ0n:

x[n] = ℜe{xl[n]ejθ0n} = |xl[n]| cos(θ0n+ ϕl[n])

= xI [n] cos θ0n− xQ[n] sin θ0n ,(6.28)

mit der Inphasekomponente xI [n] = ℜe{xl[n]} und der Quadra-turkomponente xQ[n] = ℑm{xl[n]}. Der Vergleich von Gl. 6.27 mitGl. 6.28 ergibt fur die Einhullende und die Momentanphase von x[n]

|x+[n]| = |xl[n]| =√

x2I [n] + x2

Q[n] (6.29)

ϕ+[n] = θ0n+ ϕl[n] = θ0n+ arctanxQ[n]

xI [n]. (6.30)

Im folgenden MATLAB-Beispiel erzeugen wir ein amplituden- und pha-senmoduliertes Signal, das eine dreieckformige Einhullende und eine li-near ansteigende Frequenz (Chirp) besitzt. Wir entwerfen mit firpm()einen Hilberttransformator und bilden damit das analytische Signal.Danach stellen wir die Einhullende und die Momentanfrequenz (alsPhasendifferenz) des Chirps graphisch dar (siehe Abb. 6.4).

% create amplitude-modulated chirp signal x[n]

N = 200;

n = 0:2*N-1;

n1 = n(1:N);

n2 = n(N+1:end);

theta0 = 2*pi*1/16;

x = [n1/N.*cos(theta0/N*n1.^2) (N-n1)/N.*cos(theta0/N*n2.^2)];

%x = x + 0.1; % uncomment to show influence of a DC component

2Ein konstanter Signalanteil im analytischen Signal x+[n] hat einen unerwunschten Effekt aufEinhullende und Momentanphase von x[n]. Dieser Effekt kann durch Addition einer Konstantenzu x im MATLAB-Beispiel beobachtet werden.

Page 142: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

132 6 Digitale Filter

% form analytic signal using Hilbert transformer

j = 1i;

Nhil = 151;

df = 0.02;

hhil = firpm(Nhil-1,[df 1-df], [1 1], ’Hilbert’);

Nd = floor((Nhil)/2); % used to compensate delay of hhil

xh = filter(hhil,1,[x zeros(1,Nd)]);

xa = x + j*xh(Nd+1:2*N+Nd); % analytic signal

env = abs(xa); % envelope of x[n]

dw = diff(unwrap(angle(xa))); % instantaneous frequency of x[n]

figure(’numbertitle’,’off’,’Position’,[0.01 0.4 0.49 0.6]);

subplot(3,1,1), plot(n,x), grid on

title(’amplitude-modulated chirp’), xlabel(’n’), ylabel(’x[n]’);

subplot(3,1,2), plot(n,env), grid on

xlabel(’n’), ylabel(’envelope’);

subplot(3,1,3), plot(n(1:end-1),dw), grid on

xlabel(’n’), ylabel(’instant. frequency’);

0 50 100 150 200 250 300 350 400−1

−0.5

0

0.5

1amplitude−modulated chirp

n

x[n

]

0 50 100 150 200 250 300 350 4000

0.5

1

1.5

n

envelo

pe

0 50 100 150 200 250 300 350 4000

0.5

1

1.5

2

n

insta

nt. fre

quency

Abbildung 6.4: Einhullende und Momentanfrequenz des amplitudenmo-dulierten Chirp-Signals

Page 143: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.1 Idealisierte zeitdiskrete Filter 133

Beispiel 6.7

Hilberttransformator und analytisches Signal werden auch zur Reali-sierung eines Einseitenbandmodulators verwendet. Im Gegensatzzur Modulation mit einem cosinusformigen Trager (siehe Beispiel 4.5auf Seite 68) wird bei der Einseitenbandmodulation nur ein Teil desSignalspektrums (z.B. der Teil mit positiven Frequenzen) verschoben.Das folgende MATLAB-Beispiel zeigt diese Zusammenhange anhandeines Signals mit dreieckformigem Betragsverlauf des Spektrums. DieFunktionsweise des Einseitenbandmodulators ist in Abb. 6.5 als Block-schaltbild dargestellt. Auf der Eingangsseite wird das analytisches Si-

x[n] y[n]ℜe{·}

x+[n]

hHi[n]

ejθmn

Abbildung 6.5: Blockschaltbild des Einseitenbandmodulators

gnal x+[n] gebildet, das nur spektrale Anteile bei positiven Frequenzenenthalt. Dieses komplexwertige Signal, dessen Imaginarteil das Aus-gangssignal des Hilberttransformators ist, wird durch Modulation indie Bandpasslage verschoben. Durch Realteilbildung erhalten wir dasAusgangssignal. Modulation und Realteilbildung konnen kombiniertwerden, falls keine komplexwertige Signalverarbeitung erwunscht ist.

N = 100;

n = -N:N;

Nx = 2*N+1;

tg = 1/4;

x1 = tg*sinc(tg*n); % signal with rectangular low pass spectrum

x = x1 .*x1; % signal with triangular low pass spectrum

x = x/sum(x);

% form analytic signal using Hilbert transformer

L = 251; % L must be an odd number

df = 0.02;

h = firpm(L-1,[df 1-df],[1 1],’Hilbert’);

Nd = (L-1)/2;

Page 144: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

134 6 Digitale Filter

yh = conv(h,x); % apply Hilbert tranformer

xa = [zeros(1,Nd) x] + 1i*yh(1:Nx+Nd); % analytic signal

Nxa = length(xa);

% modulate with complex exponential signal to shift spectrum

fm = 0.3; % modulation frequency normalized to fs/2

low = 0;

%low = 1; % flip spectrum

if low == 0

p = exp(1i*pi*fm*(0:Nxa-1));

else

p = exp(1i*(pi + pi*fm)*(0:Nxa-1));

end

y = real(p.*xa);

% plot spectra of single sideband modulator

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

Xa = fftshift(fft(xa,Nf));

Y = fftshift(fft(y,Nf));

theta = linspace(-1,1,Nf); % frequency axis theta/pi

subplot(3,1,1), plot(theta,abs(X),style{:}), grid on;

xlabel(’\theta/\pi’), ylabel(’|X(e^{j\theta})|’);

title(’input signal spectrum’);

subplot(3,1,2), plot(theta,abs(Xa),style{:}), grid on;

xlabel(’\theta/\pi’), ylabel(’|X_+(e^{j\theta})|’);

title(’spectrum of analytical signal’);

subplot(3,1,3), plot(theta,abs(Y),style{:}), grid on;

xlabel(’\theta/\pi’), ylabel(’|Y(e^{j\theta})|’);

title(sprintf(’output signal spectrum, \\theta_m = %2.2f’,fm));

Das Ergebnis des MATLAB-Programms ist in Abb. 6.6 dargestellt. Dader Hilberttransformator durch ein FIR-Filter approximiert wird, wer-den die Spektralkomponenten bei negativen Frequenzen nicht exaktunterdruckt. Fur Anwendungen ist diese Abweichung vom idealen Ver-lauf von geringer Bedeutung, in gleicher Weise wie bei jeder Filterungnur Betragsfrequenzgange mit endlicher Flankensteilheit realisierbarsind.

Page 145: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.2 FIR-Filterentwurf 135

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.5

1

θ/π

|X(e

jθ)|

input signal spectrum

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.5

1

1.5

2

θ/π

|X+ (

ejθ

)|

spectrum of analytic signal

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.5

1

θ/π

|Y(e

jθ)|

output signal spectrum, carrier frequency θm

= 0.30

Abbildung 6.6: Spektren fur θ ∈ [−π, π] des Einseitenbandmodulators

6.2 FIR-Filterentwurf

Die Approximation der im vorigen Abschnitt vorgestellten idealen Filter kann un-mittelbar mit FIR-Filtern realisiert werden. Diese Filterklasse, die wir bereits aufSeite 34 und 104 vorgestellt haben, besitzt eine Impulsantwort endlicher Dauer undist damit fur alle moglichen Filterkoeffizienten stabil. Zusatzlich konnen FIR-Filtermit exakt linearem Phasengang entworfen werden. Sie sind einfach zu implemen-tieren, u.a. auch mit der so genannten schnellen Faltung, die wir in Abschnitt 7.1behandeln werden. FIR-Filter werden durch Differenzengleichungen ohne Ruck-kopplungen beschrieben (siehe Gl. 5.3):

y[n] =

N−1∑

k=0

bkx[n− k] =

N−1∑

k=0

h[k]x[n− k] . (6.31)

Die Filterkoeffizienten bk sind gleich den Werten der Impulsantwort h[k] des FIR-Filters (entsprechend der Faltungssumme in Gl. 6.31). Aus dieser Differenzenglei-chung ergibt sich unmittelbar die Realisierung in Form des so genannten digitalen

Page 146: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

136 6 Digitale Filter

Transversalfilters, das neben der Faltungssumme die am haufigsten verwendeteRealisierungsform des FIR-Filters ist (siehe Abb. 6.7).

T T T

y[n]

x[n− 1] x[n− 2]

b0 b1 b2 bN−2 bN−1

x[n] x[n−N + 1]

T

Abbildung 6.7: FIR-Filter als transversales, digitales Filter

Die Ubertragungsfunktion des FIR-Filters folgt aus Gl. 6.31 mit x[n] = δ[n]und durch Anwendung der Z-Transformation:

H(z) =

N−1∑

k=0

h[k]z−k =

N−1∑

k=0

bkz−k =

1

zN−1

N−1∑

k=0

bkzN−1−k. (6.32)

Die Pole eines FIR-Filters liegen alle bei z = 0 (siehe dazu auch Seite 104). Die-se Filter sind daher immer stabil. Die Approximation von Frequenzgangen er-folgt nur durch Verandern der Nullstellenlagen. Mit FIR-Filtern werden daherFrequenzgange durch Polynome approximiert. Wir werden sehen, dass bei steilen(scharfkantigen) Filtern die Filterordnung (N−1 beim FIR-Filter) im Vergleich zurekursiven Filtern, die rationale Funktionen zur Filterapproximation verwenden,wesentlich hoher ist (typisch um einen Faktor 10 . . . 20). Das ist einer der wenigenRealisierungsnachteile von FIR-Filtern.

Die Nullstellen linearphasiger FIR-Filter liegen in der komplexen z-Ebene ent-weder direkt am Einheitskreis oder gespiegelt am Einheitskreis. Als Beispiel zeigenwir in Abb. 6.8 das Pol/Nullstellendiagramm fur das naherungsweise ideale Tief-passfilter von Beispiel 6.1. Das Diagramm erhalten wir mit der MATLAB-Funktionzplane(h,1). Nach Abb. 6.8 liegen die Nullstellen im Durchlassbereich spiegel-bildlich zum Einheitskreis. Im Sperrbereich liegen sie am Einheitskreis.

Die spezielle Lage der Nullstellen ergibt sich aus der Symmetrie der Impulsant-wort, die wir schon bei den idealen Filtern von Abschnitt 6.1 kennengelernt haben.Ist beispielsweise h[n] = h[N − 1− n] (gerade Symmetrie), dann ist mit bk = h[k]das Polynom vonH(z) in Gl. 6.32 spiegelsymmetrisch (b0 = bN−1, b1 = bN−2, . . .).Wenn z0 eine Nullstelle des Polynoms ist, dann ist auch 1

z0(bzw. 1

z∗

0wegen der

reellen bk) eine Nullstelle des Polynoms. Die Nullstellen konnen daher nur amEinheitskreis oder spiegelbildlich zum Einheitskreis liegen.

Bei linearphasigen FIR-Filtern lassen sich je nach FilterlangeN und Symmetrieder Impulsantwort h[n] vier Falle unterscheiden:

Page 147: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.2 FIR-Filterentwurf 137

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

60

ℜe{z}

ℑm

{z}

Abbildung 6.8: Pol/Nullstellendiagramm eines FIR-Tiefpassfilters mit linearerPhase und einer Filterlange N = 61 (Grad des Polynoms von H(z) ist N−1 = 60)

I N gerade, h[n] gerade symmetrisch, d.h. h[n] = h[N − 1− n],

II N ungerade, h[n] gerade symmetrisch,

III N gerade, h[n] ungerade symmetrisch, d.h. h[n] = −h[N − 1− n],

IV N ungerade, h[n] ungerade symmetrisch.

Fur den Fall I erhalten wir durch Einsetzen der Symmetriebedingung von h[n]in Gl. 6.32 mit z = ejθ und M = N−1

2 (N gerade)

H(ejθ) = e−jθM

N2 −1∑

n=0

2h[n] cos θ(n−M)

︸ ︷︷ ︸

A(θ)

(6.33)

Entsprechend ergibt sich fur Fall II (N ungerade)

H(ejθ) = e−jθM

(

h[M ] +

M−1∑

n=0

2h[n] cos θ(n−M)

)

︸ ︷︷ ︸

A(θ)

. (6.34)

Da die Nullphasenkomponente A(θ) eine reellwertige Funktion ist, besitzendiese beiden Filtertypen einen linearen Phasengang. Nur dort, wo A(θ) das Vor-zeichen wechselt (ublicherweise in den Sperrbereichen der Filter), treten 180◦-Phasensprunge auf. Zu beachten ist, dass M im ersten Fall halbzahlig ist, hingegenim zweiten Fall ganzzahlige Werte annimmt.

Page 148: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

138 6 Digitale Filter

Fur FIR-Filter mit ungerade symmetrischen Impulsantworten erhalten wir furFall III (N gerade)

H(ejθ) = e−jθMe−j π2

N2 −1∑

n=0

2h[n] sin θ(n−M)

︸ ︷︷ ︸

A(θ)

(6.35)

und fur Fall IV (N ungerade)

H(ejθ) = e−jθMe−j π2

M−1∑

n=0

2h[n] sin θ(n−M)

︸ ︷︷ ︸

A(θ)

. (6.36)

Diese Beziehungen fur die Frequenzgange werden beim Filterentwurf verwen-det. Sie sind von Vorteil, da nur etwa die Halfte der Filterkoeffizienten berech-net werden muss und außerdem die Approximation von A(θ) (statt |H(ejθ)| ausGl. 6.32) einfacher ist. Das ergibt signifikante Rechenzeiteinsparungen insbeson-dere bei Entwurfsmethoden mit Optimierungsverfahren.

In den folgenden Abschnitten werden die zwei wichtigsten Methoden zum Ent-wurf von FIR-Filtern vorgestellt. Das erste Verfahren geht direkt von den idealenFiltern aus und hat den Vorteil, dass es auch mit geringem Rechenaufwand aus-gefuhrt werden kann. Die zweite Methode beruht auf einem Optimierungsverfah-ren, das bessere Ergebnisse liefert, jedoch nur nummerisch durchgefuhrt werdenkann. Die zweite Methode wird auch nur in ihren Grundzugen skizziert.

6.2.1 FIR-Filterentwurf nach der Fenstermethode

Die Fenstermethode beruht auf einem idealisierten Filter mit der Impulsantworthd[n] (Referenzimpulsantwort). Diese Impulsantwort haben wir in Abschnitt 6.1fur die wichtigsten Filtertypen hergeleitet. Die Referenzfilter sind nicht realisierbar,da sie nicht kausal sind. Sie haben jedoch einen linearen Phasenverlauf durchdie zeitliche Verzogerung der Impulsantwort um n0 Zeitpunkte. Die naheliegendeMethode, um aus diesen idealen Filtern realisierbare Filter zu erhalten, ist diezeitliche Begrenzung der Impulsantwort. In den MATLAB-Beispielen desvorigen Abschnitts haben wir davon bereits Gebrauch gemacht. Wir erreichen diezeitliche Begrenzung durch Multiplikation von hd[n] mit einer Zeitfunktion w[n]endlicher Dauer:

h[n] = hd[n]w[n], 0 ≤ n ≤ N − 1. (6.37)

Je nach Filtertyp verwenden wir fur hd[n] eine der Impulsantworten aus Gl. 6.2,Gl. 6.8, Gl. 6.14, Gl. 6.19 oder Gl. 6.23. Die Zeitverzogerung n0 in diesen Glei-chungen muss entsprechend gewahlt werden, um die Symmetrie der Impulsantwort

Page 149: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.2 FIR-Filterentwurf 139

(und damit die lineare Phase) zu gewahrleisten:

n0 =

⌊N − 1

2

=

{N2 − 1 N geradeN−12 N ungerade

. (6.38)

Die Operation ⌊x⌋ liefert die großte ganze Zahl, die kleiner oder gleich x ist.

Die Zeitfunktion w[n] in Gl. 6.37 wird als Fensterfunktion bezeichnet. ImFrequenzbereich ist der Einfluss der Fensterfunktion durch Faltung der Fourier-transformation des idealen Filters mit der Fouriertransformation des Fensters ge-geben (siehe Gl. 4.40 auf Seite 72). Das Zeitfenster bewirkt daher generell eineVerbreiterung der Ubergangszonen zwischen den Durchlass- und Sperrbereichen.Außerdem tritt bei vielen Fensterfunktionen eine Welligkeit als Abweichung vomrechteckformigen Amplitudenfrequenzgang auf.

Die einfachste Form einer Fensterfunktion ist ein Rechteckfenster der Dau-er N . Leider tritt mit dieser Fensterfunktion bei der Approximation von ideali-sierten (rechteckformigen) Frequenzgangen das Gibbssche Phanomen auf, sodass sich unabhangig von der Filterlange N immer eine maximale Welligkeit imDurchlassbereich von 9% bzw. eine minimale Sperrdampfung von 21 dB ergibt.Durch geeignete Wahl anderer Fensterfunktionen kann das Gibbssche Phanomenvermieden werden, allerdings auf Kosten der Breite der Ubergangszonen zwischenDurchlass- und Sperrbereichen des Filters. Eine der wichtigsten Fensterfunktionenist das verallgemeinerte Cosinusfenster, das im Falle von vier Termen durchfolgende Beziehung gegeben ist:

w[n] =

a0 − a1 cos2πn

N − 1+ a2 cos

4πn

N − 1− a3 cos

6πn

N − 10 ≤ n ≤ N − 1

0 sonst,

(6.39)wobei Fensternamen, MATLAB-Funktionen und Parameter in Tabelle 6.1 zusam-mengefasst sind. Der Vorteil dieser Fensterfunktionen ist die einfache Berechnungfur beliebige Fensterlangen N . Hervorzuheben ist die Nuttall-Fensterfunktion,die sich durch eine hohe Sperrdampfung auszeichnet.3

BeimKaiser-Fenster (MATLAB-Funktion kaiser()) wird neben der Fenster-lange N auch ein Parameter β zur Beeinflussung der Sperrdampfung des entworfe-nen FIR-Filters angegeben. Dieses Fenster stellt einen empirisch gefundenen Kom-promiss zwischen der Breite der Fouriertransformation des Fensters (bestimmt dieBreite der Ubergangszonen zwischen Durchlass- und Sperrbereichen) und der er-

3A. H. Nuttall,”Some windows with very good sidelobe behavior“, IEEE Transactions on

Acoustics, Speech, and Signal Processing, Vol. ASSP-29, No. 1, Feb. 1981

Page 150: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

140 6 Digitale Filter

Tabelle 6.1: Parameter der verallgemeinerten Cosinusfenster

Name MATLAB a0 a1 a2 a3

Rechteck rectwin() 1 0 0 0

Hann hann() 0.5 0.5 0 0

Hamming hamming() 0.54 0.46 0 0

Blackman blackman() 0.42 0.5 0.08 0

Nuttall nuttalwin() 0.3635819 0.4891775 0.1365995 0.0106411

zielbaren Sperrdampfung dar. Die Beziehung fur das Kaiser-Fenster ist

w[n] =

I0

(

β

1−(

2(n−M)N−1

)2)

I0(β)0 ≤ n ≤ N − 1

0 sonst

, (6.40)

mit M = (N −1)/2 und I0(x) als modifizierte Besselfunktion nullter Ordnung, dieam einfachsten durch die Reihenentwicklung

I0(x) = 1 +∞∑

k=1

[(x/2)k

k!

]2

(6.41)

berechnet werden kann. Dabei braucht man in der Regel nur maximal 25 Reihen-glieder zu berucksichtigen. Der Parameter β hangt von der gewunschten Sperr-dampfung ar (in dB) des zu entwerfenden Filters ab:

β =

0 ar < 21

0.5842 (ar − 21)0.4 + 0.07886 (ar − 21) 21 ≤ ar < 50

0.1102 (ar − 8.7) ar ≥ 50

. (6.42)

Ein weiterer, empirisch gefundener Zusammenhang besteht zwischen Filter-lange N , Sperrdampfung ar und der Breite der Ubergangszone ∆f = (fr − fc)/fszwischen Durchlass- und Sperrbereich des Tiefpassfilters:

N = 1 +

⌈ar − 7.95

14.36∆f

, (6.43)

mit der Durchlassgrenzfrequenz fc, der Sperrbereichsgrenzfrequenz fr und derAbtastfrequenz fs (Sperrdampfung ar in dB). Die Operation ⌈x⌉ liefert die kleinsteganze Zahl, die großer oder gleich x ist.

Page 151: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.2 FIR-Filterentwurf 141

Beispiel 6.8

Mit diesem Beispiel untersuchen wir mit MATLAB den Einfluss derFensterfunktion auf den Frequenzgang eines Tiefpassfilters.

N = 61; % FIR filter length (odd!)

n = 0:N-1; % vector of time indices

tg = 1/4; % cut-off frequency theta_g/pi

n0 = (N-1)/2; % filter delay

hd = tg*sinc(tg*(n-n0)); % reference low pass impulse response

w = hamming(N).’;

h = hd .* w;

Nf = 512; % number of freq. points in [0,2pi]

f = linspace(0,1,Nf/2+1); % normalized frequency axis

H = fft(h,Nf); % DFT of h for theta in [0,2pi]

H = H(1:Nf/2+1); % freq. response for theta in [0,pi]

HdB = max(20*log10(abs(H)+eps),-100); % H in dB

% (limited to -100 dB)

plot(f,HdB), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’), grid on;

hold on; % draw all diagrams on same plot

pause; % press a key to continue

w = hann(N).’;

h = hd .* w;

H = fft(h,Nf);

H = H(1:Nf/2+1);

HdB = max(20*log10(abs(H)+eps),-100);

plot(f,HdB,’r’);

pause;

w = blackman(N).’;

h = hd .* w;

H = fft(h,Nf);

H = H(1:Nf/2+1);

HdB = max(20*log10(abs(H)+eps),-100);

plot(f,HdB,’g’);

w = kaiser(N,5).’;

h = hd .* w;

H = fft(h,Nf);

H = H(1:Nf/2+1);

HdB = max(20*log10(abs(H)+eps),-100);

plot(f,HdB,’m’);

hold off;

legend(’hamming’,’hann’,’blackman’,’kaiser’);

Der Betragsverlauf des Frequenzgangs wird im logarithmischen Am-plitudenmaßstab (dB-Skala) graphisch dargestellt. Von den vier ver-

Page 152: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

142 6 Digitale Filter

schiedenen Fenstern zeigt das Kaiser-Fenster den besten Kompromisszwischen Filtersteilheit und Sperrdampfung.

Fur die verschiedenen Typen von FIR-Filtern (und auch fur den Hilbert-transformator) kann mit MATLAB die Funktion fir1() eingesetztwerden, bei der auch noch andere Fenstertypen Anwendung finden.

6.2.2 Optimaler FIR-Filterentwurf mit dem Remez-Algorithmus

Die Fenstermethode zum Entwurf von FIR-Filtern ist suboptimal. So wird bei-spielsweise bei der Approximation eines rechteckformigen Betragsverlaufs des Fre-quenzgangs keine konstante Welligkeit im Durchlass- und im Sperrbereich erzielt.In der Nahe der Sperrfrequenz ist die Dampfung am kleinsten und nimmt bei einemTiefpassfilter in Richtung halbe Abtastfrequenz zu. Ein optimaler Entwurf appro-ximiert rechteckformige Frequenzgange mit konstanter Welligkeit, d.h. im Sinneeiner Tschebyscheff-Approximation. Die so erzeugten Filter haben minimaleFilterlange. Zusatzlich kann im Gegensatz zur Fenstermethode die Welligkeit imDurchlassbereich und im Sperrbereich vorgegeben werden. Die Filterlangen wer-den sich daher bei großen Unterschieden dieser Welligkeiten stark von jenen derFenstermethode unterscheiden.

Der Ausgangspunkt fur das so genannte Equi-Ripple Design ist das Tole-ranzschema von Abb. 6.9. Die optimale Losung zu diesem Toleranzschema muss

��������������������

����������

��������������������

0 fc fr fs/2f

1 + δ1

δ2

1− δ1

|H(f)|

Abbildung 6.9: Toleranzschema fur ein FIR-Tiefpassfilter mit konstanter Welligkeitim Durchlass- und im Sperrbereich

Page 153: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.2 FIR-Filterentwurf 143

sich ohne Spielraum innerhalb der schraffierten Grenzen bewegen. Ein effizientesVerfahren fur den Entwurf optimaler FIR-Filter ist der Remez-Algorithmus,dessen Grundprinzip wir hier nur kurz erlautern. Dazu wird der Ausdruck fur dieNullphasenkomponente A(θ) von Gl. 6.33 als Cosinuspolynom

A(θ) =

N2 −1∑

n=0

an(cos θ)n (6.44)

dargestellt und damit die Beziehung fur die Extremwerte von A(θ) durch

dA(θ)

dθ= − sin θ

N2 −1∑

n=1

nan(cos θ)n−1 = 0. (6.45)

angegeben. Die maximale Anzahl der Nullstellen ist demnach 2+N/2−2, da sin θzwei Nullstellen beisteuert (f = 0 und f = fs/2) und das Polynom vom GradN/2 − 2 maximal N/2 − 2 verschiedene Nullstellen besitzt. Zahlen wir noch dieExtremwerte an den Bandkanten (f = fc und f = fr) hinzu, so ergibt sich einemaximale Anzahl von N/2 + 2 Extrempunkten. Die Anzahl maximal moglicherExtremwerte ist insofern wichtig, da ein Theorem der Approximationstheorie (Al-ternantensatz) besagt, dass ein Entwurf dann optimal ist, wenn in den Durchlass-und Sperrbereichen insgesamt mindestens N/2 + 1 Extrema (so genannte Alter-nanten) mit gleich großer Amplitude, jedoch alternierenden Vorzeichen auftreten(vgl. dazu Abb. 6.9). Dabei kann bei f = 0 oder f = fs/2 ein zusatzliches Extre-mum (Extra-Ripple) vorhanden sein.

Beim Remez-Algorithmus wird diese Tatsache verwendet, indem ausgehendvon einer Startlosung fur die Alternanten (z.B. aquidistante Verteilung mit Aus-nahme der Bandkanten) durch diese Punkte ein trigonometrisches Polynom (wiez.B. Gl. 6.44) gelegt wird. Danach bestimmen wir nummerisch (durch einen feinenFrequenzraster) die Lagen der Extremwerte dieser ersten Approximation. Die La-gen der Extrema werden als Alternanten fur den nachsten Durchlauf verwendet.Die Iteration wird abgebrochen, wenn das Toleranzschema (z.B. Welligkeit δ1 imDurchlassbereich) erfullt ist. Die andere Welligkeit (δ2) ergibt sich automatisch,da beim Entwurf das Verhaltnis δ1/δ2 vorgegeben wird.

Der Remez-Algorithmus ist relativ robust und verglichen mit anderen Opti-mierungsverfahren auch sehr schnell. Wie alle Optimierungsverfahren kann er inbestimmten Fallen unerwunschte Ergebnisse liefern (“lokale Minima”), so dass dasEntwurfsergebnis immer kontrolliert werden sollte (siehe Beispiel 6.9).

Mit MATLAB kann mit der Funktion firpm() (remez() in OCTAVE) dieTschebyscheff-Approximation mit dem Remez-Algorithmus durchgefuhrt werden,wobei jedoch abweichend zu Abb. 6.9 nicht δ1 und δ2, sondern nur das Verhalt-nis δ1/δ2 vorgegeben werden kann. In der Praxis bedeutet das kaum eine Ein-

Page 154: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

144 6 Digitale Filter

schrankung, gegebenenfalls muss man den Filterentwurf wiederholen. Als Start-wert fur die Filterlange wird haufig die Naherung

N ≈ 1 +

⌈−10 log10(δ1δ2)− 13

14.6∆f

(6.46)

verwendet (∆f = (fr − fc)/fs).

Beispiel 6.9

Ein Tiefpassfilter, ahnlich wie in Abb. 6.9, konnen wir mit den folgen-den MATLAB-Befehlen entwerfen:

N = 20; % filter length

be = [0 0.42 0.58 1]; % vector of band edges 0, fc, fr, fs/2

m = [1 1 0 0]; % desired magnitude at given band edges

w = [1 1]; % weight for each band

h = firpm(N-1,be,m,w); % use h = remez(N-1,f,m,w) with OCTAVE

Nf = 512;

f = linspace(0,1,Nf/2+1);

H = fft(h,Nf);

plot(f,abs(H(1:Nf/2+1))), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})|’), grid on;

Besondere Vorsicht ist bei Filtern geboten, die mehrere Ubergangszo-nen zwischen Durchlass- und Sperrbereichen haben. Da nach Gl. 6.46die Filterlange von der Breite ∆f abhangt, sollten die Breiten allerUbergangszonen gleich sein. Sonst kann es zu markanten Abweichun-gen kommen, die wir mit dem folgenden Beispiel eines Bandpassfiltersvorfuhren konnen:

N = 55; % filter length

be = [0 0.2 0.3 0.5 0.7 1]; % band edges 0, fc, fr, fs/2

m = [0 0 1 1 0 0]; % desired magnitude at given band edges

w = [10 1 10]; % weight for each band

h = firpm(N-1,be,m,w); % use h = remez(N-1,f,m); with OCTAVE

Nf = 512;

f = linspace(0,1,Nf/2+1);

H = fft(h,Nf);

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-80);

plot(f,HdB,’r’), xlabel(’\theta/\pi’); % show magnitude response

ylabel(’|H(e^{j\theta})| in dB’), grid on;

hold on; % draw all diagrams on same plot

be = [0 0.2 0.3 0.5 0.6 1]; % use equal transition bands!

Page 155: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 145

h = firpm(N-1,be,m,w);

H = fft(h,Nf);

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-80);

plot(f,HdB,’b’);

hold off

legend(’unequal trans.bands’, ’equal trans.bands’);

6.3 IIR-Filterentwurf

Beim Standardentwurf von IIR-Filtern gehen wir von einem analogen Referenz-filter aus, mit dem die gegebenen Spezifikationen erfullt werden. Durch eine ge-eignete Transformation wird dieses zeitkontinuierliche Filter in ein zeitdiskretesFilter ubergefuhrt. Dabei ist das 2π-periodische Frequenzverhalten des digitalenFilters zu berucksichtigen, da beim Ubergang vom Analog- in den Digitalbereichdie Frequenzachse verzerrt wird. Bei analogen Systemen erstreckt sich die (hal-be) Frequenzachse von Null bis Unendlich, wahrend bei digitalen Systemen derentsprechende Frequenzbereich zwischen Null und halber Abtastfrequenz liegt.

Der Vorteil der Transformation eines Analogfilters in den Digitalbereich liegtdarin, dass fur die gangigen Filtertypen (Tiefpass, Hochpass, Bandpass und Band-sperre) optimale Losungen in Form der elliptischen Filter (Cauer-Filter) exis-tieren. Daher werden fur diese Filter keine aufwendigen Optimierungsprogrammebenotigt. Die Optimierung von IIR-Filtern ist generell schwieriger als jene vonFIR-Filtern, da wegen der rationalen Ubertragungsfunktion eine nichtlineare Opti-mierung erforderlich ist. Außerdem konnen IIR-Filter fur bestimmte Koeffizienteninstabil werden, so dass nicht alle Losungen des Optimierungsproblems sinnvollsind.

Wir beginnen mit der Approximation der Impulsantwort eines Analogfiltersdurch ein rekursives Digitalfilter (Impulsinvarianzmethode). Danach zeigenwir, wie die analogen Standardfilter durch eine geeignete Transformation (bi-lineare Z-Transformation) in Digitalfilter ubergefuhrt werden konnen.

6.3.1 Approximation der Impulsantwort

In der Praxis tritt manchmal der Fall auf, dass die Impulsantwort eines analogenSystems moglichst gut durch digitale Signalverarbeitung nachgebildet werden soll.Anwendungen dieser Art sind beispielsweise die Entwicklung von Simulatoren furDatenubertragungskanale und von Echoentzerrern fur diese Kanale.

Page 156: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

146 6 Digitale Filter

Ist ha(t) die Impulsantwort des Analogfilters mit dem Frequenzgang Ha(jω),dann soll das gesuchte Digitalfilter die Impulsantwort

h[n] = Tha(nT ) (6.47)

(Abtastintervall T = 1/fs) besitzen. Die Skalierung der Impulsantwort mit T istzweckmaßig, da die Analogfilterimpulsantwort normalerweise die Einheit sec−1

hat, wahrend die Impulsantwort des Digitalfilters aus Zahlen ohne Einheiten be-steht.

Die naheliegende Methode zur Approximation der Impulsantwort ist die Ver-wendung eines FIR-Filters durch zeitliche Begrenzung der gegebenen Impulsant-wort. Hat die Impulsantwort jedoch eine lange Dauer, dann ist die Verwendungvon IIR-Filtern vorteilhaft.

Durch die Abtastung der analogen Impulsantwort erhalten wir mit Gl. 4.52 aufSeite 76:

H(ejθ)=

∞∑

k=−∞Ha

(

ej(θT +k 2π

T ))

. (6.48)

(Der Faktor 1T tritt hier im Frequenzbereich im Gegensatz zu Gl. 4.52 nicht auf,

da wir die analoge Impulsantwort mit T multiplizieren.) Damit der FrequenzgangH(ejθ)moglichst gut mit jenem des Analogfilters ubereinstimmt, mussen wir ent-

weder die Abtastfrequenz genugend groß wahlen oder die Impulsantwort ha(t)muss hinreichend bandbegrenzt sein. Sonst treten die bereits bei der Abtas-tung erwahnten Abweichungen durch Aliasing auf.

Beim Entwurf des Digitalfilters nach der so genannten Impulsinvarianzme-thode gehen wir von der Partialbruchzerlegung der Analogfilterubertragungs-funktion aus und beschranken uns auf den Fall einfacher Polstellen von Ha(s):

Ha(s) =

N∑

k=1

Ak

s− sk. (6.49)

Mit Gl. 6.49 erhalten wir fur die Impulsantwort des Analogfilters (siehe For-melsammlung im Anhang A)

ha(t) =N∑

k=1

Akesktσ(t) . (6.50)

Die Impulsantwort des gesuchten Digitalfilters ergibt sich mit Gl. 6.47:4

4Wir setzen voraus, dass ha(t) keine Sprungstelle bei t = 0 hat. Wegen σ[0] = 1 und σ(0) =1/2 konnen wir σ[n] bei n = 0 namlich nicht als Abtastung von σ(t) betrachten (Details inW. Mecklenbrauker,

”Remarks on and correction to the impulse invariant method for the design

of IIR digital filters,“ Signal Processing, vol. 80, pp. 1687-1690, 2000.)

Page 157: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 147

h[n] =N∑

k=1

TAkesknTσ[n] . (6.51)

Die Anwendung der Z-Transformation auf Gl. 6.51 liefert die Ubertragungsfunk-tion

H(z) =

N∑

k=1

TAk

1− eskT z−1. (6.52)

Das Digitalfilter kann direkt aus der Partialbruchzerlegung Gl. 6.52 realisiert wer-den. Dabei kombinieren wir konjugiert komplexe Pole zu Filterblocken zweitenGrades (d.h. mit Ruckkopplungen uber maximal zwei Verzogerungselemente). DieSumme in Gl. 6.52 ergibt dann eine Parallelschaltung von Filterblocken maximalzweiten Grades (siehe Seite 38 bzw. 162).

Beispiel 6.10

Die Ubertragungsfunktion des Analogfilters sei durch

Ha(s) = cb

(s+ a)2 + b2(6.53)

gegeben. Die Polstellen von Ha(s) sind s1,2 = −a ± jb und die Parti-albruchzerlegung ist

Ha(s) =1

2j

c

s+ a− jb− 1

2j

c

s+ a+ jb. (6.54)

Damit erhalten wir mit Gl. 6.52 fur die Ubertragungsfunktion H(z)des Digitalfilters

H(z) =1

2j

cT

1− e−(a−jb)T z−1− 1

2j

cT

1− e−(a+jb)T z−1

= cTz−1e−aT sin bT

1− 2z−1e−aT cos bT + z−2e−2aT

= cTze−aT sin bT

z2 − 2ze−aT cos bT + e−2aT.

(6.55)

Mit der inversen Z-Transformation (siehe Formelsammlung im AnhangA) ergibt sich die Impulsantwort des digitalen Filters

h[n] = cTe−aTn sin bTn σ[n] . (6.56)

Page 158: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

148 6 Digitale Filter

Diese Impulsantwort ist die abgetastete Version der Impulsantwort desAnalogfilters mit der Ubertragungsfunktion Gl. 6.53. Das Schaltbilddes digitalen Filters in Abb. 6.10 konnen wir direkt aus Gl. 6.55 be-stimmen.

T

T

a1

a2

y[n]

x[n] b1

Abbildung 6.10: Schaltbild des Filterblocks zweiten Grades mit denFilterkoeffizienten a1 = 2e−aT cos bT , a2 = −e−2aT und b1 =cTe−aT sin bT

6.3.2 Bilineare Z-Transformation

Die im vorhergehenden Abschnitt vorgestellte Impulsinvarianztransformation zumEntwurf von IIR-Filtern hat den Nachteil, dass die Impulsantwort des analogenReferenzfilters hinreichend bandbegrenzt sein muss. Mit dieser Methode lassen sichbreitbandige Filter nicht optimal realisieren. Wir benotigen daher eine Transfor-mation s → z, bei der die gesamte analoge Frequenzachse auf den Einheitskreis ab-gebildet wird. Eine solche Transformation, die die komplexe s-Ebene (s = σ+ jω)des Analogfilters in die komplexe z-Ebene abbildet, wird durch eine konformeAbbildung in Form der bilinearen Z-Transformation ermoglicht. Diese Trans-formation bildet die gesamte jω-Achse auf den Einheitskreis in der z-Ebene ab.Zusatzlich wird die linke s-Ebene auf das Innere des Einheitskreises abgebildet.Dadurch geht ein stabiles Analogfilter in ein stabiles Digitalfilter uber. Durch diespezielle Abbildung wird die Frequenzachse gestaucht, so dass z.B. die Grenzfre-quenzen des Digitalfilters nicht mit den Grenzfrequenzen des Analogfilters uber-einstimmen. Die Amplitudenachse des Frequenzgangs bleibt hingegen unverzerrt,d.h. Welligkeiten in den Durchlass- und Sperrbereichen bleiben erhalten.

Page 159: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 149

Der mathematische Zusammenhang zwischen s-Bereich und z-Bereich wird beider bilinearen Z-Transformation durch

s =2

T

z − 1

z + 1(6.57)

beschrieben, mit dem Abtastintervall T = 1fs . Fur die Frequenzachsen ergibt sich

mit s = jω und z = ejθ aus Gl. 6.57

ω =2

Ttan

θ

2. (6.58)

Fur θ = π folgt ω → ∞, so dass die gesamte Halbachse ω ∈ [0,∞] auf denEinheitskreisbogen mit den Winkeln θ ∈ [0, π] abgebildet wird (siehe Abb. 6.11).

0 0.5 1 1.5 2 2.5 30

5

10

15

05

1015

−60

−40

−20020

0 0.5 1 1.5 2 2.5 3−60

−40

−20

0

20

ω

dB

dB

θ

ω = 1

ω =tan θ

2

tanπ fcfs

θc = 2π fcfs

|Ha(jω)|

∣∣H(ejθ)

∣∣

Abbildung 6.11: Transformation eines normierten Analogfilters Ha(s) in ein Digi-talfilter H(z) mit der bilinearen Z-Transformation

Mit der bilinearen Z-Transformation Gl. 6.57 erhalten wir aus einer gegebenenUbertragungsfunktion Ha(s) des Analogfilters die Ubertragungsfunktion H(z) desgesuchten Digitalfilters:

H(z) = Ha(s)∣∣∣s= 2

Tz−1z+1

. (6.59)

Page 160: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

150 6 Digitale Filter

Das Design des Digitalfilters besteht daher im Auffinden einer geeigneten Analog-filterubertragungsfunktion. Wegen der Frequenzverwerfung (Gl. 6.58) mussen diegegebenen Grenzfrequenzen des Digitalfilters in jene des Analogfilters umgerechnetwerden (siehe Abb. 6.11).

Wir behandeln im Folgenden die grundlegenden Approximationen fur analo-ge Tiefpassfilter, namlich Butterworth- und Tschebyscheff-Filter, sowie elliptischeFilter. Fur jedes dieser Filter geben wir Entwurfsbeispiele mit MATLAB an. Ana-logfilter werden mit Filtertabellen oder -programmen im Normalfall als normierteAnalogfilter bestimmt. Fur einen Butterworth-Tiefpass N-ter Ordnung istdas Quadrat des Betragsfrequenzgangs durch

|Ha(ω)|2 =1

1 + ω2N(6.60)

gegeben, wobei ω hier auf die 3 dB-Grenzfrequenz normiert ist (siehe Abb. 6.12).

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.2

0.4

0.6

0.8

1

ω

|H(j

ω)|

2

Butterworth Filter, N = 5

Abbildung 6.12: |Ha(ω)|2 eines normierten, analogen Butterworth-Tiefpassfilters

Wenn wir s in Gl. 6.57 auf die Grenzfrequenz des Analogfilters normierenund diese Grenzfrequenz mit Gl. 6.58 auf die gewunschte Grenzfrequenz fc desDigitalfilters vorverzerren, dann erhalten wir mit Gl. 6.57 die normierte Formder bilinearen Z-Transformation

s =1

tanπ fcfs

z − 1

z + 1, (6.61)

mit der Normierungsfrequenz fc (z.B. Grenzfrequenz des Digitalfilters) und derAbtastfrequenz fs. In Gl. 6.61 ist s jetzt normiert, d.h. wir durfen diese Gleichungnur auf normierte Analogfilter anwenden! Im folgenden Beispiel zeigen wir, dass

Page 161: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 151

durch die spezielle Lage der Pole des analogen Butterworth-Filters die Ubertra-gungsfunktion des digitalen Filters in geschlossener Form angegeben werden kann.Fur den Entwurf von Butterworth-Filtern genugt daher ein Taschenrechner.

Beispiel 6.11

Als Beispiel soll der Entwurf eines digitalen Butterworth-Tiefpassesmit den Parametern N , fc und fs vorgefuhrt werden. Das zugehorigeAnalogfilter hat die Ubertragungsfunktion

Ha(s) =k0

N∏

k=1

(s− sk)

, (6.62)

mit den Polen sk = ejπ(12+

2k−12N ), k = 1, 2 . . . N , und dem Verstarkungs-

faktor k0 = −∏N

k=1 sk, der Ha(0) = 1 bewirkt. Die Pole des analogenButterworth-Tiefpassfilters liegen somit auf dem Einheitskreis in ders-Ebene (nicht zu verwechseln mit dem Einheitskreis in der z-Ebene!).Dieser Kreis in der s-Ebene wird durch die bilineare Z-Transformationzu einer Ellipse in der z-Ebene.Wird die normierte Form der bilinearen Z-Transformation in Gl. 6.62eingesetzt, dann erhalten wir die Ubertragungsfunktion des gesuchtenDigitalfilters

H(z) =k0v

N∏

k=1

(1− vsk)

(z + 1)N

N∏

k=1

(z − zk)

, (6.63)

mit zk =1 + vsk1− vsk

und v = tanπfcfs

. Alle N Nullstellen von H(z) lie-

gen bei z = −1 (θ = π). Wir konnen H(z) in Gl. 6.63 mit MATLABauswerten oder direkt die Funktion butter() zum Filterentwurf an-wenden:

N = 5; % filter order

tc = 1/4; % fc/(fs/2) (-3dB cutoff-frequency)

[b,a] = butter(N,tc); % H(z) = B(z)/A(z)

Nf = 512;

f = linspace(0,1,Nf/2+1); % frequency theta/pi from 0 ... 1

H = freqz(b,a,pi*f); % frequency response

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-100);

Hphi = 180/pi*unwrap(angle(H));

Page 162: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

152 6 Digitale Filter

subplot(2,1,1), plot(f,HdB), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’), grid on;

subplot(2,1,2), plot(f,Hphi), xlabel(’\theta/\pi’);

ylabel(’\angle H(e^{j\theta}) in ◦’), grid on;

pause; % press a key to continue

subplot(1,1,1), zplane(b,a); % poles and zeroes

Tschebyscheff-Filter liefern eine bessere Approximation von rechteckformi-gen Frequenzgangen als Butterworth-Filter. Sie besitzen entweder eine konstan-te Welligkeit im Durchlassbereich (Tschebyscheff I Filter) oder im Sperrbereich(Tschebyscheff II Filter). Fur ein analoges Tschebyscheff-Filter vom Typ I ist dasQuadrat des Betragsfrequenzgangs

|Ha(ω)|2 =1

1 + (εTN (ω))2(6.64)

(siehe Abb. 6.13). Bei der Grenzfrequenz (ω = 1) ist |Ha(1)|2 = 11+ε2 . Das Tsche-

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.2

0.4

0.6

0.8

1

ω

|H(j

ω)|

2

Tschebyscheff I Filter, N = 5

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.2

0.4

0.6

0.8

1

ω

|H(j

ω)|

2

Tschebyscheff II Filter, N = 5

Abbildung 6.13: |Ha(ω)|2 von normierten, analogen Tschebyscheff-Filtern

byscheff II Filter hat

|Ha(ω)|2 =1

1 +

(

εTN (ωr)

TN

(ωr

ω

)

)2 , (6.65)

mit |Ha(1)|2 = 11+ε2 (siehe Abb. 6.13). In beiden Fallen ist TN (ω) das Tschebyscheff-

Polynom N-ter Ordnung

TN (ω) =

{

cos(N cos−1 ω

)|ω| ≤ 1

cosh(N cosh−1 ω

)|ω| > 1

. (6.66)

Page 163: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 153

Auch bei Tschebyscheff-Filtern konnen wir Pole und Nullstellen geschlossenberechnen. Wir beschranken uns jedoch im folgenden Entwurfsbeispiel auf die An-wendung von MATLAB. Dabei mussen wir beachten, dass bei Tschebyscheff IIFiltern in MATLAB die Normierungsfrequenz nicht die Frequenz der Durchlass-kante, sondern jene der Sperrbereichskante ist.

Beispiel 6.12

In diesem Beispiel berechnen wir Betrags- und Phasenverlauf digialerFilter mit Tschebyscheff I und II Approximation.

% Tschebyscheff I Filter

N = 5; % filter order

rp = 1; % pass band ripple in dB

tc = 1/4; % fc/(fs/2) (-rp dB cutoff-frequency)

[b,a] = cheby1(N,rp,tc);

Nf = 512;

f = linspace(0,1,Nf/2+1); % frequency theta/pi from 0 ... 1

H = freqz(b,a,pi*f); % frequency response

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-100);

Hphi = 180/pi*unwrap(angle(H));

subplot(2,1,1), plot(f,HdB), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’), grid on;

subplot(2,1,2), plot(f,Hphi), xlabel(’\theta/\pi’);

ylabel(’\angle H(e^{j\theta}) in ◦’), grid on;

pause; % press a key to continue

subplot(1,1,1), zplane(b,a); % poles and zeroes

pause;

% Tschebyscheff II Filter

N = 5; % filter order

rs = 70; % stop band ripple in dB

tc = 1/4; % fc/(fs/2) (-rs dB cutoff-frequency)

[b,a] = cheby2(N,rs,tc);

Nf = 512;

f = linspace(0,1,Nf/2+1);

H = freqz(b,a,pi*f);

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-100);

Hphi = 180/pi*unwrap(angle(H));

subplot(2,1,1), plot(f,HdB), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’), grid on;

subplot(2,1,2), plot(f,Hphi), xlabel(’\theta/\pi’);

ylabel(’\angle H(e^{j\theta}) in ◦’), grid on;

pause;

subplot(1,1,1), zplane(b,a); % poles and zeroes

Page 164: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

154 6 Digitale Filter

Im Gegensatz zu einem Butterworth-Filter oder Tschebyscheff I Filterliegen beim Tschebyscheff II Filter nicht alle Nullstellen bei z = 1,sondern auch in der Nahe der Sperrbereichskante. Dadurch sind Filtervom Typ Tschebyscheff II bei gleicher Filterordnung N steiler in derUbergangszone. Sie haben jedoch eine geringere Sperrdampfung als dieanderen beiden Filtertypen.

Die Approximation eines rechteckformigen Betragsfrequenzgangs mit konstan-ter Welligkeit im Durchlass- und im Sperrbereich (ein so genanntes Equi-RippleDesign) kann mit elliptischen Filtern erreicht werden (siehe Abb. 6.14).

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20

0.2

0.4

0.6

0.8

1

ω

|H(j

ω)|

2

Elliptisches Filter, N = 5

Abbildung 6.14: |Ha(ω)|2 eines normierten, analogen, elliptischen Filters (mitgroßer Welligkeit zur besseren Sichtbarkeit)

Die Berechnung der Pole und Nullstellen elliptischer Filter ist nicht mehr miteinem einfachen Taschenrechner durchfuhrbar. Wir konnen entweder Filtertabellenoder MATLAB fur das Design dieser Filter heranziehen.

Beispiel 6.13

Mit der MATLAB-Funktion [b,a] = ellip(N,rp,ar,fc) kann eindigitales elliptisches Tiefpassfilter mit der Ordnung N, der Welligkeitim Durchlassbereich rp und der Sperrdampfung ar (beide in dB), sowieder Durchlassgrenzfrequenz fc entworfen werden.

N = 5; % filter order

Page 165: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 155

rp = 1; % pass band ripple in dB

rs = 70; % stop band ripple in dB

tc = 1/4; % fc/(fs/2) (-rs dB cutoff-frequency)

[b,a] = ellip(N,rp,rs,tc);

Nf = 512;

f = linspace(0,1,Nf/2+1);

H = freqz(b,a,pi*f);

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-100);

Hphi = 180/pi*unwrap(angle(H));

subplot(2,1,1), plot(f,HdB), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’), grid on;

subplot(2,1,2), plot(f,Hphi), xlabel(’\theta/\pi’);

ylabel(’\angle H(e^{j\theta}) in ◦’), grid on;

pause;

subplot(1,1,1), zplane(b,a); % poles and zeroes

6.3.3 Minimalphasige Digitalfilter

Beim Entwurf digitaler Filter mit der bilinearen Z-Transformation entstehen Filtermit nichtlinearem Phasenverlauf. Die Impulsantwort dieser Filter wird daher keineSymmetrie, wie bei den FIR-Filtern mit linearer Phase in Abschnitt 6.2, aufweisen(siehe Abb. 6.15). Allerdings zeigen die Impulsantworten der im Abschnitt 6.3 vor-gestellten IIR-Filter eine minimale Signalverzogerung. Diese Signalverzogerung ist

0 10 20 30 40 50 60 70 80 90 100−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

n

h[n

]

Abbildung 6.15: Impulsantwort des elliptischen Tiefpassfilters von Beispiel 6.13

Page 166: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

156 6 Digitale Filter

stets kleiner als jene von kausalen, linearphasigen FIR-Filtern. Digitale Filter mitminimaler Signalverzogerung sind so genannte minimalphasige digitale Filter.Ihr Pol/Nullstellendiagramm ist dadurch ausgezeichnet, dass keine Nullstelle au-ßerhalb des Einheitskreises liegt. Nullstellen minimalphasiger Digitalfilter musseninnerhalb des Einheitskreises oder am Einheitskreis liegen. Ein Sonderfall sindFilter, bei denen alle Nullstellen innerhalb des Einheitskreises liegen. Sie werdenals streng minimalphasige Digitalfilter bezeichnet. Sie haben die zusatzlicheEigenschaft, dass sie invertierbar sind, d.h. zur stabilen UbertragungsfunktionH(z) existiert auch die stabile inverse Ubertragungsfunktion 1

H(z) , deren Pole die

Nullstellen von H(z) sind (und umgekehrt).

Beliebige digitale Filter sind im allgemeinen Fall nicht minimalphasig. Siekonnen jedoch als Kaskadenschaltung eines minimalphasigen Filters undeines Allpassfilters dargestellt werden (H(z) = Hm(z)Ha(z)). Man sieht dasam einfachsten an den Pol/Nullstellendiagrammen der Teilfilter Hm(z) und Ha(z)(siehe Abb. 6.16). Die Nullstellen von H(z) außerhalb des Einheitskreises werden

ℑm{z}

ℜe{z}10

ℑm{z}

ℜe{z}10

ℑm{z}

ℜe{z}10

Abbildung 6.16: Pol/Nullstellendiagramme von H(z) eines kausalen, stabilen Di-gitalfilters (links), des minimalphasigen Teilfilters Hm(z) (Mitte) und des Allpass-teilfilters Ha(z) (rechts)

in den Einheitskreis gespiegelt, d.h. eine Nullstelle bei z0 wird durch 1/z∗0 ersetzt.Das Minimalphasenfilter in Abb. 6.16 erhalt dadurch zwei zusatzliche Nullstel-len innerhalb des Einheitskreises. Das Allpassfilter in Abb. 6.16 kompensiert dieseExtranullstellen durch zwei Polstellen. Da bei einem Allpassfilter Pole und Null-stellen spiegelbildlich zum Einheitskreis liegen, liefert das Allpassfilter die außenliegenden Nullstellen des gegebenen allgemeinen Systems.

Ein Allpassfilter hat einen konstanten Amplitudenfrequenzgang. Jedes spiegel-bildlich zum Einheitskreis gelegene Pol/Nullstellenpaar (1/z∗0 , z0) liefert namlichH0(z) = z−z0

zz∗

0−1 als Beitrag zur Ubertragungsfunktion Ha(z). Fur den Betrag er-

halten wir

|H0(z)|2 =(z − z0)(z − z0)

(zz∗0 − 1)(zz∗0 − 1)∗=

|z|2 − 2ℜe{z0z∗}+ |z0|2

|z|2 |z0|2 − 2ℜe{zz∗0}+ 1. (6.67)

Page 167: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.3 IIR-Filterentwurf 157

Mit z = ejθ und z0 = r0ejθ0 ergibt sich damit fur den Betragsfrequenzgang

∣∣H0(e

jθ)∣∣2=

1− 2r0 cos(θ0 − θ) + r20r20 − 2r0 cos(θ − θ0) + 1

= 1 . (6.68)

Als nachstes zeigen wir, dass Digitalfilter mit Nullstellen von H(z) innerhalbdes Einheitskreises eine (betragsmaßig) kleinere Phase im Frequenzintervall [0, π]aufweisen, als im Fall außen liegender Nullstellen. Wir betrachten dazu ein kausa-les, stabiles Digitalfilter mit einer Nullstelle auf der reellen Achse in der z-Ebene:

H(z) = 1− bz−1 =z − b

z. (6.69)

Fur z = ejθ erhalten wir fur den Phasenfrequenzgang von H(ejθ) =∣∣H(ejθ)

∣∣ ejφ(θ)

φ(θ) = −θ + arctan

(sin(θ)

cos(θ)− b

)

= −θ + atan2 (sin(θ), cos(θ)− b) (6.70)

(b reellwertig, rechte Variante fur die Berechnung mit MATLAB). In Abb. 6.17erkennen wir die geringere Phasendrehung fur b < 1. Diese Beobachtung der Mi-nimalphasigkeit ergibt sich auch bei komplexwertigen Nullstellen.

θ/π0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

φ(θ

) in

°

0

20

40

60

80

100

120

140

160

180

b = 2

b = 1.25

b = 1.0

b = 0.75

b = 0.5

Abbildung 6.17: Phasenfrequenzgang φ(θ) des Filters Gl. 6.69 fur verschiedeneLagen der Nullstelle z0 = b

Minimalphasige Systeme sind auch dadurch ausgezeichnet, dass Betragsver-lauf (in Form des Dampfungsverlaufes) und Phasenverlauf von H(ejθ) nicht un-abhangig voneinander sind, sondern uber die Hilberttransformation miteinander

Page 168: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

158 6 Digitale Filter

verknupft sind.5 Wir konnen daher bei minimalphasigen Filtern nicht Amplituden-gang und Phasengang vorgeben. Durch Kombination des minimalphasigen Filtersmit Allpassfiltern kann jedoch auch der Phasenverlauf so beeinflusst werden, dassneben Vorgaben des Amplitudengangs auch jene des Phasengangs moglich sind.Allerdings erhoht sich durch die Kombination mit Allpassen die Verzogerungszeitdes gesamten Filters.

Beim Entwurf von IIR-Filtern haben wir uns auf Tiefpassfilter beschrankt.Andere Filtertypen, wie Hochpass-, Bandpass- und Bandsperrfilter konnen wirmit MATLAB entwerfen. Es gibt aber auch die Moglichkeit, durch so genannteFrequenztransformationen andere Filtertypen aus einem Tiefpassfilter zu er-zeugen. Wir gehen auf diese Methoden nicht naher ein und verweisen auf das Buchvon L.B. Jackson in den Literaturempfehlungen auf Seite 245.

6.4 Realisierung von IIR-Filtern

Die einfachste Realisierung von IIR-Filtern N -ter Ordnung ist die direkte Verwen-dung der Differenzengleichung 5.3 auf Seite 91. Ein mogliches digitales Netzwerkmit N Ruckkopplungen ist in Abb. 6.18 angegeben (fur N = M in Gl. 5.3). Diese

T

T−a1

−a2

−aN

b0

b1

b2

bN

y[n]

TeilTeilnichtrekursiver rekursiver

x[n]

Abbildung 6.18: Direkte Realisierung der Differenzengleichung 5.3 fur IIR-FilterN -ter Ordnung

5Eine ausfuhrliche Darstellung dazu ist im Buch von A.V. Oppenheim, R. W. Schafer, Digital

Signal Processing, Chapter 7, pp. 345-353, Prentice-Hall, Inc., 1975, zu finden.

Page 169: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.4 Realisierung von IIR-Filtern 159

Struktur wird auch in MATLAB zur Filterimplementierung eingesetzt (Funktionfilter()). Da mit MATLAB Arithmetikoperationen in Gleitkommazahlendar-stellung mit mindestens doppelter Genauigkeit ausgefuhrt werden, ist diese Filter-struktur auch fur relativ große Filterordnungen N (typisch N ≈ 15 . . . 20) geeignet.Wird jedoch eine geringere Rechengenauigkeit verwendet, wie z.B. bei Festkomma-signalprozessoren, dann ist die direkte Realisierung ungeeignet. Der Grund dafurliegt in der Empfindlichkeit der Pole und Nullstellen der Ubertragungsfunktion inBezug auf die Filterkoeffizienten. Diese mussen fur N > 10 sehr genau sein, daschon bei geringen Toleranzen (durch Quantisierung der Koeffizienten) markanteAbweichungen in der Filtercharakteristik zu beobachten sind.

Zusatzlich konnen durch die Quantisierung der Multiplikationen in den Ruck-kopplungsschleifen Schwingungen entfacht werden (so genannte Grenzzyklen).Bei reduzierter Rechengenauigkeit wird man daher Strukturen mit Ruckkopplun-gen uber maximal zwei Verzogerungselemente einsetzen, um diese Wortlangen-effekte zu unterdrucken.

Eine Realisierung von IIR-Filtern hoherer Ordnung durch Filterblocke maximal2. Ordnung wird durch die Faktorisierung der Polynome der Ubertragungs-funktion erreicht. Werden beim Zahler- und Nennerpolynom von Gl. 5.25 die Li-nearfaktoren mit konjugiert komplexen Nullstellen zu quadratischen Ausdruckenzusammengefasst, dann erhalten wir fur M = N und mit L =

⌊N+12

H(z) = g

L∏

k=1

1 + β1kz−1 + β2kz

−2

1 + α1kz−1 + α2kz−2

︸ ︷︷ ︸

Hk(z)

. (6.71)

Fur ein ungerades N ist z.B. α21 = β21 = 0. Mit Gl. 6.71 ergibt sich eine Kaska-denschaltung von Filterblocken Hk(z), wie sie in Abb. 6.19 dargestellt ist (sieheauch die Kettenschaltung auf Seite 39). Jeder Block der Kaskadenschaltung kannmit der Filterstruktur in Abb. 6.18 mit N = 2 (Filterblock 2. Ordnung) und N = 1(Filterblock 1. Ordnung) realisiert werden.

gβ11, β21

α11, α21

β12, β22

α12, α22 α1L, α2L

β1L, β2L

Abbildung 6.19: Kaskadenform digitaler Filter

Bei der Kaskadenform digitaler Filter spielt (zumindest bei Gleitkomma-rechengenauigkeit) die Reihenfolge der Filterblocke und die Zusammenfassung kon-jugiert komplexer Pole und Nullstellen zu Filterblocken 2. Ordnung keine Rolle.Eine ubliche Regel ist die Kombination benachbarter Pole und Nullstellen, so dass

Page 170: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

160 6 Digitale Filter

die Signalverstarkung der Pole durch die benachbarten Nullstellen moglichst gutkompensiert wird. Dadurch erzielen wir auch bei der Implementierung mit Fest-kommasignalprozessoren eine gute Aussteuerbarkeit der Filter. Zusatzlich wird derFaktor g in Abb. 6.19 auf alle Stufen der Kaskade aufgeteilt, um eine zu starkeSignalabschwachung am Eingang zu vermeiden. Ein Beispiel fur die Zusammen-fassung von Polen und Nullstellen ist in Abb. 6.20 gezeigt.

ℑm{z}

ℜe{z}10

H1(z) H2(z)

Abbildung 6.20: Beispiel fur die Zusammenfassung von Polen und Nullstellen beider Kaskadenform (N = 4, H(z) = H1(z)H2(z) = H2(z)H1(z))

Beispiel 6.14

Mit MATLAB kann die Kaskadenform mit der Funktion tf2sos()

aus der Polynomdarstellung der Ubertragungsfunktion H(z) gewonnenwerden. Dabei wird die oben erwahnte Zusammenfassung von Polenund Nullstellen durchgefuhrt und die Reihenfolge der Filterblocke nachzunehmenden Polradien festgelegt (Pole nahe am Einheitskreis werdenBlocken am Ende der Kaskade zugeordnet). Mit einem zusatzlichenFunktionsargument von tf2sos konnen die Blocke jedoch auch nachanderen Strategien (z.B. nach abnehmenden Polradien) gereiht werden.Die Filterkoeffizienten werden von tf2sos in einer Matrix gespeichert:

C =

β01 β11 β21 α01 α11 α21

β02 β12 β22 α02 α12 α22

......

......

......

β0L β1L β2L α0L α1L α2L

. (6.72)

Mit dem folgenden MATLAB-Beispiel wird ein elliptisches Tiefpassfil-ter entworfen und in Kaskadenform realisiert.

Page 171: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.4 Realisierung von IIR-Filtern 161

% design of an elliptic low pass filter

N = 11; % filter order

rp = 0.1; % pass band ripple in dB

rs = 80; % stop band ripple in dB

tc = 1/4; % fc/(fs/2) (-rs dB cutoff-frequency)

[b,a] = ellip(N,rp,rs,tc); % elliptic low pass filter design

[C,gain] = tf2sos(b,a); % compute coefficients of 2nd order

% sections, and overall filter gain

[Nr,Nc] = size(C);

% filtering of input signal x (compute impulse response)

Nx = 1024;

x = [1 zeros(1,Nx-1)]; % x[n] = delta[n]

y = filter(C(1,1:3),C(1,4:6),x); % first section

for n = 2:Nr

y = filter(C(n,1:3),C(n,4:6),y); % remaining sections

end

y = gain*y; % apply overall filter gain

Nf = Nx;

f = linspace(0,1,Nf/2+1);

H = fft(y,Nf);

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-100);

plot(f,HdB), xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’), grid on;

Eine alternative Realisierungsmoglichkeit ergibt sich aus der Partialbruchzer-legung der Ubertragungsfunktion. Diese Zerlegung fuhrt auf die Parallelformdigitaler Filter, wobei wieder konjugiert komplexe Polstellen zu Filterblockenzweiten Grades kombiniert werden (M = N und L =

⌊N+12

⌋):

H(z) = γ0 +

L∑

k=1

γ0k + γ1kz−1

1 + α1kz−1 + α2kz−2

︸ ︷︷ ︸

Hk(z)

. (6.73)

Fur ein ungerades N ist hier z.B. α21 = γ11 = 0. Die Parallelform ist in Abb. 6.21gezeigt. Bezuglich der Zusammenfassung von Polen bzw. der Anordnung der Fil-terblocke hat die Parallelform wesentlich weniger Freiheitsgrade als die Kaskaden-form. Eine andere Eigenschaft der Parallelform betrifft die Sperrstellen, die bei derParallelform dadurch zustande kommen, dass sich alle Ausgangssignale der Pa-rallelpfade zu Null erganzen. Diese Kompensation ist naturlich relativ empfindlich

Page 172: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

162 6 Digitale Filter

γ01, γ11

α12, α22

α1L, α2L

γ0L, γ1L

γ0

α11, α21

γ02, γ12

Abbildung 6.21: Parallelform von digitalen Filtern

gegenuber den Toleranzen der Filterkoeffizienten. Damit ergibt sich bei endlicherRechengenauigkeit (Festkommasignalprozessoren) eine erhohte Empfindlichkeit inden Sperrbereichen. In den Durchlassbereichen ist hingegen kaum ein Unterschiedzwischen den Empfindlichkeiten von Parallel- und Kaskadenform festzustellen. DieAnwendung der Parallelform zeigen wir mit dem folgenden MATLAB-Beispiel.

Beispiel 6.15

Fur die Partialbruchzerlegung mit MATLAB haben wir in Beispiel 5.8die Funktion residuez() verwendet, mit der H(z) in der Form vonGl. 5.25 fur M ≥ N dargestellt wird:

H(z) =

M∑

k=0

bkz−k

1 +N∑

k=1

akz−k

=N∑

k=1

rk1− pkz−1

+M−N∑

k=0

ckz−k . (6.74)

Dabei haben wir vorausgesetzt, dass keine mehrfachen Polstellen auf-treten. Die Pole werden mit residuez() nicht zu Blocken maximalzweiter Ordnung zusammengefasst, so dass fur die Implementierungder Parallelform noch eine Nachverarbeitung notwendig ist. Die Koef-fizienten der Parallelform speichern wir spaltenweise fur jeden Block inder Matrix C. Die Spalte k enthalt die Koeffizienten in der Reihenfolgeγ0k, γ1k, 1, α1k, α2k (siehe Gl. 6.73).

Page 173: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

6.4 Realisierung von IIR-Filtern 163

% design an elliptic low pass filter

N = 11; % filter order

rp = 0.1; % pass band ripple in dB

rs = 80; % stop band ripple in dB

tc = 1/4; % fc/(fs/2) (-rs dB cutoff-frequency)

[b,a] = ellip(N,rp,rs,tc); % elliptic low pass filter design

[r,p,c] = residuez(b,a); % coeff. r,p,c of partial

% fraction expansion

r = r(:).’; % force r,p to row vectors

p = p(:).’;

% process real-valued poles

ipr = find(abs(imag(p)) < 1e-11);

Nipr = length(ipr);

if Nipr

C = [real(r(ipr)) ; zeros(1,Nipr) ; ones(1,Nipr) ; ...

-real(p(ipr)) ; zeros(1,Nipr)];

else

C = []; % C = empty matrix

end

% process conjugate complex-valued poles

ipc = find(imag(p) >= 1e-11);

Nipc = length(ipc);

if Nipc

C = [C , [2*real(r(ipc)) ; -2*real(r(ipc).*conj(p(ipc))) ; ...

ones(1,Nipc) ; -2*real(p(ipc)) ; abs(p(ipc)).^2]];

end

[Nr,Nc] = size(C);

% filtering of input signal x (compute impulse response)

Nx = 1024;

x = [1 zeros(1,Nx-1)]; % x[n] = delta[n]

y = filter(c,1,x);

for n = 1:Nc

y = y + filter(C(1:2,n),C(3:5,n),x);

end

Nf = Nx;

f = linspace(0,1,Nf/2+1);

H = fft(y,Nf);

HdB = max(20*log10(abs(H(1:Nf/2+1))+eps),-100);

Page 174: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

164 6 Digitale Filter

plot(f,HdB), grid on;

xlabel(’\theta/\pi’);

ylabel(’|H(e^{j\theta})| in dB’);

Der Einfluss einer Quantisierung der Filterkoeffizienten auf die Filtercha-rakteristik fur die direkte Form, die Kaskadenform und die Parallelform kann mitdem MATLAB-Programm filter_coeff_quant.m aus der Programmsammlungzu diesem Buch untersucht werden. In Abb. 6.22 ist der Einfluss der Koeffizienten-quantisierung mit 16 Bit Wortlange am Beispiel eines elliptischen Tiefpassfiltersneunter Ordnung gezeigt. Bei der direkten Form (Abb. 6.18) erkennen wir eine aus-gepragte Resonanz im Durchlassbereich, die durch die Verschiebung einer Polstellein Richtung Einheitskreis erzeugt wird. Bei der Kaskadenform ist hingegen keinQuantisierungseffekt erkennbar. Die Parallelform zeigt wie erwartet Abweichungenim Sperrbereich des Filters.

θ/π

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

ma

gn

itu

de

in

dB

-100

-50

0

50direct form IIR filter, N = 9, Nbits = 16

HHq

θ/π

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

ma

gn

itu

de

in

dB

-100

-50

0

50cascade and parallel form IIR filter, N = 9, Nbits = 16

HHq

c

Hqp

Abbildung 6.22: Betragsfrequenzgang eines elliptischen Tiefpassfilters (OrdnungN = 9), oben: direkte Form mit 16 Bit Koeffizientenquantisierung (Hq) undidealer Verlauf (H), unten: Kaskadenform (Hqc) und Parallelform (Hqp) mit 16Bit Koeffizientenquantisierung

Page 175: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7

Diskrete Fouriertransformation(DFT)

In den MATLAB-Beispielen haben wir bereits ofter die schnelle Fouriertransfor-mation (Fast Fourier Transform, FFT) zur Berechnung von Fourierreihen undFrequenzgangen verwendet. In diesem Kapitel zeigen wir die Zusammenhange die-ser effizienten Implementierung mit den anderen Transformationen (Fourierreihen,Fouriertransformation und Z-Transformation). Die Frequenzvariable der

”Diskre-

ten Fouriertransformation“ nimmt nur diskrete Werte an, im Gegensatz zur Fou-riertransformation von Kapitel 4, bei der die Frequenz θ kontinuierlich ist. DieDFT hat daher wie die Fourierreihendarstellung ein Linienspektrum. Sie wird inihren Eigenschaften eng mit den Fourierreihen verwandt sein. Der wesentliche Un-terschied ist jedoch, dass die DFT auf Signale angewendet wird, die nur fur endlichviele (N) Zeitpunkte gegeben sind. Wir bezeichnen solche Signale als N-PunkteSignale. Die DFT wird in erster Linie fur die Implementierung mit Rechnern ein-gesetzt, wo Signale endlicher Dauer auftreten bzw. sehr lange Signale in Blockenverarbeitet werden. Viele moderne Anwendungen der digitalen Signalverarbeitungwerden erst durch die Verfugbarkeit effizienter Algorithmen zur diskreten Fourier-transformation ermoglicht.

Die Fouriertransformation fur zeitdiskrete Signale haben wir bei der Beschrei-bung zeitdiskreter Systeme im Frequenzbereich in Abschnitt 3.2 abgeleitet. DieseTransformation ordnet dem zeitdiskreten Signal x[n] eine frequenzkontinuierlicheFunktion X

(ejθ)zu. Diese Funktion bezeichnen wir als Fouriertransformierte oder

kurz als das Spektrum des Signals. Umgekehrt kann mit der inversen Transformati-on das Zeitsignal durch das Spektrum dargestellt werden. Nach Gl. 4.1 und Gl. 4.2

Page 176: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

166 7 Diskrete Fouriertransformation (DFT)

sind diese Beziehungen

X(ejθ)=

∞∑

n=−∞x[n] e−jθn (7.1)

x[n] =1

ˆ π

−π

X(ejθ)ejθndθ. (7.2)

Fur die nummerische Auswertung ist die unendliche Summe und das Integral indiesen Gleichungen ein wesentlicher Nachteil. Die unendliche Summe geht in ei-ne endliche Summe uber, wenn wir nur Signale endlicher Lange betrachten, wasin den Anwendungen vorwiegend der Fall ist. Das Integral wird durch eine Sum-me ersetzt, wenn wir nur diskrete Frequenzen zulassen, also eine Abtastung deskontinuierlichen Spektrums an aquidistanten Frequenzpunkten vornehmen. DieseAbtastung im Frequenzbereich ist der Ubergang zur DFT. Wir werden zei-gen, dass das Zeitsignal exakt aus der DFT rekonstruiert werden kann, wenn dasSignal zeitbegrenzt ist und die Anzahl der Frequenzpunkte hinreichend großgewahlt wird.

Wir haben in Abschnitt 2.3 Signale kennengelernt, die ein diskretes Spektrumbesitzen. Es sind das die periodischen Signale x[n], fur die wir die Fourierreihen-darstellung hergeleitet haben (Gl. 2.45):

x[n] =N−1∑

k=0

ck ej 2π

N kn, n = 0, 1, . . . , N − 1 (7.3)

ck =1

N

N−1∑

n=0

x[n] e−j 2πN kn, k = 0, 1, . . . , N − 1. (7.4)

Die Reihenkoeffizienten ck reprasentieren das Linienspektrum des periodischen,zeitdiskreten Signals bei den harmonischen Frequenzen 2π

N k. Von der Fourierrei-hendarstellung fur zeitdiskrete Signale ist es nur ein kleiner Schritt zur DFT. Dazustellen wir das fur n ∈ [0, N − 1] zeitbegrenzte Signal x[n] als eine Periode vonx[n] dar:

x[n] = RN [n]x[n] =

{

x[n] 0 ≤ n ≤ N − 1

0 sonst. (7.5)

Die Funktion RN [n] schneidet das Grundintervall (n ∈ [0, N −1]) aus x[n] heraus.Umgekehrt konnen wir das periodische Signal x[n] als periodische Fortsetzung desN -Punkte Signals x[n] auffassen:

x[n] = x[n⊕N ], ∀n (7.6)

(⊕ ist die Modulooperation). Zwischen den Fourierreihenkoeffizienten ck eines mitN periodischen Signals x[n] und der Fouriertransformation des zeitbegrenzten Si-

Page 177: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7 Diskrete Fouriertransformation (DFT) 167

gnals x[n] besteht somit der Zusammenhang

ck =1

N

N−1∑

n=0

x[n]e−j 2πN nk =

1

N

N−1∑

n=0

x[n]e−jθn∣∣∣θ= 2π

N k

=1

NX(ejθ)∣∣∣θ= 2π

N k=

1

NX[k], k = 0, 1, . . . , N − 1.

(7.7)

Die Fourierreihenkoeffizienten ck entsprechen bis auf den Faktor 1N den Werten des

Spektrums X[k] an diskreten Frequenzen. Dieser Zusammenhang ist in Abb. 7.1anschaulich dargestellt. Durch die Abtastung im Frequenzbereich wird das Signal

x[n]

n

(a)

4035302520151050

|X(ejθ)|

θ

(b)

−2π −π 0 π 2π

|X [k]|

k

(c)

20151050-5-10-15-20

x[n] =∑∞

m=−∞x[n+mN ]

n

(d)

4035302520151050

Abbildung 7.1: Zeitbegrenztes Signal der Lange N = 20 (a), zugehoriges Spektrum(b), Abtastung im Frequenzbereich (c), periodische Fortsetzung im Zeitbereich (d)

x[n] im Zeitbereich periodisch fortgesetzt. Nur wenn die Anzahl der Frequenz-punkte gleich oder großer der Lange N des Signals x[n] ist, ergeben sich keineUberlappungen im Zeitbereich (Aliasing im Zeitbereich).

Page 178: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

168 7 Diskrete Fouriertransformation (DFT)

Dieser Zusammenhang kann in wenigen Schritten hergeleitet werden. Dazuwird die Fouriertransformation X

(ejθ)des N -Punkte Signals x[n] an M 6= N

Frequenzpunkten θ = 2πM k abgetastet:

X(ejθ)∣∣∣θ= 2π

M k= X[k] =

N−1∑

n=0

x[n] e−j 2πM nk, k = 0, . . . ,M − 1 (7.8)

Das zu X[k] gehorende (periodische) Signal x[n] ist damit

x[n] =M−1∑

k=0

1

MX[k]

︸ ︷︷ ︸

ck

ej2πM nk =

N−1∑

l=0

x[l]1

M

M−1∑

k=0

ej2πM (n−l)k

︸ ︷︷ ︸

1 fur n−l=0,±M,±2M,... 0 sonst

=∞∑

m=−∞x[n+mM ].

(7.9)

Dabei haben wir Gl. 7.3 und Gl. 7.7 fur den Zusammenhang zwischen x[n] undX[k] verwendet und Gl. 7.8 fur X[k] eingesetzt.

Beispiel 7.1

Wir zeigen Aliasing im Zeitbereich bei Abtastung im Frequenzbereich.Das Zeitsignal ist ein Dreieckimpuls der Lange N = 20. Wir berech-nen zunachst die DFT mit einer Lange Nf = 3N = 60. Das Signalwird dabei mit Nullen aufgefullt, damit es Nf Zeitpunkte lang ist. Da-nach wird die DFT abgetastet, indem wir nur jeden M -ten Frequenz-punkt verwenden (Dezimation um den Faktor M). In der Schleife desMATLAB-Beispiels bestimmen wir das zur abgetasteten DFT gehoren-de Zeitsignal. Fur M < 4 ist die Lange der inversen DFT großer als dieLange des Zeitsignals. Damit wird das Signal exakt rekonstruiert. BeiM = 4 tritt Aliasing auf, da die Lange der inversen DFT dann kleinerals die Signallange ist (Nf/M = 15 < N = 20).

N = 20; % signal length

N1 = N/2;

x = zeros(1,N);

x(1:N1) = 1:N1;

x(N1+1:N) = N1-1:-1:0; % triangular signal

Nf = 3*N; % DFT length Nf > signal length N

X = fft(x,Nf); % DFT of zero-padded signal

for M = 1:4

y = ifft(X(1:M:Nf)); % inverse DFT length Nf/M

Page 179: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.1 Eigenschaften der diskreten Fouriertransformation 169

stem(0:Nf/M-1,y), xlabel(’n’), ylabel(’y_M[n]’);

title(sprintf(’N = %d, DFT length = %d’, N, Nf/M));

pause(2); % wait for 2 sec.

end

Aliasing im Zeitbereich fuhrt dazu, dass beiM = 4 die erstenN−Nf

M −1Werte von y[n] und x[n] voneinander abweichen. Die Erklarung dafurist die periodische Fortsetzung des Signals der Lange N = 20 mit derPeriodendauer

Nf

M = 15, die zu der beobachteten Uberlappung fuhrt.

Wollen wir Signale mit der DFT analysieren und sie mit der inversen DFTwieder exakt rekonstruieren, dann mussen folgende Bedingungen erfullt sein:

• Das Signal muss auf N Punkte zeitbegrenzt sein.

• Die Anzahl der Frequenzpunkte muss großer oder gleich N gewahlt werden.

Ist das Signal nicht zeitbegrenzt, dann mussen wir (ahnlich wie bei der Fenster-methode zum Entwurf von FIR-Filtern in Abschnitt 6.2.1) das Signal vor derDFT-Anwendung mit einer Fensterfunktion multiplizieren. Den Einfluss der Fens-terfunktion werden wir in Abschnitt 7.4 analysieren.

Mit Gl. 7.7 erhalten wir die Beziehungen der diskreten Fouriertransfor-mation (DFT) fur das N-Punkte Signal x[n] und das diskrete Spektrum X[k]:

X[k] =

N−1∑

n=0

x[n]e−j 2πN nk, k = 0 . . . N − 1 (7.10)

x[n] =1

N

N−1∑

k=0

X[k]ej2πN nk, n = 0 . . . N − 1. (7.11)

Diese Beziehungen stimmen (abgesehen vom Faktor 1N ) mit Gl. 7.3 und Gl. 7.4 der

Fourierreihendarstellung uberein, wenn wir uns x[n] periodisch mit N fortgesetztdenken. Bei den Eigenschaften der DFT, die wir im folgenden Abschnitt behan-deln, spielt die periodische Fortsetzung bei Zeitachsentransformationen (Zeitver-schiebung, Zeitinversion) und damit bei der Faltungsoperation eine entscheidendeRolle.

7.1 Eigenschaften der diskreten Fourier-

transformation

Die Eigenschaften der DFT entsprechen jenen der Fouriertransformation fur zeit-diskrete Signale in Abschnitt 4.1. Unterschiede treten nur bei Verschiebungsopera-

Page 180: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

170 7 Diskrete Fouriertransformation (DFT)

tionen der N-Punkte Signale auf. Wir geben nur die wichtigsten Eigenschaften an,die nennenswerte Abweichungen von den Eigenschaften der Fouriertransformationfur zeitdiskrete Signale in Abschnitt 4.1 aufweisen.

Linearitat

Die DFT und deren inverse Transformation sind lineare Operationen:

a1x1[n] + a2x2[n]DFT⇐⇒ a1X1[k] + a2X2[k]. (7.12)

Haben die Signale nicht gleiche Lange N , dann muss das kurzere Signal durchAnfugen von Nullen auf die Dauer des langeren Signals gebracht werden.

Zeitverschiebung und Zeitinversion

Bei der zeitlichen Verschiebung von N-Punkte Signalen ist zu beachten, dass wirdie DFT aus der Fourierreihendarstellung erhalten haben, indem wir das Grund-intervall des periodisch fortgesetzten Signals betrachtet haben. Mit Gl. 7.5 undder gebrauchlichen Notation x[(n)N ] = x[n⊕N ] folgt daher

RN [n]x[(n−N0)N ] = RN [n]x[n−N0], (7.13)

d.h. es wird zuerst das periodisch fortgesetzte Signal x[n] verschoben und danachdas Grundintervall mit RN [n] selektiert. Das Ergebnis ist eine zyklische Zeit-verschiebung, wie in Abb. 7.2 dargestellt.

x[n] x[(n− 4)⊕N ]

n n0 1 N − 1 0 4 N − 1

Abbildung 7.2: Zyklische Zeitverschiebung bei N -Punkte-Signalen um N0 = 4Zeitpunkte

Mit Gl. 7.10 ergibt sich damit fur die zyklische Verschiebung der Zusammen-hang

RN [n]x[(n−N0)N ]DFT⇐⇒ e−j 2π

N kN0X[k], N0 ∈ Z. (7.14)

Fur die Zeitinversion erhalten wir wegen der Periodizitat der DFT-Gleichungen

x[N − n]DFT⇐⇒ X[N − k], k, n = 0, 1, . . . , N − 1. (7.15)

Page 181: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.1 Eigenschaften der diskreten Fouriertransformation 171

Frequenzverschiebung (Amplitudenmodulation)

Die Frequenzverschiebung entspricht wie in Gl. 4.32 auf Seite 68 im Zeitbereichder Multiplikation des Signals mit einer komplexen Exponentialschwingung:

ej2πN mnx[n]

DFT⇐⇒ RN [k]X[(k −m)N ]. (7.16)

Symmetrie der DFT bei reellwertigen Signalen

Entsprechend zu Gl. 4.35 auf Seite 70 erfullt die DFT folgende Symmetriebezie-hung fur reellwertige Signale:

x[n] reellwertigDFT⇐⇒ X[N − k] = X∗[k]. (7.17)

Damit ergeben sich wie bei der Fouriertransformation folgende Konsequenzen:

• Realteil und Betrag der DFT sind gerade Funktionen,

• Imaginarteil und Phase der DFT sind ungerade Funktionen,

• es genugt die Bestimmung der DFT fur k = 0, 1, . . . , ⌊N2 ⌋.

Beispiel 7.2

Eine wichtige Anwendung der Symmetriebeziehung fur reellwertige Si-gnale ist die Reduktion des Rechenaufwands bei der Berechnung derDFT. Wir gehen von einem reellwertigen Signal x[n], n ∈ [0, N − 1]aus. Die Signallange N sei gerade. Wir zeigen in diesem Beispiel, dassnur die Berechnung einer DFT der Lange N

2 notwendig ist. Dazu bildenwir mit dem gegebenen reellwertigen Signal das komplexe Signal

xc[n] = x1[n] + jx2[n], n = 0, 1, . . . ,N

2− 1 (7.18)

mit den Signalen halber Lange

x1[n] = x[2n], n = 0, 1, . . . ,N

2− 1 (7.19)

x2[n] = x[2n+ 1], n = 0, 1, . . . ,N

2− 1. (7.20)

Page 182: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

172 7 Diskrete Fouriertransformation (DFT)

Mit dieser Aufspaltung von x[n] berechnen wir die DFT X[k]:

X[k] =

N2 −1∑

n=0

x[2n]e−j 2πN k2n +

N2 −1∑

n=0

x[2n+ 1]e−j 2πN k(2n+1)

=

N2 −1∑

n=0

x1[n]e−j 2π

N/2 kn + e−j 2πN k

N2 −1∑

n=0

x2[n]e−j 2π

N/2kn

= X1[k] + e−j 2πN kX2[k], k = 0, 1, . . . ,

N

2.

(7.21)

Fur das N/2-Punkte Signal xc[n] gelten die Zusammenhange

ℜe{xc[n]} =1

2(xc[n] + x∗

c [n])DFT⇐⇒ 1

2(Xc[k] +X∗

c [N/2− k])

(7.22)

ℑm{xc[n]} =1

2j(xc[n]− x∗

c [n])DFT⇐⇒ 1

2j(Xc[k]−X∗

c [N/2− k]) .

(7.23)Mit diesen Beziehungen konnen wir aus Gl. 7.21 die DFT X[k] desgegebenen reellwertigen N-Punkte Signals x[n] aus der DFT Xc[k] deskomplexwertigen N

2 -Punkte Signals xc[n] bestimmen:

X[k] =1

2(Xc[k] +X∗

c [N/2− k])

+ e−j 2πN k 1

2j(Xc[k]−X∗

c [N/2− k]) , k = 0, 1, . . . ,N

2.

(7.24)

Wir benotigen damit nur eine DFT der Lange N2 . Es ist kein Nach-

teil, dass diese DFT ein komplexwertiges Eingangssignal hat, da FFT-Programme normalerweise fur komplexwertige Signale ausgelegt sind.Der zusatzliche Aufwand durch Gl. 7.24 ist geringer als die Ausfuhrungeiner DFT der Lange N .

Zyklische Faltung mit der DFT

In Abschnitt 3.2 haben wir gezeigt, dass das Eingangs/Ausgangsverhalten linea-rer, zeitinvarianter Systeme im Zeitbereich durch eine Faltungsoperation und imFrequenzbereich durch die Multiplikation der Spektren charakterisiert wird (sieheGl. 3.51). Eine entsprechende Beziehung gilt auch bei der DFT, wobei wir beachten

Page 183: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.1 Eigenschaften der diskreten Fouriertransformation 173

mussen, dass bei Zeitverschiebungen die periodische Fortsetzung des Signals zurAnwendung kommt, d.h. Zeitindizes sind mit der Modulooperation zu verknupfen.

Mit der DFT erhalt man bei N-Punkte Signalen eine zu Gl. 4.39 aquivalenteBeziehung:

y[n] =

N−1∑

m=0

x1[m]x2[(n−m)N ]DFT⇐⇒ Y [k] = X1[k]X2[k] n, k = 0, . . . , N − 1.

(7.25)Die Ableitung dieser Beziehung verlauft in gleicher Weise wie jene von Gl. 3.51auf Seite 50. Bei der Faltungsoperation in Gl. 7.25, die als zyklische Faltungbezeichnet wird, haben alle Signale die gleiche Lange N . Im Gegensatz dazu istbei der normalen (linearen) Faltung von Gl. 4.39 das Ergebnissignal etwa doppeltso lang (2N − 1), bei Faltung zweier Signale der Lange N (siehe Seite 37). Fur dieRealisierung der normalen Faltung mit Hilfe der zyklischen Faltung mussen beideSignale durch Anfugen von Nullen auf die Lange des Ergebnissignals gebrachtwerden.

Der Rechenaufwand fur die Auswertung der Faltungssumme ist von einer Kom-plexitat O(N2), steigt also proportional zu N2. Wird die zyklische Faltung jedochmit Gl. 7.25 uber die FFT durch Multiplikation der Spektren und anschließenderinverser FFT ausgefuhrt, dann steigt der Aufwand nur mit N(1 + log2 N), wennN eine Zweierpotenz ist. Die Faltung mit der FFT wird als schnelle Faltungbezeichnet.

Beispiel 7.3

Wir berechnen mit MATLAB die zyklische und die lineare Faltungmit Hilfe der DFT. Zunachst geben wir ein MATLAB-Beispiel fur diezyklische Faltung an, bei der beide Signale die gleiche Lange haben:

N = 10; % signal length

n = 0:N-1;

x1 = (n == 5); % x1 = delta[n-5]

x2 = (n < 3); % x2 = 1, n < 3; x2 = 0, 4 < n < N

y = ifft(fft(x1) .* fft(x2)); % cyclic convolution

stem(n,y);

pause; % press a key to continue

x2 = (n < 7); % x2 = 1, n < 7; x2 = 0, 7 <= n < N

y = ifft(fft(x1) .* fft(x2));

stem(n,y);

In diesem Beispiel berechnen wir die zyklische Faltung eines verschobe-nen Einsimpulses mit einem Rechteckimpuls. Beim ersten Fall ist der

Page 184: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

174 7 Diskrete Fouriertransformation (DFT)

Rechteckimpuls x2 kurz genug, so dass er nicht uber die Begrenzung(n = N − 1) hinausgeschoben wird. Damit kommt bei der zyklischenFaltung die Modulooperation nicht zum Tragen. Wir erhalten ein Er-gebnis wie bei Anwendung einer linearen Faltung. Im Gegensatz dazuwird im zweiten Fall der langere Rechteckimpuls x2 zyklisch verscho-ben.

Im zweiten Beispiel wird immer die lineare Faltung mit der zyklischenFaltung berechnet, da wir an die unterschiedlich langen Signale so vieleNullen anfugen, dass die Lange der zyklischen Faltung gleich der Langedes Ergebnisses der linearen Faltung ist.

Nx1 = 10;

Nx2 = 5;

Ny = Nx1+Nx2-1; % length of linear convolution result

n = 0:Ny-1;

x1 = ones(1,Nx1); % x1 = 1, 0 <= n < Nx1

x2 = ones(1,Nx2); % x2 = 1, 0 <= n < Nx2

% linear convolution by cyclic convolution

% (FFT function performs zero-padding to length Ny)

y = ifft(fft(x1,Ny) .* fft(x2,Ny));

stem(n,y)

Wir fuhren hier die lineare Faltung zweier Rechteckimpulse der LangenNx1

und Nx2durch. Das Faltungsergebnis hat die Lange Ny = Nx1

+Nx2

− 1. Diese Lange wird auch fur die DFT (FFT) verwendet, wobeidie MATLAB-Funktion fft() automatisch Nullen anfugt, wenn dasSignal kurzer als die FFT-Lange ist. Durch das Nullenanfugen erhaltenwir mit der zyklischen Faltung das selbe Ergebnis, wie mit der linearenFaltung (MATLAB-Funktion conv(x1,x2)).

Parsevalsche Beziehung

Fur periodische Signale haben wir die Parsevalsche Beziehung in Gl. 2.62 hergelei-tet. Wir konnen diese Gleichung unter Berucksichtigung des Faktors 1

N auch furdie DFT verwenden:

N−1∑

n=0

|x[n]|2 =1

N

N−1∑

k=0

|X[k]|2 . (7.26)

Page 185: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.2 Zusammenhang DFT und Z-Transformation 175

7.2 Zusammenhang DFT und Z-Transformation

In diesem Abschnitt stellen wir eine Beziehung zwischen DFT und Z-Transformati-on her, die sich durch Abtastung der Z-Transformierten X(z) eines N-PunkteSignals x[n] am Einheitskreis ergibt (siehe Abb. 7.3):

X(z)∣∣∣z=ej

2πN

k=

N−1∑

n=0

x[n] e−j 2πN kn = X[k], k = 0, 1, . . . , N − 1. (7.27)

ℑm{z}

ℜe{z}10

Abbildung 7.3: Abtastung der Z-Transformation an N aquidistanten Punkten amEinheitskreis (N = 8)

Da x[n] eine endliche Lange N hat, erhalten wir fur die Z-Transformation

X(z) =

N−1∑

n=0

x[n]z−n =

N−1∑

n=0

1

N

N−1∑

k=0

X[k]ej2πN kn

︸ ︷︷ ︸

x[n]

z−n

=1

N

N−1∑

k=0

X[k]N−1∑

n=0

(

ej2πN kz−1

)n

=1− z−N

N

N−1∑

k=0

X[k]

1− ej2πN kz−1

.

(7.28)

Mit Gl. 7.28 konnen wir aus der DFT eines Signals endlicher Lange N sofortdie Z-Transformation fur alle Werte von z berechnen. Diese Beziehung wird inerster Linie fur die Realisierung schmalbandiger digitaler Filter verwendet.Ist X(z) in Gl. 7.28 die Ubertragungsfunktion H(z) dieser Filter, dann ist die

Page 186: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

176 7 Diskrete Fouriertransformation (DFT)

DFT X[k] = H[k] gleich den Abtastwerten der Ubertragungsfunktion, die beiSchmalbandfiltern nur in einem engen Durchlassbereich von Null verschieden ist.Damit erstreckt sich die Summe in Gl. 7.28 nur uber wenige Werte von k. DieseFilterrealisierung wird daher weniger Rechenoperationen benotigen, als jene mitFIR-Filtern.

Eine weitere Anwendung von Gl. 7.28 ist die Berechnung der Fouriertransfor-mation X

(ejθ)fur beliebige Frequenzen θ aus den Werten X[k] der DFT, also

die Interpolation im Frequenzbereich. Mit z = ejθ folgt aus Gl. 7.28 dieInterpolationsformel

X(ejθ)=

1− e−jθN

N

N−1∑

k=0

X[k]

1− ej(2πN k−θ)

=

N−1∑

k=0

X[k]GN

(

ej(θ−2πN k)

)

,

(7.29)

mit

GN

(ejθ)=

1

N

sin θN2

sin θ2

e−jθN−12 . (7.30)

Den Betragsverlauf von GN

(ejθ)haben wir bereits in Abb. 3.10 auf Seite 49 in ei-

nem anderen Zusammenhang dargestellt. In Abb. 3.10 erkennen wir, dass GN

(ejθ)

bei Vielfachen von 2π Eins ist. Dadurch stimmt die Interpolation an den Frequenz-punkten 2π

N k exakt mit den Werten der DFT uberein.

7.3 Signalinterpolation mit der DFT

Mit der Interpolation von zeitdiskreten Signalen werden wir uns in Kapitel 8ausfuhrlich befassen. In diesem Abschnitt zeigen wir eine elegante und einfach zurealisierende Interpolationsmethode mit Verwendung der DFT. In analoger Weisewie bei der Interpolation im Frequenzbereich im vorhergehenden Abschnitt kannein N -Punktesignal in ein M -Punktesignal (M > N) umgewandelt werden. DasGrundprinzip ist einfach: Ausgehend von der N -Punkte DFT X[k] des ursprung-lichen Signals x[n] fugen wir in geeigneter Weise Nullen in X[k] ein, um die M -Punkte DFT Y [k] des interpolierten Signals y[n] zu erhalten. Wir zeigen, dassdas Einfugen von Nullen (zero-padding) eine nahezu perfekte Signalinterpolationerzeugt.1 Das Einfugen von Nullen in die DFT des ursprunglichen Signals ist inAbb. 7.4 fur ein ungerades N skizziert. Wir beschranken uns in der folgenden

1Fur eine umfangreiche Fehleranalyse dieser Interpolationsmethode siehe D. Fraser,”Interpo-

lation by FFT revisited - an experimental investigation,“ IEEE Trans. Acoust., Speech, SignalProcessing, vol. 37, pp. 665-675, May 1989.

Page 187: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.3 Signalinterpolation mit der DFT 177

Ableitung auf N ungerade. Der Fall N gerade verlauft analog, wobei jedoch zu be-achten ist, dass dann eine Spektrallinie bei N/2 vorhanden ist, die beim Einfugenvon Nullen mit dem Gewicht 1/2 auf die beiden Halften der DFT Y [k] aufgeteiltwerden muss. Andernfalls ware diese Spektrallinie doppelt im Spektrum enthalten.Im MATLAB-Beispiel am Ende dieses Abschnitts ist dieser Fall berucksichtigt.

0 1 2 3 4 N = 5

|X[k]|

k0 1 2 3 4

|Y [k]|

kM = 865 7

Nh M −NhNh = N−12

Abbildung 7.4: N -Punkte DFT X[k] von x[n] und Einfugen von Nullen fur dieM -Punkte DFT Y [k] des interpolierten Signals y[n] (N ungerade, M gerade)

Entsprechend zu Abb. 7.4 erhalten wir mit der inversen DFT Gl. 7.11 und Y [k]beziehungsweise X[k]

y[n] =1

M

M−1∑

k=0

Y [k]ej2πM nk

=1

M

Nh∑

k=0

X[k]ej2πM nk +

1

M

M−1∑

k=M−Nh

X[k +N −M ]ej2πM nk,

(7.31)

mit n = 0, 1, . . . ,M − 1 und Nh = N−12 . Mit der Substitution k → M − k fur die

rechte Summe und mit der Symmetriebeziehung X[N−k] = X∗[k] fur reellwertigeSignale (siehe Gl. 7.17) ergibt sich

y[n] =1

M

Nh∑

k=0

X[k]ej2πM nk +

1

M

Nh∑

k=1

X∗[k]e−j 2πM nk

=2

Mℜe{

Nh∑

k=0

X[k]ej2πM nk

}

− 1

MX[0].

(7.32)

Um eine Beziehung zwischen y[n] und x[n] zu erhalten, setzen wir Gl. 7.10 furX[k] in Gl. 7.32 ein:

y[n] =

N−1∑

m=0

x[m]ℜe{

2

M

Nh∑

k=0

ej2πk(nM −m

N )

}

− 1

M

N−1∑

m=0

x[m]

︸ ︷︷ ︸

X[0]

. (7.33)

Page 188: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

178 7 Diskrete Fouriertransformation (DFT)

Mit der Summenformel Gl. 3.16 fur die endliche geometrische Reihe in ℜe{·} folgtnach kurzer Zwischenrechnung

y[n] =N−1∑

m=0

x[m] g[n,m], n = 0, 1, . . . ,M − 1, N ungerade (7.34)

g[n,m] =2

M

sin(πN+1

2

(nM − m

N

))

sin(π(

nM − m

N

)) cos

(

πN − 1

2

( n

M− m

N

))

− 1

M, (7.35)

Das Einfugen von Nullen im Frequenzbereich fuhrt auf die InterpolationsformelGl. 7.34 mit den Interpolationsfunktionen g[n,m]. Diese Gleichung beschreibt einzeitvariantes System mit der Impulsantwort g[n,m]. Eine solche Systembeschrei-bung werden wir auch bei den Multiratensystemen in Kapitel 8 erhalten. Die DFTermoglicht durch das Einfugen von Nullen eine wesentlich effizientere Interpolati-onsmethode als die Berechnung der Interpolation im Zeitbereich mit Gl. 7.34.

Das folgende MATLAB-Beispiel zeigt die Signalinterpolation mit der DFT undauch die Alternative im Zeitbereich mit Gl. 7.34.

Beispiel 7.4

Als Testsignal erzeugen wir ein N -Punkte Signal mit dreieckformigemSpektrum. Das Einfugen von Nullen muss - wie bereits erwahnt - unter-schiedlich fur gerade und ungerade Werte von N und M durchgefuhrtwerden. Durch das Einfugen von Nullen im Spektrum wird die Signal-energie verandert (durch den Faktor 1/N bei der Parsevalschen Bezie-hung Gl. 7.26). Daher wird im Programm die Signalamplitude von y[n]mit dem Faktor M/N korrigiert.Bei der Interpolation im Zeitbereich mit Gl. 7.34 wird g[n,m] ausGl. 7.35 als Matrix dargestellt, wobei auch die Indizes n und m inForm einer Matrix aufgestellt werden. Durch diesen Trick ersparen wiruns die Verwendung von Programmschleifen.

% create an N-point signal x[n] with triangular spectrum

L = 100;

n = -L:L;

%n = -L:L-1; % uncomment for an even length signal

N = length(n);

tg = 1/4; % cut-off frequency (normalized to fs/2)

x1 = tg*sinc(tg*n); % signal with rectangular low pass spectrum

x = x1 .*x1; % signal with triangular low pass spectrum

x = x(:)/sum(x);

Page 189: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.3 Signalinterpolation mit der DFT 179

% zeropad DFT to obtain M > N points in time-domain

M = round(4*N/3); % M > N to interpolate

if mod(N,2) % case N odd

Nh = (N-1)/2;

c = 1;

else % case N even (modify spectrum at fs/2)

Nh = N/2;

c = 0.5;

end

if mod(M,2)

Mh = (M-1)/2;

Nz = Mh-Nh+1;

else

Mh = M/2;

Nz = Mh-Nh;

end

X = fft(x,N); % N point DFT of original signal

Y = [X(1:Nh) ; c*X(Nh+1) ; zeros(Nz,1)];

Y = [Y ; conj(Y(Mh:-1:2))]; % append conj(Y(M-k)) to obtain a

% real-valued signal

y = M/N*ifft(Y,M); % M point inverse DFT to get y[n]

subplot(2,1,1), plot(x), grid on;

xlabel(’n’), ylabel(’x[n]’);

title(’signal interpolation using the DFT’);

subplot(2,1,2), plot(y), grid on;

xlabel(’n’), ylabel(’y[n]’);

title(sprintf(’N = %d, M = %d’,N,M));

% check interpolation equations (7.34) and (7.35)

m = 0:N-1;

n = (0:M-1)’;

nm = n(:,ones(1,N))/M - m(ones(M,1),:)/N;

nm(nm==0) = eps;

if mod(N,2) % case N odd

G = 2/N*cos(pi*Nh*nm).*sin(pi*(Nh+1)*nm)./sin(pi*nm);

y1 = G*x - sum(x)/N;

else

G = 2/N*cos(pi*(Nh-1)*nm).*sin(pi*Nh*nm)./sin(pi*nm);

y1 = G*x - sum(x)/N + (sum(x(1:2:N))-sum(x(2:2:N)))...

*cos(pi*N/M*n)/N;

end

fprintf(1,’max. |y-y1| = %e\n’,max(abs(y-y1)));

Page 190: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

180 7 Diskrete Fouriertransformation (DFT)

7.4 Fenstereffekt bei der DFT

Die Verarbeitung von Signalen mit der DFT ist dann exakt moglich, wenn dasSignal zeitbegrenzt ist. Fur den Fall nichtzeitbegrenzter Signale konnen nur peri-odische Signale ohne Fehler mit der DFT analysiert werden, wenn die DFT-Langegleich (oder ein ganzzahliges Vielfaches) der Periodendauer ist. In allen anderenFallen treten in den Spektren Abweichungen auf, die als Fenstereffekte bezeich-net werden. Damit verbunden ist auch das so genannte Leakage der DFT, dasbesonders gut bei Signalen beobachtet werden kann, die aus Sinuskomponenten mitnichtharmonischen, eng benachbarten Frequenzen bestehen. Diese Effekte konnenbei der Spektralanalyse zu Fehlinterpretationen fuhren und sind am Beispiel ei-ner komplexen Exponentialschwingung (siehe Gl. 2.17 auf Seite 11) einfach zu

demonstrieren. Mit x[n] = ej2πM n als periodisches Signal mit der Periodendauer M

erhalten wir mit Gl. 7.10 die DFT der Lange N

X[k] =

N−1∑

n=0

e−j 2πN nk ej

2πM n =

1− ej2π(NM −k)

1− ej2π(1M − k

N ), k = 0, 1, . . . , N − 1. (7.36)

Fur M = N ergibt sich aus Gl. 7.36 fur k ∈ [0, N − 1] eine Spektrallinie X[k] =Nδ[k − 1], da die Frequenz der Exponentialschwingung auf einem Frequenzpunktder DFT liegt. Sind im Gegensatz dazu M und N teilerfremd, dann ergeben sichmehrere von Null verschiedene Spektrallinien (siehe Abb. 7.5).

k

|X[k]|

6050403020100

60

40

20

0

Abbildung 7.5: Betrag der N -Punkte DFT einer komplexen Exponentialschwin-gung x[n] = ej

2πM n mit N = 64 und M = 3

Die Fenstereffekte, die in erster Linie durch die zeitliche Begrenzung eineslangeren Signals auftreten, konnen in ahnlicher Weise wie beim FIR-Filterentwurfmit der Fenstermethode durch Multiplikation des Zeitsignals mit einer Fenster-funktion beeinflusst werden. Die Fensterfunktionen schwachen die Amplituden am

Page 191: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.5 Overlap-Add und Overlap-Save Methode 181

Signalanfang und -ende ab und reduzieren dadurch z.B. bei sinusformigen Signalendie spektralen Nebenlinien (Side Lobes). Die Breite der Hauptlinien (Main Lobes)wird dadurch jedoch vergroßert. Als Fensterfunktionen kommen die auf Seite 140angegebenen Funktionen in Betracht.

Beispiel 7.5

In diesem MATLAB-Beispiel untersuchen wir den Fenstereffekt fur einSignal, das aus zwei benachbarten Cosinusschwingungen besteht. We-gen der Reellwertigkeit des Signals genugt die Berechnung von N

2 + 1(N gerade) Frequenzpunkten. Das erste Spektrum wird mit einemRechteckfenster bestimmt. Das Rechteckfenster ergibt sich automatischdurch die Zeitbegrenzung. Im zweiten Fall wenden wir ein Hamming-Fenster an, das die Beitrage beider Cosinusschwingungen im Spektrumwesentlich deutlicher darstellt.

N = 128; % signal length

n = 0:N-1; % time points

th1 = 0.1;

th2 = 0.15;

x = cos(2*pi*th1*n) + 0.1*cos(2*pi*th2*n);

X = fft(x); % N-point DFT

k = 0:N/2; % frequency points

stem(k,abs(X(1:N/2+1)));

xlabel(’k’), ylabel(’|X[k]|’);

title(sprintf(’DFT, N = %d, rectangular window’, N));

pause;

w = hamming(N).’;

X = fft(w.*x);

stem(k,abs(X(1:N/2+1)));

xlabel(’k’), ylabel(’|X[k]|’);

title(sprintf(’DFT, N = %d, Hamming window’, N));

7.5 Overlap-Add und Overlap-Save Methode

Bei der Faltung mit der DFT mussen die Signale zeitbegrenzt sein. In den Anwen-dungen sind jedoch viele Signale beliebig lang (z.B. Audiosignale). Im Vergleichdazu ist die Impulsantwort h[n] der Filter relativ kurz. Fur diesen Fall mussen wir

Page 192: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

182 7 Diskrete Fouriertransformation (DFT)

das lange Signal in Blocke unterteilen und diese Blocke dann einzeln der Reihenach verarbeiten. Bedingt durch die Faltungsoperation verlangern sich die Blocke,so dass bei der Bildung des gesamten Ausgangssignals die Faltungsergebnisse uber-lappend zusammengesetzt werden mussen. Dabei gibt es zwei grundsatzliche Me-thoden, deren Funktionsweise wir wegen der großen praktischen Bedeutung naherbehandeln. Die Blockverarbeitung ist fur moderne digitale Signalprozessoren einewichtige Methode zur Signalverarbeitung. Aber auch fur Multimediaanwendungen(Streaming Audio und Video) am PC spielt die Blockverarbeitung eine bedeutendeRolle.

Overlap-Add Methode

Bei der Overlap-Add Methode wird das Eingangssignal x[n] in aufeinanderfolgen-de, nichtuberlappende Blocke xm der Lange L unterteilt. Wir nehmen an, dass dieLange Nx des gesamten Signals x[n] durch L teilbar ist. Dann ist die Anzahl derBlocke Nb = Nx

L ganzzahlig. Andernfalls fugen wir entsprechend viele Nullen andas Signal an. Mit dieser Blockzerlegung erhalten wir

x[n] =

Nb−1∑

m=0

xm[n], (7.37)

mit

xm[n] =

{

x[n] mL ≤ n ≤ (m+ 1)L− 1

0 sonst. (7.38)

Jeder Block wird mit der Impulsantwort h[n] der Lange Nh gefaltet:

ym[n] =

Nh−1∑

k=0

h[k]xm[n− k]. (7.39)

Wegen der Linearitat der Faltung ist das Gesamtergebnis

y[n] =

Nb−1∑

m=0

ym[n]. (7.40)

Das Faltungsergebnis ym[n] fur jeden Block hat die Lange Nf = L + Nh − 1,so dass die Ergebnisse der blockweisen Verarbeitung uberlappend addiert werden.Bei der Durchfuhrung der blockweisen Faltung mit der DFT wird eine DFT-LangeNf verwendet, so dass das Ergebnis der zyklischen Faltung mit jenem der linearenFaltung ubereinstimmt. Da xm[n] und h[n] eine kleinere Lange als Nf haben,werden beide Signale mit Nullen aufgefullt.

In Abb. 7.6 ist die Blockverarbeitung fur den Fall Nx = 3L skizziert. Der durch-gestrichene Teilblock (Ausschwingvorgang) wird bei Blockverarbeitung meistens

Page 193: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.5 Overlap-Add und Overlap-Save Methode 183

h

x2 ∗ h

x3 ∗ h

h[n]

x[n]

0 Nh − 1

L 2L 3L− 1

x1 ∗ h

0

y[n]2LL 3L− 1

y1 y2 y3

x1 x2 x3

0

Nf − 10

Abbildung 7.6: Blockverarbeitung bei der Overlap-Add Methode mit Nx = 3Lund Nf = L+Nh − 1

nicht verwendet, damit das Ausgangssignal die gleiche Dauer wie das Eingangssi-gnal hat.

Beispiel 7.6

Wir implementieren mit MATLAB die FIR-Filterung nach der Overlap-Add Methode. Als Eingangssignal wird eine Rechteckschwingung er-zeugt, wobei wir mit der Modulooperation einen Rechteckimpuls peri-odisch fortsetzen. Die Impulsantwort ist ein Rechteckimpuls. Als Fal-tungsergebnis ist daher ein dreieckformiger (allgemein trapezformiger)Verlauf zu erwarten. Wir geben die DFT-Lange mit Nf = 64 vor,da Viererpotenzen generell eine sehr effiziente FFT-Implementierungermoglichen. Wir konnten als Alternative auch die Blocklange L vor-geben, da MATLAB beliebige ganze Zahlen als FFT-Langen zulasstund die Ausfuhrzeiten in diesem Beispiel keine Rolle spielen. Fur diegraphische Darstellung wird das Ausgangssignal auf die Lange des Ein-gangssignals begrenzt, d.h. wir schneiden den Ausschwingvorgang weg.

Nx = 200;

n = 0:Nx-1;

x1 = [ones(1,40) zeros(1,40)];

x = x1(mod(n,80)+1); % x[n] = square-wave signal

Nh = 40;

h = ones(1,Nh); % h[n] = rectangular impuls

Page 194: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

184 7 Diskrete Fouriertransformation (DFT)

Nf = 64; % DFT length

L = Nf-Nh+1; % block size

Nx1 = L*ceil(Nx/L); % make Nx1 a multiple of L

x = [x zeros(1,Nx1-Nx)]; % pad x[n] with zeros

H = fft(h,Nf); % filter transfer function

y = zeros(1,Nx1+Nh-1); % init. output signal vector

for m = 1:L:Nx1-L+1; % block processing loop

y1 = ifft(fft(x(m:m+L-1),Nf).*H); % FFT, multiply by H, IFFT

y(m:m+Nf-1) = y(m:m+Nf-1)+y1; % overlap-add Nf samples

end

stem(n,y(1:Nx));

Overlap-Save Methode

Die zweite Methode ist die Overlap-Save Methode, bei der wir keine Addition derblockweisen Faltungsergebnisse benotigen. Im Gegensatz zur Overlap-Add Me-thode uberlappen hier die Blocke des Eingangssignals um Nh − 1 Zeitpunkte. Eswerden daher Nh − 1 Zeitpunkte zweimal gefaltet, namlich einmal am Ende desaktuellen Blocks und ein zweites Mal am Anfang des nachsten Blocks. Von diesenzwei Faltungsergebnissen heben wir uns nur jenes des aktuellen Blocks auf. Dieersten Nh − 1 Werte des Faltungsergebnisses vom zweiten Block werden nicht ver-wendet. Der Trick ist jetzt die Verwendung einer DFT-Lange gleich der Blocklange(Nf = L). Das Ergebnis der zyklischen Faltung wird daher nicht mit jenem derbenotigten normalen Faltung ubereinstimmen. Wir konnen (am besten graphischanhand eines einfachen Signals) zeigen, dass im vorliegenden Fall nur die erstenNh − 1 Werte nicht ubereinstimmen, die ohnehin nicht verwendet werden.

In Abb. 7.7 ist die Blockverarbeitung der Overlap-Save Methode schematischdargestellt. Die Eingangssignalblocke der Lange L werden jetzt uberlappend imAbstand M < L dem Signal x[n] entnommen. Jeder Block wird zyklisch mit derImpulsantwort gefaltet (uber die DFT). Von den Faltungsergebnissen werden dieersten Nh − 1 Werte nicht verwendet, sondern nur M Werte ohne Uberlappunganeinander gereiht. Um bei beiden Methoden die gleiche FFT-Lange Nf und damiteinen vergleichbaren Rechenaufwand zu erhalten, wird man den Parameter M derOverlap-Save Methode gleich der Blocklange L der Overlap-Add Methode wahlen(vergleiche Abb. 7.6 und Abb. 7.7).

Beispiel 7.7

Dieses MATLAB-Beispiel zeigt die Implementierung der Overlap-Save

Page 195: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.5 Overlap-Add und Overlap-Save Methode 185

Methode. Eingangssignal und Impulsantwort des FIR-Filters sind gleichden Signalen von Beispiel 7.6.

Nx = 200;

n = 0:Nx-1;

x1 = [ones(1,40) zeros(1,40)];

x = x1(mod(n,80)+1); % x[n] = square-wave signal

Nh = 40;

h = ones(1,Nh); % h[n] = rectangular impuls

Nf = 64; % DFT length

L = Nf; % block length = DFT length

M = Nf-Nh+1; % block shift

x = [zeros(1,Nh-1) x]; % add leading zeros to input signal

Nx1 = M*ceil((Nx+Nh-1)/M); % make length of x a multiple of M

x = [x zeros(1,Nx1-Nx)]; % pad with zeros

H = fft(h,L); % filter transfer function

y = zeros(1,Nx1); % init. output signal vector

for m = 1:M:Nx1-L+1 % block processing loop

y1 = ifft(fft(x(m:m+L-1),L).*H); % FFT, multiply by H, IFFT

y(m:m+M-1) = y1(Nh:L); % discard first Nh-1 samples

end

stem(n,y(1:Nx));

h

x2 ∗ h

x3 ∗ h

h[n]0 Nh − 1

0

x1 ∗ h

M L

2M0 3M − 1

y[n]M

0

Nx+Nh − 2

y1 y2 y3

x[n]

0 Nf − 1

Abbildung 7.7: Blockverarbeitung bei der Overlap-Save Methode mit Nx = 3Mund Nf = L (M = L−Nh + 1)

Page 196: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

186 7 Diskrete Fouriertransformation (DFT)

7.6 Die schnelle Fouriertransformation (FFT)

Die direkte Implementierung der diskreten Fouriertransformation nach Gl. 7.10benotigt einen Rechenaufwand der quadratisch mit der DFT-Lange N ansteigt(Komplexitat O(N2)). Mit Algorithmen der schnellen Fouriertransformation (FastFourier Transform, FFT) gelingt es, den Bedarf an Rechenoperationen drastisch zureduzieren. Beim so genannten Decimation-in-Time FFT-Algorithmus, denwir in diesem Abschnitt vorstellen werden, ist die Komplexitat O(N log2 N), wennN eine Zweierpotenz ist.

Der Ausgangspunkt zur Herleitung dieses Standard-FFT-Algorithmus ist dergleiche wie in Beispiel 7.2, wo wir die DFT eines reellwertigen Signals berechnethaben. Wir verwenden hier die gleiche Aufspaltung des Eingangssignals x[n], mitdem Unterschied, dass x[n] auch komplexwertig sein kann:

x1[n] = x[2n] 0 ≤ n ≤ N2 − 1

x2[n] = x[2n+ 1] 0 ≤ n ≤ N2 − 1 .

(7.41)

Gleichung 7.41 in Gl. 7.10 eingesetzt ergibt mit WN = e−j 2πN und Gl. 7.21

X[k] = X1[k] +W kNX2[k], k = 0, 1, . . . ,

N

2

X

[

k +N

2

]

= X1

[

k +N

2

]

+Wk+N

2

N X2

[

k +N

2

]

= X1[k]−W kNX2[k], k = 1, 2, . . . ,

N

2− 1,

(7.42)

mit der DFT X1[k] (X2[k]) von x1[n] (x2[n]). Wir haben damit die N -Punkte DFTX[k] des Signals x[n] in zwei N

2 -Punkte DFTs X1[k] und X2[k] ubergefuhrt. Gra-phisch lasst sich diese Aufspaltung als Signalflussgraph in Form eines Butterflydarstellen (siehe Abb. 7.8).

Wk+N

2

N = −W kN

X[k + N2 ]

X[k]

W kN

X1[k]

X2[k]

Abbildung 7.8: Butterfly der Decimation-in-Time FFT (k = 0, 1, . . . , N2 − 1)

Page 197: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.6 Die schnelle Fouriertransformation (FFT) 187

Bei Signalflussgraphen gibt es nur Knoten und gerichtete Pfade. Zu einemAddierer fuhren mindestens zwei Pfade hin. Bei einem Verzweigungsknoten fuhrtnur ein Pfad hin und alle anderen weg vom Knoten. Multiplizierer sind in denPfaden enthalten, wobei die Koeffizienten bei den Pfaden angegeben werden. EinSignalflussgraph ist demnach eine vereinfachte Darstellung eines Netzwerks, beidem die Elemente (Addierer, Multiplizierer) nicht explizit gezeichnet werden. DieVerknupfung der Elemente zum Netzwerk ist an den gerichteten Pfaden und anden Knoten ersichtlich.

Wir konnen in Abb. 7.8 wegen WN/2N = −1 eine Multiplikation einsparen,

so dass pro Butterfly eine komplexe Multiplikation und zwei komplexe Additio-nen/Subtraktionen notwendig sind. Mit den Butterfly-Signalflussgraphen fur dieFrequenzpunkte k = 0, 1, . . . , N

2 − 1 erhalten wir damit das Blockschaltbild inAbb. 7.9.

x[2]

x[4]

x[1]

x[3]

x[5]

x[7]

X[1]

X[2]

X[3]

X[4]

X[5]

X[6]

X[7]

N2 − DFT

X1[0]

X1[1]

X1[3]

X2[0]

X2[1]

X2[2]

X2[3]

X1[2]

N2 − DFT

x[0] X[0]

W 1N

W 2N

W 6N

W 7N

W 0N

W 3N

W 4N

W 5N

x[6]

Abbildung 7.9: Signalflussgraph zur Aufspaltung einer N -Punkte DFT in zweiN2 -Punkte DFTs (N = 8)

Page 198: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

188 7 Diskrete Fouriertransformation (DFT)

Wenn wir die Aufspaltung der DFT von Gl. 7.42 auch auf die beiden N2 -Punkte

DFT-Blocke in Abb. 7.9 anwenden, dann ergibt sich im Prinzip die gleiche Struk-tur, wobei jetzt N

4 -Punkte DFT-Blocke verbleiben, die nach dem gleichen Schemaweiter aufgespalten werden konnen. Da N eine Zweierpotenz ist, konnen wir die-se Vorgehensweise solange wiederholen, bis nur mehr 2-Punkte DFT-Blocke ubrigbleiben. Das Ergebnis ist in Abb. 7.10 als Signalflussgraph skizziert.

x[0]

x[4]

x[1]

x[5]

x[3]

x[7]

X[0]

X[1]

X[2]

X[3]

X[4]

X[5]

X[6]

X[7]

W 0N W 0

N

W 0N

W 2N

W 4N

W 4N

W 4N

W 4N

W 4N

W 6N

W 0N

W 0N

W 0N

W 2N

W 4N

W 6N

W 4N

W 5N

W 6N

W 7N

x[2]

x[6]

W 0N

W 1N

W 2N

W 3N

Abbildung 7.10: Signalflussgraph der Decimation-in-Time FFT (N = 8)

Die Indizes der Eingangssignalwerte des FFT-Signalflussgraphen von Abb. 7.10sind nicht sortiert, sondern treten bit-reversed auf. Die Elemente des Eingangssi-gnalvektors mussen vor der Verwendung im FFT-Algorithmus entsprechend Tabel-le 7.1 umsortiert werden. Bei modernen Signalprozessoren wird das Bit Reversalmit Hardware ausgefuhrt, so dass diese Form der Adressierung keine zusatzlicheVerarbeitungszeit kostet.

Wir erkennen an dem Signalflussgraphen in Abb. 7.10, dass fur die Implemen-tierung der DFT N log2 N komplexe Additionen und Multiplikationen notwen-

Page 199: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

7.6 Die schnelle Fouriertransformation (FFT) 189

Tabelle 7.1: Bit-reversed Indizes fur eine FFT-Lange N = 8

Index (lin.) Binarformat Bit Reversal Index (bit rev.)

0 000 000 0

1 001 100 4

2 010 010 2

3 011 110 6

4 100 001 1

5 101 101 5

6 110 011 3

7 111 111 7

dig sind. So ergibt sich beispielsweise fur N = 1024 = 210 eine Reduktion der

Arithmetikoperationen um den Faktor N2

N log2 N ≈ 102 im Vergleich zur direkten

Realisierung der DFT nach Gl. 7.10.

Es gibt mehrere Varianten von FFT-Signalflussgraphen auf die wir hier nichteingehen. Die Voraussetzung, dass N eine Zweierpotenz ist, wird bei anderen Algo-rithmen nicht benotigt. So kann z.B. bei der FFT-Implementierung von MATLAB,die auf der Open Source Software FFTW (www.fftw.org/) beruht, eine beliebigeFFT-Lange verwendet werden.

Beispiel 7.8

In diesem Beispiel vergleichen wir mit MATLAB die Ausfuhrzeit derdirekten Implementierung der DFT mit der Rechenzeit der FFT.

N = 4096; % DFT length = 2^12

x = randn(1,N)+1i*randn(1,N); % x[n] = complex random signal

x = x(:); % x = column vector

t0 = clock; % start clock

W = exp(-1i*2*pi/N*(0:N-1)); % table of W-factors

X = zeros(N,1);

X(1) = sum(x); % X[0]

for k = 1:N-1 % DFT loop

Wk = W(1+mod((0:k:(N-1)*k),N)); % table look-up

X(k+1) = Wk * x;

end

t1 = etime(clock,t0); % elapsed time

t0 = clock;

Page 200: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

190 7 Diskrete Fouriertransformation (DFT)

X1 = fft(x);

t2 = etime(clock,t0);

fprintf(1,’DFT: %e sec, FFT: %e sec\n’, t1, t2);

fprintf(1,’DFT/FFT = %f\n’, t1/(t2+eps));

Wir verwenden ein komplexwertiges Zufallssignal als allgemeinen Fallfur x[n]. Die Exponentialfunktionen W k

N der DFT werden mit einerTabelle von N Werten berechnet. Damit ersparen wir uns die Auswer-tung trigonometrischer Funktionen in der Schleife. Die Adressierungder Tabelle in der Schleife erfolgt mit einem Offset k, mit dem W k

N

ausgewahlt wird. Mit der Modulooperation werden Werte außerhalbder Tabelle in den Bereich der Tabelle abgebildet.Die Rechenzeiten fur dieses MATLAB-Beispiel hangen vom verwende-ten Rechner ab. Auch sollte das Beispiel mehrfach ausgefuhrt werden,da die Rechenzeiten schwanken. Das liegt neben dem Einfluss des Rech-nerbetriebssystems auch daran, dass MATLAB beim ersten Aufruf derFFT eine Optimierung durch Anpassung an die Rechnerarchitekturdurchfuhrt. Erst ab dem zweiten Aufruf der FFT ergeben sich die ei-gentlichen Rechenzeiten der FFT.

Page 201: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8

Multiratensignalverarbeitung

Bei der Umwandlung analoger Signale in zeitdiskrete Signale haben wir in Ab-schnitt 4.2 die Abtastung des analogen Signals zu aquidistanten Zeitpunkten tn =nT behandelt. Damit konnen wir diese Signale mit zeitdiskreten Systemen verar-beiten. Bei der Ruckwandlung zeitdiskreter Signale in analoge Signale wird eben-falls das Abtastintervall T verwendet. Damit lauft der gesamte Prozess, bestehendaus Abtastung, Verarbeitung und Rekonstruktion, mit dem gleichen ZeitintervallT ab. Die Taktrate (Abtastfrequenz fs = 1/T ) ist daher im gesamten System gleichgroß. Wir sprechen in diesem Fall von Einfachtaktverarbeitung, bei der uber-wiegend zeitinvariante Systeme zum Einsatz kommen. Im Gegensatz dazu werdenbei Mehrfachtakt- oder Multiratenverarbeitung unterschiedliche Taktratenim System verwendet. Systeme mit Multiratenverarbeitung sind im Allgemeinennicht zeitinvariant. Eine Beschreibung durch die Faltungsbeziehung mit eindimen-sionaler Impulsantwort nach Gl. 3.7 ist damit nicht mehr gegeben.

Die Multiratensignalverarbeitung hat entscheidende Vorteile und bietet Verar-beitungsmoglichkeiten, die in Analogtechnik nicht realisierbar sind. Die allgemeineBeschreibung von Multiratensystemen ist komplizierter als jene von Systemen mitEinfachtaktverarbeitung. Wir werden jedoch zeigen, dass trotzdem im Zeit- undim Frequenzbereich eine einfache und anschauliche Darstellung fur die wichtigstenSysteme moglich ist. Da in nahezu allen gangigen Systemen der digitalen Signalver-arbeitung die Multiratenverarbeitung zur Anwendung kommt, sind Grundkennt-nisse auf diesem Fachgebiet heute eine Notwendigkeit fur das Design von Systemenzur digitalen Signalverarbeitung. Einige Anwendungsbeispiele sind digitales Ra-dio und Fernsehen, Digitalmischpulte fur Audioaufnahmen, MPEG-Encoder und-Decoder und die Signalverarbeitung in Mobilfunkgeraten.

Als Beispiel betrachten wir den Taktratenumsetzer (Sampling Rate Con-verter) fur Audiosignale in Abb. 8.1. Da es verschiedene Aufzeichnungsformate

Page 202: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

192 8 Multiratensignalverarbeitung

mit unterschiedlichen Abtastraten gibt, besteht z.B. bei digitalen Mischpulten dieNotwendigkeit zur Anpassung der digitalen Tonaufnahmen. Die naheliegende Me-

Taktraten-umsetzer 2:3fs = 32 kHz fs = 48 kHz

Audioformat 1 Audioformat 2

x[n] y[n]

Abbildung 8.1: Taktratenumsetzung fur digitale Audiosignale mit 32 kHz Ein-gangsabtastfrequenz und 48 kHz = 3/2 · 32 kHz Ausgangsabtastfrequenz

thode zur Realisierung des Taktratenumsetzers ware die Ruckwandlung des di-gitalen Eingangssignals in ein Analogsignal, gefolgt von einer Abtastung mit derAusgangsabtastrate. Der Ubergang in den Analogbereich und wieder zuruck in denDigitalbereich ist ineffizient und fuhrt zu einer Verschlechterung des Dynamikver-haltens durch Quantisierungsfehler und durch Einflusse der benotigten Analogfilterzur Bandbegrenzung. Eleganter und erheblich genauer ist die direkte Taktraten-umsetzung im Digitalbereich. Daher behandeln wir in diesem Kapitel zunachst dieTaktratenumsetzung mit ganzzahligen Faktoren und erweitern im Anschluss dar-an die Methoden auf rationale Taktratenverhaltnisse (wie z.B. in Abb. 8.1) undauf beliebige Faktoren. In allen Fallen gehen wir von der Beziehung Gl. 4.61 aus,die wir bei der Rekonstruktion von Analogsignalen aus Abtastwerten hergeleitethaben (siehe Seite 78). Wir sprechen von Interpolation, wenn die Taktrate amSystemausgang großer als jene am Systemeingang ist. Bei der Dezimation hin-gegen wird eine kleinere Taktrate am Systemausgang verwendet. Signale endlicherDauer werden bei Interpolation langer und bei Dezimation kurzer.

8.1 Beschreibung von Multiratensystemen imZeitbereich

Bei der Rekonstruktion eines Analogsignals xa(t) aus den Abtastwerten x[n] habenwir in Abschnitt 4.2 den Zusammenhang

xa(t) =

∞∑

m=−∞x[m] g(t−mT ) (8.1)

erhalten (siehe Gl. 4.61 und Gl. 4.62). Die Abtastung erfolgt dabei mit dem Ab-tastintervall T . Bei exakt bandbegrenzten Analogsignalen hat die Interpolations-funktion g(t) den Verlauf

g(t) = Tsin π

T t

πt, (8.2)

Page 203: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.1 Beschreibung von Multiratensystemen im Zeitbereich 193

entsprechend der Impulsantwort eines idealen, analogen Tiefpassfilters mit derGrenzfrequenz ωg = π

T . Wenn wir jetzt xa(t) mit einem anderen AbtastintervallT ′ 6= T abtasten, dann ergibt sich aus Gl. 8.1

xa(nT′) =

∞∑

m=−∞x[m] g(nT ′ −mT ), ∀n. (8.3)

Mit y[n] = xa(nT′) erhalten wir fur die Beschreibung des Taktratenumsetzers im

Zeitbereich

y[n] =∞∑

m=−∞x[m] g(nTy −mTx), ∀n, (8.4)

wobei wir zur besseren Unterscheidung der Abtastintervalle, Tx = T am System-eingang und Ty = T ′ am Systemausgang verwenden. Wir mussen beachten, dassdiese Beziehung keine Faltungsbeziehung ist, da die Werte g(nTy − mTx) wegenTy 6= Tx mit zwei Indizes n, m aus der zeitkontinuierlichen Funktion g(t) bestimmtwerden mussen. Das System ist daher auch nicht zeitinvariant, d.h. aus x[n−N0]folgt nicht y[n−N0] fur beliebiges N0 ∈ Z.

Zur Realisierung von Gl. 8.4 fur beliebige Taktratenumsetzungsfaktoren R =Tx

Tymussen wir die zeitkontinuierliche Funktion g(t) zur Verfugung haben, der wir

dann fur die Summenbildung Werte zu den Zeitpunkten t[n,m] = nTy − mTx

entnehmen. Den Fall beliebiger Faktoren R werden wir in Abschnitt 8.4 genauerbehandeln. Beim einfacheren Fall rationaler Faktoren R = Tx

Ty= L

M (L,M ∈ N)

ergeben sich fur t[n,m] ganzzahlige Vielfache eines Zeitintervalls:

t[n,m] = nTy −mTx = Ty(n−mR) =Ty

M(nM −mL)︸ ︷︷ ︸

ganzzahlig

. (8.5)

Dadurch benotigen wir fur R = LM nur aquidistante, zeitdiskrete Werte g[n] der

Interpolationsfunktion g(t). Der Taktratenumsetzer kann allgemein als lineares,zeitvariantes, zeitdiskretes System realisiert werden (siehe Abb. 8.2).

h[n,m]Ty =

Tx

RTx

x[n]y[n] =

∞∑

m=−∞

x[m]h[n,m]

Abbildung 8.2: Taktratenumsetzer als zeitdiskretes, zeitvariantes System mit (be-liebigem) Umsetzungsfaktor R = Tx

Ty(Impulsantwort h[n,m] = g(nTy −mTx))

Page 204: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

194 8 Multiratensignalverarbeitung

Die Eingangs/Ausgangsbeziehung des Taktratenumsetzers ist daher mit Gl. 8.4durch

y[n] =∞∑

m=−∞x[m]h[n,m], ∀n. (8.6)

gegeben. Bei der Bestimmung von h[n,m] aus g(t) mussen wir zwei Falle unter-scheiden, namlich den Fall der Interpolation (Taktratenerhohung) und der Dezima-tion (Taktratenreduktion). Dabei behandeln wir zunachst nur den Fall rationalerUmsetzungsfaktoren.

Fall Interpolation: (Ty < Tx bzw. L > M)

In diesem Fall wird die Taktrate am Ausgang erhoht und es wird durch dieTaktratenanderung kein Aliasing auftreten, da x[n] von einem mit ωg = π

Txband-

begrenzten Analogsignal erzeugt wird. Mit Gl. 8.2 und T = Tx erhalten wir

g(t) = Tx

sin πTx

t

πt(8.7)

und mit t[n,m] =Ty

M (nM −mL) (Gl. 8.5)

h[n,m] = g

(Ty

M(nM −mL)

)

= g[nM −mL] (8.8)

g[n] = Lsin π

Ln

πn. (8.9)

Fall Dezimation: (Ty > Tx bzw. L < M)

Ist die Taktrate am Systemausgang kleiner als am Eingang, dann muss x[n]eine kleinere Bandbreite (ωg = π

Ty< π

Tx) aufweisen, damit durch die Reduktion

der Abtastrate kein Aliasing am Systemausgang auftritt. Fur die Interpolations-funktion in Gl. 8.5 mussen wir jetzt T = Ty in Gl. 8.2 verwenden:

g(t) = Ty

sin πTy

t

πt. (8.10)

Wir erhalten daher

h[n,m] = g

(Ty

M(nM −mL)

)

= g[nM −mL] (8.11)

g[n] = Msin π

M n

πn. (8.12)

Beide Falle konnen wir zusammenfassen, wenn wir die Grenzfrequenz θg =min

(πL ,

πM

)einfuhren:

g[n] =sin θgn

θgn. (8.13)

Page 205: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.1 Beschreibung von Multiratensystemen im Zeitbereich 195

Mit dieser Gleichung ergibt sich fur die Eingangs/Ausgangsbeziehung des Taktra-tenumsetzers fur R = Tx

Ty= L

M aus Gl. 8.6:

y[n] =∞∑

m=−∞x[m]g[nM −mL] =

∞∑

m=−∞x[m]

sin (θg(nM −mL))

θg(nM −mL), ∀n, (8.14)

mit θg = min(πL ,

πM

).

Diese Gleichung kann direkt zur Realisierung verwendet werden. Dabei wird dieInterpolationsfunktion zeitbegrenzt, so wie beim Fensterentwurf von FIR-Filternin Abschnitt 6.2.1. Wir konnen aber auch andere Funktionen g(t) anstelle dessin t/t-formigen Verlaufs zur Bestimmung von g[n] heranziehen.

Beispiel 8.1

Wir programmieren den Abtastratenumsetzer nach Gl. 8.14 mit MAT-LAB. Als Eingangssignal verwenden wir das gleiche Signal wie in Bei-spiel 4.8 auf Seite 79. Die zeitdiskrete Interpolationsfunktion h[n,m]wird als Matrix erzeugt. Dazu werden die Zeitindizes n,m in der Matrixnm gespeichert, die der sinc-Funktion als Argument ubergeben wird.Mit Einsvektoren werden fur die Subtraktion nM − mL zwei Matri-zen gleicher Dimension gebildet. Dadurch entstehen mit einem einzigenMATLAB-Befehl alle benotigten Kombinationen der Indizes n,m. DieBerechnung von y[n] nach Gl. 8.14 erfolgt dann durch Multiplikationder Interpolationsmatrix mit dem Eingangssignalvektor.

N = 50;

m = -N:N;

Nx = 2*N+1;

tg = 1/4;

x1 = tg*sinc(tg*m); % signal (rectangular low pass spectrum)

x = x1 .*x1; % signal (triangular low pass spectrum)

x = x/sum(x); % normalize spectrum of x[n]

L = 3; % up-sampling factor

M = 2; % down-sampling factor

tc = min(1/L,1/M); % cut-off frequency of interpolation

% filter

nmax = floor(N*L/M);

Ny = 2*nmax+1; % output signal length

% compute interpolation matrix h[n,m] = sinc(tc*(nM-mL))

Page 206: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

196 8 Multiratensignalverarbeitung

n = (-nmax:nmax)’;

nm = M*n(:,ones(1,Nx))-L*m(ones(Ny,1),:); % matrix of

% indices n,m

h = sinc(tc*nm);

y = h*x(:); % output signal = h-matrix*input vector

subplot(2,1,1), stem((-N:N),x);

xlabel(’n’), ylabel(’x[n]’);

subplot(2,1,2), stem(n,y);

xlabel(’n’), ylabel(’y[n]’);

title(sprintf(’Taktratenumsetzung mit dem Faktor %d/%d’,L,M));

pause;

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

Y = fftshift(fft(y,Nf));

theta = linspace(-1,1,Nf); % frequency axis theta/pi

subplot(2,1,1), plot(theta,abs(X)), grid on;

xlabel(’\theta/\pi’), ylabel(’|X(e^{j\theta})|’);

title(’input signal spectrum’);

subplot(2,1,2), plot(theta,abs(Y)), grid on;

xlabel(’\theta/\pi’), ylabel(’|Y(e^{j\theta})|’);

title(sprintf(’output signal spectrum, M = %d, L = %d’,M,L));

Bei der Ausfuhrung des Programms werden die Ergebnisse im Zeit- undim Frequenzbereich dargestellt. Die Interpolation (L > M oder Dezi-mation (L < M) ist im Zeitbereich leicht zu erkennen. Im Frequenz-bereich sehen wir, dass der dreieckformige Verlauf des Spektrums amAusgang des Taktratenumsetzers bei L > M (Interpolation) gestauchtund bei L < M (Dezimation) gedehnt wird. Um diesen Effekt zu ver-stehen, werden wir im nachsten Abschnitt die Multiratensysteme imFrequenzbereich betrachten.

8.2 Beschreibung von Multiratensystemen im

Frequenzbereich

Die Zeitbereichsdarstellungen Gl. 8.6 und Gl. 8.14 konnen nicht unmittelbar in denFrequenzbereich transformiert werden, so wie das bei den zeitinvarianten Syste-

Page 207: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.2 Beschreibung von Multiratensystemen im Frequenzbereich 197

men in Abschnitt 3.2 moglich ist. Die Eingangs/Ausgangsbeziehung dieser Multi-ratensysteme ist keine Faltungsbeziehung, so dass sich die Fouriertransformati-on des Ausgangssignals nicht durch Multiplikation des Eingangssignalspektrumsmit einer Ubertragungsfunktion ergibt. In diesem Abschnitt zeigen wir, dass wirdas Ausgangssignalspektrum trotzdem mit den bisher vorgestellten Methoden derFouriertransformation bestimmen konnen. Dazu werden wir alternative Darstel-lungen der Taktratenumsetzung herleiten und beschranken uns dabei zunachst aufganzzahlige Taktratenumsetzungsfaktoren.

Interpolation mit ganzzahligen Faktoren

Fur M = 1 und L ∈ N erhalten wir mit Gl. 8.14 die Interpolation mit demganzzahligen Faktor L:

y[n] =∞∑

m=−∞x[m]g[n−mL]. (8.15)

Die Interpolationsfunktion ergibt sich aus Gl. 8.9:

g[n] = Lsin π

Ln

πn. (8.16)

Mit der Substitution m → mL folgt aus Gl. 8.15

y[n] =∑

m=0,±L,±2L,...

x[m

L

]

g[n−m], (8.17)

wobei der Summationsindex m nur Vielfache von L annimmt. Mit dem Zwischen-signal

w[n] =

{

x[nL

]n = 0,±L,±2L,±3L, . . .

0 sonst(8.18)

kann die Summe in Gl. 8.17 mit m = 0, 1, 2, . . . als Index geschrieben werden:

y[n] =

∞∑

m=−∞w[m]g[n−m]. (8.19)

Damit konnen wir die Interpolation mit dem Faktor L durch Einfugen von L− 1Nullen zwischen den Eingangssignalwerten und anschließender linearer, zeitinva-rianter Filterung mit der Impulsantwort g[n] darstellen (siehe Abb. 8.3). DasEinfugen von Nullen entspricht einer Erhohung der Abtastrate. Mit dem Filterwerden dann die Zwischenwerte berechnet, so dass sich ein interpolierter Signal-verlauf ergibt.

Page 208: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

198 8 Multiratensignalverarbeitung

3 43 4

Tx

x[n] w[n] y[n]

Ty = Tx

L Ty

g[n]↑ L

x[n]

n0 1 2

y[n]

n0 1 2

w[n]

n0 1 2

Abbildung 8.3: Interpolation mit ganzzahligem Faktor L durch Einfugen von Nul-len (Taktratenerhohung mit L = 2 im skizzierten Verlauf von w[n]) und linearer,zeitinvarianter Filterung mit der Impulsantwort g[n]

Mit dieser Darstellung der Interpolation konnen wir sofort durch Anwendungder Fouriertransformation zur Frequenzbereichsdarstellung ubergehen:

W(ejθ)=

∞∑

n=−∞w[n]e−jθn =

n=0,±L,±2L,...

x[n

L

]

e−jθn

=∞∑

n=−∞x[n]e−jθnL = X

(ejθL

).

(8.20)

Mit der Ubertragungsfunktion des idealen Interpolationsfilters

G(ejθ)=

∞∑

n=−∞g[n]e−jθn =

{

L |θ| < θg = πL

0 sonst in [−π, π](8.21)

erhalten wir fur die Fouriertransformierte des Ausgangssignals

Y(ejθ)= G

(ejθ)X(ejθL

)=

{

LX(ejθL

)|θ| < π

L

0 sonst in [−π, π]. (8.22)

In Gl. 8.21 haben wir die sin x/x-formige Interpolationsfunktion von Gl. 8.16 ver-wendet, die einer idealen Tiefpassfilterung entspricht. In den Anwendungen des In-terpolators kann dieses Filter beispielsweise durch ein FIR-Filter hinreichend genauapproximiert werden. Die Zusammenhange im Frequenzbereich sind in Abb. 8.4mit einem dreieckformigen Eingangssignalspektrum dargestellt.

Das Spektrum des Zwischensignals w[n] entsteht durch Kompression des Ein-gangssignalspektrums. Das Frequenzintervall [−π, π] wird dabei auf [− π

L ,πL ] ge-

staucht. Dadurch tritt auch die periodische Fortsetzung (Periode 2πL ) des Ein-

gangssignalspektrums (Periode 2π) in Erscheinung. Das Spektrum am Ausgangdes Interpolators erhalten wir durch ideale Tiefpassfilterung mit der Grenzfre-quenz θg = π

L (siehe Gl. 8.22). Die periodischen Fortsetzungen in W(ejθ)werden

damit unterdruckt.

Page 209: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.2 Beschreibung von Multiratensystemen im Frequenzbereich 199

X(ejθ)

1

Y(ejθ)= G

(ejθ)X(ejθL

)

π

−π π

−π π

W(ejθ)= X

(ejθL

)

−πL

πL

−πL

πL

L

1

−π

Abbildung 8.4: Spektren fur θ ∈ [−π, π] bei Interpolation mit ganzzahligem FaktorL = 4 und G

(ejθ)von Gl. 8.21

Beispiel 8.2

Wir simulieren den Interpolator von Abb. 8.3 mit MATLAB. Das In-terpolationsfilter wird als FIR-Filter mit der Funktion fir1.m erzeugt(Fenstermethode von Abschnitt 6.2.1). Als Eingangssignal verwendenwir wie in Beispiel 8.1 ein Signal mit dreieckformigem Spektrum.

N = 100;

n = -N:N;

Nx = 2*N+1;

tg = 1/2; % input signal cutoff frequency

% normalized to fs

x1 = tg*sinc(tg*n); % signal (rectangular low pass spect.)

x = x1 .*x1; % signal (triangular low pass spect.)

x = x/sum(x); % normalize spectrum

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

L = 4; % up-sampling factor

Page 210: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

200 8 Multiratensignalverarbeitung

Ny = L*Nx; % length of interpolated signal

w = zeros(1,Ny);

w(1:L:end) = x;

W = fftshift(fft(w,Nf)); % spectrum of zero-filled signal

tc = 1/L; % interpolation filter cutoff frequency

% normalized to fs/2

Ng = 200;

g = L*fir1(Ng,tc); % interpolation filter impulse response

G = fftshift(fft(g,Nf));

Y = G .* W; % output signal spectrum

theta = linspace(-1,1,Nf); % frequency axis theta/pi

subplot(3,1,1), plot(theta,abs(X),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|X(e^{j\theta})|’,labelfont{:});

title(’input signal spectrum’);

subplot(3,1,2), plot(theta,abs(W),theta,abs(G)/L,’r’,style{:});

grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|W(e^{j\theta})|’,labelfont{:});

legend(’|W|’,’|G|/L’);

title(sprintf(’spectrum of up-sampled input signal, L = %d’,L));

subplot(3,1,3), plot(theta,abs(Y),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|Y(e^{j\theta})|’,labelfont{:});

title(’output signal spectrum’);

Dezimation mit ganzzahligen Faktoren

Die Dezimation von Signalen fur Faktoren L = 1 und M ∈ N erhalten wir ausGl. 8.14:

y[n] =∞∑

m=−∞x[m]g[nM −m] =

∞∑

m=−∞x[nM −m]g[m], (8.23)

mit g[n] aus Gl. 8.12

g[n] = Msin π

M n

πn. (8.24)

Wir fuhren das folgende Zwischensignal ein:

w[n] =

∞∑

m=−∞x[n−m]g[m]. (8.25)

Page 211: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.2 Beschreibung von Multiratensystemen im Frequenzbereich 201

Das Ausgangssignal des Dezimators

y[n] = w[nM ] =∞∑

m=−∞x[nM −m]g[m] (8.26)

ergibt sich dann durch Kaskadenschaltung eines linearen, zeitinvarianten Filtersund einer Taktratenreduktion, bei der nur jeder M -te Wert des Filterausgangssi-gnals verwendet wird (siehe Abb. 8.5).

3 43 4

Tx

x[n] y[n]

Ty = MTx

w[n]

Tx

g[n] ↓ M

w[n]

n0 1 2

x[n]

n0 1 2

y[n]

n0 1 2

Abbildung 8.5: Dezimation mit ganzzahligem Faktor M durch lineare, zeitinvari-ante Filterung mit der Impulsantwort g[n] und anschließender Taktratenreduktion

Zur Berechnung des Zusammenhangs zwischen den Fouriertransformierten derSignale w[n] und y[n] gehen wir von Y

(ejθ)aus und setzen y[n] = w[nM ] (siehe

Gl. 8.26) ein:

Y(ejθ)=

∞∑

n=−∞y[n]e−jθn =

∞∑

n=−∞w[nM ]e−jθn =

n=0,±M,±2M,...

w[n]e−j θM n.

(8.27)Um wieder uber alle Indizes zu summieren, multiplizieren wir w[n] mit einemδ-Puls, der fur jeden M -ten Wert Eins und sonst Null ist:

Y(ejθ)=

∞∑

n=−∞w[n]

∞∑

m=−∞δ[n−mM ] e−j θ

M n. (8.28)

Mit der Fourierreihendarstellung des δ-Pulses

∞∑

m=−∞δ[n−mM ] =

1

M

M−1∑

k=0

ej2πM nk

Page 212: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

202 8 Multiratensignalverarbeitung

(siehe Beispiel 2.8 auf Seite 20) erhalten wir

Y(ejθ)=

∞∑

n=−∞w[n]

1

M

M−1∑

k=0

ej2πM nk e−j θ

M n

=1

M

M−1∑

k=0

∞∑

n=−∞w[n]e−j( θ

M − 2πM k)n

︸ ︷︷ ︸

W

(

ej( θ

M−

2πM

k))

=1

M

M−1∑

k=0

W(

ej(θM − 2π

M k))

.

(8.29)

Dieser Zusammenhang zwischen den Fouriertransformierten am Ein- und Aus-gang der Abtastratenreduktion entspricht der Beziehung Gl. 4.52 auf Seite 76 beider Abtastung analoger Signale. Die Abtastratenreduktion in Abb. 8.5 kann alsUnterabtastung des zeitdiskreten Signals w[n] interpretiert werden. Das Ab-tastintervall T in Gl. 4.52 entspricht dem Faktor M in Gl. 8.29. Mit W

(ejθ)=

G(ejθ)X(ejθ)erhalten wir aus Gl. 8.29

Y(ejθ)=

1

M

M−1∑

k=0

G(

ej(θM − 2π

M k))

X(

ej(θM − 2π

M k))

. (8.30)

Fur den Fall, dass ein ideales Tiefpassfilter mit der Grenzfrequenz θg = πM in

Abb. 8.5 zur Bandbegrenzung von x[n] eingesetzt wird (entsprechend g[n] inGl. 8.24), reduziert sich Gl. 8.30 auf

Y(ejθ)=

1

MG(

ejθM

)

X(

ejθM

)

= X(

ejθM

)

, θ ∈ [−π, π]. (8.31)

Wenn wir reale Filter mit endlicher Flankensteilheit und Sperrbereichsdampfungverwenden, dann wird wie bei der Abtastung analoger Signale Aliasing auftre-ten, dessen Einfluss jedoch durch geeignete Dimensionierung des Filters in denAnwendungen vernachlassigt werden kann.

Die Spektren des Dezimators von Abb. 8.5 fur ein dreieckformiges Eingangs-signalspektrum sind in Abb. 8.6 dargestellt. Durch das ideale Tiefpassfilter amEingang des Dezimators wird der Frequenzbereich [− π

M , πM ] selektiert, der dann

durch die Unterabtastung mit dem Faktor M auf das Intervall [−π, π] gedehntwird (siehe Gl. 8.31).

Beispiel 8.3

Wie in Beispiel 8.2 erzeugen wir auch in diesem MATLAB-Beispielein Eingangssignal mit dreieckformigem Spektrum. Das Zwischensignal

Page 213: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.2 Beschreibung von Multiratensystemen im Frequenzbereich 203

X(ejθ)

1

Y(ejθ)= X

(

ejθM

)

−π π

−π π

−π π

W(ejθ)= G

(ejθ)X(ejθ)

− πM

πM

M

1

Abbildung 8.6: Spektren fur θ ∈ [−π, π] bei Dezimation mit ganzzahligem FaktorM = 4 und idealem Tiefpassfilter G

(ejθ)(Grenzfrequenz θg = π

M )

w[n] bestimmen wir durch Faltung des Eingangssignals mit der Impuls-antwort eines FIR-Tiefpassfilters mit der Grenzfrequenz θg = π

M . DasAusgangssignal y[n] ergibt sich durch Selektion jedes M -ten Wertesvon w[n].

N = 100;

n = -N:N;

Nx = 2*N+1;

tg = 1/2; % input signal cutoff frequency

% normalized to fs

x1 = tg*sinc(tg*n); % signal (rectangular low pass spectrum)

x = x1 .*x1; % signal (triangular low pass spectrum)

x = x/sum(x);

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

M = 2;

tc = 1/M; % decimation filter cutoff frequency

% normalized to fs/2

Ng = 200;

g = M*fir1(Ng,tc); % decimation filter impulse response

Page 214: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

204 8 Multiratensignalverarbeitung

G = fftshift(fft(g,Nf));

w = conv(x,g); % filtered input signal spectrum

W = fftshift(fft(w,Nf));

Ny = Nx+Ng-1;

y = w(1:M:Ny); % sub-sampling of filtered input signal

Y = fftshift(fft(y,Nf));

subplot(3,1,1), plot(theta,abs(X),theta,abs(G/M),’r’,style{:});

grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|X(e^{j\theta})|’,labelfont{:});

title(’input signal spectrum’);

legend(’|X|’,’|G/M|’);

subplot(3,1,2), plot(theta,abs(W/M),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|W(e^{j\theta})|/M’,labelfont{:});

title(sprintf(’spectrum of filtered input signal, M = %d’,M));

subplot(3,1,3), plot(theta,abs(Y),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|Y(e^{j\theta})|’,labelfont{:});

title(’output signal spectrum’);

axis([-1,1,0,1]);

Taktratenumsetzung mit rationalen Faktoren

Zur Frequenzbereichsdarstellung von Taktratenumsetzern mit rationalen FaktorenR = Tx

Ty= L

M konnen wir die Interpolation mit dem Faktor L und die Dezimation

mit M in Form einer Kettenschaltung kombinieren (siehe Abb. 8.7).

Tx

x[n]↑ L ↓ Mg[n]

y[n]

Ty = TxML

w[n]

Tw = Tx

L

v[n]

Tv = Tx

L

Abbildung 8.7: Taktratenumsetzung fur R = Tx

Ty= L

M als Kettenschaltung von

Interpolation und Dezimation

Das Filter mit der Impulsantwort g[n] in Abb. 8.7 ist gleich dem Filter des In-terpolators von Abb. 8.3 und bewirkt die Interpolation der Eingangssignalwerte.Zusatzlich muss mit diesem Filter eine ausreichende Bandbegrenzung vorgenom-men werden, so dass die anschließende Dezimation um den Faktor M kein Aliasing

Page 215: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.2 Beschreibung von Multiratensystemen im Frequenzbereich 205

im Frequenzintervall [−π, π] erzeugt. Mit Gl. 8.15 des Interpolators erhalten wir

w[n] =∞∑

m=−∞x[m]g[n−mL] (8.32)

und mit y[n] = w[nM ]

y[n] =

∞∑

m=−∞x[m]g[nM −mL] (8.33)

in Ubereinstimmung mit Gl. 8.14. Wir wahlen auch hier fur die Filterimpuls-antwort g[n] ein Tiefpassfilter mit der Grenzfrequenz θg = min

(πL ,

πM

)(siehe

Gl. 8.13). Der Verstarkungsfaktor des Filters ist L, wie beim Interpolator inAbb. 8.3.

Zur Berechnung der Fouriertransformierten von y[n] verwenden wir Gl. 8.22fur die Berechnung von W

(ejθ)in Kombination mit Gl. 8.29:

Y(ejθ)=

1

M

M−1∑

k=0

G(

ej(θM − 2π

M k))

X(

ej(θLM −2π L

M k))

. (8.34)

Wird ein ideales Tiefpassfilter mit θg = min(πL ,

πM

)in Abb. 8.7 eingesetzt, dann

vereinfacht sich Gl. 8.34 zu

Y(ejθ)=

1

MG(

ejθM

)

X(

ejθLM

)

=L

MX(

ejθLM

)

, θ ∈ [−π, π]. (8.35)

Als Beispiel sind in Abb. 8.8 die Spektren der Signale bei Taktratenumsetzung furL = 2 und M = 3 dargestellt.

Beispiel 8.4

In diesem Beispiel simulieren wir den Taktratenumsetzer von Abb. 8.7mit MATLAB.Wir erhalten ein Ergebnis, so wie es in Abb. 8.8 skizziertist.

N = 100;

n = -N:N;

Nx = 2*N+1;

tg = 1/2; % input signal cutoff frequency

% normalized to fs

x1 = tg*sinc(tg*n); % signal (rectangular low pass spect.)

x = x1 .*x1; % signal (triangular low pass spect.)

Page 216: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

206 8 Multiratensignalverarbeitung

1

−π π

−π π

V(ejθ)

1

πL−π

L

−π π

W(ejθ)= G

(ejθ)V(ejθ)

L

Y(ejθ)= L

MX(

ejθLM

)

−π π

L/M

− πM

πM

X(ejθ)

Abbildung 8.8: Spektren fur θ ∈ [−π, π] bei der Taktratenumsetzung um denFaktor L

M = 23

x = x/sum(x);

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

L = 2; % up-sampling factor

M = 3; % down-sampling factor

Nv = L*Nx; % length of interpolated signal

v = zeros(1,Nv);

v(1:L:end) = x;

V = fftshift(fft(v,Nf)); % spectrum of zero-filled signal

tc = min(1/L,1/M); % interpolation filter cutoff frequency

% normalized to fs/2

Ng = 200;

Page 217: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 207

g = L*fir1(Ng,tc); % interpolation filter impulse response

G = fftshift(fft(g,Nf));

w = conv(v,g);

W = fftshift(fft(w,Nf)); % interpolated signal spectrum

Ny = Nv+Nh-1;

y = w(1:M:Ny); % sub-sampling of interpolated signal

Y = fftshift(fft(y,Nf));

theta = linspace(-1,1,Nf);

subplot(4,1,1), plot(theta,abs(X),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|X(e^{j\theta})|’,labelfont{:});

title(’input signal spectrum’);

subplot(4,1,2), plot(theta,abs(V),theta,abs(G/L),’r’,style{:});

grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|V(e^{j\theta})|’,labelfont{:});

title(sprintf(’spectrum of input signal up-sampled by L=%d’,L));

legend(’|V|’,’|G|/L’);

subplot(4,1,3), plot(theta,abs(W),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|W(e^{j\theta})|’,labelfont{:});

title(sprintf(’spectrum of filtered signal, M = %d’,M));

subplot(4,1,4), plot(theta,abs(Y),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|Y(e^{j\theta})|’,labelfont{:});

title(’output signal spectrum’);

8.3 Effiziente Multiratensysteme

Die bisher vorgestellten Systeme zur Taktratenumsetzung mit rationalen FaktorenLM konnen zwar einfach im Frequenzbereich beschrieben werden, sie sind jedochdurch das Einfugen von Nullen nicht effizient. Zusatzlich werden durch die Dezi-mation am Ausgang Werte berechnet, die dann ohnehin nicht benotigt werden. Indiesem Abschnitt geben wir daher Systeme an, bei denen keine Nullwerte verar-beitet werden und die einen wesentlich geringeren Aufwand an Rechenoperationenaufweisen.

Page 218: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

208 8 Multiratensignalverarbeitung

8.3.1 Taktratenumsetzung mit digitalen Abtast-Halte-Elementen

Ein digitales Abtast-Halte-Element (Sample-Hold) ist ein grundlegendes Netzwerk-element fur Multiratensysteme, so wie das Element zur Taktratenerhohung um denFaktor L bzw. Taktratenreduktion um M in Abb. 8.7. Das Blockschaltbild unddie zugehorende Operation ist in Abb. 8.9 angegeben (die Floor-Funktion ⌊·⌋ istim Glossar bzw. auf Seite 139 definiert).

M/L

x[n] y[n] = x[⌊nM

L⌋]

Tx Ty =MLTx

Abbildung 8.9: Blockschaltbild des digitalen Abtast-Halte-Elements y[n] =x[⌊nM

L ⌋]

Die Funktionsweise des digitalen Abtast-Halte-Elements zeigen wir am bes-ten an zwei Beispielen. Der Fall L < M , also die Reduktion der Taktrate, istin Abb. 8.10 dargestellt. Mit den Pfeilen geben wir die Signalwerte an, die vomEingang an den Ausgang ubernommen werden. Da fur L < M Signalwerte aus-gelassen werden, ergibt sich eine Taktratenreduktion (Abtastfunktion). Um diezeitliche Zuordnung der Werte besser zu erkennen, ist die Zeitachse in Vielfachendes jeweiligen Abtastintervalls skaliert. So entspricht der Zeitindex n = 1 auf derZeitachse fur x[n] dem Zeitpunkt t = Tx. Fur y[n] bezieht sich n = 1 auf t = Ty.Diese Unterschiede in der Zeitskalierung sind durch das großere Abtastintervall fury[n] in Abb. 8.10 angedeutet.

2 5

0

0 1

1

3

2

4

3 4

6n

n

⌊n32 ⌋0

1

4

3

2

0

6

4

3

1

n

x[n]

y[n]

Abbildung 8.10: Digitales Abtast-Halte-Element y[n] = x[⌊nM

L ⌋]bei Taktraten-

reduktion um den Faktor LM = 2

3

Page 219: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 209

Der Fall der Taktratenerhohung (L > M) in Abb. 8.11 zeigt, dass eine einfacheInterpolation durch Wiederholung einzelner Werte erzielt wird (Haltefunktion).

0

nn ⌊n23 ⌋

0

1

4

3

2

0

2

2

1

0

5

6

3

41

0 1

2 3 4

2

5

3

6 7

4 5

8

6

9n

x[n]

y[n]

Abbildung 8.11: Digitales Abtast-Halte-Element y[n] = x[⌊nM

L ⌋]bei Taktraten-

erhohung um den Faktor LM = 3

2

An beiden Abbildungen erkennen wir, dass bei einem digitalen Abtast-Halte-Element immer der zeitlich zuletzt aufgetretene Eingangssignalwert an den Aus-gang ubernommen wird. Damit konnen wir dieses Schaltungselement einfach durcheine Speicherzelle (Register) realisieren, die alle Tx Sekunden mit einem x[n]-Wertgeladen wird. Das Auslesen der Speicherzelle erfolgt hingegen alle Ty Sekunden.Fallen Ein- und Auslesezeitpunkte zusammen, dann wird zuerst gespeichert undanschließend ausgelesen.

Durch das Auslassen bzw. Wiederholen von Signalwerten ist das digitale Ab-tast-Halte-Element naturlich kein idealer Dezimator oder Interpolator, da Sprungeim Ausgangssignal auftreten, die z.B. bei der Audiosignalverarbeitung horbar sind.Den Einfluss dieser Abtast-Halte-Funktion werden wir in einem eigenen Beispiel imFrequenzbereich untersuchen (siehe Beispiel 8.6 auf Seite 213). In diesem Beispielzeigen wir auch, dass trotz der relativ komplizierten Beziehung im Zeitbereich dasAbtast-Halte-Element einfach im Frequenzbereich charakterisiert werden kann.

Wir erhalten einen idealen Taktratenumsetzer, wenn wir das digitale Abtast-Halte-Element in die Eingangs/Ausgangsbeziehung Gl. 8.14 einbauen, die wir aufSeite 195 hergeleitet haben:

y[n] =

∞∑

m=−∞x[m]g[nM −mL]. (8.36)

Page 220: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

210 8 Multiratensignalverarbeitung

Mit der Substitution m = ⌊nML ⌋ − k erhalten wir aus Gl. 8.36

y[n] =

∞∑

k=−∞x

[⌊nM

L

− k

]

g

[

nM −⌊nM

L

L+ kL

]

=

∞∑

k=−∞x

[⌊nM

L

− k

]

g[nM ⊕ L+ kL]

=∞∑

k=−∞x

[⌊nM

L

− k

]

h[n, k],

(8.37)

wobei wir die Modulooperation a⊕b = a−⌊ab ⌋b verwendet haben. Die Koeffizienten

h[n, k] sind wegen h[n+L, k] = h[n, k] periodisch in n und ergeben sich unmittelbaraus der Interpolationsfunktion g[n] von Gl. 8.13 oder aus der Approximation durcheine FIR-Filterimpulsantwort. Wenn wir fur g[n] eine endliche Lange Ng wahlen,die ein Vielfaches von L ist (Ng = NL), dann erstreckt sich die Summe in Gl. 8.37nur uber N Summanden:

y[n] =

N−1∑

k=0

x

[⌊nM

L

− k

]

h[n, k] =

N−1∑

k=0

x

[⌊nM

L

− k

]

g[nM ⊕ L+ kL]. (8.38)

Da nM ⊕ L nur die Werte 0, 1, . . . , L − 1 annimmt, benotigen wir g[n] nur furn = 0, 1, . . . L− 1+ (N − 1)L = NL− 1, also insgesamt Ng = NL Werte von g[n].

Die Realisierung des Multiratensystems nach Gl. 8.38 als zeitdiskretes Netz-werk ist in Abb. 8.12 dargestellt. Die Eingangswerte x[n] werden mit dem Taktin-tervall Tx in die Kette von Verzogerungselementen gespeichert. Die Speicherinhaltexk[n] = x[n− k] der Kette werden alle Tx Sekunden weitergeschoben, was immerdann der Fall ist, wenn

⌊nML

⌋um Eins erhoht wird. Die Verarbeitung der Signal-

werte yk[n] = xk

[⌊nML

⌋]= x

[⌊nML

⌋− k]an den Ausgangen der Abtast-Halte-

Elemente erfolgt mit dem Abtastintervall Ty, wobei fur jeden AusgangszeitpunktnTy ein eigener Koeffizientensatz h[n, 0], . . . , h[n,N − 1] bei den Multiplikationenzum Einsatz kommt (zeitvariantes System!). Wegen der Periodizitat von h[n, k]bezuglich n wiederholt sich der Koeffizientensatz alle L Ausgangsabtastintervalle.

Beispiel 8.5

Das folgende MATLAB-Programm zeigt die Realisierung des Multira-tensystems von Abb. 8.12. Die Koeffizienten werden in einer L × NMatrix gespeichert. Mit der Zahlvariablen ncount, die von 0 bis L− 1zahlt, werden die Zeilenvektoren dieser Matrix fur jeden Zeitindex n

Page 221: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 211

Tx Tx Tx

M/L M/L M/L M/L

x[n] x[n− 1] x[n− 2] x[n−N + 1]

h[n, 2]h[n, 1]h[n, 0] h[n,N − 1]

y[n]

Ty = ML Tx

Tx

Abbildung 8.12: Multiratensystem zur Taktratenumsetzung um den Faktor Tx

Ty=

LM als zeitdiskretes, zeitvariantes Netzwerk

ausgewahlt. Der betreffende Zeilenvektor wird dann mit dem Spalten-vektor w der Verzogerungselemente multipliziert (inneres Vektorpro-dukt) um y[n] zu berechnen. Der Verzogerungselementvektor w wirdaktualisiert, wenn sich n1 = floor(n*M/L) um Eins erhoht.

N = 100;

n = -N:N;

Nx = 2*N+1;

tg = 1/2;

x1 = tg*sinc(tg*n); % signal (rectangular low pass spect.)

x = x1 .*x1; % signal (triangular low pass spect.)

x = x/sum(x);

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

L = 3; % up-sampling factor

M = 2; % down-sampling factor

Ny = floor(Nx*L/M); % length of output signal

tc = min(1/L,1/M); % interpolation filter cutoff frequency

% normalized to fs/2

Ng = L*round(200/L); % Ng must be a multiple of L

N = Ng/L;

g = L*fir1(Ng-1,tc); % interpolation filter impulse response

g = g(:).’; % g must be a row vector

H = zeros(L,N); % L x N matrix of coefficients h[n,k]

for n = 0:L-1 % compute coefficient set

H(n+1,:) = g((0:N-1)*L+mod(n*M,L)+1);

end

Page 222: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

212 8 Multiratensignalverarbeitung

y = zeros(1,Ny);

x = [zeros(1,N-1) x]; % add zeroes to include settling time

ncount = 0; % index for coefficient set addressing

for n = 0:Ny-1 % output time index loop

n1 = floor(n*M/L);

w = x(n1+N:-1:n1+1); % vector of N delay (storage) elements

y(n+1) = H(ncount+1,:)*w(:);

ncount = mod(ncount+1,L); % increment index (modulo L)

end

Y = fftshift(fft(y,Nf));

theta = linspace(-1,1,Nf);

subplot(2,1,1), plot(theta,abs(X),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|X(e^{j\theta})|’,labelfont{:});

title(’input signal spectrum’);

subplot(2,1,2), plot(theta,abs(Y),style{:}), grid on;

xlabel(’\theta/\pi’,labelfont{:});

ylabel(’|Y(e^{j\theta})|’,labelfont{:});

title(’output signal spectrum’);

Der Vergleich des Taktratenumsetzers mit Abtast-Halte-Elementen mit jenemvon Abb. 8.7 zeigt signifikante Einsparungen an Arithmetik- und Speicheropera-tionen. Fur ein Signal x[n] der Dauer Nx benotigen wir beim effizienten Multi-ratensystem von Abb. 8.12 N Speicherelemente (Verzogerungselemente). Zur Be-rechnung der Ny =

⌊LMNx

⌋Ausgangswerte y[n] sind

Nops = NyN ≈ L

MNxN =

NxNg

M(8.39)

Arithmetikoperationen notwendig, wobei wir fur das Interpolationsfilter die LangeNg = NL verwenden. Im Gegensatz dazu sind beimMultiratensystem von Abb. 8.7

N ′ops =

NxNg

ML (8.40)

Operationen notwendig. Dabei haben wir die Taktratenreduktion um den FaktorM in Abb. 8.7 in das FIR-Filter verlagert, um unnotige Multiplikationen undAdditionen zu vermeiden. Trotzdem benotigt der Taktratenumsetzer von Abb. 8.7um den Faktor

N ′ops

Nops= L (8.41)

Page 223: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 213

mehr Arithmetikoperationen. Zusatzlich sind beim Interpolationsfilter in Abb. 8.7Ng Speicherelemente erforderlich, im Vergleich zu N =

Ng

L beim effizienten Multi-ratensystem.

Beispiel 8.6

In diesem Beispiel berechnen wir den Zusammenhang zwischen denFouriertransformierten am Ein- und Ausgang des digitalen Abtast-Halte-Elements. Obwohl die Zeitbereichsbeziehung in Abb. 8.9 relativkompliziert erscheint, konnen wir durch Aufspaltung der Abtast-Halte-Funktion entsprechend Abb. 8.13 die Frequenzbereichsanalyse einfachdurchfuhren.

Tx

x[n] v[n]

Tv = Tx

L

↑ L ↓ MgSH[n]

y[n]

Ty = TxML

w[n]

Tw = Tx

L

0 L− 11 2n

1

gSH[n]

Abbildung 8.13: Digitales Abtast-Halte-Element als Kombination vonTaktratenerhohung, lineares und zeitinvariantes Filter, und Taktraten-reduktion

Die Abtast-Halte-Funktion konnen wir durch eine Taktratenerhohung(Einfugen von L − 1 Nullen zwischen den Eingangssignalwerten) undanschließender Filterung mit rechteckformiger Impulsantwort darstel-len. Die Taktratenreduktion am Ausgang ergibt sich durch Dezimationdes Filterausgangssignals. Mit der Ubertragungsfunktion des Abtast-Halte-Filters

GSH

(ejθ)=

L−1∑

n=0

e−jθn =sin θ

2L

sin θ2

e−j L−12 θ (8.42)

folgt aus Gl. 8.34

Y(ejθ)=

1

M

M−1∑

k=0

GSH

(

ej(θM − 2π

M k))

X(

ej(θLM −2π L

M k))

. (8.43)

Page 224: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

214 8 Multiratensignalverarbeitung

Da das Abtast-Halte-Filter kein ideales Tiefpassfilter ist, konnen wirdie Summanden fur k > 0 hier nicht vernachlassigen. Es wird dahermassives Aliasing im Frequenzbereich auftreten.

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.5

1

θ/π

|X(e

jθ)|

input signal spectrum

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.5

1

θ/π

|V(e

jθ)|

spectrum of input signal up−sampled by L = 5

|V|

|G|/L

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

2

4

6

θ/π

|W(e

jθ)|

spectrum of filtered signal, M = 2

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

1

2

3

θ/π

|Y(e

jθ)|

output signal spectrum

Abbildung 8.14: Spektren der Signale x[n], v[n], w[n] und y[n] beimdigitalen Abtast-Halte-Element von Abb. 8.13 fur L = 5 und M = 2

Die Spektren des digitalen Abtast-Halte-Elements von Abb. 8.13 sindfur ein dreieckformiges Eingangssignalspektrum in Abb. 8.14 gezeigt.Wir erhalten dieses Ergebnis mit dem MATLAB-Beispiel 8.4, wennwir fur das Interpolationsfilter eine Rechteckimpulsantwort einsetzen(g = ones(1,L) im MATLAB-Beispiel). Der Betragsverlauf der Uber-tragungsfunktion des Abtast-Halte-Filters (gestrichelt eingezeichnet)bewirkt keine ausreichende Unterdruckung der periodischen Fortset-zungen im Spektrum des interpolierten Signals. Zusatzlich kommt es

zu einer Verzerrung des Spektrums durch diesin θ

2L

sin θ2

-Funktion. Im Spek-

Page 225: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 215

trum des Ausgangssignals konnen wir das durch eine leichte Krummungdes dreieckformigen Verlaufs im Frequenzbereich

[− 2

5π,25π]erkennen

(siehe Abb. 8.14).

8.3.2 Multiratensysteme mit Polyphasenzerlegung

In diesem Abschnitt behandeln wir zwei weitere effiziente Realisierungen von Mul-tiratensystemen, die eine Reihe wichtiger Anwendungen haben, wie zum Beispielin digitalen Filterbanken. Dazu gehen wir von der Darstellung der Multiratensys-teme mit Abtast-Halte-Elementen (Gl. 8.37) aus und betrachten zuerst den Fallder Interpolation mit einem ganzzahligen Faktor L. Mit M = 1 folgt ausGl. 8.37

y[n] =

∞∑

k=−∞x[⌊n

L

− k]

h[n, k] =

∞∑

k=−∞x[⌊n

L

− k]

g[n⊕ L+ kL]. (8.44)

Wie bereits erwahnt, sind die Koeffizienten h[n, k] periodisch bezuglich n mit derPeriodendauer L. Wenn wir beispielsweise Gl. 8.44 fur n = mL anschreiben, danntreten fur diese Zeitpunkte dieselben Koeffizienten h[mL, k] = g[kL] auf, da mL⊕L = 0 ist. Da sich außerdem

⌊nL

⌋fur n = mL jeweils um Eins erhoht, ergibt sich

fur diese Zeitpunkte aus Gl. 8.44

y[mL] =

∞∑

k=−∞x[m− k]g[kL] =

∞∑

k=−∞x[m− k]p0[k] (8.45)

eine Faltungsbeziehung, d.h. wir konnen y[mL] mit einem linearen und zeitinvari-anten Filter mit der Impulsantwort p0[k] berechnen. Das gilt auch fur die anderenZeitpunkte n = mL+ l am Ausgang des Interpolators

y[mL+ l] =

∞∑

k=−∞x[m− k]pl[k], l = 0, 1, . . . , L− 1, (8.46)

wenn wir n = mL+ l in Gl. 8.44 einsetzen und beachten, dass x[⌊

mL+lL

⌋− k]=

x[m− k] ist (l = 0, 1, . . . , L− 1). Wir erhalten damit ein System mit L zeitinvari-anten Filtern pl[n] = g[l+ nL], l = 0, 1, . . . , L− 1, die durch einen Kommutator(Stufenschalter) ausgewahlt werden (siehe Abb. 8.15).

Das Eingangssignal wird mit der Parallelanordnung von L linearen und zeit-invarianten Filtern verarbeitet. Der Kommutator, der alle Ty Sekunden weiterge-schaltet und im L-ten Schritt zuruckgesetzt wird, wahlt die einzelnen Filter aus.

Page 226: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

216 8 Multiratensignalverarbeitung

pL−1[n]

p1[n]

p0[n]

n = L− 1, 2L− 1, . . .

n = 0, L, 2L, . . .

x[n]

Tx

y[n]

Ty = Tx

L

lineare, zeitinvariante Filter

n = 1, L+ 1, . . .

Tx

Kommutator

y0[n] =∞∑

k=−∞

x[n− k]p0[k]

Abbildung 8.15: Taktratenerhohung um Lmit Polyphasenfiltern (Impulsantwortenpl[n] = g[l + nL], l = 0, 1, . . . , L− 1) und Kommutator

Der Vorteil dieser Anordnung ist, dass alle Filter mit der niedrigen Eingangs-taktrate betrieben werden. Erst durch den Kommutator am Ausgang erfolgt dieTaktratenerhohung.

Die Filter werden als Polyphasenfilter bezeichnet, da die Impulsantwortenpl[n] = g[l + nL], l = 0, 1, . . . , L − 1 unterabgetastete und zeitlich verschobeneVersionen der Impulsantwort g[n] sind. Ist g[n] ein ideales Tiefpassfilter mit derGrenzfrequenz θg = π

L , dann haben die Polyphasenfilter durch die Unterabtas-tung um den Faktor L die Grenzfrequenz θgp = π und damit einen konstanten

Betragsverlauf fur θ ∈ [−π, π]. Polyphasenfilter unterscheiden sich im Frequenz-bereich nur durch den Phasenverlauf.

Als Filter konnen IIR- oder FIR-Filter eingesetzt werden. Wenn wir fur dasInterpolationsfilter g[n] ein FIR-Filter der Lange Ng = NL verwenden, dann ha-ben die L Polyphasenfilter pl[n] die Lange N . Zur Berechnung von Ny = LNx

Ausgangssignalwerten benotigen wir damit Nops = NxNg Arithmetikoperationen.Beim Interpolator mit Einfugen von Nullen (Abb. 8.3) sind um den Faktor L mehrOperationen notwendig.

Auch fur die Dezimation von Signalen um einen ganzzahligen FaktorM konnen wir eine Polyphasenstruktur herleiten. Wir gehen von

y[n] =

∞∑

m=−∞x[nM −m]g[m] (8.47)

aus (siehe Gl. 8.23) und verwenden die Aufspaltung (Polyphasenzerlegung),

g[m] =

∞∑

k=−∞

M−1∑

l=0

g[l + kM ] δ[m− l − kM ], m = 0,±1,±2, . . . (8.48)

Page 227: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 217

fur g[m]. Bei dieser Aufspaltung werden jeweils M aufeinanderfolgende Werte vong[m] zu einem Teilfilter ql[k] = g[l + kM ] zusammengefasst (siehe dazu auch dieFormelsammlung auf Seite 244). Wir setzen Gl. 8.48 in Gl. 8.47 ein und beachten,dass wegen des δ-Impulses in der Summe uber m nur ein Beitrag fur m = l+ kMauftritt:

y[n] =M−1∑

l=0

∞∑

k=−∞x[(n− k)M − l] g[l + kM ]

︸ ︷︷ ︸

ql[k]

=

M−1∑

l=0

∞∑

k=−∞xl[n− k] ql[k]

︸ ︷︷ ︸

lineare, zeitinvariante Filter

,

(8.49)

mit den Eingangssignalen fur die Teilfilter xl[n] = x[nM − l], l = 0, 1, . . . ,M − 1.Die Struktur des Dezimators mit Polyphasenfiltern ist in Abb. 8.16 dargestellt.Der Kommutator am Eingang wird mit der Eingangstaktrate weitergeschaltet.Der Kommutator lauft entgegen dem Uhrzeigersinn, da xl[n] = x[nM − l] um lEingangsabtastintervalle Tx zeitverzogert zu x[n] ist. Immer wenn der Kommutatorin der Position beim Filter q0 ist, hat er M Werte auf die Filter verteilt. Mit denFiltern q0, q1, . . . , qM−1 werden dann die Eingangssignalwerte x[nM ], x[nM − 1],bis x[nM − M + 1] verarbeitet. Beim nachsten Durchlauf kommt x[nM + 1] anqM−1, usw., bis wieder ein Block von M Eingangssignalwerten verteilt ist. DerKommutator muss demnach bei jedem neuen Block von M Eingangsdaten von derPosition ganz unten in Abb. 8.16 beginnen, um die Signalverzogerung zu erzielen.

qM−1[n]

q1[n]

q0[n]

n = 1,M + 1, . . .

n = 0,M, 2M, . . .

y[n]

Ty = MTx

x[n]

Tx

lineare, zeitinvariante FilterKommutator

Ty

n = M − 1, 2M − 1, . . .

Abbildung 8.16: Taktratenreduktion um M mit Polyphasenfiltern (Impulsantwor-ten ql[n] = g[l + nM ], l = 0, 1, . . . ,M − 1) und Kommutator

Auch beim Dezimator mit Polyphasenzerlegung werden die Filter mit der nied-rigeren Abtastrate betrieben. Zur Berechnung der Ny =

⌊Nx

M

⌋Ausgangssignalwer-

Page 228: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

218 8 Multiratensignalverarbeitung

te werden Nops ≈ Nx

M Ng + M Arithmetikoperationen benotigt, wenn das Dezi-mationsfilter g[n] ein FIR-Filter der Lange Ng = NM ist. Jedes Polyphasenfilterhat dann die Lange N . Die zusatzlichen M Operationen durch die Additionen amAusgang des Dezimators sind in Nops enthalten.

Beispiel 8.7

Wir zeigen die MATLAB-Implementierung des Polyphaseninterpola-tors und -dezimators. Es wird wieder ein Eingangssignal mit drei-eckformigem Spektrum zum Testen der Systeme verwendet. In der ers-ten FOR-Schleife des Programms werden die L Ausgangssignale derPolyphasenfilter berechnet und als Zeilenvektoren in der L ×Nx Ma-trix yl gespeichert. Nach der Schleife werden alle Spaltenvektoren vonyl zu einem Vektor y der Lange Ny = LNx aneinander gereiht.Bei der Dezimation im Programmabschnitt nach dem pause Befehlwird das Eingangssignal jeweils verzogert um l = 0, 1, . . . ,M − 1 Wer-te an die Eingange der Polyphasenfilter gelegt. Die Verzogerung wirddurch Einfugen von M − 1 Nullen am Beginn von x[n] erreicht.

N = 200;

n = -N:N;

Nx = 2*N+1;

tg = 1/2;

x1 = tg*sinc(tg*n); % signal (rectangular low pass spect.)

x = x1 .*x1; % signal (triangular low pass spect.)

x = x/sum(x);

Nf = 2048; % number of frequency points

X = fftshift(fft(x,Nf)); % compute FT from -pi...pi

L = 2; % up-sampling factor

tc = 1/L; % interpolation filter cutoff frequency

% normalized to fs/2

Ng = L*round(200/L); % Ng must be a multiple of L

N = Ng/L; % polyphase filter length

g = L*fir1(Ng-1,tc); % interpolation filter impulse response

yl = zeros(L,Nx); % matrix of polyphase filter output

% signals

for l = 1:L

p = g((0:N-1)*L+l); % polyphase filter impulse response

yl(l,:) = filter(p,1,x);

end

Page 229: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.3 Effiziente Multiratensysteme 219

y = yl(:); % reshape matrix to vector

Y = fftshift(fft(y,Nf));

theta = linspace(-1,1,Nf);

subplot(2,1,1), plot(theta,abs(X)), grid on;

xlabel(’\theta/\pi’);

ylabel(’|X(e^{j\theta})|’);

title(’input signal spectrum’);

subplot(2,1,2), plot(theta,abs(Y)), grid on;

xlabel(’\theta/\pi’);

ylabel(’|Y(e^{j\theta})|’);

title(sprintf(’output signal spectrum, L = %d’,L));

pause; % press a key to continue

M = 2; % down-sampling factor

tc = 1/M; % decimation filter cutoff frequency

% normalized to fs/2

Ng = M*round(200/M); % Ng must be a multiple of M

N = Ng/M; % polyphase filter length

g = M*fir1(Ng-1,tc); % decimation filter impulse response

x = [zeros(1,M-1) x]; % zeroes at begin are used to delay x

Ny = floor(Nx/M); % length of decimated signal

y = zeros(1,Ny);

for l = 1:M

q = g((0:N-1)*M+l); % polyphase filter impulse response

xl = x(M-l+1:M:end); % delayed and subsampled input signal

yl = filter(q,1,xl);

y = y + yl(1:Ny);

end

Y = fftshift(fft(y,Nf));

theta = linspace(-1,1,Nf);

subplot(2,1,1), plot(theta,abs(X)), grid on;

xlabel(’\theta/\pi’);

ylabel(’|X(e^{j\theta})|’);

title(’input signal spectrum’);

subplot(2,1,2), plot(theta,abs(Y)), grid on;

xlabel(’\theta/\pi’);

ylabel(’|Y(e^{j\theta})|’);

title(sprintf(’output signal spectrum, M = %d’,M));

Page 230: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

220 8 Multiratensignalverarbeitung

8.4 Taktratenumsetzung mit beliebigen Faktoren

Bisher haben wir Multiratensysteme zur Taktratenumsetzung mit ganzzahligenund rationalen Faktoren behandelt. Diese Systeme sind fur viele Anwendungenausreichend. So konnen beispielsweise in der digitalen Audiotechnik Datenstromemit 44, 1 kHz Abtastfrequenz (CD-Audio) auf Datenstrome mit 48 kHz Abtast-frequenz (DVD- und DAT-Audio) durch rationale Verhaltnisse L/M = 167/160oder fur 1% Genauigkeit mit L/M = 37/17 umgesetzt werden. Allerdings benoti-gen diese Faktoren eine hohe Uberabtastung und damit eine hohe Rechenleistungbzw. einen großen Speicherbedarf bei der Realisierung der Systeme.

Es gibt aber auch eine Reihe von Anwendungen, die eine Abtastratenumset-zung mit beliebigen Faktoren erfordern. Beispiele sind digitale Audiogerate mitasynchronen Taktraten oder digitale Empfanger (Software Radio) bei denen dieFrequenzumsetzung auf verschiedene Zwischenfrequenzen benotigt wird. Ein wei-teres Beispiel ist die Korrektur von Taktjitter bei der Abtastung analoger Signale.

In diesem Abschnitt behandeln wir daher zwei Methoden, die eine Taktraten-umsetzung auch mit irrationalen Faktoren ermoglichen. Die erste Methode gehtvon der allgemeinen Beschreibung des Taktratenumsetzers mit Gl. 8.4 aus undverwendet eine ahnliche Beziehung wie in Gl. 8.37 zur effizienten Realisierung mitFIR-Filtern. In der zweiten Methode wird die Lagrange-Interpolation verwendet,die in Form der Farrow-Filterstruktur eine effiziente Implementierung gestattet.1

Wir zeigen außerdem wie beide Methoden mit MATLAB programmiert werdenkonnen.

Nach Gl. 8.4 kann ein Multiratensystem mit dem Eingangstaktintervall Tx unddem Ausgangstaktintervall Ty im Zeitbereich durch

y[n] =

∞∑

m=−∞x[m] g(nTy −mTx), ∀n, (8.50)

beschrieben werden. Ahnlich wie bei der Ableitung des Multiratensystems mitAbtast-Halteelementen auf Seite 210 verwenden wir die Substitution m = ⌊nr⌋−k

(mit r =Ty

Tx) und erhalten aus Gl. 8.50

y[n] =

∞∑

k=−∞x [⌊nr⌋ − k] g (Tx(nr − ⌊nr⌋+ k))

︸ ︷︷ ︸

h[n,k]

. (8.51)

Im Gegensatz zum Taktratenumsetzer mit rationalen Faktoren auf Seite 211, istdie Funktion h[n, k] hier nicht periodisch in n, sondern muss fur jeden Ausgangs-zeitindex n neu berechnet werden. Ein Vorausberechnen und Speichern von h[n, k]

1C. W. Farrow,”A continously variable digital delay element“, Proc. IEEE International

Symposium on Circuits and Systems, Helsinki, Finland, pp. 2641-2645, June 1988.

Page 231: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.4 Taktratenumsetzung mit beliebigen Faktoren 221

ist damit nicht mehr moglich. Aus diesem Grund wahlen wir fur h[n, k] Funktio-nen, die mit geringem nummerischen Aufwand zu berechnen sind. Fur die Wahlvon h[n, k] konnen wir wieder von einem idealisierten, analogen Tiefpassfilter mitder Impulsantwort g(t) zur Interpolation ausgehen. Die Grenzfrequenz ωg diesesTiefpassfilters muss in ahnlicher Weise wie auf Seite 194 gewahlt werden. Bei In-terpolation (Ty < Tx, d.h. r < 1) ist ωg = π

Tx(siehe dazu auch Gl. 8.7). Bei

Dezimation (Ty > Tx, d.h. r > 1) wahlen wir ωg = πTy

= πrTx

(siehe Gl. 8.10).

Damit erhalten wir mit θg = ωgTx|y fur h[n, k] in Gl. 8.51

h[n, k] =sin (θg (nr − ⌊nr⌋+ k))

θg (nr − ⌊nr⌋+ k)(8.52)

θg = min(

π,π

r

)

. (8.53)

Die Funktionen h[n, k] sind demnachsin θgkθgk

Funktionen, die abhangig vom Index

n um nichtganzzahlige Werte δ = nr − ⌊nr⌋ zeitverschoben sind. Die sogenannteFractional Delay δ nimmt fur n ≥ 0 nur Werte in [0, 1) an.

Fur die praktische Realisierung des Taktratenumsetzers mussen wir h[n, k]von einer zeitlich begrenzten Tiefpassimpulsantwort g(t) ableiten. Wie beim FIR-Filterentwurf mit der Fenstermethode (Abschnitt 6.2.1) verwenden wir dazu eineFensterfunktion w(t) und erhalten mit Gl. 8.52

h[n, k] =sin (θg (nr − ⌊nr⌋+ k − n0))

θg (nr − ⌊nr⌋+ k − n0)w (nr − ⌊nr⌋+ k) , 0 ≤ k ≤ N − 1

(8.54)

θg = min(

π,π

r

)

. (8.55)

mit n = 0, 1, 2, . . .. Die Lange der Fensterfunktion w(t) wird durch N festgelegt.Die Zeitverschiebung n0 = N−1

2 zentriert die Impulsantwort des idealen Tiefpass-filters im Intervall [0, N) der Fensterfunktion.

Beispiel 8.8

Das folgende MATLAB-Programm zeigt eine Realisierung des Taktra-tenumsetzers von Gl. 8.51 fur beliebige Faktoren r (r = 2/π als Bei-spiel). Es konnen verschiedene Fensterfunktionen ausgewahlt werdenund deren Einfluss auf das Rekonstruktionsverhalten des Eingangssi-gnals untersucht werden. Um nicht fur jeden Zeitindex n die trigonome-trischen Funktionen von w(t) zu berechnen, gibt es auch eine Variantemit linearer Interpolation einer Tabelle von Werten der Fensterfunkti-on. Im Prinzip konnten wir auch die sin t/t Funktion mit in der Tabelle

Page 232: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

222 8 Multiratensignalverarbeitung

speichern. Allerdings ist dann ein wesentlich feinerer Raster und damiteine erheblich großere Tabelle erforderlich.

% create square wave signal

Nx = 500; % input signal length

Np = 100; % period of square wave

n = (0:Nx-1);

x = sin(2*pi/Np*n);

x = sign(x);

r = 2/pi; % interpolation, if r < 1,

% decimation if r > 1, (r = T_y/T_x)

ri = 1/r;

tc = min(1,ri); % cut-off frequency of interpolation filter

N = 80; % length of interpolation filter

t0 = (N-1)/2; % delay of interpolation filter

Ny = floor(ri*Nx); % output signal length

y = zeros(1,Ny);

x = [zeros(1,N-1) x]; % add zeros for initial FIR filter state

% compute sampling rate converter using ideal lowpass filter with

% various window functions

%

% N-1

% y[n] = Sum x[floor(n*r)-k]*h[n*r-floor(n*r)+k]

% k=0

% define window function (using anonymous functions)

wtype = ’i’;

switch lower(wtype)

case ’r’

% rectangular

w = @(t,N) 1;

case ’h’

% Hamming

w = @(t,N) 0.54-0.46*cos(2*pi/(N-1)*t);

case ’b’

% Blackman

w = @(t,N) 0.42-0.5*cos(2*pi/(N-1)*t)+...

0.08*cos(4*pi/(N-1)*t);

case ’bn’

% Blackman-Nuttall

a0 = 0.3635819;

a1 = -0.4891775;

Page 233: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.4 Taktratenumsetzung mit beliebigen Faktoren 223

a2 = 0.1365995;

a3 = -0.0106411;

w = @(t,N) a0+a1*cos(2*pi/(N-1)*t)+a2*cos(4*pi/(N-1)*t)+...

a3*cos(6*pi/(N-1)*t);

case ’i’

% interpolated Blackman-Nuttall with lookup table wt(tt)

Nt = 8*N; % size of table

tt = linspace(0,N,Nt);

a0 = 0.3635819;

a1 = -0.4891775;

a2 = 0.1365995;

a3 = -0.0106411;

wt = a0+a1*cos(2*pi/(N-1)*tt)+a2*cos(4*pi/(N-1)*tt)+...

a3*cos(6*pi/(N-1)*tt);

w = @(t,N) interp1(tt,wt,t,’linear’);

end

% perform FIR filtering with time-variant impulse response

for n = 0:Ny-1

nr = n*r;

n1 = floor(nr);

x1 = x(n1+N:-1:n1+1); % x[floor(n*r)-k]

% (k = 0,1,...N-1)

t = nr-n1+(0:N-1); % time points used with h[n,k]

h = sinc(tc*(t-t0)).*w(t,N); % h[n,k] vector

% (k = 0,1,...N-1)

y(n+1) = h*x1’; % FIR filter sum

end

% correct gain in case of decimation

if r > 1

y = ri*y;

end

subplot(2,1,1), plot((0:Nx-1),x(N:end));

xlabel(’n’), ylabel(’x[n]’);

subplot(2,1,2), plot((0:Ny-1),y);

xlabel(’n’), ylabel(’y[n]’);

title(sprintf(’sampling rate conversion by r = T_y/T_x = %f’,r));

Zur Vermeidung der Berechnung trigonometrischer Funktionen fur jedes Aus-gangstaktintervall konnen wir die Fensterfunktion als Tabelle speichern und Zwi-

Page 234: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

224 8 Multiratensignalverarbeitung

schenwerte mit linearer Interpolation berechnen (siehe case ’i’ im MATLAB-Beispiel). Die lineare Interpolation der sin t

t -Funktion ist wegen des stark oszillie-renden Verlaufs zu ungenau. Fur den Fall der Interpolation (r < 1, θg = π)konnen wir jedoch die Berechnung der Sinusfunktion in Gl. 8.54 durch Anwendungdes Additionstheorems

sin(π(δ + k − n0)) = sin(πδ) cos(π(k − n0))︸ ︷︷ ︸

(−1)k

+cos(πδ) sin(π(k − n0))︸ ︷︷ ︸

0

(8.56)

vereinfachen (δ = nr − ⌊nr⌋). Dabei ist vorausgesetzt, das n0 = N−12 ganzzahlig

ist, d.h. die Filterlange N muss ungerade sein. Damit erhalten wir aus Gl. 8.54

h[n, k] =(−1)k sin(πδ)

π(δ + k − n0)w(δ + k), 0 ≤ k ≤ N − 1 (8.57)

δ = nr − ⌊nr⌋, n = 0, 1, 2, . . . , r < 1, N ungerade. (8.58)

In dieser Version kann neben w(δ+k) jetzt wegen δ ∈ [0, 1) auch die Sinushalbwellesin(πδ) als Tabelle gespeichert und Zwischenwerte linear interpoliert werden.

Die zweite Methode zur Taktratenumsetzung mit beliebigen Faktoren beruhtauf einer effizienten Implementierung der Interpolation mit Lagrange-Poly-nomen. Die Verwendung von Lagrange-Polynomen ist eine Alternative zur Rekon-struktion analoger Signale aus Abtastwerten. Im Gegensatz zur Verwendung einerTiefpassimpulsantwort wie in Gl. 8.1 erfolgt dabei die Interpolation mit Polyno-men. Die Interpolation eines analogen Signals mit N Stutzstellen ist in Abb. 8.17skizziert.

x[n] = xa(nTx)

x[n− 1]

x[n− 2]x[n− k] x[n− 3]

y[n] = xa(nTx −∆Tx)

∆Tx

(n− k)Tx (n− 3)Tx(n−N + 1)Tx (n− 1)Tx(n− 2)Tx nTx

x[n−N + 1]

t

Abbildung 8.17: Abtastung des Analogsignals xa(t) an N aquidistanten Zeitpunk-ten ausgehend vom aktuellen Zeitpunkt nTx und Interpolation zum Zeitpunkt(n−∆)Tx

Fur die Interpolation des Zwischenwertes y[n] = xa(nTx−∆Tx) wird ein Blockvon N Abtastwerten x[n−k], beginnend beim aktuellen Zeitpunkt nTx und zuruck

Page 235: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.4 Taktratenumsetzung mit beliebigen Faktoren 225

bis zum Zeitpunkt (n − N + 1)Tx, verwendet. Die Lagrange-Interpolation ist indiesem Fall gegeben durch

y[n] = xa(nTx −∆Tx) =N−1∑

k=0

Pk(∆) x[n− k], ∀n (8.59)

Pk(∆) =

N−1∏

l=0l 6=k

∆− l

k − l, 0 ≤ k ≤ N − 1. (8.60)

An den Stutzstellen liefert Gl. 8.59 die exakten Abtastwerte, da fur ganzzahligeWerte ∆ = m die Polynome auf Pk(m) = δ[m− k] reduziert werden.

Die Lagrange-Interpolation Gl. 8.59 kann unmittelbar mit einem FIR-Filterrealisiert werden, wobei die Lagrange-Polynome Pk(∆) die Filterimpulsantwortdarstellen. Das Filter erlaubt daher die Signalverzogerung um ganzzahlige undnichtganzzahlige Verzogerungszeiten (Fractional-Delay FIR Filter). Bei Syste-men mit variabler Verzogerungszeit muss die Impulsantwort fur jede Verzogerung∆ neu berechnet werden. Das im Folgenden behandelnde Farrow-Filter vermei-det diese Berechnung und kann daher bei der Taktratenumsetzung vorteilhaft ein-gesetzt werden. Wir zeigen das Prinzip des Farrow-Filters fur Lagrange-Polynomezweiten Grades (N = 3). Die Auswertung von Gl. 8.60 ergibt

P0(∆) =1

2∆2 − 3

2∆ + 1 (8.61)

P1(∆) = −∆2 + 2∆ (8.62)

P2(∆) =∆2

2− 1

2∆ . (8.63)

Setzen wir diese Polynome in die Differenzengleichung Gl. 8.59 ein und fassen dieTerme zu Potenzen von ∆ zusammen, so erhalten wir

y[n] = ∆2

(1

2x[n]− x[n− 1] +

1

2x[n− 2]

)

︸ ︷︷ ︸

H1

+

(

−3

2x[n] + 2x[n− 1]− 1

2x[n− 2]

)

︸ ︷︷ ︸

H2

+x[n] .

(8.64)

Die Filterstruktur des Fractional Delay Filters in Abb. 8.18 enthalt zwei FIR-FilterH1 und H2 mit den Koeffizienten von Gl. 8.64 und dem Parameter ∆, mit demdie Verzogerungszeit variabel eingestellt werden kann. Ein weiterer Vorteil dieserStruktur ergibt sich bei Verwendung transversaler FIR-Filter (siehe Abb. 6.7 aufSeite 136). Durch die Parallelanordnung von H1 und H2 wird nur eine Kette vonVerzogerungselementen benotigt.

Page 236: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

226 8 Multiratensignalverarbeitung

x[n]

y[n]

H1

∆ ∆

H2

Abbildung 8.18: Fractional Delay Filter (Farrow-Filter) 2. Ordnung mit FIR-Filtern H1, H2 und Einstellung der Verzogerungszeit mit ∆

Die Struktur des Farrow-Filters von Abb. 8.18 kann fur allgemeines N einfacherweitert werden. Die Berechnung der FIR-Filterkoeffizienten ist jedoch durch dieAuswertung der Polynome in Gl. 8.60 ziemlich muhsam. Wir verwenden daher imfolgenden Beispiel die symbolische Mathematik von MATLAB zur automati-schen Berechnung der Filterkoeffizienten.

Beispiel 8.9

In MATLAB werden Symbole mit sym() definiert, um sie von norma-len Variablen zu unterscheiden. Damit konnen wir Gl. 8.60 symbolischberechnen, wie im ersten Abschnitt des MATLAB-Programms ange-geben. Die Funktion expand berechnet die Polynome aus der fakto-risierten Form in Gl. 8.60. Um das Zusammenfassen der Terme nachPotenzen von ∆ durchzufuhren, wird die Differenzengleichung in einPolynom in z transformiert. Das Ergebnis ist ein Polynom mit Po-tenzen von ∆ (d im Programm) und z. Von diesem Polynom werdenzuerst die Koeffizienten der Potenzen von ∆ bestimmt. Diese Koef-fizienten sind Polynome in z und entsprechen den FIR-Filtern H1,2

in Gl. 8.64. Im letzten Programmabschnitt wird fur ein sinusformigesEingangssignal das Ausgangssignal des Fractional Delay Filters mitder auf N−1 FIR-Filter und Koeffizienten ∆ erweiterten Struktur vonAbb. 8.18 berechnet.

% set polynomial order Npoly and input signal block length N

Npoly = 2; N = Npoly+1;

% Lagrange polynomials for signal interpolation

% N-1

% P_k(d) = Prod (d-l)/(k-l) 0 <= k <= N-1

% l=0,l!=k

Page 237: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.4 Taktratenumsetzung mit beliebigen Faktoren 227

P = sym(’P’,[N 1]); % (N x 1) matrix of symbols P

d = sym(’d’);

k = 0;

for n = 1:N

P(n) = sym(’1’);

for l = 0:N-1

if l ~= k

P(n) = P(n)*(d-sym(l))/(sym(k)-sym(l));

end

end

P(n) = expand(P(n));

k = k+1;

end

% differential equation of Lagrange interpolation filter

% x[n] = x_a(nT), y[n] = x_a(nT-dT) (fractional delay d)

% N-1

% y[n] = Sum P_k(d)*x[n-k]

% k=0

z = sym(’z’); % z^(N-1) corresponds to x[n], etc.

k = N-1;

y = P(1)*z^sym(k);

for n = 2:N

k = k-1;

y = y + P(n)*z^sym(k);

end

cd = collect(y,d); % collect coefficients of polynomial in d

c = coeffs(cd,d); % get coefficients

h = cell(N,1); % cell array of impulse responses

% (of Farrow FIR filters)

for n = 1:N

sc = coeffs(c(N+1-n),z);

ht = double(sc);

Lh = length(ht);

h{n} = ht(Lh:-1:1);

end

% Farrow filtering (fractional delay filter)

% (using a sinusoidal input signal)

Nx = 30;

n = 0:Nx-1;

kf = 2;

x = sin(2*pi/Nx*kf*n);

Page 238: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

228 8 Multiratensignalverarbeitung

x = x(:);

d = 1.75; % fractional delay (must be in [0,N-1])

y = filter(h{1},1,x);

for k = 2:N-1

y = d*y + filter(h{k},1,x);

end

y = d*y + x;

stem(n,x,’b’)

hold on

stem(n,y,’r’)

hold off

xlabel(’n’)

legend(’x[n]’,’y[n]’);

Bei der Taktratenumsetzung mit beliebigen Faktoren wird die Interpolationdes Eingangssignal an beliebigen Zeitpunkten ∆Tx benotigt. Diese kann mit demFarrow-Filter effizient realisiert werden. Die Eingangs/Ausgangsbeziehung fur dieTaktratenumsetzung mit Lagrange-Interpolation entspricht jener von Gl. 8.51, mitdem Unterschied, dass h[h, k] jetzt Lagrange-Polynome sind und ∆ = n0 − δ =n0− (nr−⌊nr⌋) gewahlt wird. Die zeitlichen Zusammenhange fur die Wahl von ∆sind in Abb. 8.19 graphisch dargestellt. Mit n0 kann der Interpolationszeitpunktim Signalblock (siehe Abb. 8.17) so gewahlt werden, dass Eingangswerte vor undnach dem Zeitpunkt nTy fur die Interpolation herangezogen werden.

Mit Gl. 8.51 und Gl. 8.59, sowie der Wahl des Interpolationsintervalls nachAbb. 8.19 erhalten wir fur den Taktratenumsetzer die Eingangs/Ausgangsbezie-hung

y[n] =N−1∑

k=0

x [⌊nr⌋+ n0 − k]Pk (n0 − nr + ⌊nr⌋)︸ ︷︷ ︸

h[n,k]

. (8.65)

Der Vergleich zwischen der Beziehung fur die Lagrange-Interpolation Gl. 8.59 undjener des Taktratenumsetzers Gl. 8.65 zeigt, dass n durch ⌊nr⌋+ n0 ersetzt wirdund die Verzogerung ∆ jetzt zeitvariant ist, entsprechend der in Gl. 8.65 angegebe-nen Abhangigkeit vom Ausgangszeitindex n. Der Taktratenumsetzer von Gl. 8.65ist ein nichtkausales System. Bei Echtzeitbetrieb erfolgt daher die Ausgabe vony[n] zeitversetzt, da gewartet werden muss bis x[⌊nr⌋ + n0] verfugbar ist. DieserZeitversatz ist in Abb. 8.19 nicht berucksichtigt.

Page 239: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

8.4 Taktratenumsetzung mit beliebigen Faktoren 229

n

n

y[n]

x[n]

xa(t)

xa(t)

0

0 1 2 3 4 5

1 2 3 4 5 6

Tx

rTx

n0Tx

∆Tx

δTx

y[3] (Interpolation)

Abbildung 8.19: Bestimmung der Fractional Delay ∆Tx fur die Interpolation zumAusgangszeitindex n = 3, mit r =

Ty

Tx= 3

4 , δ = nr−⌊nr⌋ = 14 , x [⌊nr⌋+ n0] = x[5]

Beispiel 8.10

In diesem Beispiel zeigen wir die Verwendung des Farrow-Filters zurTaktratenumsetzung mit beliebigen Faktoren. Das Beispiel setzt vor-aus, dass die Impulsantworten des Farrow-Filters (h{k} im Programm)durch Ausfuhren des MATLAB-Programms in Beispiel 8.9 berechnetwerden. Im Gegensatz zur ersten vorgestellten Methode der allgemei-nen Taktratenumsetzung im Beispiel 8.8, wird hier keine Neuberech-nung der Impulsantwort h[n, k] fur jeden Zeitindex n benotigt. Nur derParameter ∆ (fd) des Farrow-Filters wird in der for-Schleife verandert.

% Note: N, h are set by calling the Farrow filter MATLAB example

r = 2/pi; % interpolation, if r < 1,

% decimation if r > 1, (r = T_y/T_x)

n0 = floor(N/2); % additional delay to fractional delay

% (0 < n0 < N)

% create square wave signal

Nx = 500; % input signal length

Page 240: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

230 8 Multiratensignalverarbeitung

Np = 100; % period of square wave

n = (0:Nx-1);

x = sin(2*pi/Np*n);

x = sign(x);

x = [zeros(N-1,1) ; x(:)]; % add zeros to initialize

% FIR filter delays

Ny = floor(Nx/r); % output signal length

y = zeros(Ny,1);

% compute output signal of arbitrary sampling rate converter

for n = 1:Ny % n = output time index

t = (n-1)*r ; % time point within input sampling interval

% where we need interpolation

n1 = floor(t);

state = x(n1+N:-1:n1+1);

fd = n0-t+n1; % fractional delay used for interpolation

% Farrow fractional delay filter to get interpolated samples

y(n) = h{1}*state(1:length(h{1}));

for k = 2:N-1

y(n) = fd*y(n) + h{k}*state(1:length(h{k}));

end

y(n) = fd*y(n) + state(1); % state(1) = x[n]

end

subplot(2,1,1), plot((0:Nx-1),x(N:end));

xlabel(’n’), ylabel(’x[n]’);

subplot(2,1,2), plot((0:Ny-1),y);

xlabel(’n’), ylabel(’y[n]’);

title(sprintf(’sampling rate conversion by r = T_y/T_x = %f’,r));

Das Farrow-Filter mit Lagrange-Polynomen ermoglicht eine sehr effiziente Im-plementierung eines Taktratenumsetzers mit beliebigen Umsetzungsfaktoren. ImVergleich zur ersten Methode mit Tiefpassimpulsantwort zeigt diese Methode je-doch eine wesentlich geringere Sperrdampfung des Interpolationsfilters, die auchdurch Erhohung des Polynomgrades nicht sonderlich erhoht werden kann. Außer-dem steigt die Anzahl der Arithmetikoperationen quadratisch mit N .

Page 241: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A

Formeln fur Fourier- undZ-Transformation

In diesem Kapitel sind die wichtigsten Beziehungen fur zeitkontinuierliche undzeitdiskrete Signale zusammengestellt. In erster Linie soll damit das Losen vonBeispielen erleichtert werden. Viele Beziehungen haben wir im Buch hergeleitet.Einige Zusammenhange gehen uber den Inhalt des Buches hinaus (Fourierreihenund Fouriertransformation fur zeitkontinuierliche Signale, Residuensatz, einige Be-ziehungen fur die Mehrfachtaktverarbeitung), sind aber als Erganzung in die Ta-bellen aufgenommen worden.

Mit den angegebenen Beziehungen ersparen wir uns vielfach aufwendige Be-rechnungen. So kann z.B. durch Ausnutzung von Symmetrieeigenschaften derFouriertransformation der Rechenaufwand erheblich reduziert werden. Auch beider MATLAB-Programmierung sollten wir die elementaren Eigenschaften der dis-kreten Fouriertransformation (DFT) einsetzen. Beispiele sind gerade (ungerade)Signale, deren DFT rein reell (imaginar) ist oder reelle N -Punkte Signale, beidenen wir wegen der Symmetrie der DFT das Spektrum nur bis zur halben Ab-tastfrequenz bestimmen mussen. Bei Berucksichtigung der Symmetriebeziehungenkonnen wir bei der nummerischen Auswertung auch Rundungsfehler vermeiden.Das gilt speziell bei komplexen Zahlen, bei denen winzige Real- und Imaginarteileauftreten konnen, die eigentlich Null sein sollten.

Page 242: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

232 A Formeln fur Fourier- und Z-Transformation

A.1 Fourierreihen zeitkontinuierlicher periodischer

Signale

x(t) = x(t+ T ) =

∞∑

k=−∞ck e

j 2πkT t ⇐⇒ ck =

1

T

ˆ T

0

x(t) e−j 2πkT t dt

x(t− T0) ⇐⇒ e−j 2πkT T0ck

ej2πmT tx(t) ⇐⇒ ck−m

x∗(t) ⇐⇒ c∗−k

x(−t) ⇐⇒ c−k

x(at), a > 0 ⇐⇒ ck, Periode Ta

ˆ T

0

x(τ )y(t− τ ) dτ ⇐⇒ Tckdk, x, y gleiche Periode

x(t)y(t) ⇐⇒∞∑

l=−∞cl dk−l, x, y gleiche Periode

xcs(t) =12 (x(t) + x∗(−t)) ⇐⇒ ℜe{ck}

xca(t) =12 (x(t)− x∗(−t)) ⇐⇒ jℑm{ck}

ℜe{x(t)} ⇐⇒ 12 (ck + c∗−k)

jℑm{x(t)} ⇐⇒ 12 (ck − c∗−k)

dx(t)

dt⇐⇒ j 2πk

T ckˆ t

−∞x(τ ) dτ mit c0 = 0 ⇐⇒ T

j2πk ck

Beispiele fur Fourierreihen1

ej2πT t ⇐⇒ δ[k − 1]

cos 2πT t ⇐⇒ 1

2δ[k − 1] + 12δ[k + 1]

sin 2πT t ⇐⇒ 1

2j δ[k − 1]− 12j δ[k + 1]

1δ(t) ist die Diracsche Deltafunktion, δ[k] ist der Einsimpuls.

Page 243: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A.2 Fouriertransformation zeitkontinuierlicher Signale 233

Beispiel fur Fourierreihen (Fortsetzung)

∞∑

n=−∞δ(t− nT ) ⇐⇒ 1

T∀k

x(t) =

{

1 |t| ≤ T1

0 T1 < |t| ≤ T2

⇐⇒ sin 2πkT T1

∣∣cos 2π

T t∣∣ (Periode T

2 ) ⇐⇒ 2

π

(−1)k

1− (2k)2

A.2 Fouriertransformation zeitkontinuierlicherSignale

x(t) =1

ˆ ∞

−∞X(jω) ejωtdω ⇐⇒ X(jω) =

ˆ ∞

−∞x(t) e−jωtdt

x(t− T0) ⇐⇒ e−jωT0X(jω)

ejω0tx(t) ⇐⇒ X(j(ω − ω0))

x∗(t) ⇐⇒ X∗(−jω)

x(−t) ⇐⇒ X(−jω)

x(at) ⇐⇒ 1|a| X

(jωa

)

(x ∗ y)(t) =ˆ ∞

−∞x(τ )y(t− τ )dτ ⇐⇒ X(jω)Y (jω)

x(t)y(t) ⇐⇒ 12π (X ∗ Y )(jω)

xcs(t) =12 (x(t) + x∗(−t)) ⇐⇒ ℜe{X(jω)}

xca(t) =12 (x(t)− x∗(−t)) ⇐⇒ jℑm{X(jω)}

ℜe{x(t)} ⇐⇒ Xcs(jω) =12 (X(jω) +X∗(−jω))

jℑm{x(t)} ⇐⇒ Xca(jω) =12 (X(jω)−X∗(−jω))

tx(t) ⇐⇒ jdX(jω)

dωdnx(t)

dtn⇐⇒ (jω)nX(jω)

ˆ t

−∞x(τ ) dτ ⇐⇒ 1

jωX(jω) + πX(0)δ(ω)

Page 244: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

234 A Formeln fur Fourier- und Z-Transformation

Beispiele fur Fouriertransformationspaare

δ(t− T0) ⇐⇒ e−jωT0

ejω0t ⇐⇒ 2πδ(ω − ω0)

cosω0t ⇐⇒ πδ(ω − ω0) + πδ(ω + ω0)

sinω0t ⇐⇒ πj δ(ω − ω0)− π

j δ(ω + ω0)

∞∑

k=−∞δ(t− kT ) ⇐⇒ 2π

T

∞∑

k=−∞δ

(

ω − 2πk

T

)

∞∑

k=−∞ck e

j 2πkT t ⇐⇒ 2π

∞∑

k=−∞ck δ

(

ω − 2πk

T

)

σ(t) ⇐⇒ 1

jω+ πδ(ω)

sign(t) ⇐⇒ 2

e−atσ(t), ℜe{a} > 0 ⇐⇒ 1

a+ jωtn−1

(n− 1)!e−atσ(t), ℜe{a} > 0 ⇐⇒ 1

(a+ jω)n

e−a|t| , ℜe{a} > 0 ⇐⇒ 2a

a2 + ω2

sinωct

πt⇐⇒ X(jω) =

{

1 |ω| < ωc

0 |ω| > ωc

x(t) =

{

1 |t| ≤ T1

0 |t| > T1

⇐⇒ 2sinωT1

ω

x(t) =

{

1− |t|T1

|t| ≤ T1

0 |t| > T1

⇐⇒ 4sin2 ωT1

2

T1ω2

e−at2 , a > 0 ⇐⇒√

π

ae−

ω2

4a

dnδ(t)

dtn⇐⇒ (jω)n

tn ⇐⇒ 2πjndnδ(ω)

dωn

|t| ⇐⇒ − 2

ω2

Page 245: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A.3 Fourierreihen zeitdiskreter periodischer Signale 235

Dualitat der Fouriertransformation

x(t) ⇐⇒ X(jω)

X(jt) ⇐⇒ 2πx(−ω)

Parsevalsche Beziehung fur aperiodische Signale:

ˆ ∞

−∞|x(t)|2dt = 1

ˆ ∞

−∞|X(jω)|2dω

Parsevalsche Beziehung fur periodische Signale:

1

T

ˆ T

0

|x(t)|2dt =∞∑

k=−∞|ck|2

Poissonsche Summenformel:

∞∑

n=−∞x(t+ nT ) =

1

T

∞∑

n=−∞X(jnω0)e

jnω0t mit ω0 =2π

T

A.3 Fourierreihen zeitdiskreter periodischer Signale

x[n] = x[n+N ] =

N−1∑

k=0

ck ej 2πk

N n ⇐⇒ ck = ck+N =1

N

N−1∑

n=0

x[n] e−j 2πkN n

x[n−N0] ⇐⇒ e−j 2πkN N0 ck

ej2πmN n x[n] ⇐⇒ ck−m

x∗[n] ⇐⇒ c∗−k

x[−n] ⇐⇒ c−k

N−1∑

m=0

x[m]y[n−m] ⇐⇒ Nckdk, x, y gleiche Periode

x[n]y[n] ⇐⇒N−1∑

l=0

cl dk−l, x, y gleiche Periode

Page 246: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

236 A Formeln fur Fourier- und Z-Transformation

Fourierreihen (Fortsetzung)

xcs[n] =12 (x[n] + x∗[−n]) ⇐⇒ ℜe{ck}

xca[n] =12 (x[n]− x∗[−n]) ⇐⇒ jℑm{ck}

ℜe{x[n]} ⇐⇒ 12 (ck + c∗−k)

jℑm{x[n]} ⇐⇒ 12 (ck − c∗−k)

x[n]− x[n− 1] ⇐⇒(

1− e−j 2πkN

)

ckn∑

m=−∞x[m] mit c0 = 0 ⇐⇒ 1

1− e−j 2πkN

ck

Beispiele fur Fourierreihen2

ej2πmN n ⇐⇒ δ[k −m]

cos 2πmN n ⇐⇒ 1

2δ[k −m] + 12δ[k +m]

sin 2πmN n ⇐⇒ 1

2j δ[k −m]− 12j δ[k +m]

∞∑

m=−∞δ[n−mN ] ⇐⇒ 1

N∀k

x[n] =

1 0 ≤ n ≤ N1

1 N −N1 ≤ n ≤ N − 1

0 sonst

⇐⇒ 1

N

sin((2N1 + 1)πkN

)

sin πkN

2Bei den Beziehungen ist die Periodizitat von ck mit der Periode N zu berucksichtigen.

Page 247: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A.4 Fouriertransformation zeitdiskreter Signale 237

A.4 Fouriertransformation zeitdiskreter Signale

x[n] =1

ˆ 2π

0

X(ejθ) ejθndθ ⇐⇒ X(ejθ) =

∞∑

n=−∞x[n] e−jθn

x[n−N0] ⇐⇒ e−jθN0X(ejθ)

ejθ0nx[n] ⇐⇒ X(ej(θ−θ0))

x∗[n] ⇐⇒ X∗(e−jθ)

x[−n] ⇐⇒ X(e−jθ)

(x ∗ y)[n] =∞∑

k=−∞x[k]y[n− k] ⇐⇒ X(ejθ)Y (ejθ)

x[n]y[n] ⇐⇒ 12π (X ∗ Y )(ejθ)

xcs[n] =12 (x[n] + x∗[−n]) ⇐⇒ ℜe{X(ejθ)}

xca[n] =12 (x[n]− x∗[−n]) ⇐⇒ jℑm{X(ejθ)}

ℜe{x[n]} ⇐⇒ Xcs(ejθ) = 1

2 (X(ejθ) +X∗(e−jθ))

jℑm{x[n]} ⇐⇒ Xca(ejθ) = 1

2 (X(ejθ)−X∗(e−jθ))

nx[n] ⇐⇒ jdX(ejθ)

dθn∑

k=−∞x[k] ⇐⇒ 1

1− e−jθX(ejθ) + πX(ej0)δ2π(θ)

Beispiele fur Fouriertransformationspaare3

δ[n−N0] ⇐⇒ e−jθN0

ejθ0n ⇐⇒ 2πδ2π(θ − θ0)

cos θ0n ⇐⇒ πδ2π(θ − θ0) + πδ2π(θ + θ0)

sin θ0n ⇐⇒ πj δ2π(θ − θ0)− π

j δ2π(θ + θ0)

∞∑

k=−∞δ[n− kN ] ⇐⇒ 2π

N

∞∑

k=−∞δ

(

θ − 2πk

N

)

3Bei den Beziehungen ist die 2π–Periodizitat im Frequenzbereich zu berucksichtigen. δ2π(θ) =∑∞

k=−∞δ(θ − 2πk).

Page 248: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

238 A Formeln fur Fourier- und Z-Transformation

Beispiele fur Fouriertransformationspaare (Fortsetzung)

σ[n] ⇐⇒ 1

1− e−jθ+ πδ2π(θ)

anσ[n], |a| < 1 ⇐⇒ 1

1− ae−jθ

sinαn

πn, 0 < α < π ⇐⇒ X(ejθ) =

1 0 ≤ |θ| ≤ α

0 α < |θ| < π

x[n] =

1 |n| ≤ N1

0 |n| > N1

⇐⇒ sin((2N1 + 1) θ2

)

sin θ2

Parsevalsche Beziehung fur aperiodische zeitdiskrete Signale:

∞∑

n=−∞|x[n]|2 =

1

ˆ 2π

0

∣∣X(ejθ)

∣∣2dθ

Parsevalsche Beziehung fur periodische zeitdiskrete Signale:

1

N

N−1∑

n=0

|x[n]|2 =N−1∑

k=0

|ck|2

Mit x[n] = x[n+N ] und den Fourierreihenkoeffizienten ck =1

N

N−1∑

n=0

x[n]e−j 2πN nk.

A.5 Diskrete Fouriertransformation (DFT)

In den Beziehungen sind x[n] und y[n] N -Punkte Signale, d.h. sie sind fur dasIntervall n ∈ [0, N − 1] definiert und besitzen daher eine endliche Lange N . DieNotation x[(n)N ] = x[n⊕N ] ist die periodische Fortsetzung des N -Punkte Signalsx[n] (⊕ ist die Modulooperation). Mit der Rechteckfunktion

RN [n] =

{

1 0 ≤ n ≤ N − 1

0 sonstgilt x[n] = x[(n)N ]RN [n].

Merkregel: In den DFT-Formeln ist ein N -Punkte Signal stets als die Grundpe-riode (n ∈ [0, N − 1]) eines periodischen zeitdiskreten Signals zu betrachten.

Page 249: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A.5 Diskrete Fouriertransformation (DFT) 239

x[n] =1

N

N−1∑

k=0

X[k] ej2πkN n ⇐⇒ X[k] =

N−1∑

n=0

x[n] e−j 2πkN n

x[(n−N0)N ]RN [n] ⇐⇒ e−j 2πkN N0 X[k]

ej2πmN n x[n] ⇐⇒ X[(k −m)N ]RN [k]

x∗[n] ⇐⇒ X∗[(−k)N ]RN [k]

x∗[(−n)N ]RN [n] ⇐⇒ X∗[k](

N−1∑

m=0

x[(m)N ] y[(n−m)N ]

)

RN [n] ⇐⇒ X[k]Y [k]

x[n]y[n] ⇐⇒(

1

N

N−1∑

m=0

X[(m)N ]Y [(k −m)N ]

)

RN [k]

12

[x[(n)N ] + x∗[(−n)N ]

]RN [n] ⇐⇒ ℜe{X[k]}

12

[x[(n)N ]− x∗[(−n)N ]

]RN [n] ⇐⇒ jℑm{X[k]}

ℜe{x[n]} ⇐⇒ 12

[X[(k)N ] +X∗[(−k)N ]

]RN [k]

jℑm{x[n]} ⇐⇒ 12

[X[(k)N ]−X∗[(−k)N ]

]RN [k]

DFT Beispiele4

ej2πmN n ⇐⇒ Nδ[k −m]

cos 2πmN n ⇐⇒ N

2 δ[k −m] + N2 δ[k +m−N ]

sin 2πmN n ⇐⇒ N

2j δ[k −m]− N2j δ[k +m−N ]

δ[n] ⇐⇒ 1

x[n] =

1 0 ≤ n ≤ N1

1 N −N1 ≤ n ≤ N − 1

0 sonst

⇐⇒ sin((2N1 + 1)πkN

)

sin πkN

Parsevalsche Beziehung:

N−1∑

n=0

|x[n]|2 =1

N

N−1∑

k=0

|X[k]|2

4In den Formeln gilt 0 ≤ n ≤ N − 1, 0 ≤ k ≤ N − 1 und 0 ≤ m ≤ N − 1.

Page 250: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

240 A Formeln fur Fourier- und Z-Transformation

A.6 Z-Transformation

x[n] =1

2πj

CX(z)zn−1dz ⇐⇒ X(z) =

∞∑

n=−∞x[n]z−n

Die in der Tabelle angegebenen Bereiche sind die Konvergenzringe der zweiseitigenZ-Transformation und konnen in einzelnen Fallen auch großer sein.

x[n] ⇔ X(z) Rx−< |z| < Rx+

y[n] ⇔ Y (z) Ry− < |z| < Ry+

ax[n] + by[n] ⇔ aX(z) + bY (z) max(Rx−, Ry−) < |z| < min(Rx+ , Ry+)

x[n+ n0] ⇔ zn0X(z) Rx−< |z| < Rx+

zn0 x[n] ⇔ X

(z

z0

)

|z0|Rx−< |z| < |z0|Rx+

nx[n] ⇔ −zdX(z)

dzRx−

< |z| < Rx+

x∗[n] ⇔ X∗(z∗) Rx−< |z| < Rx+

x[−n] ⇔ X(z−1)1

Rx+

< |z| <1

Rx−

ℜe{x[n]} ⇔ 12(X(z) +X∗(z∗)) Rx−

< |z| < Rx+

jℑm{x[n]} ⇔ 12(X(z)−X∗(z∗)) Rx−

< |z| < Rx+

(x ∗ y)[n] ⇔ X(z)Y (z) max(Rx−, Ry−) < |z| < min(Rx+ , Ry+)

x[n] y[n] ⇔1

2πj

C

X(v)

vY(z

v

)

dv Rx−Ry− < |z| < Rx+Ry+

n∑

k=−∞

x[k] ⇔1

1− z−1X(z) max(Rx−

, 1) < |z| < Rx+

Zeitverschiebung fur die einseitige Z-Transformation:

x[n+ n0] ⇔ zn0

(

X(z)−n0−1∑

n=0

x[n]z−n

)

, n0 > 0

x[n− n0] ⇔ z−n0

(

X(z) +

n0∑

n=1

x[−n]zn

)

, n0 > 0

Page 251: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A.6 Z-Transformation 241

Residuensatz fur die inverse Z-Transformation:

Rechtsseitiges Signal (x[n] = 0 fur n < 0):

x[n] =1

2πj

CX(z)zn−1 dz =

|zk|<Rx

Resk{X(z)zn−1} n = 0, 1, 2, . . .

Alle Residuen im Gebiet innerhalb von C werden aufsummiert, wobei der Radiusvon C großer als der Konvergenzradius Rx sein muss.

Linksseitiges Signal (x[n] = 0 fur n > 0):

x[n] =1

2πj

C′

X

(1

z

)

z−n−1 dz =∑

|z′

k|< 1Rx

Resk

{

X

(1

z

)

z−n−1

}

n = 0,−1, . . .

Alle Residuen im Gebiet innerhalb von C′ werden aufsummiert, wobei der Radiusvon C′ großer als 1

Rxsein muss.

Achtung: Durch z±n−1 kann fur n = 0 ein zusatzlicher Pol bei z = 0 auftreten.Daher sollte bei der inversen Z-Transformation der Fall n = 0 getrennt behandeltwerden!

Einfacher Pol z∞k von X(z) =P (z)

Q(z):

Resk{X(z)zn−1} = limz→z∞k

(

(z − z∞k)P (z)

Q(z)zn−1

)

M–facher Pol z∞k von X(z) =P (z)

Q(z):

Resk{X(z)zn−1} =1

(M − 1)!

dM−1

dzM−1

(

(z − z∞k)M P (z)

Q(z)zn−1

)∣∣∣∣z→z∞k

Residuum im Unendlichen:

Resz=∞{X(z)zn−1} = −Resz=0

{

X

(1

z

)

z−n−1

}

Anfangswertsatz der einseitigen Z-Transformation:

x[0] = limz→∞

X(z)

Endwertsatz der einseitigen Z-Transformation:

limn→∞

x[n] = limz→1

(z − 1)X(z)

Page 252: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

242 A Formeln fur Fourier- und Z-Transformation

Eingeschaltetes periodisches Signal:

x[n] = xp[n]σ[n] ⇐⇒ X(z) =zN

zN − 1

(N−1∑

n=0

xp[n]z−n

)

mit xp[n] = xp[n+N ]

Einige Z-Transformationspaare

δ[n] ⇐⇒ 1 ∀z

σ[n] ⇐⇒ z

z − 1|z| > 1

−σ[−n− 1] ⇐⇒ z

z − 1|z| < 1

αnσ[n] ⇐⇒ z

z − α|z| > |α|

−αnσ[−n− 1] ⇐⇒ z

z − α|z| < |α|

nσ[n] ⇐⇒ z

(z − 1)2|z| > 1

−nσ[−n− 1] ⇐⇒ z

(z − 1)2|z| < 1

sinαn σ[n] ⇐⇒ z sinα

z2 − 2z cosα+ 1|z| > 1

cosαn σ[n] ⇐⇒ z(z − cosα)

z2 − 2z cosα+ 1|z| > 1

ρn sinαn σ[n] ⇐⇒ ρz sinα

z2 − 2ρz cosα+ ρ2|z| > ρ

ρn cosαn σ[n] ⇐⇒ z(z − ρ cosα)

z2 − 2ρz cosα+ ρ2|z| > ρ

sin(αn+ ϕ) σ[n] ⇐⇒ z2 sinϕ+ z sin(α− ϕ)

z2 − 2z cosα+ 1|z| > 1

1

n, n > 0 ⇐⇒ loge

z

z − 1|z| > 1

1− e−αn

nσ[n] ⇐⇒ α+ loge

z − e−α

z − 1|z| > 1, α > 0

sinαn

nσ[n] ⇐⇒ α+ arctan

(sinα

z − cosα

)

|z| > cosαα > 0

Page 253: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

A.7 Multiratensignalverarbeitung 243

Normierte Form der bilinearen Z-Transformation

Mit s =1

v

z − 1

z + 1, v = tanπ

fgfs

und H(z) = Ha(s)∣∣∣s= 1

vz−1z+1

wird ein analoges Filter mit der Ubertragungsfunktion Ha(s) (dabei ist s/2π nor-miert auf die analoge Bezugsfrequenz fag) in ein digitales Filter mit der Ubertra-gungsfunktion H(z) und der Bezugsfrequenz fg ubergefuhrt (fs ist die Abtastfre-quenz).

A.7 Multiratensignalverarbeitung

In den angegebenen Formeln sind der Unterabtastfaktor M und der Uberabtast-faktor L ganzzahlig (M,L ∈ N).

x[n] ⇐⇒ X(ejθ)

X(z)

y[n] = x[Mn] ⇐⇒ Y (ejθ) =1

M

M−1∑

k=0

X(

ej(θ−2πk)/M

)

Y (z) =1

M

M−1∑

k=0

X(

e−j2πk/M

z1/M

)

y[n] =

{

x[nL

]n = 0,±L,±2L . . .

0 sonst⇐⇒ Y (ejθ) = X

(

ejθL)

Y (z) = X(

zL)

Polyphasenzerlegung:

X(z) =

∞∑

n=−∞x[n]z−n =

M−1∑

k=0

z−kXk

(zM)

mit

Xk(z) =

∞∑

m=−∞xk[m]z−m =

∞∑

m=−∞x[Mm+ k]z−m, k = 0, 1, . . . ,M − 1

Page 254: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

244 A Formeln fur Fourier- und Z-Transformation

Damit folgt fur x[n]:

x[n] =

M−1∑

k=0

∞∑

m=−∞x[Mm+ k] δ[n−Mm− k], n = 0,±1,±2, . . .

Fall M = 2:

X(z) = X0

(z2)+ z−1X1

(z2)

X0(z) =

∞∑

m=−∞x[2m]z−m

X1(z) =

∞∑

m=−∞x[2m+ 1]z−m

x[n] =

∞∑

m=−∞x[2m] δ[n− 2m] +

∞∑

m=−∞x[2m+ 1] δ[n− 2m− 1]

Elementare Vertauschungsoperationen

↑ L

↑ M↓ M

↓ L

↓ M z−1M

↓ M z−1 z−M ↓ M

z−1 ↓ M

↑ Lz−1

↑ Lz−1L↑ L z−1

↑ L z−L

p[n] =∞∑

k=−∞δ[n− kM ]

Page 255: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

B

Literaturempfehlungen

In diesem Teil des Anhangs mochte ich ausgewahlte Bucher auf dem Gebiet derdigitalen Signalverarbeitung vorstellen und kurz besprechen. Es handelt sich dabeihauptsachlich um die einfuhrende Literatur, die ich teilweise auch zur Vorbereitungdes vorliegenden Buches verwendet habe. Die angegebenen Bucher haben einenStoffumfang von 500 bis 900 Seiten und kosten (mit wenigen Ausnahmen) zwischenAC60 und AC120.

Fur die Grundlagen der digitalen Signalverarbeitung kann ich folgendeBucher empfehlen:

A.V. Oppenheim, R.W. Schafer. Zeitdiskrete Signalverarbeitung, zweite Auflage.

Pearson Studium, 2004.

Ein sehr umfangreiches Werk als Ubersetzung des popularen englischsprachigenOriginals; Vom Umfang her der Stoff fur eine Jahresvorlesung; Viele Rechenbei-spiele, jedoch keine MATLAB-Aufgaben; Derzeit ist nur die englische Ausgabe imVerlag Prentice-Hall lieferbar.

S.K. Mitra. Digital Signal Processing: A Computer-Based Approach. McGraw-Hill,New York NY, 3. Auflage 2005.

Umfangreiche Darstellung mit vielen Bezugen zu Anwendungen; Zahlreiche Bei-spiele, auch mit MATLAB.

A.V. Oppenheim, A.S. Willsky, S.H. Nawab. Signals & Systems Second Edition.

Prentice-Hall International, 1996.

Zeitkontinuierliche und zeitdiskrete Signalverarbeitung in einem Buch; Großer Um-fang mit vielen Beispielen; Keine MATLAB-Beispiele im Buch.

Page 256: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

246 B Literaturempfehlungen

J.P. Proakis, D.G. Manolakis. Digital Signal Processing Fourth Edition. PearsonEducation International, 2007.

Gut lesbares und sehr umfangreiches Buch; Sehr gut ausbalanciert zwischen Theo-rie und Praxis; Viele Rechenbeispiele, keine MATLAB-Beispiele im Buch.

H. W. Schußler. Digitale Signalverarbeitung 1, Analyse diskreter Signale und Sys-

teme. Springer Verlag 2008.

Standardwerk in 5. Auflage; Bearbeitet von G. Dehner, R. Rabenstein und P. Stef-fen.

H. W. Schußler. Digitale Signalverarbeitung 2, Entwurf diskreter Systeme. SpringerVerlag, 2010.

Standardwerk fur Filterentwurf; MATLAB Programmbeispiele; Bearbeitet vonG. Dehner, R. Rabenstein und P. Steffen.

L.B. Jackson. Digital Filters and Signal Processing Third Edition. Springer US,1995.

Gut lesbares Standardwerk uber Entwurf und Implementierung digitaler Filter;Die wichtigsten Filterstrukturen sind enthalten, mit Rechen- und MATLAB-Bei-spielen.

Fur Filterung und Spektralanalyse kann ich das folgende Buch empfehlen:

K. Kammeyer, K. Kroschel. Digitale Signalverarbeitung, Filterung und Spektral-

analyse mit MATLAB-Ubungen, 7. Auflage. Verlag Vieweg+Teubner, 2009.

Filterentwurf, Strukturen, Wortlangeneffekte sind in kompakter Form dargestellt;Das Buch bietet auch eine gut lesbare Darstellung der Spektralanalyse stochasti-scher Signale; Die Stoffgebiete werden mit MATLAB-Aufgaben erganzt.

Fur die Multiratensignalverarbeitung ist fur eine Vertiefung der Klassiker

R.E. Crochiere, L.R. Rabiner. Multirate Digital Signal Processing. Prentice-HallInternational, 1983.

zu empfehlen.

Ein umfangreiches deutschsprachiges Buch zu diesem Thema ist

H.G. Gockler, A. Groth. Multiratensysteme, Abtastratenumsetzung und digitale

Filterbanke. J. Schlembach Fachverlag Wilburgstetten, 2004.

Abschließend mochte ich zwei hervorragende, weiterfuhrende Bucherempfehlen, die auch aus mathematischer Sicht keine Wunsche offen lassen:

Stephane Mallat. A wavelet tour of signal processing - the sparse way. 3. Auflage,Academic Press (Elsevier), 2009.

M. Vetterli, J. Kovacevic, V.K. Goyal. Foundations of Signal Processing. Cam-bridge University Press, 2014.

Page 257: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Glossar

(n)N alternative Schreibweise der Modulooperation n⊕N

(x ∗ y)(t) zeitkontinuierliche Faltungsoperation,

ˆ ∞

−∞x(τ )y(t− τ )dτ

(x ∗ y)[n] zeitdiskrete Faltungsoperation,∞∑

k=−∞x[k]y[n− k]

δ(x) Dirac-Funktion, Deltafunktion

δ[n] Einsimpuls δ[n] =

{

1 n = 0

0 n 6= 0

∀ fur alle

ℑm Imaginarteil

⌈x⌉ kleinste ganze Zahl die großer oder gleich x ist

⌊x⌋ großte ganze Zahl die kleiner oder gleich x ist

log2 Logarithmus zur Basis 2 (dyadischer Logarithmus)

loge Logarithmus zur Basis e (naturlicher Logarithmus)

log10 Logarithmus zur Basis 10 (dekadischer Logarithmus)

C Menge der komplexen Zahlen

N Menge der naturlichen Zahlen

Q Menge der rationalen Zahlen

R Menge der reellen Zahlen

Z Menge der ganzen Zahlen

Page 258: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

248 Glossar

RN [n] zeitdiskrete Rechteckfunktion RN [n] =

{

1 0 ≤ n ≤ N − 1

0 sonst

⊕ Modulooperation, a⊕ b = a− b⌊ab

ℜe Realteil

σ(t) zeitkontinuierliche Sprungfunktion σ(t) =

0 t < 012 t = 0

1 t > 0

σ[n] zeitdiskrete Sprungfunktion σ[n] =

{

1 n ≥ 0

0 n < 0

sign(x) Vorzeichenfunktion sign(x) = x|x| , sign(0) = 0

sinc(x) Sinc-Funktion sinc(x) = sin xx , sinc(0) = 1

∗ konjugiert komplex

a[n] zeitdiskrete Sprungantwort

fs Abtastfrequenz fs =1T

H(z) Ubertragungsfunktion

h[n] zeitdiskrete Impulsantwort

H(ejθ)

Frequenzgang, Ubertragungsfunktion in ejθ

T Abtastintervall

X(jω) Fouriertransformierte von x(t)

x(t) zeitkontinuierliches Signal

X(z) Z-Transformierte von x[n]

X[k] Diskrete Fouriertransformierte (DFT) von x[n]

x[n] zeitdiskretes Signal

X(ejθ)

Fouriertransformierte von x[n]

xca[n] konjugiert-antisymmetrisches Signalxca[n] =

12 (x[n]− x∗[−n])

xcs[n] konjugiert-symmetrisches Signalxcs[n] =

12 (x[n] + x∗[−n])

Page 259: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Glossar 249

O(N) Komplexitat des Rechenaufwands proportional zu N

ADC Analog Digital Converter

BIBO Bounded Input Bounded Output

DAC Digital Analog Converter

dB Dezibel, |x| in dB = 20 log10(|x|)

DFT Diskrete Fouriertransformation

DSP Digital Signal Processing, aber auch Digitaler Signal Prozes-sor

FFT Fast Fourier Transform

FIR Finite Impulse Response (Duration)

IIR Infinite Impulse Response (Duration)

MPEG Moving Picture Expert Group

Page 260: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

250 Glossar

Page 261: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

Index

Abtast-Halte-Elementdigitales, 208–215

Abtastfrequenz, 77, 82, 243Abtasttheorem

fur Bandpasssignale, 83fur Tiefpasssignale, 78

Abtastunganaloger Signale, 10, 62, 75–85im Frequenzbereich, 166

Adressierungbit-reversed, 188

Aliasingim Frequenzbereich, 69, 77, 146im Zeitbereich, 167

Allpassfilter, 156Alternantensatz, 143Amplitudenmodulation, siehe

FrequenzverschiebungAnfangsbedingung, 91, 113, 116Anfangswert, 89Anfangswerttheorem, 117, 241Anfangszustand, 93Ausschwingvorgang, 53, 183

Bandpassfilter, siehe Filter,Bandpassfilter

Bandpasssignal, 81, 129BIBO-stabiles System, 39Blockverarbeitung, 182, 184Butterworth-Filter, 150

Cosinusfenster

verallgmeinertes, 139Cosinusschwingung, 9, 21, 51, 63,

125

δ-Funktion, siehe Dirac-Funktionδ-Impuls, siehe Einsimpulsδ-Puls

zeitdiskreter, 8, 52, 66Dezimation, 192, 194, 200, 216Differenzbilder, 33Differenzengleichung, 88–95, 113,

135, 158Dirac-Funktion, 62, 101

Siebeigenschaft, 63

Echtzeitverarbeitung, 16, 43Eigenschwingung, 92Einhullende, 131Einschwingvorgang, 45, 53Einschwingzeit, 54, 121Einseitenbandmodulator, 133Einsimpuls, 6, 31, 66Endwerttheorem, 117, 241Equi-Ripple Design, 142, 154Exponentialfunktion, 7, 19Exponentialschwingung, 9, 45, 54,

62, 91, 96, 180harmonische, 11, 27

Faltung, siehe Faltungsoperationschnelle, 44, 173zyklische, 172, 184

Page 262: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

252 INDEX

Faltungsoperation, 32, 34, 37, 44,50, 72, 88, 91, 112, 121, 182

Faltungssumme, sieheFaltungsoperation

Farrow-Filter, 220, 225Fenstereffekt, 180Fensterfunktion, 139, 180, 221FFT, Fast Fourier Transform, 19,

44, 57, 135, 186Bit-Reversal, siehe

AdressierungButterfly, 186Decimation-in-Time, 186–190

FilterBandpassfilter, 50, 82digitales, 119–129, 150elliptisches, 145, 154ideale Bandsperre, 126–127idealer Bandpass, 50, 123–126idealer Hochpass, 122–123idealer Tiefpass, 61, 120–122,

202Kaskadenform, 38, 159minimalphasiges, 156Parallelform, 38, 147, 161Polstelle, 96, 100, 106, 153schmalbandiges, 175Sperrstelle, 96, 100, 161Tiefpassfilter, 29, 33

FIR-Filter, 34, 54, 88, 104, 119,135–138, 183, 198, 218

Fenstermethode, 138, 195linearphasige, 136Nullstellen, 136

Forced Response, partikulareAntwort, 93

FourierreihenFormeln fur zeitdiskrete

Signale, 235Formeln fur zeitkontinuierliche

Signale, 232Fourierreihendarstellung, 19–23, 25,

50, 65, 78, 166, 202Fouriertransformation, 46, 59–74,

98, 106, 139, 198, 202, 205,

213diskrete (DFT), 165–169Formeln fur DFT, 238Formeln fur zeitdiskrete

Signale, 237Formeln fur zeitkontinuierliche

Signale, 233inverse, 57schnelle, siehe FFT

Fractional Delay, 221, 225Frequenzgang

Ubertragungsfunktion, 46, 50,78, 96, 175, 198

FIR-Filter, 136ideale Bandsperre, 126idealer Bandpass, 123idealer Hilberttransformator,

128idealer Hochpass, 122idealer Tiefpass, 120IIR-Filter, 96zeitdiskreter Netzwerke, 96–98

Frequenztransformationen, 158Frequenzverschiebung, 68, 111, 171

Gaußimpuls, 7Gibbssches Phanomen, 22, 23, 60,

120, 139Grenzzyklen, 159

Harmonische, 11, 23Heaviside

Methode von, 107Hilberttransformator, 127–129

IIR-Filter, 34, 55, 119, 145, 158Impulsantwort, 31, 46, 57, 94, 104,

138, 145, 197aquivalente Dauer, 120, 122,

124, 126, 128Approximation, 146ideale Bandsperre, 126idealer Bandpass, 124idealer Hilberttransformator,

128idealer Hochpass, 122

Page 263: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

INDEX 253

idealer Tiefpass, 120Impulsinvarianztransformation, 145Inphasekomponente, 131Interpolation, 79, 192, 194, 197, 215

im Frequenzbereich, 176im Zeitbereich, 176mit der DFT, 176mit Lagrange-Polynomen, 224

Kaiser-Fenster, 139Kaskadenform, siehe Filter,

KaskadenformKaskadenschaltung, siehe Filter,

KaskadenformKausalitat, 43Kettenschaltung, siehe Filter,

KaskadenformKommutator, 215, 217

Leakage-Effect, 180Linearitat, 67, 110, 170Linienspektrum, 21, 26, 166

Mathematiksymbolische, 226

Mehrfachtaktverarbeitung, sieheMultiratensignalverarbei-tung

Mittelwertbilder, 32, 104gleitender, siehe Moving

AveragerModulation, 68, 84

Trager, 69Momentanphase, 131Moving Averager, 48Multiratensignalverarbeitung, 62,

87, 191–230Formeln, 243

N-Punkte Signal, 165Natural Response, homogene

Antwort, 93Nulleingangsantwort, 91, 94, 115Nullphasenfilter, 120Nullphasenkomponente, 137Nullzustandsantwort, 91, 92, 95, 115

Nuttall-Fenster, 139

Overlap-Add Methode, 182Overlap-Save Methode, 184

Parallelform, siehe Filter,Parallelform

Parallelschaltung, siehe Filter,Parallelform

Parsevalsche Beziehung, 27, 72, 121,124, 126, 174, 235, 238

Partialbruchzerlegung, 106, 108,146, 161

PlancherelSatz von, 72

Poissonsche Summenformel, 73, 235Pol/Nullstellendiagramm, 101–105,

136, 160Polstelle, siehe Filter, PolstellePolynom

charakteristisches, 92, 94, 96,115

Faktorisierung, 159Nullstelle, 92

Polyphasenfilter, 216, 217Polyphasenzerlegung, 215–219, 243

Quadraturkomponente, 131

Rechteckfenster, 139Rechteckimpuls, 22Rechteckschwingung, 22Reihe

endliche geometrische, 48Summenformeln, 35unendliche geometrische, 47

Rekonstruktionanaloger Signale, 78–85

Remez-Algorithmus, 143Residuensatz, 106, 241

Sample-Hold Funktion, 79Schmalbandsystem, 124Signal

analytisches, 129, 133aperiodisches, 6, 49

Page 264: Zeitdiskrete Signale und Systeme - TU Wien · 2016-01-28 · Zeitdiskrete Signale und Systeme Eine Einf¨uhrung in die grundlegenden Methoden der digitalen Signalverarbeitung 3. Auflage

254 INDEX

bandbegrenztes, 61, 77endlicher Lange, 104gerades, 14kausales und instabiles, 102kausales und stabiles, 101konjugiert-antisymmetrisches,

14konjugiert-symmetrisches, 14linksseitiges, 102, 108, 241periodisches, 8, 13, 16, 50, 65,

166rechtsseitiges, 102, 108, 241ungerades, 14zeitdiskretes, 5zweiseitiges, 102, 103, 108

Signalenergie, 12, 27, 60, 72, 121,122, 128

Signalflussgraph, 186Signalleistung

mittlere, 12, 27Signalprozessor

digitaler, 2, 159Signalverzogerung, 15Signalvoreilung, 15Spektrum, siehe

FouriertransformationSperrfrequenz, 49Sperrstelle, siehe Filter, SperrstelleSprungantwort, 32

ideale Bandsperre, 126idealer Bandpass, 125idealer Hochpass, 123idealer Tiefpass, 121

Sprungfunktion, 6, 13, 31, 53, 64Superpositionsprinzip, 31, 67System

dynamisches, 30idealisiertes, 29kausales, 43, 117lineares, 31nichtrekursives, 88rekursives, 88schematisiertes, 29, 98stabiles, 92statisches, 35

zeitinvariantes, 31zeitvariantes, 178, 193, 210

Systemoperator, 30

Taktratenumsetzer, Sampling RateConverter, 191

mit beliebigen Faktoren, 220,228

Tiefpassfilter, siehe Filter,Tiefpassfilter

aquivalentes, 124ideales, siehe Filter, idealer

TiefpassTiefpasssignal, 71

aquivalentes, 130Transversalfilter

digitales, 136, 225Tschebyscheff-Approximation, 142Tschebyscheff-Filter, 152

Ubertragungsfunktion, sieheFrequenzgang

Unterabtastung, 202

Wechselstromrechnungkomplexe, 45

Wortlangeneffekte, 159

Z-Transformation, 89, 92, 96,98–105, 147, 175

bilineare, 148, 243einseitige (unilaterale), 113Formeln, 240inverse, 106–110Konvergenzbereich, 99

Zeitinversion, 15–18, 35, 67, 110, 170Zeitverschiebung, 15–18, 35, 67, 110,

114, 170, 240zyklische, 170

Zero-Input Response, sieheNulleingangsantwortZero-State Response, sieheNullzustandsantwortZustand

eingeschwungener, 45