7.4. Multiraten

Werbung
Digitale Signal-Verarbeitung 1
Kapitel 7: Multiraten-Systeme
Inhaltsverzeichnis
7.1. EINFÜHRUNG .............................................................................................................................................. 2
7.2. ABWÄRTS-TASTUNG (DOWNSAMPLING, DEZIMATION) ............................................................... 2
7.3. AUFWÄRTS-TASTUNG (UPSAMPLING, INTERPOLATION) ............................................................ 3
7.4. MULTIRATEN-SYSTEME .......................................................................................................................... 4
7.5. POLYPHASEN-SYSTEME .......................................................................................................................... 5
7.5.1 DEZIMATION MIT POLYPHASEN-FILTER ...................................................................................................... 5
7.5.2 INTERPOLATION MIT POLYPHASEN-FILTER ................................................................................................. 5
7.6. FILTERBÄNKE............................................................................................................................................. 6
7.7. NOISE-SHAPING UND OVERSAMPLING .............................................................................................. 7
7.7.1 PWM (PULSE WIDTH MODULATION = PULS-BREITEN-MODULATION) ........................................................ 7
7.7.2 SIGMA-DELTA-WANDLER .......................................................................................................................... 9
Literatur
[1]
A.V. Oppenheim, R.W. Schafer, J. R. Buck: „Zeitdiskrete Signalverarbeitung“,
2., überarbeitete Auflage, ISBN 3-8273-7077-9, Neuübersetzung der aktuellen
US-Ausgabe, Pearson Studium, 2004.
„4.6 Veränderung der Abtastrate durch eine zeitdiskrete Verarbeitung“
„4.7 Multiraten-Signalverarbeitung“
„4.9 Überabtastung und Rauschformung bei der A/D- und D/A-Wandlung“
[2]
Walt Kester: „Analog-Digital Conversion“, 2004, Analog Devices, ISBN 0-916550-27-3
Gratis-Download:
http://www.analog.com/library/analogDialogue/archives/39-06/data_conversion_handbook.html
„3.3 Sigma-Delta Converters“
75897473 / 13.05.16
Seite 1 / 9
Hhrt@ZSN@SoE@ZHAW
7.1. Einführung
Gemäss Abtast-Theorem muss die Samplingfrequenz mindestens das Doppelte der
höchsten Signalfrequenz betragen. Eine höhere Abtastfrequenz enthält keine zusätzliche
Information, führt hingegen zu massiv höherem Rechenleistungsbedarf.
Bei einem FIR-Tiefpassfilter beispielsweise muss der FIR-Algorithmus für jedes
Sample aufgerufen werden (= proportional zu fs) und die Filterordnung nimmt
proportional mit der Samplingfrequenz zu (weil die relative auf fs bezogene
Grenzfrequenz näher bei 0 ist). Für ein FIR-Tiefpassfilter nimmt der Rechenaufwand
also ungefähr quadratisch mit der Samplingfrequenz zu.
Um den Rechenaufwand (= Hardware-Kosten) zu minimieren, hat man ein vitales Interesse,
die Samplingfrequenz möglichst tief zu halten. Das kann dazu führen, dass in einem System
die verschiedenen Komponenten mit jeweils unterschiedlichen Samplingfrequenzen arbeiten
(= Multiraten-Systeme).
Dazwischen werden deshalb Zwischenstufen benötigt, die den Takt anpassen, ohne das
Signalspektrum im relevanten Frequenzbereich zu verändern.
In diesem Text werden die Phänomene anhand von Beispielen plausibel erklärt. Für die
mathematisch ausführliche Behandlung wird auf [1] verwiesen.
Oversampling und noise shaping bei Analog-Digital-Wandlern werden in [2] detailliert
erläutert.
7.2. Abwärts-Tastung (Downsampling, Dezimation)
Antialiasing-Filter
Verstärkung = 1
 M Abtastraten-Kompressor
