Konzeption und Implementierung einer digitalen Symboltaktsynchronisation für DVB-C
Zur Erlangung des akademischen Grades
Diplomingenieur (FH) von
Wilhelm Brodt Matrikelnummer: 20210026
Betreuer: Prof. Dr. Claus Wilhelm Turtur
Fachhochschule Braunschweig/Wolfenbüttel
Fachbereich Elektrotechnik
Dipl.-Ing. Christoph Juchems
Institut für angewandte Funksystemtechnik GmbH, Braunschweig
Erstellt: WS 2005
Abgabe: Februar 2006
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 2 von 87
Selbstständigkeitserklärung Hiermit versichere ich, dass ich die vorliegende Diplomarbeit selbstständig verfasst
und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt habe. Alle
Stellen im Text, die sinngemäß entnommen sind, wurden kenntlich gemacht. Gleiches
gilt für alle enthaltenen Abbildungen, Tabellen und Anlagen.
Braunschweig, 22.02.2006
Ort, Datum Wilhelm Brodt
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 3 von 87
Aufgabenstellung Konzeption und Implementierung einer digitalen Symboltaktsynchronisation für DVB-C.
In digitalen Empfängerkonzepten der neuesten Generation wird die bislang häufig
analog geregelte Synchronisation des Symboltaktes digital durchgeführt. Dadurch
kann der relativ kostenintensive VCO durch einen Festfrequenzoszillator ersetzt wer-
den. Die digitale Symboltaktsynchronisation bietet daher den Vorteil der Kostenein-
sparung aber auch eine größere Flexibilität hinsichtlich der zu verarbeitenden Symbol-
raten.
Als Bestandteil des Projekts „Realisierung eines DVB-C Messempfängers in FPGA“
wird im Rahmen dieser Arbeit die Konzeption und Realisierung der digitalen Symbol-
taktsynchronisation durchgeführt.
Die Diplomarbeit beinhaltet zunächst eine Beschreibung der theoretischen Grundla-
gen sowie der gebräuchlichen Verfahren zur digitalen Symboltaktsynchronisation. Für
das Projekt DVB-C Empfänger ist ein passendes Konzept für die Symboltaktsynchro-
nisation auszuarbeiten und mit Simulationen zu validieren.
Die Realisierung der Symboltaktsynchronisation wird auf Basis einer existierenden
FPGA Hardware-Plattform mit Erweiterungsmodulen für A/D und D/A Wandlung
durchgeführt. Die Implementierung umfasst Teilkomponenten des DVB-C Empfängers
(A/D Umsetzung, digitale I/Q Demodulation, digitale Filterung und Symboltaktsynchro-
nisation). Die Programmierung der Xilinx FPGA soll in der Hardware-
Programmiersprache VHDL durchgeführt werden. Zur Erzeugung von Testsignalen für
die Verifikation der Symboltaktsynchronisation unter Realtime-Bedingungen ist außer-
dem ein DVB-C Sender in einfacher Form in VHDL zu implementieren.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 4 von 87
Inhaltsverzeichnis
Verzeichnis verwendeter Abkürzungen .......................................................... 7
1 Einleitung................................................................................................. 9
1.1 Das DVB-C Projekt .........................................................................................9
1.2 Herangehensweise der Arbeit.........................................................................9
1.3 Abgrenzung der Kapitel ................................................................................10
2 DVB-C Empfänger von Atmel .............................................................. 11
2.1 Empfängerkonzept des AT76C651B ............................................................12 2.1.1 Analog-Digital Converter (ADC) ........................................................................................ 12 2.1.2 Direct Digital Syntheziser (DDS) ....................................................................................... 13 2.1.3 Analog Automatic Gain Control (AGC1)............................................................................ 13 2.1.4 Digital Timing Recovery .................................................................................................... 13 2.1.5 Nyquist Receive Filter ....................................................................................................... 13 2.1.6 Digital Automatic Gain Control (AGC2)............................................................................. 14 2.1.7 Equalizer............................................................................................................................ 14 2.1.8 Carrier Recovery ............................................................................................................... 14 2.1.9 Symbol Detection und De-mapping................................................................................... 14 2.1.10 Frame Synchronisation ..................................................................................................... 15 2.1.11 De-interleaver .................................................................................................................... 15 2.1.12 Read-Solomon Decoder.................................................................................................... 15 2.1.13 Spectrum Descrambler...................................................................................................... 15 2.1.14 PID Filter............................................................................................................................ 16
2.2 Frequenzspektrum der Signale.....................................................................16
3 Digital Video Broadcasting (DVB) ....................................................... 18
3.1 Digitale Quadratur-Amplitudenmodulation ....................................................19
3.2 Nyquistkriterien .............................................................................................22
3.3 Mehrträgersysteme.......................................................................................25
3.4 Einträgersysteme..........................................................................................27
3.5 Störeinflüsse auf dem Kabel .........................................................................28
4 Digitale Filter ......................................................................................... 29
4.1 Nichtrekursive Filter ......................................................................................30
4.2 Rekursive Filter.............................................................................................30
5 Symbol Timing Recovery ..................................................................... 32
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 5 von 87
5.1 Das Timingproblem.......................................................................................32
5.2 Timing-Synchronisation ................................................................................33
5.3 Timing Error Detection..................................................................................35 5.3.1 Gardner Algorithmus ......................................................................................................... 35 5.3.2 Early-Late Gate Algorithmus ............................................................................................. 37 5.3.3 Zero-Crossing Algorithmus................................................................................................ 38 5.3.4 Mueller und Müller Algorithmus......................................................................................... 40
5.4 Loop-Filter.....................................................................................................41
5.5 Numeric Controlled Oscillator .......................................................................43
5.6 Interpolation ..................................................................................................47 5.6.1 Interpolation mit Farrow-Struktur....................................................................................... 48 5.6.2 Interpolation mit Polyphasenfilter ...................................................................................... 51
5.7 Zwischenbilanz .............................................................................................52
6 Simulation mit Matlab/Simulink........................................................... 53
6.1 Das Grundkonzept........................................................................................53 6.1.1 Der Modulator.................................................................................................................... 53 6.1.2 Die Timing Recovery ......................................................................................................... 56
6.2 Simulationsergebnisse..................................................................................58
6.3 Teilzusammenfassung..................................................................................62
7 Hardware-Design .................................................................................. 63
7.1 Entwicklungsumgebung ISE .........................................................................63
7.2 Vereinfachtes Design....................................................................................64
7.3 Implementierung im FPGA............................................................................65 7.3.1 BPSK-Prozess................................................................................................................... 66 7.3.2 SRRC- Prozess ................................................................................................................. 66 7.3.3 Farrow- Prozess ................................................................................................................ 67 7.3.4 TED- Prozess .................................................................................................................... 67 7.3.5 Loop-Filter-Prozess ........................................................................................................... 68 7.3.6 NCO- Prozess ................................................................................................................... 68 7.3.7 Validierung mit ModelSim.................................................................................................. 70
7.4 Das CHIPit-Board .........................................................................................71 7.4.1 Test des statischen Verhaltens ......................................................................................... 73 7.4.2 Test des dynamischen Verhaltens .................................................................................... 74
8 Schlussbetrachtungen ......................................................................... 78
8.1 Zusammenfassung .......................................................................................78
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 6 von 87
8.2 Ausblick ........................................................................................................79
Bilderverzeichnis............................................................................................. 80
Tabellenverzeichnis......................................................................................... 82
Literaturverzeichnis......................................................................................... 83
Anhang ............................................................................................................. 87
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 7 von 87
Verzeichnis verwendeter Abkürzungen ADC Analog-Digital Converter
AGC Automatic Gain Control
AWGN Additive White Gaussian Noise
BPSK Binary Phase Shift Keying
CLB Configurable Logic Block
DAC Digital-Analog Converter
DCM Digital Clock Manager
DD Decision-directed
DDS Direct Digital Syntheziser
DVB Digital Video Broadcating
FEC Forward Error Correction
FIR Finite Impulse Response
FPGA Field Programmable Gate Array
I2C Inter-Inegrated Circuit
IAF Institut für angewandte Funksystemtechnik
IC Inegrated Circuit
IF Intermediate Frequency
IIR Infinite Impulse Response
IO Input-Output
IP Intellectual Property
ISE Integrated Software Environment
ISI Intersymbol-Interferenz
IQ Inphase-Quadraturkomponente
JTAG Joint Test Action Group
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 8 von 87
LSB Least Significant Bit
MPEG Moving Picture Experts Group
MSB Most Significant Bit
NCO Numeric Controlled Oscillator
NRZ Non-Return-to-Zero
OFDM Orthogonal Frequency Division and Multiplexing
PID Programm Identifier
PLL Phase Locked Loop
ppm part per million
PWM Pulsweitenmodulation
QAM Quadratur-Amplitudenmodulation
QPSK Quadrature Phase Shift Keying
SER Symbol Error Rate
SRRC Sqare-Root Raised Cosine
TED Timing Error Detector
TS Transport Stream
VCO Voltage Controlled Oscillator
VHDL Very High Speed Integrated Circuit Hardware Description
Language
ZF Zwischenfrequenz
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 9 von 87
1 Einleitung
Die vorliegende Arbeit wurde im Institut für angewandte Funksystemtechnik GmbH
(IAF) in Braunschweig durchgeführt. Diese Firma beschäftigt sich mit der Konzeption
und Entwicklung innovativer Funkübertragungssysteme mit dem Schwerpunkt der
Übertragung hoher Datenraten über Funk in den Bereichen Mobile Kommunikation
und Digital Broadcasting.
1.1 Das DVB-C Projekt Die Firma KWS-Electronic GmbH (Hersteller der Messgeräte für Digital Video Broad-
cating) verwendete bisher Decoder ICs, die über Schnittstellen für Messausgabe ver-
fügen. Doch Aufgrund der Kostenreduzierung von Seiten des Chipherstellers, ist es
absehbar, dass diese Messanschlüsse irgendwann nicht mehr zu Verfügung stehen.
Um unabhängig zu bleiben, war es geplant die Signaldekodierung in Form eines IP
Cores selbst zu entwickeln. Daraus entstand das Projekt „Realisierung eines DVB-C
Messempfängers in FPGA“.
Der Inhalt dieser Arbeit basiert auf der Konzeption und Entwicklung einer Symboltakt-
synchronisation für das DVB-C Projekt auf der Grundlage des DVB-C Decoder IC von
Atmel.
1.2 Herangehensweise der Arbeit Die folgenden Punkte schildern die Herangehensweise der Arbeit. Bei der Beschrei-
bung werden überwiegend die englischsprachigen Originalbezeichnungen verwendet.
1. Einarbeiten in das Empfängerkonzept von Atmel und den Europäischen Stan-
dard EN 300 429 für DVB Kabelsysteme.
2. Beschreiben theoretischer Aspekte bei der Übertragung von DVB-Signalen.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 10 von 87
3. Recherche über Algorithmen zu Symboltaktsynchronisation (Symbol Timing
Recovery) in digitalen Empfängern.
4. Einarbeiten in das Simulationsprogramm Matlab/Simulink.
5. Konzeption und Simulierung der Timing Recovery mit Matlab/Simulink.
6. Implementierung und Validierung des VHDL-Designs.
7. Inbetriebnahme mit dem CHIPit-Board.
1.3 Abgrenzung der Kapitel Zur Einführung liefert Kapitel 1 einen Überblick über die Aufgabenstellung und Zielset-
zung dieser Arbeit.
Im Kapitel 2 wird das bisherige Konzept des DVB-C Empfängers von Atmel vorgestellt
und dessen Funktion beschrieben. Dem folgt eine Betrachtung des Signalspektrums.
Digitale Modulationsverfahren mit dem Schwerpunkt Quadratur-Amplitudenmodulation
(QAM) und dem Nyquistkriterium werden in Kapitel 3 behandelt.
Kapitel 4 enthält eine kurze Einführung in digitale Filter.
Kapitel 5 beschreibt die Notwendigkeit einer Timing Recovery und stellt das analoge
und digitale Verfahren gegenüber. Weiterhin werden Algorithmen für eine digitale
Synchronisation vorgestellt.
Mit dem Wissen aus Kapitel 5 wird in Kapitel 6 ein Grundkonzept der Timing Recovery
aufgestellt und mit Matlab/Simulink simuliert. Die erzielten Simulationsergebnisse wer-
den hier ebenfalls vorgestellt.
Das Kapitel 7 beschäftigt sich mit der Implementierung der Timing Recovery in ein
FPGA und mit der Inbetriebnahme des Designs mit dem CHIPit-Board.
Kapitel 8 gibt schließlich einen Überblick über den Inhalt und die Ergebnisse dieser
Arbeit.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 11 von 87
2 DVB-C Empfänger von Atmel
Bislang wird zur Demodulation des DVB-C Signals der integrierte Empfänger von At-
mel AT76C651B verwendet. Nach der Kanaltrennung mit dem IF Tuner TDA 6190T,
wird das selektierte Frequenzband mit der Zwischenfrequenz ZF2 auf den Eingang
des Demodulator-Bausteins geführt (siehe Bild 2.1). Nach der Digitalisierung und der
Umsetzung ins Basisband durchläuft das Quadratur-Amplituden-Modulierte Signal
eine Anzahl von Prozessen, die im Folgenden kurz erläutert werden. Am Ausgang des
Empfängers steht ein acht Bit breiter Datenbus im MPEG2-Format zur Verfügung. Der
Atmel-Baustein unterstützt 16, 32, 64, 128, 256, 1024 QAM und QPSK Demodulatio-
nen.
ZF2Mittenfrequenz
= 4,57 MHz
CLK
OSC
RESET I2C
DVB-C DemodulatorAT76C651B
DVB IF TunerTDA 6190T
ZF_AGC
DATA_OUT (8)
Bild 2.1: DVB-Tuner und Demodulator mit Schnittstellen
Auflistung relevanter Schnittstellensignale nach [1]:
ZF2: analoges Eingangssignal, Mittenfrequenz ca. 4,57 MHz
ZF_AGC: PWM Signal zur Regelung des analogen AGC Eingangs des IF Tuners
CLK: Taktsignal für die digitale Basisbandverarbeitung
RESET: Reset Signal für die digitale Basisbandsignalverarbeitung
I2C: Control-Interface zum Schreiben und Lesen interner Kontrollregister
DATA_OUT: Datenbus (8 Bit), entweder TS parallel, TS seriell oder IQ-Daten
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 12 von 87
2.1 Empfängerkonzept des AT76C651B Das Blockschaltbild aus dem Bild 2.2 soll die interne Struktur des AT76C651B ver-
deutlichen. In den folgenden Abschnitten sollen die Funktionen einzelner Blöcke nach
der Atmel Spezifikation [2] kurz erläutert werden.
DVB-C Demodulator AT76C651B
CLK
OSC
RESET I2C
ADCDDS/
IQDemod
TimingRecovery
NyquistFilter
AGC2Digital
EqualizerLE/DFE
CarrierRecovery
SymbolDetectionDemap.
FrameSynchr
Deinter-leaver
Reed-Solomon-Decoder
SpectrumDescram.
PIDFiltering
AGC1Analog
Control
MUX
IQDATA
ZF2
ZF_AGC
DATA_OUT(8)
Bild 2.2: Die innere Struktur des AT76C651B
2.1.1 Analog-Digital Converter (ADC)
Der Analog-Digital-Wandler tastet mit einer Auflösung von 10-Bit das analoge Zwi-
schenfrequenzsignal ZF2 mit der Abtastfrequenz von 32 MHz ab. Die maximale Band-
breite des übertragenen Signals beträgt nach dem europäischen Standard 7,96 MHz
[3]. Die Mittenfrequenz der ZF2 ist von dem verwendeten Tuner abhängig und liegt für
diese Anwendung bei 4,57 MHz.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 13 von 87
2.1.2 Direct Digital Syntheziser (DDS)
Hier erfolgt eine Zerlegung des Empfangssignals nach Real- und Imaginärteil. Dazu
wird eine feste sinus- und kosinusförmige Trägerschwingung von 4,57 MHz erzeugt
und mit der ZF2 multipliziert. Die Produkte liefern die Inphase- und Quadraturkompo-
nente (I/Q) des Basisbandsignals. Eine feine Korrektur der Frequenz der Träger-
schwingung übernimmt dann der Carrier Recovery Block.
2.1.3 Analog Automatic Gain Control (AGC1)
Die AGC1 Regelung bewertet die Leistung am Ausgang des Analog-Digital Wandlers,
vergleicht sie mit einem Sollwert und erzeugt ein Puls-Weiten-moduliertes Signal
ZF_AGC, das die analoge Verstärkung im Tuner regelt. Da es neben dem abgetaste-
ten Nutzsignal ein Übersprechen aus den Nachbarkanälen gibt, sorgt die analoge
Verstärkung dafür, dass es nicht zu einer Übersteuerung in der AGC-Schleife kommt.
2.1.4 Digital Timing Recovery
Der digitale Timing Recovery Block ist für eine Abschätzung der optimalen Abtastzeit
zuständig und wird digital in Form einer Regelschleife realisiert. Nach dem Abtasten
des Signals mit einem festen Takt, erfolgt die Korrektur der Abtastphase nach einem
Interpolationsverfahren1. Der DVB-C Standard sieht die niedrigste Rate bei 1,74
MBaud und die höchste bei 6,92 MBaud vor. Ein Timingausgleich ist bis zu 4000 ppm
(parts per million) der Symbolrate gewährleistet.
2.1.5 Nyquist Receive Filter Zur Unterdrückung der benachbarten Kanäle wird ein Tiefpassfilter mit einer Square
Root Raised-cosine Charakteristik verwendet. Der Empfänger sieht einen Roll-Off
Faktor zwischen 0.11 und 0.4 vor.
1 Die Interpolationsmethode ist ein Verfahren, bei dem die Eingangssequenz mit einer Impulsantwort bewertet wird um eine Korrektur der Abtastphase bezüglich des optimalen Wertes zu errechnen.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 14 von 87
2.1.6 Digital Automatic Gain Control (AGC2)
Der digitale Verstärker passt den Signalpegel an den Eingang des Equalizers an und
hält ihn konstant. Im Vergleich zu AGC1 wird hier nur das gewünschte Empfangssig-
nal geregelt, da die Nachbarkanaleinflüsse von dem Nyquist Filter unterdrückt werden.
Auch hier wird die Leistung gemessen und auf einen Sollwert abgestimmt.
2.1.7 Equalizer
Unter Verwendung des Equalizers werden Kanalstöreinflüsse in Form von langen und
kurzen Echos auskompensiert. Der angewandte Algorithmus arbeitet adaptiv und oh-
ne jegliche Trainingssequenz. Bei diesem Verfahren wird die Impulsantwort des Ka-
nals ermittelt und danach die Filterkoeffizienten dimensioniert. Für die ausreichende
Entzerrung der langen und kurzen Echos, wird eine Filterlänge von 32 taps (Verzwei-
gungen) verwendet.
2.1.8 Carrier Recovery
Der Carrier Recovery Block erfasst den Frequenzoffset der Trägerschwingung und
korrigiert ihn bis zur einer Abweichung von 12% der Symbolrate. Ebenso wird die
Phase mit einem speziellen Algorithmus verglichen und korrigiert. Die Information mit
dem Frequenz- und Phasenfehler gelangt in den Demodulator (DDS) und sorgt vor
der Filterung für feine Abstimmung.
2.1.9 Symbol Detection und De-mapping
Der AT76C651B besitzt eine weitere Funktion die komplexen Symbole zurück in einen
Bitstrom umzuwandeln (De-mapping). Dazu wird die Quadraturinformation zunächst
differenziell dekodiert [1]. Nach der Gewinnung der beiden höchstwertigen Bits, wird
eine komplexe Ebene aufgespannt, aus der die übrigen Bits dekodiert werden.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 15 von 87
2.1.10 Frame Synchronisation
Des Weiteren muss eine Frame-Synchronisation nach MPEG-2 Paketstandard durch-
geführt werden um die ursprünglich gesendete Datenstruktur wiederherzustellen. Der
erzeugte Bitstrom wird auf Pakete mit einer Länge von 204 Bytes aufgeteilt. Zu Beginn
jeden Datenpakets wird ein Synchronisationsbyte (47 Hex) vorgeschaltet. Diese Auf-
gabe übernimmt die Forward Error Correction (FEC).
2.1.11 De-interleaver
Der Atmel Empfänger sieht für die Korrektur von Büschelfehlern einen De-interleaver
mit zwei De-interleaving-Tiefen 12 oder 17 vor. Die unter Umständen hintereinander
verfälschten Symbole werden in eine Matrix spaltenweise geschrieben und zeilenwei-
se ausgelesen, damit jeweils nur ein Symbolfehler pro Frame auftreten kann siehe [4].
Eine weitere Fehlerkorrektur erfolgt im Read-Solomon Decoder.
2.1.12 Read-Solomon Decoder
Nach dem De-interleaving gelangt das Signal auf den Read-Solomon Decoder. Mittels
übertragener Parität von der Länge 16 Bytes, können acht Bytes in einem MPEG-2
Paket (204,188) korrigiert und ihre Position angegeben werden.
2.1.13 Spectrum Descrambler
Um empfängerseitig eine sichere Taktrückgewinnung zu ermöglichen, muss das Leis-
tungsdichtespektrum des Signals möglichst gleichverteilt werden, sprich keine zu lan-
gen „0“ oder „1“ Folgen enthalten. Dazu werden im Sender die Bits im Transportpaket
nach dem Pseudo-Zufallsprinzip verwürfelt. Der Descrambler im Empfänger dagegen
macht die Verwürflung wieder rückgängig. Für die Synchronisation im Descrambler
erfolgt eine bitweise Invertierung im Synchronisationsbyte von 47 Hex nach B8 Hex.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 16 von 87
2.1.14 PID Filter
Der MPEG-2 Transportstrom wird schließlich durch den Programm Identifier (PID) ge-
filtert. Dieser Block erzeugt ein Freigabe-Signal für den Paketkopf, das angibt um wel-
che Informationsart es sich handelt. Es kann so zwischen Daten-, Musik- oder Video-
signalen selektiert werden. Der wesentliche Unterschied zwischen den Datenarten
besteht in der Kodierung zur Datenreduktion (Video, Audio oder Videotext) [4].
2.2 Frequenzspektrum der Signale
Nach bereits erfolgter Kanalselektion mischt der TDA 6190T Tuner das Frequenzband
auf die Mittenfrequenz ZF2 mit der maximalen Bandbreite von 7,96 MHz. Das analoge
Signal wird vierfach abgetastet und erzeugt ein digitales Spektrum, das aus dem Fre-
quenzband und aus Wiederholspektren )59,0(A +±⋅ BFn mit ),0[ ∞±∈n besteht. Ein
unendlich breites Spektrum ist die Folge, wobei hier nur der positive Frequenzbereich
technisch relevant ist. Zur Veranschaulichung soll das Bild 2.3 dienen.
ZF2=4,57 8,550,59 FA=32
4,57 8,550,59 23,45 31,41 32,59 40,55
B=7,96 MHzAnaloge Frequenzband
Abgetastetes digitales Spektrum
)( fU
)( fU
MHz/f
MHz/f
Bild 2.3 Analoges und digitales Frequenzspektrum
Des Weiteren wird das Signal aus dem ZF-Bereich ins komplexe Basisband (I/Q) ver-
lagert. Dazu wird es mit einer komplexen Schwingung multipliziert, die exakt auf der
Mittenfrequenz oszilliert. Es bilden sich zwei Seitenbänder mit einer originalen und
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 17 von 87
gespiegelten Lage um ZF2 herum. Der originale Anteil enthält die I/Q-Anteile und hat
eine Grenzfrequenz bei 3,98 MHz im positiven Frequenzbereich (Bild 2.4).
5,163,98 13,12
Komplexes Basisband (I/Q))( fU
MHz/f-3,98-5,16-13,12 original gespiegelt
Bild 2.4: Komplexes Basisbandsignal mit positiven und negativen Frequenzen
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 18 von 87
3 Digital Video Broadcasting (DVB)
Bei der heutigen Informationsübertragung gewinnt die Digitalisierung immer mehr die
Oberhand. Die Ausstrahlung von digitalisierten Bild-, Ton- und Datensignalen ist unter
dem Namen Digital Video Broadcasting (DVB) mittlerweile weit verbreitet. Im Sprach-
gebrauch ist oft die Rede vom „Digitalen Fernsehen oder Radio“, dabei ist es wichtig
zu erinnern, dass die Übertragung an sich nach wie vor unter Verwendung analoger
Trägersignale erfolgt. Der Begriff „Digital“ steht viel mehr für die Signalverarbeitung
unter Verwendung von digitalen Modulationsverfahren und umfasst die Abtastung,
Quantisierung, sowie Verschlüsselung und Kodierung [4].
Vorgesehene DVB-Standards ermöglichen die Übertragung über Satellit, Antenne
oder Kabel gemäß [5]. Sie unterscheiden sich hauptsächlich in den Modulationsver-
fahren. Für den jeweiligen Empfang sind Endgeräte mit eigenen Decoder-Techniken
erforderlich, die das digitale Signal demodulieren.
• DVB-S (Satellite) zur Übertragung über Satellit
• DVB-C (Cable) zur Übertragung auf dem Kabelnetz
• DVB-T (Terrestric) zur Übertragung auf Antennen
• DVB-H (Handhelds) zur Übertragung auf mobile Handgeräte
Die Motivation war es, durch Datenkompression nach dem MPEG-Verfahren (Moving
Picture Experts Group) mehr Fernsehprogramme auf der verfügbaren Frequenzband-
breite zu übertragen. Die Qualität hängt davon ab wie stark das Signal komprimiert
wird. Um große Datenmengen zu übertragen, werden Modulationsverfahren wie die
Quadratur-Amplitudenmodulation (QAM) verwendet. In den folgenden Unterkapiteln
sollen einige theoretische Gesichtspunkte, die später für die Praxis relevant sind, be-
leuchtet werden.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 19 von 87
3.1 Digitale Quadratur-Amplitudenmodulation
Um möglichst effizient einen Datenstrom auf einem Medium zu übertragen, werden
Modulationsarten genutzt, bei denen eine Parallelisierung stattfindet. Ein Demulti-
plexer teilt hierzu die serielle Bitfolge eines NRZ-Signals2 auf zwei parallele Pfade auf.
Dabei werden mehrere Bits zu einem komplexen Symbol bestehend aus { }SRe und
{ }SIm zusammengefasst. Abhängig davon wie viele Bits zu einem Symbol vereinigt
werden, vergrößert sich das Verhältnis der Symboldauer ST zur der Bitdauer BT pro-
portional und somit die Datenrate [4]. Im Bild 3.1 ist das verdeutlicht.
Die Einheit für die Datenübertragungsrate eines binären Signals wird in Bit/s gemes-
sen und gibt an wie viele Datenbits pro Zeit gesendet werden. Nach dem Demultiple-
xing gehören nun mehrere Bits einem Symbol an. Die zweckmäßige Bezeichnung für
das komplexe Signal ist deshalb die Symbol- oder Baudrate. Sie gibt an wie viele
Symbole pro Sekunde übertragen werden (Baud).
0 1 0 10 0
0 0 1
1 0 0
t
t
t
)(tNRZ
)Re(S
)Im(S
BT
ST
Bild 3.1: Parallelisierung von Bits auf Symbole
2 NRZ-Signal (Non-Return-to-Zero): Physikalische Bezeichnung für digitales Signal im Basisband, das nicht in regelmäßigen Abständen auf Nullpotential zurückfällt. Die Null- und Einsbits werden meist durch positives und negatives Potential gebildet [6].
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 20 von 87
Für eine Qaudratur-Amplitudenmodulation werden die komplexen Symbole mit kosi-
nus- und sinusförmigen Trägerschwingungen gleicher Frequenz multipliziert (siehe
Bild 3.2). Der Realteil { }SRe bildet multipliziert mit dem Kosinus die Inphasekompo-
nente I während der Imaginärteil { }SIm multipliziert mit dem Sinus die Quadratur-
komponente Q erzeugt. Nach der Addition steht ein Bandpasssignal zur Verfügung
dessen Mittenfrequenz gleich der Trägerfrequenz ist. Die komplexe Multiplikation er-
gibt:
)sin()](Im[)cos()]([])([)(
ttSttSReetSRetQAM tj
TT
T
ωω
ω
⋅−⋅=⋅= −
(1)
DEMUX 90°
)Re(S
)Im(S
I
Q
)2cos( ftπ
)(tNRZ )(tQAM
Bild 3.2: Blockschaltbild eines Quadratur-Amplitudenmodulators
Den Symbolen lassen sich aus der Anzahl der m Bits unterschiedliche Amplituden-
und Phasenwerte zuordnen, mit denen Punkte in einer komplexen Ebene I/Q abgebil-
det werden (Bild 3.3). Bei dem 4-QAM-Verfahren oder dem QPSK-Verfahren (Quadra-
ture Phase Shift Keying) werden pro Symbol beziehungsweise Punkt zwei Bits über-
tragen. Bei einer 64-QAM sechs Bits und so weiter.
Da empfangsseitig das Trägersignal unterdrückt vorliegt, lässt sich die Referenzphase
nur bis auf eine Unsicherheit von °⋅90n wiedergewinnen. Aus diesem Grund werden
nur die Bits, die den Quadranten bestimmen, bei einer 16-QAM und 64-QAM differen-
tiell kodiert. Zwei vorgesehene MSBs (Most Significant Bit) geben bezogen auf den
ersten Quadranten die Rotationsdrehung im mathematisch positiven Sinn an. Tabelle
3.1 zeigt die Position der Quadranten in Abhängigkeit der MSBs an. Anschließend
werden dann die LSBs (Least Significant Bit) kodiert.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 21 von 87
Tabelle 3.1: Differenzielle Kodierung der Symbole Quadrant MSBs LSBs
1 00 0° 2 10 90° 3 11 180° 4 01 270°
Die Bitkodierung innerhalb eines Quadranten erfolgt nach Gray. Das bedeutet, dass
die Nachbarsymbole sich nur in einer Bitstelle unterscheiden und eine Vermeidung
von schwer korrigierbaren Büschelfehlern garantiert wird (siehe Bild 3.3). Kritisch wird
es dann, wenn die Bitkombination sich in Bezug auf den benachbarten Quadranten
verfälscht. Es können dann bei einer 16-QAM drei Bitfehler und bei einer 64-QAM fünf
Bitfehler pro Symbol auftreten. Aus Gründen der differenziellen Kodierung lässt sich
das nicht verhindern. Bei höheren Standards wie der 256-QAM werden nicht normierte
Algorithmen verwendet um dennoch zwischen den Quadranten nach Gray zu kodie-
ren. Ein Maß für die Fehlübertragung ist die Symbolfehlerwahrscheinlichkeit „Symbol
Error Rate (SER)“. Sie gibt an, mit welcher Wahrscheinlichkeit ein gesendetes Symbol
im Empfänger fehlerhaft ankommt.
I
Q
01
0010
11
4-QAM
I
Q
16-QAM
0010 0011
0000 0001
1011 1001
1010 1000
1101 1100
1111 1110
0100 0110
0101 0111
Bild 3.3: Konstellationsdiagramm einer 4-QAM links und einer 16-QAM rechts
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 22 von 87
3.2 Nyquistkriterien
Ein weiterer Bestandteil der Modulation ist die Begrenzung der Frequenzbandbreite.
Das soll nun unter Aspekten der Signal- und Systemtheorie betrachtet werden.
Die rechteckförmige Struktur des NRZ-Signal besitzt nach [4] im Zeitbereich eine un-
endlich steile Signalflanke. Die Transformation der Impulsform in den Frequenz-
bereich ergibt ein unendlich breites Leistungsdichtespektrum mit einem si2-förmigen
Verlauf, das bei einer Übertragung auf dem Kanal unerwünscht ist. Anhand eines
Tiefpassfilters wird das Leistungsdichtespektrum bandbegrenzt. Die Unterdrückung
der hochfrequenten Signalanteile, zieht im Zeitbereich eine Verbreiterung der Impulse
nach sich. Es findet ein Übersprechen zwischen einzelnen Symbolen statt, was als
Intersymbol-Interferenz (ISI) bezeichnet wird. Nach der ersten Nyquistbedingung er-
folgt eine ideale Bandbegrenzung bei der halben Symbolfrequenz, wobei die Grenz-
frequenz als Nyquistfrequenz Nf angegeben wird. Die Signalverläufe stellen sich
spannungsmäßig betrachtet auf si-förmige Grundimpulse ein. Die erste Nyquistbedin-
gung ist dann erfüllt, wenn zu den Abtastzeitpunkten BnT keine ISI vorkommt. Das ist
in dem Zeitpunkt der Fall, in dem die Symbolamplitude den höchsten Amplitudenwert
annimmt und die benachbarten si-förmigen Impulsverläufe gerade ihre Nullstelle
durchlaufen siehe Bild 3.4. BT steht dabei für die Periodendauer des NRZ-Signals.
BT/t
A
BT/t
A
0
0
1−n
1−n 1+n
1+nn
n
Bild 3.4: Das NRZ-Signal vor der Filterung (oben) und die interferenzfreien Symbole nach der Filterung unter ersten Nyquistbedingung (unten)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 23 von 87
In der Praxis kann oftmals wegen Rauschüberlagerung und Fehlereinflüssen der ex-
akte Abtastpunkt nicht ermittelt werden, demzufolge gibt es immer Störungen durch
überlagerte Nachbarimpulse. Nach der zweiten Nyquistbedingung wird laut Formel (2)
eine cos-förmige Filterflanke )( fH verwendet, die eine ISI auf beide zeitlich benach-
barten Impulse reduziert. Der Filter trägt im englischen die Bezeichnung „Sqare-Root
Raised Cosine Filter“.
)1(0)(
)1()1(2
sin21
21)(
)1(1)(
rfffH
rffrfr
fff
fH
rfffH
+>=
+≤≤−⎪⎭
⎪⎬⎫
⎪⎩
⎪⎨⎧
⎥⎦
⎤⎢⎣
⎡ −
⋅⋅+=
−<=
N
NNN
N
N
für
für
für
π (2)
SymbolrateSS
SN === :
221 R
RT
f
Mit dem Roll-Off-Faktor r lassen sich die Filterflankensteilheit und damit die Kanal-
bandbreite variieren. Der Faktor kann dabei den Wert zwischen 10 ≤≤ r annehmen.
Der Anspruch an die zweite Nyquistbedingung ist, dass die Amplitudenwerte in der
Mitte zwischen den Abtastzeiten die halbe Grundimpulsamplitude aufweisen müssen.
Das gilt nur dann, wenn der Filter auf die doppelte der Nyquistbandbreite Nf2 einge-
stellt ist ( 1=r ). Durch die Verminderung des Roll-Off-Faktors wird einerseits die zwei-
te Nyquistbedingung verletzt, andererseits aber eine Einsparung in der Bandbreite
erzielt. Je nach Übertragungsart muss ein Kompromiss hinsichtlich des Frequenz-
spektrums gefunden werden3 (siehe Bild 3.6).
Die Abtastqualität eines Symbols bezogen auf die Nachbarsymbole lässt sich in einem
so genannten Augendiagramm darstellen. Die Augenöffnung bildet nach [7] mit dem
vertikalen Anteil die Amplitude und in horizontale Richtung den Abtastzeitpunkt (siehe
Bild 3.5). Bei optimaler Abtastung bekommt das Auge seine maximale Größe. Die Be-
urteilung des Augendiagramms ist pauschal und gibt keine Auskunft über mögliche
Fehler. Bei höheren Modulationstypen können mehrere Amplitudenstufen und somit
mehr Augenöffnungen dargestellt werden [4].
3 Der DVB-C Standard sieht eine Filterung der I und Q Signale mit einem Roll-Off-Faktor von 0,15 vor.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 24 von 87
Signal
Takt
Oszilloskop
Bild 3.5: Messanordnung für die Darstellung des Augendiagramms
Die Übertragungsfunktionen mit dazugehörigen Augendiagrammen sind abhängig von
dem Roll-Off-Faktor im Bild 3.6 illustriert.
t/TB
t/TB
t/TB
Bild 3.6: Übertragungsfunktionen und die zugehörige Augendiagramme bei einem Roll-Off-Faktor von r=1 (Oben), r=0,35 (Mitte) und r= 0,15 (Unten) [7]
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 25 von 87
Ein vollständiges Übertragungssystem besteht letztendlich aus zwei Teilfiltern. Der
erste Teilfilter ist im Sender für die Signalformung und Bandbegrenzung wie oben be-
schrieben vorgesehen. Der zweite Teilfilter befindet sich im Empfänger und hat au-
ßerdem noch die Aufgabe, die auf dem Kanal überlagerte Rauschleistung zu unter-
drücken. Ein additives weißes gaußförmiges Rauschen „Additive White Gaussian Noi-
se (AWGN)“ trägt zur Bildung von Störamplituden auf dem Datensignal bei und er-
schwert die Demodulation. Der empfängerseitige Filter, auch „Matched Filter“ genannt,
hebt das Signal-Rauschverhältnis „Signal/Noise ( NS / )“ auf einen angemessenen Pe-
gel an.
3.3 Mehrträgersysteme Mittels DVB-T gelangt das „Digitale Fernsehen“ über Antenne an den Anwender. Im
Unterschied zu der Kabel- oder Satellitentechnik kommt es auf dieser Funkstrecke zu
einem unerwünschten Effekt, der Mehrwegausbreitung. Neben dem direkt gesendeten
Signal erreichen auch die von Gebäuden oder Bergen reflektierten Anteile den Emp-
fänger. Aufgrund unterschiedlicher Laufzeiten bei den Frequenzen, stellen sich Pha-
senverschiebungen ein und es kommt zu störenden Überlagerungen. Diese Störung
wirkt sich in der Form von Intersymbol-Interferenz aus (im Bild 3.7 rot dargestellt) und
kann mit sehr aufwändigen Filtern korrigiert werden.
Bild 3.7: Intersymbol-Interferenz aufgrund der Mehrwegausbreitung [8]
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 26 von 87
Eine effizientere Methode die Intersymbol-Interferenz zu verhindern, ist das Verlän-
gern der Symboldauer. Um im Zeitbereich eine Verbreiterung zu erzielen muss im
Frequenzbereich eine Kompression erfolgen und das geschieht am besten mit einem
Mehrträger-Verfahren (Bild 3.8) bei dem die Symbole auf eine Vielzahl von Subträgern
aufmoduliert werden.
Zuerst findet eine Seriell-Parallel-Umsetzung nach dem gewöhnlichen QAM-Verfahren
statt. Danach werden den Symbolen feste Subträgerfrequenzen zugewiesen die or-
thogonal4 und im festen Abstand zueinander stehen. Es können so mehrere Tausend
Symbole parallel in einem Frequenzband übertragen werden. Diese spezielle Art von
Modulation trägt den Namen OFDM (Orthogonal Frequency Division and Multiplexing)
[4].
Vielträger
Hz/f
)( fU
Bild 3.8: Spektrum eines Mehrträgersystems
Eine weitere Verbesserung gegen ISI ist das Einfügen eines Guard-Intervalls (Schutz-
intervall). Hierbei erfolgt eine periodische Verlängerung des Sendesignals, indem ein
Symbol, das so lang ist wie die maximale Echolaufzeit als Präfix dem Nutzsymbol vor-
gestellt wird [9]. Die grüne Fläche zeigt eine Überlagerung zwei gleicher Symbole, die
nicht so kritisch ist wie eine ISI. Im Bild 3.9 ist eine Mehrträger-Übertragung mit dem
Guard-Intervall dargestellt.
4 Orthogonal bedeutet hier, dass die Frequenzen der Subträgersignale ein ganzzahliges vielfaches von der Grund-frequenz Symbol0 Tf /1= aufweisen [4].
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 27 von 87
Bild 3.9: Mehrträger-Übertragung mit Guard-Intervall [8]
3.4 Einträgersysteme Bei dem Einträgersystem handelt es sich um eine Modulationsart, bei dem die Signal-
folge nur einem Träger auf der ganzen verfügbaren Frequenzbandbreite aufmoduliert
wird. Im Gegensatz zur OFDM werden die Symbole seriell aber mit der schnelleren
Symbolrate versendet. Dieses Verfahren wird bei DVB-C und bei der DVB-S Technik
angewendet. Der wesentliche Vorteil des Einträgerverfahrens liegt in dem einfachen
Aufbau bei den Sende- und Empfangsfiltern [10]. Bild 3.10 zeigt das Spektrum des
Einträgersystems.
Einträger
Hz/f
)( fU
Bild 3.10: Spektrum eines Einträgersystems
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 28 von 87
3.5 Störeinflüsse auf dem Kabel
Neben den Störungen die durch den ungünstigen Abtastzeitpunk des DVB-C Signals
entstehen, gibt es noch statistische Störeinflüsse, die sich in Form von additiven oder
multiplikativen Überlagerungen im Konstellationsdiagramm bemerkbar machen. Unter
[11] werden für DVB-C mögliche Störungen wie Rauschen, Intermodulationen und
Reflexionen vorgestellt.
Wie bei jedem realen Empfänger wird das Nutzsignal additiv vom gaußfömigen Ra-
schen überlagert. Hinzu kommen Phasenrauschen, die sich durch Intermodulations-
produkte einstellen und so für Störungen in den äußeren Konstellationspunkten sor-
gen. Als Intermodulation wird eine harmonische Verzerrung bezeichnet die aufgrund
„unerwünschter“ Summen- und Differenzfrequenzen gebildet wird [12].
Reflexionen am Leitungsende kommen dann zustande, wenn der Wellenwiderstand
der Leitung ungleich dem Abschlusswiderstand des Empfängers ist. Das eintreffende
Signal wird vom Empfänger nicht vollständig absorbiert und kehrt wieder auf die Lei-
tung zurück. Durch Mehrfachreflexionen an Schnittstellen und Kabelenden kann es zu
Intersymbol-Interferenz kommen.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 29 von 87
4 Digitale Filter
Um die Digitale Timing Recovery zu verstehen, soll die folgende Exkursion dazu die-
nen einige Grundlagen der digitalen Filter zu erklären.
In digitalen Systemen werden Signale nicht wie gewohnt „kontinuierlich“ sondern dis-
kret verarbeitet und dargestellt. Unter Verwendung digitaler Filter können sie für die
unterschiedlichsten Aufgabengebiete bearbeitet werden. Dazu zählen zum Beispiel
Frequenzselektionen, Entzerrungen oder Verformung der Signale. Die Grundbaustei-
ne der digitalen Filter enthalten nur die Grundrechenarten Addition und Subtraktion,
Multiplikation mit konstanten Koeffizienten und Speicherung in Form der Verzögerung
um ein oder mehrere Abtastintervalle (Bild 4.1).
Addition und Subtraktion mehrerer Signale
+)(2 nx
)(1 nx
)()()( 21 nxnxny +=
Multiplikation mit konstanten Koeffizienten
)(ny)(nx ib)()( nxbny i ⋅=
Verzögerung um ein Abtastintervall
Z-1)(nx )(ny
)(ny
)1()( −= nxny
Bild 4.1: Elemente linearer digitaler Filter
Mit dem Eingangssignal )(nx und den konstanten Filterkoeffizienten lässt sich eine
lineare Differenzengleichung aufstellen, aus der sich das Ausgangssignal )(ny be-
rechnet. Die Koeffizienten entsprechen den Werten der Impulsantwort )(nh am Aus-
gang nach dem Anlegen eines Dirac-Impulses am Eingang des Filters. Weiterhin wird
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 30 von 87
mittels der z-Transformation auf eine Systemfunktion geschlossen, die das zeitdiskre-
te Äquivalent zur Laplacetransformation für zeitkontinuierliche Signale beschreibt.
Vergleiche hierzu [13].
(z)X(z)H(z)Y
nxnhny
⋅=
⇓
∗=
:ktionSystemsfun
tionTransforma-z
:nleichungDifferenze )()()(
4.1 Nichtrekursive Filter
Ein nichtrekursiver Filter hat eine endliche Impulsantwort (FIR: Finite Impulse Respon-
se) und ist immer stabil. Die einfachste Form eines FIR-Filters mit zwei Koeffizienten,
einem Addierer und einem Verzögerungsblock ist im Bild 4.2 aufgezeichnet.
Z-1
b0
Differenzengleichung:)(nx
+
b1
)(ny
)1( −nx
)1()()( 10 −⋅+⋅= nxbnxbny
Systemfunktion:
110)(
)()( −⋅+== zbbzXzYzH
Bild 4.2: Strukturalisierung eines FIR-Filters
4.2 Rekursive Filter
Rekursive Filter sind rückwirkende Systeme und können eine unendliche Impulsant-
wort aufweisen (IIR: Infinite Impulse Response). Sie sind auf ihre Stabilität zu prüfen.
Im Bild 4.3 ist die einfachste Form eines IIR-Filters dargestellt.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 31 von 87
Z-1
Differenzengleichung:
+
b
)(ny
)1( −ny
)()1()( nxnybny +−⋅=
111
)()()( −⋅−==
zbzXzYzH
)(nx
)1( −⋅ nyb
Systemfunktion:
Bild 4.3: Strukturrealisierung eines IIR-Filters
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 32 von 87
5 Symbol Timing Recovery In diesem Kapitel werden die wesentlichen Inhalte und Funktionsweisen der Symbol
Timing Recovery behandelt. Sie ist ein wichtiger Bestandteil der Synchronisations-
technik in modernen Empfängergeräten und enthält eine Reihe von Verfahren die im
Folgenden vorgestellt werden. Neben dem Ziel, die Timing Recovery digital zu reali-
sieren, besteht der Wunsch möglichst einfache Algorithmen herauszusuchen um Ein-
sparung der Logikressourcen im digitalen Baustein vorzunehmen.
5.1 Das Timingproblem
Das Timingproblem soll anhand eines Beispiels verdeutlicht werden. Im Bild 5.1 stellt
der hellere Verlauf das original gesendete Signal dar, bei dem der Takt im festen Ab-
stand kT auf die höchste und damit rauschärmste Symbolamplitude abgestimmt ist.
( k ist eine ganze Zahl für die Aufzählung der Symbole). Der Empfänger rechnet zu
jedem Zeitpunkt kT mit einem neuen Symbol in voller Aussteuerung. Doch aufgrund
der entkoppelten Taktfrequenzen des Senders und Empfängers stellt sich ein Timing-
fehler kτ+kT ein und die ursprüngliche Zuordnung des Taktes zu den Symbolen ist
nicht mehr gewährleistet [14]. Der dunkle Verlauf soll das symbolisieren. Der Timing-
fehler lässt sich aus der willkürlichen Variation der Phase und Frequenz des Emp-
fangssignals ableiten.
Bild 5.1: In Phase und Frequenz verzerrte Symbolfolge [14]
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 33 von 87
5.2 Timing-Synchronisation
Die Aufgabe der Timing Recovery besteht darin, den Empfänger auf die empfangenen
Symbole einzusynchronisieren. Zu der klassischen Methoden der Synchronisation
zählt die Mitführung einer separaten Taktleitung. Doch in der Praxis ist sie meist nicht
gegeben, sodass auf andere Verfahren zurückgegriffen werden muss [15]. Eine ande-
re Vorgehensweise ist, den Takt mit dem Symbolstrom zu transportieren. Ein aufwän-
diger Schmalbandfilter wäre nötig um die gewünschte Frequenz herauszufiltern. Die-
ses Verfahren hat zudem Nachteile, dass der mitgesendete Takt viel Bandbreite und
Übertragungsleistung für sich selbst beansprucht und die dadurch vorgesehene Kapa-
zität für die Daten verloren geht.
Zu den moderneren Methoden zählt das „Decision-directed (DD)“ Verfahren. Es han-
delt es sich um eine Timing-Synchronisation, bei der der Empfänger aus den Symbol-
daten heraus eine Entscheidung über das korrekte Timing trifft [16]. Nach der Abtas-
tung bewertet und korrigiert eine Timing Recovery Regelschleife die Phasenabwei-
chung des Empfangssignals. Aus dieser Bewertung heraus lässt sich der Symboltakt
reproduzieren.
Eine Realisierung der Decision-directed Timing Recovery kann sowohl analog als
auch digital erfolgen. In beiden Fällen muss das analoge Signal zunächst für die Wei-
terverarbeitung mit einem Analog-Digital-Wandler abgetastet und mit einem Matched
Filter gefiltert werden. Bei der analogen Variante geschieht nach digitaler Fehlerermitt-
lung eine erneute Umsetzung ins Analoge. Ein spannungsgesteuerter Frequenzgene-
rator (Voltage Controlled Oscillator) erzeugt aus dem Fehlersignal den gewünschten
Abtasttakt (siehe Bild 5.2). Dieser synchrone Abtasttakt hat den Vorteil hat, dass der
Symbol- und der Abtasttakt im ganzzahligen Verhältnis zu einander stehen. Allerdings
wird dafür ein teurer VCO benötigt.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 34 von 87
TimigError Detector
DigitalAnalog
Converter
VoltageControlledOszillator
ADC
Timing Error
ControlSignal
MatchedFilter
)(tr )(kTy)(nTr
LoopFilter
Bild 5.2: Prinzip der analogen Timing-Synchronisation
Bei der vollständig digitalen Timing-Synchronisation wird ein fester und zum Takt des
Senders asynchroner Abtasttakt verwendet. Hier wird die Phase der Abtastwerte hin-
sichtlich des optimalen Abtastzeitpunktes ermittelt und im Nachhinein korrigiert (ma-
ximale Augenöffnung) siehe Bild 5.3. Der bestmögliche Abtastzeitpunkt zeichnet sich
durch den höchsten Symbolpegel aus an dem das Signal-Rauschverhältnis am größ-
ten ist { }kτ+kT . Das analoge Eingangssignal wird so abgetastet, dass ausreichend
viele Stützstellen vorhanden sind (oversampling). Nach dem im Kapitel 5.3.3 be-
schriebenen Algorithmus wird der Timingfehler ermittelt und auf ein Loop-Filter zum
Ausregeln des Phasen- und Frequenzfehler gegeben. Aus dem gefilterten Signal ge-
neriert der Numeric Controlled Oszillator (NCO) ein Kontrollsignal, das für die Korrek-
tur der Phasenlage im Interpolator benötigt wird. Anschließend erfolgt im Interpolator
eine Berechnung des optimalen Abtastzeitpunktes im Amplitudenmaximum. Auf die
Funktion einzelner Komponenten soll später eingegangen werden.
ADC
TimigError Detector
LoopFilter
NumericControlledOszillator
CLKTimingError
Control Signal
InterpolatorMatchedFilter
)(nTr)(tr )(mTx )(kTy
Bild 5.3: Prinzip der digitalen Timing-Synchronisation
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 35 von 87
Der Vorteil in der digitalen Variante liegt darin, dass die komplette Regelschleife in
einem Baustein implementiert werden kann und eine Änderung hinsichtlich der Daten-
rate jederzeit möglich ist. Außerdem haben digitale Bauteile im Gegensatz zu analo-
gen eine bessere Langzeitstabilität. Durch das asynchrone Abtasten entsteht jedoch
kein ganzzahliges Verhältnis vom Symbol- und Abtasttakt. Unter [17] sind einige Me-
thoden beschrieben, wie überschüssige Abtastwerte übersprungen oder fehlende auf-
gefüllt werden können.
5.3 Timing Error Detection Für die Regelung der Abtastphase muss zunächst eine Fehlerbewertung bezogen auf
den optimalen Abtastpunkt getroffen werden. Dazu wurden Verfahren entwickelt, die
anhand der vorliegenden Abtastwerte ein Fehlersignal erzeugen, das angibt in welche
Richtung und Betrag die Abtastphase korrigiert werden muss. In den folgenden Ab-
schnitten sollen einige TED-Algorithmen vorgestellt werden.
5.3.1 Gardner Algorithmus
Die Timing-Bewertung nach Gardner [18] arbeitet nur mit zwei Abtastwerten pro Sym-
bol und bedarf keiner weiteren Stützstellen. Die Werte treffen im äquidistanten Zeitin-
tervall ein und verteilen sich so, dass einer in der Symbolmitte und ein anderer zwi-
schen den Symbolübergängen Platz findet. Der Index r steht für die Symbolnumme-
rierung, daraus folgt der Ausdruck )(ry . Für die Rechenvorschrift werden insgesamt
drei Abtastwerte herangezogen, eins aus dem aktuellen Symbol )(ry und zwei aus
dem vergangenen )2/1( −ry und )1( −ry . Im Argument sind die normierten Abstände
T bzw. 2/T in Sekunden angegeben und können bei der Schreibweise entfallen.
Der Gardner Algorithmus ist im Folgenden definiert:
[ ])1()()2/1()( −−⋅−= ryryryru (3)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 36 von 87
Im Bild 5.4 sind drei mögliche Fälle unter a.) optimalen Abtastung, b.) frühen Abtas-
tung und c.) späten Abtastung dargestellt.
a.) Optimale Abtastung)2/1( −ry)1( −ry
)(ry0)0,10,1(0 =−−⋅=u
b.) Frühe Abtastung2,3)8,08,0(2,0 −=−−⋅=u
c.) Späte Abtastung
2,3)8,08,0(2,0 =−−⋅−=u
0,1
0,1−
0
8,0
2,0
8,0−
8,0−
8,0
2,0−
Bild 5.4: Timing Bewertung nach dem Gardner Algorithmus
Beim Übergang zwischen zwei Symbolen, sollte beim fehlerfreien Timing der mittlere
Punkt )2/1( −ry den Wert null annehmen. Demnach vergrößert sich der Wert bei ei-
ner Verschiebung in der Phase. Da eine Drift zu beiden Seiten gleichwahrscheinlich
ist, wird die Fehlerrichtung mittels Vorzeichen angegeben. Dazu wird eine Differenz
der äußeren Abtastwerte (siehe Formel (3)) gebildet und mit dem mittleren Abtastwert
multipliziert. Ein positiver Wert bedeutet, dass die Abtastsequenz sich bezogen auf
den optimalen Abtastzeitpunkt verspätet, ein negativer Wert steht dagegen für frühe
Abtastung. Am Ausgang des Timing Detektors steht ein Fehlersignal )(ru zur Verfü-
gung, das zur weiteren Fehlerkorrektur auf den Loop-Filter geführt wird. Der Vorzug
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 37 von 87
des Gardner Algorithmus ist der, dass er unempfindlich gegen Trägerfrequenzoffset
ist.
Bei der digitalen Implementierung werden für die Berechnung zwei Verzögerungsglie-
der verwendet, eins für den mittleren )2/1( −ry und eins für den äußeren )1( −ry Ab-
tastwert. Nach der Differenzbildung folgt dann die Multiplikation. Das zugehörige
Blockschaltbild ist im Bild 5.5 illustriert.
Z-1 Z-1
+x
+-
)2/1( −ry)(ry )1( −ry )(ru
Bild 5.5: Blockschaltbild des Gardner Detektors
5.3.2 Early-Late Gate Algorithmus
Das Fehlersignal nach Early-Late Gate wird ebenso aus Abtastpunkten berechnet die
relativ früh oder spät zum exakten Abtastpunkt liegen. Allerdings muss pro Symbol
laut [15] mindestens dreimal abgetastet werden. Die zwei äußeren Werte unterschei-
den sich in ihrer Amplitude und aus deren Differenz lässt sich eine Ableitung bilden.
Aus dem ermittelten Vorzeichen und dem so genannten Steigungsfaktor entsteht das
Fehlersignal )(tu , das angibt, in welche Richtung die Abtastphase korrigiert werden
muss (siehe Bild 5.6). Besitzen die äußeren Punkte den gleichen Amplitudenwert, so
ist das Ergebnis null und die Timingsequenz ist exakt.
Die Ableitungsfunktion für den Early-Late Gate Algorithmus:
[ ])()()()( dttydttytytu −−+⋅= (4)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 38 von 87
Das Prinzip ist auch gültig, für Symbole mit negativen Flanken. Das Ergebnis wird um-
so genauer, je mehr Abtastwerte zur Verfügung stehen. In den meisten Fällen jedoch
kann nicht so oft abgetastet werden, da die Symbolraten hoch sind. Für das Nyquist-
Shannonsche Abtasttheorem gilt: Die Abtastfrequenz ist mindestens zweimal so groß
wie die höchstvorkommende Signalfrequenz.
b.) Optimale Abtastunga.) Frühe Abtastung c.) Späte Abtastungt t t
)( dtty −
)( dtty +)(ty
32,0)2,06,0(8,0 =−⋅=u 0)4,04,0(0,1 =−⋅=u 32,0)6,02,0(8,0 −=−⋅=u
Bild 5.6: Timing Bewertung nach dem Early-Late Gate Algorithmus
5.3.3 Zero-Crossing Algorithmus Zur Bestimmung des Timing-Fehlers nach dem Zero-Crossing Algorithmus bedarf es
einer kleinen Modifikation in der Gardnergleichung. Nach dem Hinzufügen der Re-
chenoperation ()sign erfolgt zum Nulldurchgang eine Vorzeichenbewertung der Sym-
bolamplituden. Während das Signal die Nulllinie durchquert, liefert der TED am Aus-
gang einen rechteckförmigen Impuls. Über ein betrachtetes Intervall zeigt sich durch
Summation eine Sequenz von vielen Rechteckimpulsen. Die Polarität und die Ampli-
tude der Impulse gibt darüber Auskunft, ob das Timing zu früh oder zu spät ist. Bei
überwiegend positiven Impulsen, gibt es eine Verspätung der Abtastwerte bezogen
auf das Optimum. Bei überwiegend negativen Impulsen liegen die Abtastwerte zu früh
[16]. Das Bild 5.7 stellt ein denkbares Ausgangssignal dar. Wie auch beim Gardner-
Algorithmus, reichen für diesen Betrieb zwei Abtastwerte pro Symbol aus [19].
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 39 von 87
)(tu
t
)(tu
t
Späte Abtastung Frühe Abtastung
Bild 5.7: Ausgangsignal des Zero-Crossing Detectors bei später und früher Abtastung
Der Ausgang des Detektors (siehe Formel (5)) liefert eine Folge von Impulsen die im
Vorzeichen positiv oder negativ sein können. Der Mittelwert über eine Impulsfolge gibt
an, wie stark eine Abweichung von dem optimalen Abtastzeitpunkt ist. Die Mittelwert-
bildung übernimmt ein nachgeschalteter Integrator (Loop-Filter). Ein Blockschaltbild
des Zero-Crossing Detektors ist im Bild 5.8 abgebildet.
[ ]))1(())(()2/1()( −−⋅−= rysignrysignryru (5)
Die Signum-Funktion lautet folgendermaßen:
• Das Ergebnis ist 1, wenn der Abtastwert größer ist als Null
• Das Ergebnis ist 0, wenn der Abtastwert gleich Null ist
• Das Ergebnis ist -1, wenn der Abtastwert kleiner ist als Null
Z-1 Z-1
+
x
+-
sign
sign)(ry )2/1( −ry )1( −ry )(ru
Bild 5.8: Blockschaltbild des Zero-Crossing Detektors
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 40 von 87
5.3.4 Mueller und Müller Algorithmus Für diesen Detektor Algorithmus ist nur ein Abtastwert pro Symbol ausreichend. Zu-
dem liefert ein so genannter Slicer für das gegenwärtige und das vorherige Symbol die
Amplitudenspitzenwerte )(ˆ ny und )1(ˆ −ny welche in die Rechenvorschrift nach Muel-
ler und Müller in [15] mit einfließen:
[ ] [ ])1()(ˆ)1(ˆ)()( −⋅−−⋅= nynynynynu (6)
Die Schwachstelle im Detektor ist jedoch die, dass er bei Abweichungen in der Träger-
frequenz empfindlich reagiert. Eine Trägerfrequenzsynchronisation ist von daher im
Vorfeld nötig. Das Bild 5.9 zeigt ebenfalls ein Beispiel für a.) optimale Abtastung, b.)
frühe Abtastung und c.) späte Abtastung. Die Amplitudenspitzenwerte sollen hier den
Wert eins und minus eins annehmen.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 41 von 87
y(n)
y(n-1)a.) Optimale Abtastung
b.) Frühe Abtastung
c.) Späte Abtastung
0)0,10,1()0,10,1( =⋅−−⋅−=u
3,0)5,00,1()0,18,0( −=⋅−−⋅−=u
3,0)8,00,1()0,15,0( =⋅−−⋅−=u
0,1−
0,1
8,0−
5,0
8,0
5,0−
Bild 5.9: Timing Bewertung nach dem Mueller und Müller Algorithmus
5.4 Loop-Filter Nach dem Prozess des Timing Error Detectors folgt im Loop-Filter eine Berechnung
der Regelgröße5 )(ru für den Frequenz- und Phasenversatz. Dazu wird ein Filter ver-
wendet, der aus einem proportionalen und einem integralen Anteil siehe Bild 5.10 be-
steht. Die Verstärkungsparameter pK und IK bestimmen die Bandbreite in der die
Regelschleife wirksam ist. Ein breitbandiger Filter arbeitet in einem größeren Fangbe-
reich und hat eine geringe Einschwingdauer. Er nimmt jedoch mehr Rauschleistung
auf, die das Ergebnis ungenauer macht. Ein schmalbandiger Filter dagegen braucht
eine längere Zeit sich auf den Sollwert einzuschwingen. Doch aufgrund seines kleinen
5 Die Regelgröße stellt eine Abweichung der Abtastphase bezogen auf das Amplitudenmaximum dar. Jede Ände-rung in der Abtastphase wird von einer Korrekturreaktion im System beantwortet.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 42 von 87
Fangbereichs wird die Rauschleistung reduziert und das Ergebnis verbessert. Das
Loop-Filter ist für den jeweiligen Anwendungsfall zu optimieren [20].
Aus der Systemfunktion in der Formel (8) geht hervor, dass es sich um ein Filter erster
Ordnung handelt. Die Ordnung des Filters bildet die höchste negative Potenz von z
im Nenner. Weil der nachfolgende NCO auch eine integrierende Eigenschaft aufweist,
erhält die Regelschleife die Ordnung zwei. Unter [21] ist eine ausführliche Herleitung
des Filters beschrieben.
+
+
Z-1
KP
KI
Proportionaler Anteil
Integraler Anteil
)(nν)(ru
Bild 5.10: Blockschaltbild des Loop-Filters
Aus den Grundlagen der Regelungstechnik ist bekannt, dass ein Filter erster Ordnung
bestehend nur aus einem Proportionalglied pK , den Phasenfehler in einem geschlos-
senen Regelkreis ausregeln kann, dennoch bleibt eine statische Regelabweichung in
Form des Frequenzfehlers. Erst in Verbindung mit dem Integralanteil konvergiert der
Frequenzfehler gegen null.
Mit der Bezeichnung )(nx am Eingang und )(ny am Ausgang erhält man eine Diffe-
renzengleichung des Filters nach (7).
)1()1()()()( −⋅−−+⋅+⋅= nxKnynxKnxKny PIP (7)
Daraus folgt die Systemfunktion:
( )1
1
11
)()()( −
−
−−+
==z
zKKzXzYzH PI (8)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 43 von 87
5.5 Numeric Controlled Oscillator
Der Numeric Controlled Oscillator übernimmt in der Regelschleife zwei Aufgaben.
Zum einen versorgt er den Interpolationsfilter mit dem Laufindex )(kμ (Fractional In-
tervall) für den korrigierten Abtastzeitpunkt und zum anderen stellt er den wiederge-
wonnen Symboltakt bereit.
Die Steuerung des )(kμ übernimmt ein so genanter Modulo-1 Zähler. Der Modulo-1
Zähler setzt sich zusammen aus einem digitalen Zähler und einem Modulo-1 Operator
im Rückführungszweig (Bild 5.11). Die Zählfrequenz wird von der Konstante N/1 be-
stimmt, wobei N für die Anzahl der Abtastwerte pro Symbol steht. Der Zähler dekre-
mentiert im Durchschnitt um N/1 Schritte, sodass ein zyklischer treppenförmiger Sig-
nalverlauf mit der Periode N entsteht [22]. Das Signal )(nv aus dem Loop-Filter regu-
liert zusätzlich den Betrag des Dekrements um einen Unterlauf für den optimalen Ab-
tastzeitpunkt zu erzeugen. Der Unterlauf des Modulo-1 Zählers tritt eine Taktperiode
später ein nach dem der gewünschte Interpolant )( ikTx siehe Bild 5.12 vorliegt. (Je
nach Abtastrate ist die Architektur des NCOs anzupassen).
Die Modulo-Operation ),mod( yxM = ist im Folgenden definiert:
• Das Ergebnis lautet ynxM ⋅−= wobei n die Gaußklammer von ( yx / ) ist.
• Das Vorzeichen im Ergebnis ist mit dem Vorzeichen von y identisch.
• Bei der Bedingung )0,mod(x wird das Ergebnis x .
+ + Z-1Mod-1
1+
-
1/N
Z-1
<Symbol Clock
Hold Scaling
EnableSignal
)(nν )(nW
)(nη )(kμ
0
(Underflow)
y
x
Bild 5.11: Blockschaltbild des Numeric Controlled Oscillators
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 44 von 87
Die resultierende Rekursionsgleichung für den Ausgang des Modulo-1 Zählers )(nη
lautet:
[ ] 1mod)1()1()( −−−= nWnn ηη (9)
wobei )(/1)( nvNnW += das Eingangssignal darstellt. Während der Zeit in der der
Modulo-1 Zähler die Null-Linie unterschreitet (Underflow), erzeugt ein Vergleichsope-
rator ein Enable-Impuls, welcher auch gleichzeitig den wiederhergestellten Symbol-
takt (Symbol Clock) repräsentiert. Dieser Impuls nimmt den Wert eins an solange der
optimale Abtastwert im Amplitudenmaximum andauert. Alle anderen Abtastwerte wer-
den für die Weiterverarbeitung demnach verworfen. Nach dem Verzögern des Enable-
Impulses um eine Taktperiode erfolgt die Steuerung des Hold-Blocks, der wie ein Hal-
teglied arbeitet (Bild 5.11). Dieser speichert solange den letzten Wert )(nη bis ein er-
neuter Impuls anliegt. Anschließend steht nach einer geeigneten Skalierung mit dem
Wertebereich [0,1] das resultierende Signal )(kμ am Ausgang zur Verfügung.
Bild 5.12: Prinzip des Modulo-1 Zählers im Bezug auf die Korrektur des Abtastzeitpunktes [22]
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 45 von 87
Im Falle dass die Abtastphase sich ständig ändert, kann der ADC im Durchschnitt
mehr oder weniger Abtastwerte ST liefern als die Abtastrate, auf die der NCO vorein-
gestellt ist. Dabei entsteht ein Taktverhältnis das keinen ganzzahligen Wert ergibt
( iS / TNTT =≠ ). Bei einem Überschuss an Abtastwerten steigt der Laufindex ständig
an bis er überläuft. Dabei wird ein überflüssiger Abtastwert einfach ausgelassen (skip-
ping). Vergleichbar dazu kann ein Abtastwert fehlen und es kommt zum Unterlauf des
Laufindexes. In diesem Fall wird der letzte Abtastwert wiederholt für die Regelschleife
bereitgestellt (stuffing). Die „skipping“ und „stuffing“ Prozesse werden automatisch mit
dem Enable-Signal aus dem NCO gesteuert, sodass ein Ausgleich der Abtastraten
ohne zusätzliche Steuereinheit auskommt.
Das folgende Bild 5.13 zeigt ein Beispiel indem ein Abtastwert mehr vorliegt als nötig
und das Verhältnis Symbolrate/Abtastrate mit 2,1/ Si =TT nicht ganzzahlig ist. Der
NCO arbeitet hier mit vier Abtastwerten pro Symbol, die im Bild als weiße Kreise mar-
kiert sind. Die schwarzen Kreise symbolisieren den idealen Abtastpunkt.
d1
CLK
d2
d3 d4
d5
d6
d7d8
d9
d10
d11
d12 d13
0 0.4 0.8 0.2 0.6
in1
in2
in3
in4
in5
in6
1 1.2 2 3 4 5 6
CLK'
t
μ
Bild 5.13: Eine Steuerungssequenz für den Abtastratenausgleich während eines Überlaufs
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 46 von 87
1. Um den idealen Abtastwert in1 zu erhalten, müssen die Interpolanten d1 und
d2 betrachtet werden, dabei sei zuerst 0=μ .
2. Um den idealen Abtastwert in2 zu erhalten, müssen die Interpolanten d3 und
d4 betrachtet werden, dabei ist 4,0=μ .
3. Bei dem Abtastwert in3 sind d5 und d6 mit 8,0=μ zu betrachten.
4. Um den idealen Abtastwert in4 zu erhalten, werden die Interpolanten d8 und
d9 anstatt d7 und d8 betrachtet, weil d7 und d8 noch vor dem Zeitpunkt in4
liegen. Da μ überläuft wird der Abtastwert d7 verworfen und μ erhält den
neuen Wert 2,08,01 =− .
5. Um den idealen Abtastwert in5 zu erhalten, müssen die Interpolanten d10 und
d11 betrachtet werden, dabei ist 6,0=μ und so weiter.
Mit jedem CLK-Impuls bekommt die Laufvariable einen Zuwachs der aus der Bezie-
hung (10) herrührt. Der Ausdruck ][xint steht für den größten ganzzahligen Wert, der
kleiner oder gleich x ist [23]. Aus dem oberen Beispiel errechnet sich das Inkrement
mit: 2,0)12,1( =−=μ wobei nur jeder zweite Wert im Bild 5.13 eingezeichnet ist. Wäh-
rend des Überlaufs von μ wird der überflüssige Abtastwert ignoriert und der resultie-
rende Symboltakt (CLK’) wird für die weitere Verarbeitung verwendet.
)1,0[S
i
S
i
S
i
S
i ∈⎥⎦
⎤⎢⎣
⎡−=⎥
⎦
⎥⎢⎣
⎢−=
TT
intTT
TT
TT
μ (10)
Solange Si TT = ist, nimmt μ einen konstanten Wert an und ändert sich dann nicht
mehr. Das entspricht nur einer Phasenkorrektur der Abtastwerte bei gleichbleibender
Frequenz im Sender und Empfänger (statisch). Im Falle iS TT ≠ wird nicht nur der Pha-
senversatz sondern auch der Frequenzversatz korrigiert (dynamisch).
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 47 von 87
5.6 Interpolation In volldigitalen Empfängern erfolgt die Abtasttaktkorrektur wie oben bereits beschrie-
ben nicht direkt am Analog-Digital-Wandler, sondern im Nachhinein mittels einer Inter-
polation. Dabei wird für die Korrektur der Abtastphase bezogen auf den optimalen Ab-
tastzeitpunkt ein Interpolationsfilter verwendet. Zur genauen Approximation erfolgt ei-
ne Bewertung der Eingangssequenz { })( SmTx mit einer Impulsantwort )(I th eines FIR-
Filters wie in der Formel (11) gezeigt. Die Filterlänge des digitalen Filters wird mit I
festgelegt. Dabei steht das Argument m für den Eingang und k für den Ausgang der
Anordnung [24].
])[(])[(])[()( SkSkSkki
2
1
TihTimxTmykTy I
I
Iiμμ +⋅−=+= ∑
= (11)
kS
ikSkki m
TTkTmkT −=→+= μμ )( (12)
Das nachfolgende Bild 5.14 zeigt eine mögliche Beziehung zwischen den Ein- und
Ausgangswerten eines Interpolationsfilters. Der Laufindex kμ den der NCO bereit-
stellt, bestimmt den Abstand zu dem neuen interpolierten Wert ikT (Gleichung 12). Der
Controller reduziert anschließend die Ausgangsfolge auf einen Abtastwert pro Symbol.
Ausgangsfolge:)( ikTy
Eingangsfolge:)( SmTx t
t
STmx )1( +STmx )( STmx )2( +STmx )1( −STmx )2( −
iTky )1( +iTky )(iTky )1( −
SkTμ
Bild 5.14: Ein- und Ausgangsfolge des Interpolators
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 48 von 87
In den nachstehenden Unterkapiteln werden zwei unterschiedliche Filterstrukturen zur
Interpolation beschrieben.
5.6.1 Interpolation mit Farrow-Struktur
Eine geeignete Interpolation kann unter Verwendung eines polynomischen Filters mit
einer Farrow-Struktur erzielt werden. Die Polynome werden in Form von Transversal-
filtern (FIR) aus der Anzahl von 1+N Spalten gebildet, wobei N für die Ordnung der
Interpolation steht. Jede Spalte ist in eine Anzahl von I taps untergliedert und enthält
feste Filterkoeffizienten )(ibl . Der Ausgang jedes Teilfilters )(lv wird mit dem Laufin-
dex kμ multipliziert und bildet nach der Summierung die Ausgangsgleichung 13.
∑ ∑= =
−⋅=N
l
I
Iil
l imxibky0
)()()(2
1
k kμ (13)
Je nach gewünschter Genauigkeit werden für die Berechnungen der Filterkoeffizienten
lineare, parabolische oder kubische Approximationen durchgeführt. Unter [25] und [26]
sind die Berechnungsvorschriften ausführlich beschrieben. Das Beispiel aus Bild 5.15
zeigt prinzipiell anhand der gestrichelten Linie eine kubische Interpolation für ein Sym-
bol mit vier Abtastwerten. Der Laufindex aus dem NCO wird nach dem Einrasten der
Regelschleife in dem Bereich ( 10 k ≤≤ μ ) solange nachkorrigiert bis ein Abtastwert im
Amplitudenmaximum Stellung findet. Alle anderen Stützstellen richten sich nach dem
neuen Interpolanten aus.
m1−m
)1( −mx )(mx)1( μ+−mx
2−m 1+m
μ−1μ
Bild 5.15: Prinzipdarstellung einer kubischen Interpolation
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 49 von 87
)3(v
Z-1
Z-1
Z-1
+
+
+
+ + +x x x
)( kmx
)0(3b
)1(3b
)2(3b
)3(3b
kμ
{ })(2 ib { })(1 ib { })(0 ib
)2(v )1(v )0(v
)(ky
Bild 5.16: Ausführung der kubischen Interpolation mit Farrow-Struktur
Im Bild 5.16 ist die Farrow-Struktur für kubische Interpolation in Form einer Hardware-
realisierung dargestellt. Der rechnerisch ermittelte Ausgangswert geht aus der Bezie-
hung (14) hervor.
{ }[ ] )0()1()2()3()( vvvvky +++= kkk μμμ (14)
Tabelle 5.1: Farrow-Koeffizienten für kubische Interpolation
i )(3 ib )(2 ib )(1 ib )(0 ib
0 1/6 0 -1/6 0 1 -1/2 1/2 1 0 2 1/2 -1 -1/2 1 3 -1/6 1/2 -1/3 0
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 50 von 87
Die aus [25] entnommen Filterkoeffizienten in der Tabelle 5.1 bilden die Gesamtim-
pulsantwort des Farrow-Filters und werden unabhängig vom Eingangssignal fest imp-
lementiert. Zu beachten ist, dass die Koeffizienten mit Ausnahme der Spalte )0(v die
Summe null ergeben. Der Filter ist so dimensioniert, dass bei einem kμ von null oder
eins die Eingangsfolge das Filter unverändert passiert. Die Normierung bestimmt so-
mit der letzte Teilfilter )0(v .
Ein idealer Interpolationsfilter hat im Frequenzbereich eine ideale Tiefpasscharakteris-
tik. Der häufig angewandte kubische Filter dagegen besitzt ein nicht so gutes Fre-
quenzverhalten und verursacht Fehler bei der Interpolation. Diese machen sich in
Form von Frequenzüberlappungen (Aliasing) in den Wiederholspektren des abgetas-
teten Signals bemerkbar. Vergleiche hierzu [23].
S/ Ff5,0 0,1
dB
0
20−
40−
60−
0,0
Ursprüngliches Aliasing
Neues Aliasing
Kubischer Filter
Ursprüngliches Signal
Überabgetastetes Signal
Bild 5.17: Übersprechen der Frequenzanteile bei der kubischen Interpolation
Eine Abhilfe schafft ein Farrow-Filter höherer Ordnung, doch damit bringt er eine hö-
here Anzahl von Multiplizierern mit sich, die bei der Implementierung in der Hardware
viel Platz einnehmen und so für größere Kosten sorgen. Eine angemessene Lösung
bietet das Überabtasten6 des Signalspektrums vor der Interpolation. Dabei erfolgt eine
Stauchung der Bandbreite des Signalspektrums, sodass ein Übersprechen auf ein
6 Beim Überabtasten (upsampling) wird die Rate der Abtastfolge erhöht, indem zwischen den verfügbaren Abtastwerten Nullen eingefügt werden. [17]
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 51 von 87
Minimum reduziert wird. Der Aliasingeffekt ist vor und nach dem Überabtasten mit der
normierte Abtastfrequenz SFf / im Bild 5.17 veranschaulicht.
5.6.2 Interpolation mit Polyphasenfilter
Eine weitere Interpolationsmöglichkeit bietet eine Polyphasenfilter-Struktur nach [17].
Nach dem Analog-Digital-Wandler wird die abgetastete Einganssequenz )( SnTx zu-
nächst mit dem Faktor M überabgetastet. Dabei werden eine Anzahl 1−M Nullen
zwischen jedem Abtastwert platziert, sodass eine neue Folge )/( MnTx S entsteht. Die
neuen Stützstellen bilden die Basis für die Anzahl der erforderlichen Filterzweige
10 −≤≤ Mm . Jeder Zweig besteht aus einem FIR-Filter mit individueller Impulsant-
wort )( SnThl und bewirkt eine Phasenverschiebung für die Bewertung des optimalen
Abtastpunktes. Die Genauigkeit in der Interpolation hängt von der Anzahl der Filter-
zweige ab. Das Bild 5.18 soll den Aufbau eines Polyphasenfilters verdeutlichen.
)/( MnTx S
0=μ)( S0 nTh
)( S1 nTh
)( Sm nTh
)( S1-M nTh
M1
=μ
Mm
=μ
MM 1−
=μ
M)( SnTx
Bild 5.18: Ausführung der Interpolation mit Polyphasenfilter-Struktur
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 52 von 87
Ähnlich wie bei dem Farrow-Filter erfolgt die Interpolation unter der Verwendung des
Laufindexes μ aus dem NCO. Der Unterschied besteht lediglich darin, dass μ auf die
Anzahl der Filterzweige umgerechnet werden muss.
Nach dem Einrasten der Regelschleife bei optimaler Abtastbedingung erzeugt der Ti-
ming Detector den Wert null und der Laufindex μ verbleibt in einer konstanten Stel-
lung. Die richtige Phasenbeziehung mit dem geeigneten Interpolanten entspräche
dann dem Abgriff am Filterzweig )( Sm nTh aus dem Bild 5.18. Beim Abgleichvorgang
der Abtastraten kann es im höchsten Filterzweig )( S1M- nTh zum Überlauf kommen,
dabei wird mit dem niedrigsten Filterzweig )( S0 nTh fortgesetzt. Ähnlich ist es mit dem
Unterlauf. Die Steuerung des Unter- und Überlaufs regelt der NCO wie im Kapitel 5.5
beschrieben.
5.7 Zwischenbilanz Mit Hinblick auf die spätere Implementierung der Timing Recovery Regelschleife in
einen Hardwarebaustein, wurde eine Auswahl der im Kapitel 5 aufgeführten Algorith-
men getroffen.
Für die Ermittlung des Timingfehlers (TED) sollte das in der Praxis bewährte Zero-
Crossing Verfahren eingesetzt werden. Es ist einfach im Aufbau und benötigt bei der
Berechnung des Fehlersignals einen Addierer und einen Multiplizierer.
Das Loop-Filter und der Numeric Controlled Oszillator sind feste Bestandteile der Re-
gelschleife und sind von daher bei der Implementierung vorgesehen.
Aufgrund der benötigten hohen Anzahl der Filterzweige im Polyphasenfilter, fiel die
Entscheidung bei der Wahl des Interpolationsfilters auf die kubische Farrow-Struktur.
Die kubische Farrow-Struktur enthält vier FIR-Filter mit jeweils vier Filterkoeffizienten,
die unter Verwendung eines IP Cores von Xilinx realisiert werden können. Für die Be-
rechnung der FIR-Filter-Ausgänge mit dem Laufindex werden nochmals drei Addierer
und drei Multiplizierer benötigt.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 53 von 87
6 Simulation mit Matlab/Simulink
Aus den gegebenen theoretischen Aspekten der digitalen Timing Recovery, sollte ein
Entwurf in Form einer Simulation entwickelt und validiert werden. Dazu wurde die
Entwicklungsumgebung Matlab/Simulink verwendet, in der physikalische und mathe-
matische Systeme in Form von Blöcken ausgeführt sind. Mit den geeigneten Simulati-
onsparametern konnte ein Grundkonzept erstellt und getestet werden.
6.1 Das Grundkonzept
Die Simulation teilt sich in zwei grobe Abschnitte auf. Sie besteht einmal aus dem Teil
des Modulators in dem das QAM-Testsignal erzeugt und mit einem zusätzlichen Ti-
mingfehler versehen wird. Der zweite Teil enthält die gesamte Timing Recovery sowie
Scope-Anschlüsse für die Aufnahme der Ergebnisse. Die Signalverarbeitung erfolgt im
digitalen Basisband und enthält nur diskrete Systemblöcke. Das Grundkonzept des
Modells ist im Bild 6.2 veranschaulicht.
6.1.1 Der Modulator
Als Testsignal wird eine 16-QAM mit einer Symbolrate von Fsymbol = 4 MHz zu Grun-
de gelegt. Ein Random-Integer Generator stellt eine Pseudo-Zufallsfolge bereit, die
auf den QAM-Modulator geführt wird. Der QAM-Modulator erzeugt ein komplexes
Basisbandsignal, dass hinterher auf den Real- und Imaginärteil aufgeteilt wird. Von
hier aus werden die beiden Zweige für sich getrennt behandelt. Als Nächstes werden
die Symbole mit einem Sqare-Root Raised Cosine Filter (SRRC-Filter) bandbegrenzt.
Um ausreichend Stützstellen zu erhalten werden die Signalzweige zuvor mit dem
Faktor 4 überabgetastet, indem zwischen den Abtastwerten drei Nullen eingefügt
werden. Die Taktrate steigt ebenfalls auf den Faktor 4 an. Die SRRC-Filter sind für
den Real- und Imaginärteil identisch und bilden mit den festen Filterkoeffizienten die
Impulsantwort. Die Impulsantwort des Filters errechnet sich mit der verfügbaren
Funktion aus dem Matlab-Archiv wie angefügt:
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 54 von 87
)delayr,,'/',F,rcosine(F SD sqrtfira = ,
dabei steht DF für die normierte Abtastfrequenz des Eingangssignals und SF für die
Taktfrequenz des Filters. Die Konstante r beschreibt den Roll-Off Faktor und die An-
gabe über das delay bestimmt die Filterlänge. Für die Simulation werden folgende Pa-
rameter verwendet: )1,8,'/',4,rcosine(1 sqrtfira = . Daraus resultiert (siehe Bild 6.1) eine
Impulsantwort )(nh mit 65 Filterkoeffizienten.
Bild 6.1: Impulsantwort eines Sqare-Root Raised Cosine Filters mit r = 1
Des Weiteren ist ein Timing-Fehler zu simulieren um die Funktionseigenschaften der
Timing Recovery zu testen. Hierfür dient das Konstrukt des Farrow-Filters um durch
Interpolation einen Versatz der Symbolabtastwerte zu erzielen. Mit einem Schiebereg-
ler (slider gain) lässt sich der Timing-Fehler zugleich im Real- sowie Imaginärzweig im
Bereich 10 Stör ≤≤ μ variieren.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 55 von 87
Bild 6.2: Das Grundkonzept des Simulink Modells
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 56 von 87
6.1.2 Die Timing Recovery
Um die Logikressourcen minimal zu halten, wurde die Simulation nach den gewählten
Verfahren aus dem Kapitel 5.7 aufgebaut. Unter Verwendung der Simulationsblöcke
für digitale Filter konnte mit den entnommenen Filterkoeffizienten aus der Tabelle 5.1
die Farrow-Struktur realisiert werden. Vom Ausgang des Interpolationsfilters geht das
Signal direkt auf den Timing Error Detector. Dort wird der Timing Fehler separat für
den Real- und den Imaginärzweig ermittelt und anschließend zu einem Gesamtergeb-
nis addiert.
Nach der Summation folgt dann die Filterung des Signals mit dem Loop-Filter. Die Ko-
effizienten für den Proportional- und den Integralteil wurden empirisch ermittelt und
erhielten die Werte: 001,0p =K und 000005,0I =K .
Das gefilterte Signal aus dem Loop-Filter steuert nun den Numeric Controlled Oscilla-
tor für die Bildung des Laufindexes und des Clock-Signals. Die Zählfrequenzkonstante
ist auf 4=N eingestellt, somit ist die Timing Recovery auf vier Abtastwerte pro Sym-
bol dimensioniert vergleiche dazu Bild 5.11.
Mit jedem vierten Abtastwert kommt es im Modulo-1 Zähler zum Unterlauf (Un-
derflow), der von einem Vergleichsoperator registriert wird. Einen Taktzyklus später
geht daraufhin der Enable-Impuls auf Eins und steuert den Hold-Block für die Aktuali-
sierung des optimalen Abtastwerts. Das Ausgangssignal des Modulo-1 Zählers wird
für die Generierung des Laufindexes verwendet. Dazu wird es zunächst im Hold-Block
gespeichert und erst mit jedem neuen Enable-Impuls aktualisiert. Zum besseren Ver-
ständnis soll das Bild 6.3 dienen. Abhängig von dem Signal aus dem Loop-Filter be-
wegt sich der Pegel im Bereich zwischen 0,5 und 0,7. Um den gewünschten Wertebe-
reich des Laufindexes ( 10 ≤≤ kμ ) zu erhalten, wird der Pegel mit dem Faktor 4 multip-
liziert und das Produkt um einen Offset von -2 heruntergesetzt (Skalierung siehe Bild
6.4).
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 57 von 87
Bild 6.3: Bildung der Enable-Impulse aus dem Unterlauf des Modulo-1 Zählers
+
-2
4IN OUT
Bild 6.4: Schaltung für die Skalierung des Laufindexes
Am Ausgang des Timing Error Detectors befindet sich ein zweiter Hold-Block, der das
Fehlersignal während eines Überlaufs des Laufindexes mit dem Symbol-Clock korri-
giert. Ein dritter Hold-Block stellt die rückgewonnne Taktumgebung dar, in der eine
Dezimierung der Taktrate von vier auf einen Abtastwert pro Symbol erfolgt. Das Bild
6.5 zeigt den Aufbau eines Hold-Blocks.
IN OUT
Symbol-Clock
Bild 6.5: Prinzipaufbau eines Hold-Blocks
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 58 von 87
6.2 Simulationsergebnisse
Es soll nun unter der Vorgabe eines Timingfehlers von 5,0=Störμ das Einschwingver-
halten der Regelschleife für einen statischen7 Abtastfehler untersucht werden. Beim
Starten der Simulation stellt sich die Schleife auf den Sprung ein und konvergiert auf
den Wert 5,05,01 =−=μ ein. Das Bild 6.6 zeigt das Einschwingverhalten des Timing
Error Detectors, des Loop Filters und des Laufindexes über einem Abtastintervall von
ungefähr 3500 Werten.
Bild 6.6: Einschwingverhalten des TEDs, des Loop-Filters und des NCOs bei µstör = 0,5
7 Die Simulation beschränkt sich auf einen statischen Abtastfehler, da der Aufbau einer dynamischen Fehlerquelle eine separate Taktumgebung erfordert, und mit viel Aufwand verbunden ist.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 59 von 87
Im Einschaltmoment produziert der TED im Mittel mehr positive als negative Recht-
eckimpulse, sodass der entstandene Gleichanteil vom Loop-Filter mit einem positiven
Schwinger herausgemittelt wird (erster Integralteil). Der NCO regelt diesen Fehler mit
einem entgegengesetzten Vorzeichen aus und glättet das Signal für den Interpolator
(zweiter Integralteil). Gut zu erkennen ist der restliche Rauschanteil des μ im einge-
schwungenen Zustand bei 0,5. Mit jedem weiteren Versatz des Störfaktors, antwortet
die Schleife mit dem Wert Stör1 μμ −= .
Bei einem größeren Sprung im Störfaktor kann es unter Umständen passieren, dass
der Laufindex seinen Wertebereich kurzfristig über- oder unterschreitet. Ein Beispiel
für den Überlauf des Laufindexes ist im Bild 6.7 dargestellt. Das Steuersignal aus dem
Loop-Filter hebt das Dekrement des Modulo-1 Zählers so an, dass er erst im fünften
Zählschritt unterläuft. Daraufhin kommt der Enable-Impuls einen Takt zu spät, sodass
ein Abtastwert ausgelassen wird (skipping).
Bild 6.7: Überlauf des Laufindexes bei einem größeren Sprung im Störfaktor
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 60 von 87
Zur komplexen Darstellung der Symbole wird ein Scatter Plot Scope verwendet, der
die Inphase- und Quadraturkomponente des Signals aufzeichnet. Das Eingangssignal
des Plotters muss daher komplex sein. Die in der Abtastphase korrigierten Symbole
werden nach dem Farrow-Filter abgegriffen und zu einem komplexen Signal zusam-
mengefasst. Die Konstellation der Symbole ist vor und nach dem Einschwingvorgang
im Bild 6.8 dargestellt.
Bild 6.8: Konstellationsdiagramme einer 16-QAM vor dem Einschwingvorgang (links) und nach dem Einschwingvorgang (rechts)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 61 von 87
Während der Simulation kann ein Schalter (Timing-Loop ON/OFF) umgelegt werden,
um das Verhalten der Regelschleife im offenen Betrieb zu demonstrieren. Ohne Rück-
führung beginnt die Anordnung stark zu schwingen und liefert ein verrauschtes Ergeb-
nis im Konstellationsdiagramm. Nach dem Schließen des Schalters, rastet die Schleife
auf den momentanen Fehlerwert wieder ein.
Eine weitere Betrachtung gilt der Bandbegrenzung der Quadraturamplituden-
modulierten Symbole. Dazu kann die Filtereigenschaft des SRRC-Filters aus den Dia-
grammen im Bild 6.9 ersehen werden. Im linken Teil ist die Filterflankensteilheit auf
1=r eingestellt und die weite Augenöffnung ist deutlich zu erkennen (geringe Inter-
symbol-Interferenz). Mit zunehmender Bandbegrenzung mit 5,0=r im rechten Teil
schwindet die Augenöffnung und das Übersprechen der Symbole wird stärker. Um die
Rauschanteile zu minimieren wurde in der Simulation mit 1=r gearbeitet.
Bild 6.9: Augendiagramme eines 16-QAM Signals nach der Filterung mit einem SRRC-Filter bei ei-nem Roll-Off Faktor 1 (links) und einem Roll-Off Faktor 0,5 (rechts)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 62 von 87
Für die verwendete Symbolrate von 4 MHz mit einem Abtastwert pro Symbol entsteht
ein unendlich breites, digitales Spektrum, dessen Abtastfrequenz SF ebenso bei 4
MHz liegt. Die Wiederholspektren bilden sich mit jeder Vielfachen der Abtastfrequenz.
Nach dem Überabtasten und Filtern des QAM-Signals im Modulator-Teil wird die Ab-
tastfrequenz (Sample Time) auf das Vierfache angehoben. Dadurch verschiebt sich
das erste Widerholspektrum auf die 16 MHz. Mit dem Tool-Block Spectrum Scope
lässt sich das Frequenzverhalten im Bereich ]...0[ SF darstellen (Bild 6.10). Nach der
Filterung ist deutlich eine Abrundung des Signalspektrums zu erkennen.
Bild 6.10: Frequenzspektrum des QAM-Signals vor und nach der Filterung
6.3 Teilzusammenfassung
In diesem Abschnitt konnte das Konzept und Funktionsweise der Timing Recovery
anhand der Simulationsergebnisse gezeigt werden. Die Simulation beschränkt sich
hier auf einen statischen Abtastfehler, da das Modell des Modulators und der Timing
Recovery mit einem synchronen Takt arbeiten. Auf den dynamischen Fall soll dann im
Kapitel 7 näher eingegangen werden. Die Modell-Datei Timing_Recovery.mdl ist auf
der Anhangs-CD zu finden.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 63 von 87
7 Hardware-Design Dieses Kapitel beschreibt die Programmierung der digitalen Timing Recovery in einen
FPGA-Baustein des CHIPit-Boards. Nach der Einleitung in die Entwicklungsumgebung
ISE wird auf das vereinfachte Design auf der Basis der Simulation aus dem Kapitel 6
eingegangen. Anschließend folgt die Implementierung und Inbetriebnahme des De-
signs in der Hardware.
7.1 Entwicklungsumgebung ISE Für den Entwurf des Hardware-Designs wurde die Entwicklungsumgebung ISE (In-
tegrated Software Environment) von der Firma Xilinx verwendet. Beim Anlegen eines
neuen Projekts erfolgt ein Eintrag über die verwendete Hardware, Beschreibungs-
sprache und den Simulator. Die Entwicklungsoberfläche bildet der so genannte Pro-
jekt Navigator, in dem die folgenden Schritte nach [27] abgearbeitet werden:
• Kreieren eines Quellcodes (z.B. mit der Bezeichnung: *.vhdl)
• Synthetisieren des Quellcodes (Syntaxcheck: netlist file)
• Simulieren auf Funktionalität (z.B. Modelsim: *.wave)
• Routen (Umwandeln des Designs auf ein physikalisches Format: *.bit)
• Programmieren (Transferieren des bit-files in den FPGA-Baustein)
Für dieses Projekt wurde der Xilinx FPGA-Baustein (Field Programmable Gate Array)
mit der Bezeichnung Virtex-II XC2V6000 verwendet. Die Implementierung erfolgte in
der Sprache VHDL (Very High Speed Integrated Circuit Hardware Description Langu-
age), und simuliert wurde das Design mit dem Programm ModelSim von der Firma
Model Technology.
Ein weiteres eingesetztes Werkzeug ist der CORE-Generator, der speziell für die Xi-
linx FPGAs konzipiert wurde. Er verfügt über einen Katalog von bereits vorgefertigten
Komponenten, die in das eigene Design eingebunden werden können [28].
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 64 von 87
7.2 Vereinfachtes Design Um den Arbeitsaufwand auf einen überschaubaren Bereich zu begrenzen, sollte die
Implementierung der Timing Recovery auf eine BPSK (Binary Phase-shift Keying) be-
schränkt werden. Dabei handelt es sich um eine vereinfachte Signalform, die nur ein
Bit pro Symbol transportiert. Das zugehörige Konstellationsdiagramm ist im Bild 7.1
illustriert. Weil das komplexe Signal sich nur auf der Reellachse bewegt, kann der
Imaginärzweig im Modulator und in der Timing Recovey entfallen. Folglich entsteht ein
vereinfachtes VHDL-Design, dessen Grundfunktionen erhalten bleiben (Bild 7.2). Die
Bezeichnungen der Ausgangssignale sind analog zu den Blocknamen ausgeführt. Die
Angabe über die Taktfrequenz ist jeweils den Blöcken zugeordnet.
I
Q
10
BPSK
Bild 7.1: Konstellationsdiagramm einer BPSK
TED
LoopFilterNCO
TED_OUT
Farrow_OUTFarrowS_FarrowSRRC-
FilterBPSK-Signal
LOOP_OUTLaufindex
NCO_Enable
CLK_40 CLK_20
CLK_20
CLK_20
S_Laufindex
BPSK_OUT COS_FIR_OUT
S_Farrow_OUT
CLK_20CLK_20CLK_4
Bild 7.2: Das vereinfachte VHDL-Design des Modulators und der Timing Recovery
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 65 von 87
7.3 Implementierung im FPGA Der verwendete Virtex-II-Baustein XC2V6000 enthält 1104 I/O-Anschlüsse (In-
put/Output) und kann mit einer internen maximalen Taktfrequenz von 420 MHz betrie-
ben werden. Die Speicherkapazität wird in Anzahl der Configurable Logic Blocks
(CLB) angegeben und beträgt bei diesem Typ maximal 8448. Der Baustein wird mit
einer Spannung von 3.3 V betrieben [29].
Der FPGA verfügt über einen Digitalen Clock Manager (DCM) mit dem der Eingangs-
takt über eine Rückführung (CLKFB) einsynchronisiert wird. Die DCM enthält außer-
dem weitere Funktionen zur Vervielfachung, Teilung sowie zur Phasenverschiebung
der Taktfrequenz (siehe Tabelle 7.1). Diese Ausgänge werden auf globale Takt-Buffer
(BUFG) geführt um die interne Logik des Bausteins mit einem exakten Takt zu versor-
gen.
Tabelle 7.1: Ein- und Ausgänge der DCM
CLKIN Eingangstakt CLK0 Takt bei 1x CLKIN CLK180 Takt bei 1x CLK0 und 180° phasengedreht CLK2X Takt bei 2x CLK0 und in Phase mit CLK0 CLKDV Takt bei (1/N) x CLK0 und in Phase mit CLK0
Von einer Testbench wird ein Takt von 40 MHz bereitgestellt. Daraus werden mittels
der DCM vier unterschiedliche Takte (CLK_4, CLK_20, CLK_40) für den Betrieb des
VHDL-Designs im Bild 7.2 generiert. Weiterhin gibt es ein asynchrones Reset, um
während der Startbedingung alle verfügbaren Register auf Null zu setzten.
Die Implementierung einzelner Blöcke wird auf Prozesse mit der gleichen Bezeich-
nung aufgeteilt. Ein Prozess stellt dabei ein Konstrukt dar, in dem Signalzuweisungen
und Operationen stets taktsynchron erfolgen. Die nächsten Abschnitte beschreiben
kurz ihre Implementierung.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 66 von 87
7.3.1 BPSK-Prozess Für die Erzeugung eines Testsignals, wird aus dem CLK_4-Takt ein alternierendes
BPSK-Signal mit einer Symbolrate von 4 MHz gebildet. Das Ausgangssignal wird zu
einem 12-Bit breiten Bus mit der Bezeichnung BPSK_OUT zusammengefasst. Die
positive Flanke erhält den hexadezimalwert 258 (dezimal = 600) und die negative
Flanke DA8 (dezimal = -600).
7.3.2 SRRC- Prozess Die Bandbegrenzung des BPSK-Signals mit der Sqare-Root Raised Cosine Charakte-
ristik wird mit einem FIR-Filter aus dem CORE-Generator von Xilinx realisiert. Der
Funktionsblock vom Typ Distributed Arithmetic FIR Filter, wie im Bild 7.3 dargestellt,
enthält zwei Datenbusse für die eingehenden und ausgehenden Daten (DIN, DOUT),
sowie weitere Steueranschlüsse für den Takt, Reset und Handshakesignale. Die er-
mittelten Filterkoeffizienten (65 Taps) aus Kapitel 6.1.1 wurden in eine *.coe-Datei ge-
schrieben und in den CORE eingebunden. Anhand der Angabe über die symmetrische
Form der Impulsantwort, erfolgt im CORE eine weitere Minimierung der Logikressour-
cen.
Bild 7.3: Ausschnitt aus dem CORE-Generator beim Erzeugen des SRRC-Filters
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 67 von 87
Um eine Signalfolge mit fünf Abtastwerten pro Symbol zu erhalten, wird der FIR-Filter
mit einer Taktfrequenz von 20 MHz (CLK_20) betrieben. (Der AD-Umsetzer tastet spä-
ter auch mit fünf Werten pro Symbol ab). Das entspricht der fünffachen Frequenz der
Symbolrate. Am Ausgang steht ein sinusähnlicher8 Verlauf mit der Bezeichnung
COS_FIR_OUT zur Verfügung. Das Signal wird anschließend für den Eingang des
S_Farrow-Filters von 25 auf 12 Bit begrenzt9.
7.3.3 Farrow- Prozess Die Farrow-Prozesse für das Erzeugen „S_Farrow“ und Korrigieren „Farrow“ des Ab-
tastfehlers sind identisch aufgebaut und unterscheiden sich lediglich in der Namens-
gebung der Signale („S“ steht für Störung). Im Weiteren soll deshalb der allgemeine
Aufbau erklärt werden.
Nach dem Prinzip der in Bild 5.16 aufgeführten Struktur, wird jede Spalte des Farrow-
Filters von )0(v bis )3(v mit einem FIR-CORE aus vier Filterkoeffizienten gebildet. Die
Ausgangssignale werden zunächst registriert und auf eine Busbreite von 18 Bit festge-
legt. Danach erfolgt eine multiplikative und additive Verknüpfung der Signale mit dem
Laufindex, dessen Wertebereich in Potenzen zur Basis zwei skaliert wird (0 bis
65536). Die Farrow-Struktur ist so normiert, dass bei der Bedingung Laufindex = 0
oder Laufindex = 65536 das Ausgangssignal gleich dem Eingangssignal ist (keine In-
terpolation).
7.3.4 TED- Prozess Für das Verzögern der Abtastwerte gemäß dem Zero-Crossing Verfahren aus Bild 5.8
dienen Datenregister, die das Signal einen Taktzyklus zwischenspeichern. Die zweifa-
che Vorzeichenbewertung mit der Sign() Operation wird durch eine Fallunterscheidung
gebildet, die prüft ob das Eingangssignal größer, kleiner oder gleich Null ist. Unmittel-
8 Eine Wellenform wird dann sinusförmig genannt, wenn der Spannungsanstieg in Stufen geschaltet ist (trapezför-mig) [30]. 9 Die Verstärkung des Signals wird mit der Breite des Buses festgelegt. Beim weglassen der nichtsignifikanten Bits kann eine Dämpfung ohne Verformung im Signal erzielt werden.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 68 von 87
bar danach erfolgt dann die Signalzuweisung. Ein Struktogramm im Bild 7.4 soll das
verdeutlichen. Dem folgen eine Differenzbildung und eine Multiplikation für das Aus-
gangssignal TED_OUT.
Abfrage
Farrow_out > 0 Farrow_out < 0
Fall 1Fall 2
Farrow_out = 0Fall 3
TED_sign1 =32768
TED_sign1 =-32768
TED_sign1 =0
Bild 7.4: Struktogramm für die Sign-Operation
7.3.5 Loop-Filter-Prozess Aufgrund der Multiplikation im TED erhöht sich die Busbreite des Signals TED_OUT
von 18 auf 36 Bit. Um auf eine aufwändige Division zu verzichten, werden die Verstär-
kungsfaktoren für den Proportional- und den Integralteil durch Bitshift-Operationen
ersetzt. Infolge dessen erhält der Proportionalteil LOOP_KP eine Bitbreite von 11 Bits
und der Integralteil LOOP_KI eine Bitbreite von 6 Bits. Nach weiteren Rechenschritten
steht am Ausgang des Signal LOOP_OUT zur Verfügung.
Im gleichen Prozess wird außerdem der Eingang für den NCO vorbereitet. Die Zähl-
frequenzkonstante für das Dekrement mit der Bezeichnung NCO_SAMP_CONST wird
auf fünf Abtastwerte pro Symbol eingestellt: 131075/655365/1 =⇒ (bezogen auf den
maximalen Wert des Laufindexes) und zu dem gefilterten Signal LOOP_OUT addiert.
Entscheidend dabei ist, dass diese Addition zu einem Prozesstakt CLK_20 erfolgt, da
der Modulo-1 Zähler im nächsten Prozess mit dem doppelten Takt arbeitet.
7.3.6 NCO- Prozess Im Bild 7.5 ist das VHDL-Blockschaltbild des Modulo-1 Zählers zu sehen. Für die Sub-
traktion und die Modulo-Rechnung werden zwei Taktzyklen benötigt, deshalb wird der
Prozess mit dem doppelten Takt CLK_40 betrieben. Der Verzögerungsblock im Rück-
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 69 von 87
führzweig ist von daher überflüssig und fällt weg. Der Modulo-Operand 1 wird auf den
Wert 162 umnormiert um eine einheitliche Bitbreite zu gewährleisten.
+ Mod-1
2^16+
-NCO_IN NCO_DIFF
NCO_MODULO
Bild 7.5: VHDL-Blockschaltbild des Modulo-1 Zählers
Eine programmtechnische Umsetzung des Modulo-1 Zählers soll das Bild 7.6 verdeut-
lichen. Weil NCO_DIFF den Betrag 1622 ⋅ nicht überschreitet, beschränkt sich die
Fallunterscheidung auf den Bereich zwischen +131072 und -131071.
Abfrage
(NCO_DIFF > 0) &(NCO_DIFF > 65536)
Fall 1 Fall 2 Fall 3
NCO_MODULO =NCO_DIFF - 65536
Fall 4 Fall 5(NCO_DIFF > 0) &
(NCO_DIFF < 65536)
NCO_MODULO =NCO_DIFF
(NCO_DIFF < 0) &(NCO_DIFF > - 65536)
NCO_MODULO =NCO_DIFF + 65536
(NCO_DIFF < 0) &(NCO_DIFF < - 65536)
NCO_MODULO =NCO_DIFF + 131072
(NCO_DIFF = 0)
NCO_MODULO = 0
NCO_DIFF =NCO_MODULO - NCO_IN
Bild 7.6: Struktogramm für die Modulo-1 Operation
Im Weiteren wird verglichen ob NCO_DIFF kleiner Null ist. Ist das der Fall, so wird das
Signal NCO_Enable auf Eins gesetzt, ansonsten bleibt es auf Null. NCO_Enable stellt
gleichzeitig den rückgewonnen Takt dar und kann für die weitere Symbolverarbeitung
verwendet werden. Zum Schluss erfolgt die Skalierung des Laufindexes für den Far-
row-Filter wie oben bereits geschildert.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 70 von 87
7.3.7 Validierung mit ModelSim
Für die Validierung des Designs, wurde in VHDL eine Testbench geschrieben die in-
nerhalb eines Prozesses, einen 40 MHz Takt sowie ein Reset-Signal bereitstellt. Mit
dem ModelSim Simulator konnten die einzelnen Signalverläufe über die Zeit aufgetra-
gen und angezeigt werden. Um das Einschwingverhalten der Regelschleife besser
darzustellen zu können, wurden die Datenbusse zu analogen Signalen zusammenge-
fasst und über einen längeren Zeitbereich im Bild 7.7 abgebildet. Oben im Bild 7.7
sind die Verläufe des BPSK-Signals und des gefilterten SRRC-Signals dargestellt. Die
Sprungantwort des Timing Error Detectors (TED_Out), des Loop-Filters und des Lauf-
indexes ist für den Fall, dass die Abtastphase in der Filterstruktur S_Farrow auf einen
Offset von S_Laufindex = 32768 (0.5) eingestellt ist, zu sehen. Der statische Wert, auf
den sich der Laufindex einschwingt, beträgt 35537 und liegt in der Nähe des erwarte-
ten Werts 32768 (1-0.5=0.5). Die Funktionen der NCO-Signale wie im Kapitell 6.2 be-
reits erläutert, unterscheiden sich hier im Bezug auf die Anzahl der Abtastwerte.
Bild 7.7: Einschwingverhalten der Regelschleife bei S_Laufindex = 32768 (0.5)
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 71 von 87
Bild 7.8 zeigt einen vergrößerten Ausschnitt der Symbole am Ausgang des S_Farrow-
Filters und des Farrow-Filters. Vor dem Einschwingvorgang der Regelschleife sind
beide Signale zunächst identisch und haben aufgrund des interpolierten Phasenfeh-
lers von 0.5 eine Abweichung, bezogen auf das gefilterte SRRC-Signal. Mit zuneh-
mender Annäherung des Laufindexes an den Sollwert, verschieben sich die Werte
allmählich, bis ein Abtastwert das Signaloptimum erreicht hat. Am Ausgang des Far-
row-Filters steht dann das in der Phase korrigierte Signal zu Verfügung.
Bild 7.8: Symbole am Ausgang der Farrow-Filter vor und nach dem Einschwingvorgang
7.4 Das CHIPit-Board Die hardwaretechnische Umsetzung erfolgte mit dem CHIPit Professional Gold Edition
Board. Es enthält zwei FPGA-Bausteine des Typs Virtex-II 6000, die über eine JTAG-
Schnittstelle programmiert werden können. Das Board verfügt über weitere Schnitt-
stellen für den Anschluss externer Karten sowie zwei 96-polige Verbindungsstecker
für die Backplane. Zum Betreiben sind zwei Spannungen von 3.3 V und 5 V erforder-
lich.
Um das statische und dynamische Verhalten der Timing Recovery zu untersuchen,
wurde ein AD/DA-Umsetzter Board verwendet, das als Steckkarte auf das CHIPit-
Board aufgesteckt wurde. Darauf befinden sich zwei D/A-Umsetzer (AD9753) und
zwei A/D-Umsetzter (AD9430) von Analog Devices mit einer Auflösung von 12-Bit.
Eine externe Referenzfrequenz (FRef=10 MHz) dient als Taktquelle für diese Anord-
nung. Daraus erzeugt eine auf dem Board befindliche PLL eine Taktfrequenz von 40
MHz zum Betreiben der Bausteine. Das AD/DA-Umsetzter Board wird separat mit ei-
ner Versorgungsspannung von +5 V gespeist.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 72 von 87
Das Bild 7.9 zeigt das Blockschaltbild des CHIPit-Boards mit dem AD/DA-Board. Die
Messpins dienen als Monitorsignale und werden über den Verbindungsstecker der
Backplane zum Logic-Analyzer geführt. Der zugehörige praktische Messaufbau ist im
Bild 7.10 zu sehen. Über die Parallelschnittstelle des Programmierrechners wird das
bit-file mit einem Programmieradapter (Xilinx Dowload Cable) in den FPGA 1 geladen.
CHIPit-Board
FPGA 1
AD/DA-Board
Modulator
DAC
TimingRecovery
ADCAnalog-Filter
12 Bit 12 Bit
FRef
Messpinszum
Logic-Analyzer
Sinus-Generator
2 MHz/5 dBm
Dynamisch
Statisch
12 Bit
12 Bit
SMB_1 SMB_2 SMB_3
Port_A Port_B
12 Bit
40 MHz 40 MHz
40 MHz
Port_A
Bild 7.9: Blockschaltbild des CHIPit-Boards mit dem AD/DA-Board
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 73 von 87
Bild 7.10: Programmier- und Messaufbau
A: Referenzfrequenzgenerator
B: Programmierrechner
C: Netzteil
D: CHIPit-Board mit dem AD/DA-Umsetzter
F: Anschlussleitungen zum Logic-Analyzer
E: Sinusgenerator (externe Symbolquelle)
7.4.1 Test des statischen Verhaltens Im ersten Schritt wurde die Timing Recovery auf ihr statisches Verhalten untersucht.
Statisch bedeutet, dass der Sender und Empfänger mit demselben Takt arbeiten und
zueinander bis auf den Phasenversatz synchron sind. Dazu wurde das gefilterte
BPSK-Signal aus dem Modulator (FPGA 1) über zwei 12-Bit breite Ports mit je 20
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 74 von 87
MHz auf den DA-Umsetzer geführt10. Nach der Digital-Analog-Wandlung stand an der
Buchse SMB_1 ein sinusähnliches BPSK-Signal bereit. Zur Bandbegrenzung wurde
ein analoger Tiefpassfilter mit der Grenzfrequenz 10.7 MHz nachgeschaltet (siehe Bild
7.9).
Nach der Analogfilterung wurde das Signal auf die Buchse SMB_2 geführt und von da
aus auf den Eingang des AD-Umsetzers. Um fünf Abtastwerte pro BPSK-Symbol zu
erhalten, wurde nur Port_A mit der Abtastfrequenz von 20 MHz verwendet. Das digita-
lisierte Signal wurde dann zum Regeln auf den Eingang der Timing Recovery (FPGA
1) geführt.
Nach dem Abtasten mit fünf Werten pro Symbol konnten die Verläufe vor und nach
der Timing Recovery über den Logic-Analyzer angeschaut werden. Zu erkennen war,
dass die Abtastwerte vor der Regelung, nicht im Signalmaximum lagen sondern sta-
tisch relativ verschoben. Am Ausgang der Timing Recovery hingegen war dieser Ver-
satz korrigiert, sodass einer der Abtastwerte nahezu ideal im Signalmaximum lag. Im
Nachhinein wurde das Signal Laufindex rausgeführt und gemessen. Der Laufindex
war wie erwartet auf einen statischen Wert eingeschwungen und veränderte sich
nicht.
7.4.2 Test des dynamischen Verhaltens Im zweiten Schritt wurde das dynamische Verhalten mit einem externen Sinusgenera-
tor getestet. Hier ist der Empfänger von dem Sender taktmäßig vollständig entkoppelt,
wie es in der Praxis häufig der Fall ist. Die Sinusfrequenz wurde auf 2 MHz eingestellt,
somit stellte jede Halbwelle ein Symbol mit der Übertragungsrate von 4 MHz dar.
Nach dem Anschließen des Signals an die Buchse SMB_2 konnten die Symbole mit
fünf Abtastwerten abgetastet werden. Die Messergebnisse am Logic-Analyzer sind vor
der Regelung der Abtastphase im Bild 7.11 und nach der Regelung im Bild 7.12 dar-
gestellt. Der Unterschied zwischen dem statischen und dynamischen Verhalten vor
der Timing Recovery konnte am besten in Echtzeit beobachtet werden. Im zweiten
Fall haben sich die Abtastwerte ständig in der Abtastphase verschoben.
10 Der DA- und AD-Umsetzer verfügen über zwei Eingangs- bzw. Ausgangsports (Port_A, Port_B) um durch Zeit-multiplexen eine größere Geschwindigkeit bei hohen Datenraten zu erzielen.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 75 von 87
Der weitere Test bestand darin, einen Frequenzversatz zu simulieren. Dazu wurde die
Symbolfrequenz am Sinusgenerator in 4 kHz-Schritten nach oben wie nach unten vari-
iert. Anhand des Laufindexes konnte beobachtet werden, wie die Schleife den Fre-
quenzfehler ausregelt. Das Bild 7.13 zeigt den Laufindex bei einer Symbolfrequenz
von 3.996000 MHz. Etwa alle Tausend Abtastwerte trat ein Überlauf des Laufindexes
ein um einen überschüssigen Abtastwert zu „skippen“. Entgegengesetzt dazu erfolgte
bei einer Symbolfrequenz von 4.004000 MHz (siehe Bild 7.14) ein Unterlauf des Lauf-
indexes um einen fehlenden Abtastwert zu „stuffen“. Der Steigungsfaktor des Laufin-
dexes veränderte sich proportional zu der zunehmenden oder abnehmenden Symbol-
frequenz.
Der Frequenzversatz bezogen auf die aktuelle Symbolrate wird als Frequenzoffset
bezeichnet und in parts per million (ppm) angegeben. Für dieses Beispiel gilt:
HzMHzvonppm 441 =
Ein Frequenzversatz von 4 kHz ergibt demnach:
ppmHz4
ppmkHz4 10001=
⋅
Ein vorgegebener Frequenzversatz von 20 kHz konnte noch sicher ausgeregelt wer-
den. Daraus resultiert ein maximales Frequenzoffset von 5000 ppm.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 76 von 87
Bild 7.11: Abgetastetes Signal vor der Timing Recovery
Bild 7.12: Abgetastetes Signal nach der Timing Recovery
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 77 von 87
Bild 7.13: Verlauf des Laufindexes beim Verringern der Sendefrequenz
Bild 7.14: Verlauf des Laufindexes beim Erhöhen der Sendefrequenz
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 78 von 87
8 Schlussbetrachtungen
8.1 Zusammenfassung
Das zentrale Thema der vorliegenden Arbeit war die Konzeption und Realisierung der
digitalen Symboltaktsynchronisation für einen DVB-C Empfänger.
Im ersten Teil der Arbeit konnte anhand des bereits verwendeten Atmel-Empfängers
AT76C651B ein Lösungsansatz hinsichtlich der Reihenfolge der Funktionsblöcke er-
arbeitet werden. Dem folgte die Betrachtung technischer Grundlagen aus dem DVB-
Standard zu digitalen Modulationsverfahren und Übertragungstechnik.
Im zweiten Teil der Arbeit wurden vorwiegend theoretische Abhandlungen sowie Algo-
rithmen zur Symbolsynchronisation vorgestellt. Dazu gehören Fehlerbewertungsver-
fahren die anhand des abgetasteten Signals eine Entscheidung über die Lage der Ab-
tastwerte bezüglich des optimalen Abtastzeitpunktes treffen. Weiterhin wurden zwei
Korrekturmechanismen vorgestellt, die auf einem Interpolationsprinzip arbeiten. Aus
der Sicht der zu implementierenden Logikressourcen wurde das Zero-Crossing Algo-
rithmus für die Fehlerbewertung und die kubische Farrow-Struktur für die Korrektur der
Abtastwerte gewählt.
Basierend auf den theoretischen Grundlagen, konnte ein Grundkonzept bestehend
aus dem Modulator und der Timing Recovery aufgestellt und mit dem Programm Mat-
lab/Simulink simuliert werden. Als Symbolquelle diente im Modulator ein 16-QAM-
Signal mit einer Symbolrate von 4 MHz. Ein statischer Phasenversatz der Abtastwerte,
der mit Hilfe der Farrow-Struktur nachgebildet wurde, konnte von der Timing Recovery
korrigiert werden.
Als Nächstes erfolgte die Implementierung der Timing Recovery in einen FPGA-
Baustein. Als Eingangssignal wurde eine BPSK-Signalform mit einer Symbolrate von 4
MHz zugrunde gelegt. Ähnlich wie in der Matlab-Simulation wurde der Phasenversatz
der Abtastwerte zunächst statisch mit einer Farrow-Struktur simuliert. Auch hier konn-
te eine Korrektur der Abtastwerte bezüglich des Signaloptimums erreicht werden.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 79 von 87
Nach erfolgter Implementierung und Validierung des Programmcodes, konnte schließ-
lich das Design in Betrieb genommen werden. Unter Verwendung des CHIPit-Boards,
des Erweiterungsmoduls AD/DA-Umsetzer und einer externen Symbolquelle wurde
das statische und dynamische Verhalten der Symbolsynchronisation getestet. Im Er-
gebnis zeigte sich, dass sowohl die Korrektur der Phase für den statischen Fall wie
auch die Korrektur des Frequenzversatzes für den dynamischen Fall bis 5000 ppm
funktionierte.
8.2 Ausblick Die hier dargestellte Form der Timing Recovery dient als Basis für die Entwicklung
einer kommerziell nutzbaren Timing Recovery. Der Weg dorthin erfordert höhere Mo-
dulationstypen wie die Synchronisation einer 64-QAM, wozu noch ein Imaginärzweig
angefügt werden muss. Neben der Änderung im Quellcode wäre ein externer Symbol-
generator für die Bereitstellung höherer QAM-Signale notwendig, um das Synchroni-
sationsverhalten der Timing Recovery zu testen und zu optimieren.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 80 von 87
Bilderverzeichnis
Bild 2.1: DVB-Tuner und Demodulator mit Schnittstellen ...................................................................11 Bild 2.2: Die innere Struktur des AT76C651B.....................................................................................12 Bild 2.3 Analoges und digitales Frequenzspektrum............................................................................16 Bild 2.4: Komplexes Basisbandsignal mit positiven und negativen Frequenzen ................................17 Bild 3.1: Parallelisierung von Bits auf Symbole...................................................................................19 Bild 3.2: Blockschaltbild eines Quadratur-Amplitudenmodulators ......................................................20 Bild 3.3: Konstellationsdiagramm einer 4-QAM links und einer 16-QAM rechts.................................21 Bild 3.4: Das NRZ-Signal vor der Filterung (oben) und die interferenzfreien Symbole nach der
Filterung unter ersten Nyquistbedingung (unten) ..............................................................22 Bild 3.5: Messanordnung für die Darstellung des Augendiagramms..................................................24 Bild 3.6: Übertragungsfunktionen und die zugehörige Augendiagramme bei einem Roll-Off-
Faktor von r=1 (Oben), r=0,35 (Mitte) und r= 0,15 (Unten) [7] ..........................................24 Bild 3.7: Intersymbol-Interferenz aufgrund der Mehrwegausbreitung [8] ............................................25 Bild 3.8: Spektrum eines Mehrträgersystems .....................................................................................26 Bild 3.9: Mehrträger-Übertragung mit Guard-Intervall [8]....................................................................27 Bild 3.10: Spektrum eines Einträgersystems ......................................................................................27 Bild 4.1: Elemente linearer digitaler Filter ...........................................................................................29 Bild 4.2: Strukturalisierung eines FIR-Filters.......................................................................................30 Bild 4.3: Strukturrealisierung eines IIR-Filters.....................................................................................31 Bild 5.1: In Phase und Frequenz verzerrte Symbolfolge [14]..............................................................32 Bild 5.2: Prinzip der analogen Timing-Synchronisation ......................................................................34 Bild 5.3: Prinzip der digitalen Timing-Synchronisation........................................................................34 Bild 5.4: Timing Bewertung nach dem Gardner Algorithmus ..............................................................36 Bild 5.5: Blockschaltbild des Gardner Detektors .................................................................................37 Bild 5.6: Timing Bewertung nach dem Early-Late Gate Algorithmus..................................................38 Bild 5.7: Ausgangsignal des Zero-Crossing Detectors bei später und früher Abtastung....................39 Bild 5.8: Blockschaltbild des Zero-Crossing Detektors .......................................................................39 Bild 5.9: Timing Bewertung nach dem Mueller und Müller Algorithmus..............................................41 Bild 5.10: Blockschaltbild des Loop-Filters..........................................................................................42 Bild 5.11: Blockschaltbild des Numeric Controlled Oscillators............................................................43 Bild 5.12: Prinzip des Modulo-1 Zählers im Bezug auf die Korrektur des Abtastzeitpunktes [22] ......44 Bild 5.13: Eine Steuerungssequenz für den Abtastratenausgleich während eines Überlaufs............45 Bild 5.14: Ein- und Ausgangsfolge des Interpolators ..........................................................................47 Bild 5.15: Prinzipdarstellung einer kubischen Interpolation ................................................................48 Bild 5.16: Ausführung der kubischen Interpolation mit Farrow-Struktur..............................................49 Bild 5.17: Übersprechen der Frequenzanteile bei der kubischen Interpolation ..................................50
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 81 von 87
Bild 5.18: Ausführung der Interpolation mit Polyphasenfilter-Struktur ................................................51 Bild 6.1: Impulsantwort eines Sqare-Root Raised Cosine Filters mit r = 1 .........................................54 Bild 6.2: Das Grundkonzept des Simulink Modells .............................................................................55 Bild 6.3: Bildung der Enable-Impulse aus dem Unterlauf des Modulo-1 Zählers ...............................57 Bild 6.4: Schaltung für die Skalierung des Laufindexes......................................................................57 Bild 6.5: Prinzipaufbau eines Hold-Blocks ..........................................................................................57 Bild 6.6: Einschwingverhalten des TEDs, des Loop-Filters und des NCOs bei µstör = 0,5 ..................58 Bild 6.7: Überlauf des Laufindexes bei einem größeren Sprung im Störfaktor...................................59 Bild 6.8: Konstellationsdiagramme einer 16-QAM vor dem Einschwingvorgang (links) und
nach dem Einschwingvorgang (rechts)..............................................................................60 Bild 6.9: Augendiagramme eines 16-QAM Signals nach der Filterung mit einem SRRC-Filter
bei einem Roll-Off Faktor 1 (links) und einem Roll-Off Faktor 0,5 (rechts) .......................61 Bild 6.10: Frequenzspektrum des QAM-Signals vor und nach der Filterung......................................62 Bild 7.1: Konstellationsdiagramm einer BPSK ....................................................................................64 Bild 7.2: Das vereinfachte VHDL-Design des Modulators und der Timing Recovery .........................64 Bild 7.3: Ausschnitt aus dem CORE-Generator beim Erzeugen des SRRC-Filters ...........................66 Bild 7.4: Struktogramm für die Sign-Operation ...................................................................................68 Bild 7.5: VHDL-Blockschaltbild des Modulo-1 Zählers........................................................................69 Bild 7.6: Struktogramm für die Modulo-1 Operation............................................................................69 Bild 7.7: Einschwingverhalten der Regelschleife bei S_Laufindex = 32768 (0.5)...............................70 Bild 7.8: Symbole am Ausgang der Farrow-Filter vor und nach dem Einschwingvorgang.................71 Bild 7.9: Blockschaltbild des CHIPit-Boards mit dem AD/DA-Board...................................................72 Bild 7.10: Programmier- und Messaufbau...........................................................................................73 Bild 7.11: Abgetastetes Signal vor der Timing Recovery....................................................................76 Bild 7.12: Abgetastetes Signal nach der Timing Recovery .................................................................76 Bild 7.13: Verlauf des Laufindexes beim Verringern der Sendefrequenz ...........................................77 Bild 7.14: Verlauf des Laufindexes beim Erhöhen der Sendefrequenz ..............................................77
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 82 von 87
Tabellenverzeichnis
Tabelle 3.1: Differenzielle Kodierung der Symbole.............................................................................21 Tabelle 5.1: Farrow-Koeffizienten für kubische Interpolation..............................................................49 Tabelle 7.1: Ein- und Ausgänge der DCM ..........................................................................................65
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 83 von 87
Literaturverzeichnis
[1] Christoph Juchems, Frank Luhn, Martin Drischler, Ronny Zavrtak: Konzeptstudie über Entwick-
lung eines FPGA basierten DVB-C Messempfängers, Version 1.0, 7. Juli 2005
[2] Atmel: Digital Reception/Transmission IC Integrated DVB-compliant QAM Demodulator
AT76C651B, Summary, Rev. 1375BS-11/01
[3] European Standard: Digital Video Broadcasting (DVB); Framing structure, channel coding and
modulation for cable systems, EN 300 429, V1.2.1, (1998-04)
[4] Ulrich Reimers: Digitale Fernsehtechnik: Datenkompression und Übertragung für DVB, 2 Aufl.
Springer-Verlag Berlin Heidelberg New York 1995 und 1997.
[5] Wikipedia, die freie Enzyklopädie, DVB
http://de.wikipedia.org/wiki/DVB
[6] Wikipedia, die freie Enzyklopädie, Non Return to Zero
http://de.wikipedia.org/wiki/Non_Return_to_Zero
[7] Grundlagen der digitalen Modulation eines harmonischen Trägers:
http://www.hf.e-technik.tu-
darmstadt.de/lehre/12/Additional%20material%20to%20the%20lecture/8-1-dig-signale-2003-05-
15.pdf
[8] DRM - Die Technik: http://www.drm-info.de/tech.htm
[9] Schwerpunktlabor Nachrichtentechnik, Das OFDM-Multiträgerverfahren, 14 April 2005
http://www.comm.uni-bremen.de/teaching/slab/ofdm_ss2005_de.pdf
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 84 von 87
[10] M. Schenk, D. Schmücking, A. Wörner, I. Ruge: VDSL (Very high bitrate Digital Subscriber Li-
ne) - die 3. Generation der digitalen Teilnehmeranschlussleitung, Lehrstuhl für integrierte Schal-
tungen, TU München
http://www.lis.ei.tum.de/research/lm/papers/telekom_praxis96a.pdf
[11] Dirk Jaeger: Kurzbeschreibung der Dissertation, Übertragung von hochratigen Datensignalen in
Breitbandkommunikationsnetzen
http://www.ifn.tu-bs.de/tv/jaeger/index.html?Verweise.htm&IndividuelleSeite.htm
[12] Wikipedia, die freie Enzyklopädie, Intermodulation
http://de.wikipedia.org/wiki/Intermodulation
[13] Prof. Dr.-Ing. Sehmisch: Digitale Signalverarbeitung, Fachhochschule Braunschweig/Wolfen-
büttel, Fachbereich Elektrotechnik
[14] John R. Barry: Iterative Timing Recovery: School of Electrical and Computer Engineering,
Georgia Tech Atlanta, Georgia U.S.A
http://dimacs.rutgers.edu/Workshops/Storage/slides/barry.pdf
[15] Louis Litwin, Matched filtering and timing Recovery in digital receivers
http://images.industryclick.com/files/4/0901Litwin32.pdf
[16] Heinrich Meyer, Marc Moeneclaey, Stefan A. Fechtel: Digital Communication Receivers, Syn-
chronisation, Channel Estimation, And Signal Processing, Canada 1998
[17] Fredric J. Harris, Michael Rice: Multirate Digital Filters for Symbol Timing Synchronisation in
Software Defined Radios: IEEE Journal on Selected Areas in Communications, VOL. 19, NO.
12, December 2001
[18] Floyd M. Gardner: A BPSK/QPSK Timing-Error Detector for Sampled Receivers: IEEE Transac-
tions on Communications, VOL. COM-34. NO. 5. May 1986.
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 85 von 87
[19] Justin Ashby, Adam Gray, Seth Wood, Brian Yoho: Three Nerds and a Joke, Final Report
www.ece.byu.edu/ugrad/srprojects/swradio/Winter2005/3NJ/Documents/Final%20Paper2.doc
[20] Louis Litwin: Using PLLs to Obtain Carrier Synchronisation,
Thomson Multimedia, April 02, 2003
http://www.us.design-reuse.com/articles/article5187.html
[21] Chip Flemming: First-Order Digital Filters for Second-Order Digital PLLs,
Spectrum Applications, 2002
http://pweb.netcom.com/~chip.f/plls.htm
[22] Chapter 3, Synchronisation
http://www.ee.byu.edu/class/ee485public/ee485.fall.03/lectures/synchronization_notes.pdf
[23] Xiong Liu and Alan N.Willson, Jr.: A new interpolated symbol timing recovery method: University
of California, Los Angeles, CA 90095
http://www.ee.ucla.edu/faculty/papers/willson_ISCAS-may04_vol2.pdf
[24] Floyd M. Gardner: Interpolation in Digital Modems-Part I: Fundamentals: IEEE Transactions on
Communications, VOL. 41, NO. 3. March 1993.
[25] Lars Erup, Floyd M. Gardner, Robert A. Harris: Interpolation in Digital Modems-Part II: Imple-
mentation and Performance: IEEE Transactions on Communications, VOL. 41, NO. 6, June
1993.
[26] Symbol Timing Synchronisation for Sampled Data Receivers
http://www.ee.byu.edu/class/ee485public/ee485.fall.01/lectures/Lecture29Fall2001.pdf
[27] Xilinx ISE Overview, ISE Help:
file:///D:/Xilinx/doc/usenglish/help/iseguide/iseguide.htm#html/ise_b_overview.htm
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 86 von 87
[28] Xilinx, Products & Services, CORE Generator
http://www.xilinx.com/xlnx/xebiz/designResources/ip_product_details.jsp?key=dr_dt_coregener
ator
[29] Xilinx Datasheets, Virtex-II Platform FPGAs: Introduction & Overview, March 1, 2005
[30] Fischer Panda, Technische Begriffe und Abkürzungen
http://www.fischerpanda.de/abbr/deu/M
Konzeption und Implementierung einer digitalen
Symboltaktsynchronisation für DVB-C
Wilhelm Brodt Seite 87 von 87
Anhang Der gesamte Anhang befindet sich auf der beiliegenden CD und enthält Datenblätter,
Dokumentationsunterlagen und Spezifikationen die mit der Arbeit zusammenhängen.
Ein Gesamtüberblick über den Inhalt der CD ist im Folgenden tabellarisch aufgelistet.
Inhalt der CD
\Timing_Recovery Das ISE Projekt zu Symboltaktsynchronisation
AD9430.pdf Datenblatt zum A/D Converter
AD9753.pdf Datenblatt zum D/A Converter
AD-DA_Rev1_engl.pdf Datenblatt zum AD/DA-Conversion Board
AT76C651B.pdf Datenblatt zum Atmel-Demodulator
CHIPit_Handbook.pdf Handbuch zum CHIPit Professional Gold Edition Board
DA_FIR.pdf Datenblatt zum Distributed Arithmetic FIR Filter
DCM.pdf Datenblatt zum Virtex-II Digital Clock Manager
Diplomarbeit_W_Brodt.pdf Vorliegende Diplomarbeit
EN300429.pdf Europäischer Standart für DVB-C
ICS8432-101.pdf Datenblatt zum Frequency Synthesizer
ICS87322I.pdf Datenblatt zum Clock Generator
KWS_Studie_DVB_C.pdf Konzeptstudie über "Entwicklung eines FPGA basierten DVB-C Messempfängers"
Timing_Recovery.mdl Simulationsmodell zu Matlab/Simulink
Virtex-II.pdf Datenblatt zu FPGA-Plattform Virtex-II