jeden Mten Wert behalten
Figur 7.1: Die Abwärts-Tastung (= Dezimation) besteht aus zwei Teilen: dem Antialiasing-Filter
(Tiefpass) und dem Abtast-Ratenkompressor (behält 1 aus M Werten).
Bei der Abwärts-Tastung wird einfach jeder M-te Wert weiterverwendet. Alle anderen Werte
werden verworfen. Damit bei der nun tieferen Abtastfrequenz kein Aliasing entsteht, muss
vor dem Kompressor ein Tiefpassfilter eingesetzt werden.
Ein Zahlenbeispiel und die Auswirkungen auf das Signal-Spektrum:
Abtasten mit 48kHz => Ts = 20.8s, d.h. 1 Sample alle 20.8s.
Abtasten mit 8kHz => Ts = 125s, d.h. 1 Sample alle 125s.
Abwärtstastung heisst die Samplingfrequenz von 48kHz auf 8kHz zu reduzieren,
indem man nur jeden 6. Wert nimmt.
Falls das Signal Frequenzkomponenten über 4kHz aufweist, führt das zu Aliasing.
Das Signal muss daher vor der Abwärtstastung Tiefpass-gefiltert werden.
75897473 / 13.05.16
Seite 2 / 9
Hhrt@ZSN@SoE@ZHAW
Signal-Spektrum mit fs = 48kHz
0
24
fs/2
48
fs
kHz
Signal-Spektrum mit fs = 8kHz
8 -4 0 4 8
-fs -fs/2
fs/2 fs
kHz
Figur 7.2: Abwärts-Tastung verschiebt die Spiegelspektren und führt zu zusätzlichem Aliasing, wenn
das Signal für die tiefere Abtastfrequenz nicht genügend bandbegrenzt ist.
7.3. Aufwärts-Tastung (Upsampling, Interpolation)
 L Abtastraten-Expander
L-1 Nullen einschieben
Interpolations-Filter
Verstärkung = L
Figur 7.3: Die Aufwärts-Tastung (= Interpolation) besteht aus zwei Teilen: dem Abtastraten-Expander
(schiebt L-1 Nullen ein) und dem Interpolations-Filter (= Tiefpass).
Bei der Aufwärts-Tastung wird zwischen die vorhandenen Abtastwerte L-1 Nullen
eingeschoben. Die entstehende Amplituden-Abschwächung kann durch L-fache Verstärkung
kompensiert werden. Anstelle der eingeschobenen Nullen müssen die korrekten
Zwischenwerte so berechnet werden, dass wieder originale Signalspektrum entsteht.
Idealerweise wird das mit einem Tiefpass-Filter erledigt. Falls das ursprüngliche Signal eine
kleine Bandbreite besitzt, kann das Interpolations-Filter durch lineare Interpolation (weniger
rechenaufwändig) approximiert werden.
Zur Veranschaulichung soll das originale Signalspektum vom vorhergehenden Kapitel
wieder hergestellt werden:
Abtasten mit 8kHz => Ts = 125s, d.h. 1 Sample alle 125s.
Abtasten mit 48kHz => Ts = 20.8s, d.h. 1 Sample alle 20.8s.
Es müssen 5 Werte zwischen den bekannten Samples eingeschoben und berechnet
werden. Dazu werden in einem ersten Schritt Nullen eingeschoben. Die
Signalenergie wird dadurch „verdünnt“, was durch eine entsprechende Verstärkung
kompensiert wird. Anstelle der eingeschobenen Nullen müssen nun mit Hilfe des
Interpolations-Filter (= Tiefpassfilter) die Zwischenzeitpunkte berechnet so werden,
dass das Signalspektrum erhalten bleibt.
75897473 / 13.05.16
Seite 3 / 9
Hhrt@ZSN@SoE@ZHAW
Signal-Spektrum mit fs = 8kHz
8 -4 0 4 8
-fs -fs/2
fs/2 fs
kHz
Signal-Spektrum mit fs = 48kHz und eingeschobenen Nullen
0
24
fs/2
48
fs
kHz
Signal-Spektrum mit fs = 48kHz und Interpolations-Filter
0
24
fs/2
48
fs
kHz
Figur 7.4: Das einschieben von Nullen bei der Aufwärts-Tastung „verdünnt“ die Signalleistung. Das
Tiefpass-Filter (= Interpolationsfilter) entfernt die ursprünglichen Spiegelspektren. Die Verstärkung
(Kompensation der „Verdünnung“) kann direkt im Interpolations-Filter erfolgen.
7.4. Multiraten-Systeme
Lineare Filterung und Ab-/Aufwärts-Tastung lassen sich vertauschen. Es ist daher möglich
das Filter aus Effizienzgründen mit kleineren Samplingraten zu betreiben. Dazu müssen die
Filter-Koeffizienten entsprechend angepasst werden.
Figur 7.5: Lineare Filterung und Ab-/Aufwärts-Tastung lassen sich vertauschen.
75897473 / 13.05.16
Seite 4 / 9
Hhrt@ZSN@SoE@ZHAW
7.5. Polyphasen-Systeme
Unter Polyphasen-Systemen versteht man das Parallelschalten von N Filtern von denen
jedes jeweils nur den N-ten Sample bekommt und verarbeitet. In Kombination mit Ab- oder
Aufwärtstastung lässt sich so massiv Rechenzeit einsparen.
Als repräsentative Beispiele werden die Dezimation und die Interpolation mit PolyphasenFiltern vorgestellt.
7.5.1 Dezimation mit Polyphasen-Filter
Figur 7.6: Dezimation. Abbildung entnommen aus [1].
Das Anti-Aliasing-Tiefpass-Filter und die Abwärtstastung lassen sich vertauschen.
Figur 7.7: Dezimation, realisiert mit Polyphasen-Filter. Abbildung entnommen aus [1].
Anstelle eines FIR-Filters mit N-Koeffizienten werden nun M Filter mit N/M Koeffizienten
benötigt, die zudem nur jeden M-ten Wert verarbeiten müssen.
7.5.2 Interpolation mit Polyphasen-Filter
Figur 7.8: Interpolation. Abbildung entnommen aus [1].
Die Aufwärtstastung und das Interpolations-Tiefpass-Filter lassen sich vertauschen
75897473 / 13.05.16
Seite 5 / 9
Hhrt@ZSN@SoE@ZHAW
Figur 7.9: Interpolation, realisiert mit Polyphasen-Filter. Abbildung entnommen aus [1].
Anstelle eines FIR-Filters mit N-Koeffizienten werden nun L Filter mit N/L Koeffizienten
benötigt, die zudem nur jeden L-ten Wert verarbeiten müssen.
7.6. Filterbänke
Unser Gehör nimmt die Tonhöhen logarithmisch war. Eine Oktave entspricht dabei
einer Verdoppelung der Frequenz. Ein häufig verwendeter Equalizer besteht aus
mehreren über den Hörbereich verteilten Oktavbändern.
Wenn man ein solches System mit einem Signal-Prozessor effizient aufbauen möchte, kann
man in einem ersten Schritt das Signal in einen Hoch- und den komplementären TiefpassAnteil aufspalten. Die Tiefpass-Anteil wird wieder halbiert, usw. Dabei halbiert sich jeweils
die Samplingfrequenz und auch die benötigte Filterordnung sinkt im gleichen Mass. Die
Frequenzbänder werden einzeln verarbeitet und anschliessend schrittweise wieder zum
Gesamtsignal vereint.
Figur 7.10: Filterbänke mit sukzessiver Halbierung der Bandbreite.Abbildung entnommen aus
http://www.informatik.uni-ulm.de/ni/Lehre/WS04/HSemSprache/ausarbeitungen/Munz.pdf
Als Hoch- und Tiefpass-Filter für das Aufteilen der Bänder auf die Filterbänke werden oft
Quadratur-Mirror-Filter (QMF-Filter) verwendet. Deren Impulsantworten sind komplementär,
womit über alles ein gerader Frequenzgang gewährleistet ist.
75897473 / 13.05.16
Seite 6 / 9
Hhrt@ZSN@SoE@ZHAW
Neben logarithmischen Filterbänken gibt es auch solche mit linearer Frequenzaufteilung.
Das erreicht man, indem man auch die Hochpass-Signale sukzessive weiter halbiert.
7.7. Noise-Shaping und Oversampling
7.7.1 PWM (pulse width modulation = Puls-Breiten-Modulation)
Stellen Sie sich vor: Sie sollten die Helligkeit einer Lampe nur mit einem Ein-/AusSchalter stufenlos regulieren. Um Flackern zu vermeinen müssten Sie dazu den
Schalter sehr schnell schalten (Schaltfrequenz >> wahrnehmbarer Frequenzbereich).
Die Helligkeit wäre proportional zu Einzeit/(Einzeit+Auszeit) = Einzeit/Periodendauer.
Genau so arbeitet PWM (pulse width modulation = Pulsbreiten-Modulation), das bei jedem
Mikro-Controller als simpler Digital-Analog-Wandler zur Verfügung steht. Vom PWM-Signal
muss lediglich mit einem analogen Tiefpassfilter der Mittelwert gebildet werden.
60%
20%
80%
Zeit
PWMPeriode
Figur 7.11: PWM-Signal mit verschiedenen Tast-Verhältnissen und den zugehörigen Mittelwerten
Bei digitalen Systemen sind sowohl die Einzeit, als auch die Periodendauer quantisiert (mit
einem ganzzahligen Vielfachen der Periodendauer der System-Taktfrequenz).
Beispiele:
PWM-Takt = 1MHz, PWM-Breite = 8bit
=> PWM-Auflösung = 256, PWM-Periode = 256s
PWM-Breite = 16bit, PWM-Periode = 1/300kHz
=> PWM-Auflsöung = 65536, PWM-Takt = 20GHz
PWM-Breite = 10bit, PWM-Periode = 1/300kHz
=> PWM-Auflsöung = 1024, PWM-Takt = 300MHz
(für Motor-Regler)
(für Audio-Endstufe)
(kaum realisierbar)
(für Audio-Endstufe)
(gut realisierbar)
Im ersten Beispiel ist die technische Realisierung problemlos (Motordrehzahl lässt sich auf
0.4% genau einstellen mit einer Geschwindigkeit von einigen 100Hz).
Im zweiten Beispiel sind die Anforderungen an die Taktfrequenz unrealistisch hoch (resp.
sehr teuer).
Das dritte Beispiel ist einfach realisierbar, aber die Auflösung von 10bit ist für viele
Audioanwendungen ungenügend. Abhilfe ist möglich mit „noise shaping“ (= Rauschformung).
Nehmen wir an das richtige Ausgangssignal beträgt 0.8LSB. Normalerweise würde
0.8LSB auf 1LSB aufgerundet (Quantisierung heisst: es gibt nur ganze Bits). Statt
jedes Mal aufzurunden, kann man viermal aufrunden und einmal abrunden, womit im
Mittel 0.8LSB ausgegeben werden. Weil die Schaltfrequenz (im Beispiel 300kHz) viel
höher ist, als die maximale Signalfrequenz (im Beispiel 20kHz), kann man mit diesem
Verfahren eine feinere Auflösung erreichen, als das PWM-Signal (oder der DAWandler) selbst aufweist.
75897473 / 13.05.16
Seite 7 / 9
Hhrt@ZSN@SoE@ZHAW
Der Rundungsfehler des quantisierten Werts wird aufintegriert und sobald der aufsummierte
Rundungsfehler 1 LSB erreicht, wird das Ausgangssignal um 1 LSB korrigiert.
Weshalb heisst dieses Verfahren „noise shaping“? Das Quantisieren entspricht einem
Rauschsignal, das über den ganzen Frequenzbereich gleichmässig verteilt ist. Durch
Überabtasten wird die Energie des Rauschens über einen grösseren Frequenzbereich
verteilt.
Obiges Audiosignal wird 7.5fach überabgetastet (fs/2 / Signalbandbreite). Daraus
resultiert eine „Verdünnung“ der Rauschleistung um den Faktor 7.5, also der
Rauschamplitude um den Faktor 7.5  2.7, was einem Gewinn von 1.5bit entspricht.
Mit Hilfe der Rauschformung (= Integrator und Signalrückführung = Ausgleichen des
Quantisierungsfehlers) wird die Leistung des Quantisierungsrauschens nicht reduziert, aber
das Spektrum wird zu höheren Frequenzen (= grösstenteils ausserhalb des
Signalspektrums) hin verschoben.
Im Beispiel wird das Audiosignal durch die Rauschformung um 4bit besser aufgelöst.
Das ergibt 14bit, wenn das analoge Tiefpassfilter am Ausgang sehr steil ist.
Figur 7.12: Quantisierungsrauschen, Oversampling und Tiefpassfilterung, +Rauschformung am
Beispiel eines AD-Wandlers. Abbildung entnommen aus [2].
Die Rauschformung kann verbessert werden, indem mehrere Integratoren hintereinander
geschaltet werden. Die Anzahl Integratoren bezeichnet die Ordnung der Rauschformung.
Im Beispiel würde mit Rauschformung 2.Ordnung ein Gewinn von 5bit resultieren. Bei
3. Ordnung 7bit. Mit einem realistischen analogen Tiefpassfilter am Ausgang kann
somit die geforderte Ausflösung von 16bit erreicht werden.
Weitere Erhöhung der Ordnung der Rauschformung resultiert in einem zusätzlichen Gewinn
an Auflösung, jedoch ist bei der 3.Ordnung aus Stabilitätsgründen eine praktische obere
Grenze erreicht.
75897473 / 13.05.16
Seite 8 / 9
Hhrt@ZSN@SoE@ZHAW
7.7.2 Sigma-Delta-Wandler
In den Sigma-Delta-Wandlern wird das oben Dargelegte auf die Spitze getrieben, indem der
eigentliche Wandler nur noch 1bit (Comparator = ADC resp. Digitaler Ausgang = DAC)
verarbeitet. Die gewünschte Auflösung wird durch Überabtastung und Rauschformung
(oversampling and noise shaping) erreicht.
Beispiel: Der AD-Wandler AD1871 arbeitet intern mit 6.144MHz (= 128*48kHz =
128fache Überabtastung) und erreicht mit Rauschformung 2. Ordnung eine Auflösung
von 16bit.
Figur 7.13: Sigma-Delta-Wandler mit noise shaping 2. Ordnung. Abbildung entnommen aus [2].
Bei Sigma-Delta-DA-Wandlern gelten grundsätzlich dieselben Überlegungen.
75897473 / 13.05.16
Seite 9 / 9
Hhrt@ZSN@SoE@ZHAW
Herunterladen