Entwicklung eines DSP Boards mit Audio Codecs Bachelorarbeit durchgeführt von Julius Drescher Institut für Signalverarbeitung und Sprachkommunikation der Technischen Universität Graz Betreuer: Dipl.-Ing. Dr.techn. Werner Magnes Graz, im Juli 2013 EIDESSTATTLICHE ERKLÄRUNG Ich erkläre an Eides statt, dass ich die vorliegende Arbeit selbstständig verfasst, andere als die angegebenen Quellen/Hilfsmittel nicht benutzt und die den benutzten Quellen wörtlich und inhaltlich entnommenen Stellen als solche kenntlich gemacht habe. Graz, am …………………………… ……………………………………………….. (Unterschrift) Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Zusammenfassung 2011 entstand zusammen mit einem Kommilitonen die Idee, einen aktiven 3-WegeStudiomonitor (Projektname: „BigMon“) zu bauen. Im Laufe der Entwicklung ergaben sich zusehends Probleme, welche mit analoger Technik nur schwer lösbar waren. Allen voran die Tatsache der verschiedenen akustischen Zentren und damit verbundenen Laufzeitdifferenzen zwischen den Chassis. Analog kann eine Zeitverzögerung mit Allpässen hoher Ordnung realisiert werden. Messtechnisch wurde die Notwendigkeit von 0.2 ms ermittelt. Das hätte immensen Schaltungsaufwand und hohe Kosten bedeutet. Durch die Verwendung von Hornsystemen zur Zeitanpassung entstehen Verzerrungen, sodass auch diese Möglichkeit wegfiel. Aus Kosten und Leistungsgründen drängte sich die Verwendung eines digitalen Signalprozessors (DSP) auf. Hiermit sollte dann die spätere Anpassung an den Raum und die Einbindung diverser Schutzschaltungen einfacher realisierbar sein. Diese Arbeit beschreibt die Planung und Fertigung einer DSP-Platine. Der Prozessor wurde nach den Kriterien ausgewählt, bei der Verwendung in BigMon, optimal ausgelastet zu werden. Zudem könnten durch zwei Ein- und vier Ausgänge andere Projekte realisiert werden. Dabei war es wichtig, dass die Platine am Ende ohne Kenntnisse einer Programmiersprache und von jedem PC aus programmierbar ist. Um sich mit den einzelnen Komponenten einer DSP-Platine getrennt auseinander setzen zu können, wurden zuerst einfache Test-Platinen für Netzteil, Programmiergerät und DSP gefertigt, welche nur das Nötigste zur Verfügung stellen. Die Erfahrungen, die mit diesen Platinen gesammelt wurden, flossen später in den Prototypen ein. Bei der Fertigung wurde auch der finanzielle Aspekt beachtet. Kostengünstige Bauteile wurden qualitativ hochwertigen vorgezogen, die Platine wurde in Through Hole Technology (THT) gefertigt und die Herstellung erfolgte zu Hause. Dadurch auftretende Probleme wurden erwartet und in Kauf genommen, da sie im späteren Anwendungsfall alle vermeidbar sind. Um einen besseren Überblick über das Gesamtprojekt zu erhalten, wird im Folgenden ein Blockschaltbild gezeigt (Abb. 1). In dieser Arbeit wird die Entwicklung und Herstellung des DSPs inklusive Ein- und Ausgangsstufen und Netzteil behandelt. Institut für Signalverarbeitung und Sprachkommunikation 3 Abstract In 2011 the idea to build a studio monitor together with a fellow student was born. The project got the name „BigMon“ due to its size. In the meantime of developing there´ve been problems, which couldn´t be solved by analog circuits. Espacially the different acoustical centre of the speakers and different inter-speaker-delay. In analog, a time delay can be realized by all-passes of higher order. By measuring the need of 0,2 ms was determined, which would be a high cost. With the use of horns for time-alignment, distortion is generated so this wouldn´t be an option. The need of a DSP was now clear. Whith a DSP the adaption to the room and a number of protection circuits would be possible, too. This paper describes the planning and modeling of a DSP-board. The processor was choosen to fit best in BigMon. It should have 2 inputs and 4 outputs so it can be used in other projects, too. It was very important that the Board could be programmed without knowledge in any programming language and with every 32-bit personal computer. To learn the different components of a DSP-board, simple test-boards were built for power supply, programmer and DSP, which have only the most necessary features. The experience with this boards flowed into the prototype. Also the financial aspect was pointed out. Cheap elements were pre-drawed to expensive ones. The board was assembled in THT-technique and the fabrication took place at home. problems induced by this fact were expected but no bigger attention was drawn to these beacuse in the case of BigMon, better parts could be used. To get a better overfiew over the whole project, a blockdiagram is shown in image 1. In this paper the planning and modeling of the DSP with the in- and output circuits and the power supply is shown. Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 1: Blockschaltbild "BigMon" Institut für Signalverarbeitung und Sprachkommunikation 5 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Inhaltsverzeichnis Zusammenfassung..................................................................................................................................................3 Inhaltsverzeichnis...................................................................................................................................................5 Abbildungsverzeichnis...........................................................................................................................................7 1 Einleitung..............................................................................................................................................................9 1.1 Motivation...............................................................................................................9 1.2 Ziele und Anforderungen.........................................................................................9 1.2.1 Ein- und Ausgänge.........................................................................................9 1.2.2 Messtechnische Ziele...................................................................................10 1.2.3 Einsatzgebiete...............................................................................................10 1.2.4 Finanzierung.................................................................................................10 1.2.5 Herstellung...................................................................................................10 1.2.6 Erweiterbarkeit.............................................................................................11 1.2.7 Programmierung...........................................................................................11 1.2.8 Spannungsversorgung..................................................................................11 1.2.9 Sicherheit......................................................................................................11 2 Auswahl der Bauteile.........................................................................................................................................12 2.1 Signalprozessor......................................................................................................12 2.2 Programmierer.......................................................................................................12 2.2.1 RS232-Programmierer.................................................................................13 2.2.2 USB-RS232..................................................................................................13 2.2.3 EEPROM......................................................................................................13 3 Software...............................................................................................................................................................14 3.1 Target / Eagle.........................................................................................................14 3.2 PonyProg/IC-Prog.................................................................................................14 3.3 SigmaStudio...........................................................................................................15 3.4 Hex Editor Neo......................................................................................................15 3.5 RFsim99.................................................................................................................15 4 Aufbau von Testplatinen...................................................................................................................................16 4.1 Signalprozessor......................................................................................................16 4.2 EEPROM Programmierer......................................................................................17 4.3 Netzteil...................................................................................................................17 4.4 Inbetriebnahme der Testplatinen...........................................................................18 4.4.1 Allgemein.....................................................................................................18 4.4.2 Fehlersuche..................................................................................................18 4.4.3 Inbetriebnahme des EEPROM-Programmierers..........................................19 4.4.4 Inbetriebnahme des Signalprozessors..........................................................19 Institut für Signalverarbeitung und Sprachkommunikation 6 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 4.4.5 Inbetriebnahme des Netzteils.......................................................................19 5 Prototyp...............................................................................................................................................................20 5.1 Eingänge................................................................................................................21 5.1.1 Auszug des Schaltplans................................................................................21 5.1.2 Symmetrische Stereo Eingänge....................................................................21 5.1.3 Eingangsfilter...............................................................................................22 5.1.4 Differenzverstärker nach Douglas Self........................................................23 5.1.5 DSP Analoger Eingang................................................................................23 5.2 DSP........................................................................................................................24 5.2.1 Schaltplan (Auszug).....................................................................................24 5.2.2 Veränderungen zur Testplatine ...................................................................24 5.2.3 Common Mode.............................................................................................25 5.3 Asymmetrische Mono-Ausgänge..........................................................................25 5.4 Programmierer.......................................................................................................27 5.4.1 Schaltplan (Auszug).....................................................................................27 5.4.2 Veränderungen zur Test-Platine...................................................................29 5.5 Spannungsversorgung............................................................................................29 5.5.1 Schaltplan ....................................................................................................29 5.5.2 Spezifikationen.............................................................................................30 6 Inbetriebnahme und Test des Prototyps..........................................................................................................32 7 Messwerte und Programme...............................................................................................................................33 7.1 Messaufbau............................................................................................................33 7.2 44.1 kHz-Durchgangstest (Talkthrough→TT)......................................................36 7.3 96 kHz-TT.............................................................................................................39 7.3.1 Verzerrungen................................................................................................40 7.4 Drei-Wege Lautsprecher........................................................................................42 8 Ergebnisse und Ausblick...................................................................................................................................46 8.1 Messtechnische Ziele/Ergebnisse..........................................................................46 8.2 Einsatzbereich........................................................................................................46 8.3 Finanzierung..........................................................................................................46 8.4 Erweiterbarkeit......................................................................................................46 8.5 Programmierbarkeit...............................................................................................47 8.6 Versorgung............................................................................................................47 8.7 Schutzschaltungen.................................................................................................47 9 Fazit.....................................................................................................................................................................47 Anhang A:.............................................................................................................................................................48 Literaturverzeichnis.............................................................................................................................................55 Institut für Signalverarbeitung und Sprachkommunikation 7 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildungsverzeichnis Abbildung 1: Blockschaltbild "BigMon"..............................................................................................................4 Abbildung 2: Blockschaltbild des Prototyps.......................................................................................................22 Abbildung 3: Eingang mit erweitertem Instrumentierungsverstärker............................................................23 Abbildung 4: Eingangsfilter mit Überspannungsschutz....................................................................................24 Abbildung 5: Amplituden- und Phasensimulation des Eingangsfilters...........................................................24 Abbildung 6: Comon Mode Differenzverstärker...............................................................................................26 Abbildung 7: DSP Schaltplan Auszug.................................................................................................................27 Abbildung 8: Common Mode Reference Buffer.................................................................................................28 Abbildung 9: Rekonstruktionsfilter aus dem Datenblatt S.21..........................................................................28 Abbildung 10: Simulation des aktiven Rekonstruktionsfilters.........................................................................29 Abbildung 11: Überspannungs Schutzschaltung...............................................................................................29 Abbildung 12: Common Mode Differenzverstärker mit Ausgangsrelais........................................................30 Abbildung 13: Schaltplan Programmierer.........................................................................................................30 Abbildung 14: Netzteil Schaltplan.......................................................................................................................33 Abbildung 15: THD+N Fireface UCX 192 kHz, 24-Bit.....................................................................................41 Abbildung 16: Klirrgang Fireface UCX 192kHz, 24-Bit...................................................................................41 Abbildung 17: Wandlerlinearität Fireface UCX 192 kHz, 24-Bit....................................................................41 Abbildung 18: Verzerrung vs. Amplitude Fireface UCX 192 kHz, 24-Bit......................................................42 Abbildung 19: Sigma Studio Eingang 1 zu Ausgang 1-4...................................................................................42 Abbildung 20: Frequenzgang Eingang 1 zu Ausgang 1, 44.1 kHz....................................................................43 Abbildung 21: Klirrgang, Eingang 1 zu Ausgang 1 44.1 kHz...........................................................................43 Abbildung 22: Verzerrungen vs. Amplitude, 44.1 kHz.....................................................................................44 Abbildung 23: THD+N, 44.1 kHz........................................................................................................................44 Abbildung 24: Wandlerlinearität, 44.1 kHz.......................................................................................................45 Abbildung 25: Frequenzgang Eingang 1 zu Ausgang 1-4, 96kHz....................................................................45 Abbildung 26: Klirrgang 96 kHz.........................................................................................................................46 Abbildung 27: Verzerrung vs. Amplitude, 96 kHz............................................................................................47 Abbildung 28: THD+N, 96 kHz...........................................................................................................................47 Abbildung 29: Wandlerlinearität, 96 kHz..........................................................................................................48 Abbildung 30: SigmaStudio 3-Wege Lautsprecher mit externen Elementen..................................................49 Abbildung 31: Frequenzgang 3-Wege Lautsprecher, mit und ohne EQ.........................................................50 Abbildung 32: Limiter Threshold -24 dB...........................................................................................................51 Abbildung 33: Schaltplan Testplatine.................................................................................................................55 Abbildung 34: Layout Testplatine.......................................................................................................................59 Abbildung 35: Schaltplan USB-Programmiergerät...........................................................................................60 Abbildung 36: Layout USB-Programmiergerät.................................................................................................60 Abbildung 37: Schaltplan Prototyp und Netzteil...............................................................................................61 Abbildung 38: Layout Prototyp und Netzteil Unterseite + Oberseite..............................................................62 Abbildung 39: Universal Programmierschnittstelle (Grundlage für EEPROM Programmiergerät)..........63 Institut für Signalverarbeitung und Sprachkommunikation 8 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 40: I2S Adapter (Grundlage für EEPROM Programmiergerät).................................................63 Abbildung 41: Prototyp Unterseite......................................................................................................................64 Abbildung 42: Prototyp Oberseite.......................................................................................................................64 Tabellenverzeichnis Tabelle 1: Datenblatt- und erwartete Werte............................................................................................................11 Tabelle 2: Beuteile und Funktionen im Programmierer..........................................................................................28 Tabelle 3: Drei-Wege Lautsprecher Filtereinstellungen.........................................................................................43 Institut für Signalverarbeitung und Sprachkommunikation 9 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 1 Einleitung 1.1 Motivation Die Motivation besteht hauptsächlich in der Realisierung eines DSPs für das StudiomonitorProjekt „BigMon“. Des Weiteren wäre es wünschenswert, DSPs auf der Grundlage dieser Arbeit in aktive Beschallungsanlagen implementieren zu können, welche privat hergestellt werden. Bisher wurden dafür am Markt erhältliche Prozessoren verwendet, welche nicht immer den Anforderungen in Punkto Rechenleistung und analogen Schnittstellen genügten. 1.2 Ziele und Anforderungen 1.2.1 Ein- und Ausgänge Die Eingänge der Platine sollen hohen Anforderungen genügen. Sie sind so zu dimensionieren, dass sie die Leistung der Analog-Digital-Umsetzer (ADC) in keiner Weise beeinträchtigen. Um Frequenzen bis wenige Hertz phasenrichtig verarbeiten zu können, sollen sie die Möglichkeit bieten, sowohl gleichspannungsentkoppelt als auch -gekoppelt zu arbeiten. Dadurch lassen sich auch hochwertige Koppelkondensatoren nachträglich, extern anschließen. Sowohl symmetrische als auch asymmetrische Signale sollen angeschlossen werden können. Die Ausgänge stellen aus gleichem Grund gleichspannungsentkoppelte als auch -gekoppelte Signale zur Verfügung und sind als Puffer der Digital-Analog-Umsetzer (DAC) zu dimensionieren. Der Signalausgang ist asymmetrisch, da in der Anwendung als Studiomonitor-DSP kurze Kabellängen zwischen Ausgangsstufe und Endstufe bestehen. Das Rausch- und Klirrverhalten soll so gering wie möglich ausfallen, sodass der Wirkungsgrad des DAC nicht beeinträchtigt wird. Institut für Signalverarbeitung und Sprachkommunikation 10 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 1.2.2 Messtechnische Ziele Datenblatt-Werte von CODECs werden in der Realität nur unter optimalen Laborbedingungen erreicht. Da es sich hierbei um ein Erstlingswerk mit wenig Erfahrung in digitalem Schaltungsdesign handelt, wären die Werte der Zielsetzung (Tabelle 1) zufriedenstellend. Durch den Einsatz hochwertiger Bauteile sollten dennoch annähernd Datenblattwerte erreichbar sein. Parameter Datenblatt ADAU1701 Zielsetzung THD+N -83 dB -75 dB Interchannel Gain Missmatch 0.05-0.5 dB 0.1 dB f-Gang 20Hz-20kHz +/- 0.2 dB +/- 0.2 dB Tabelle 1: Datenblatt- und erwartete Werte 1.2.3 Einsatzgebiete Die Schaltung soll so entworfen werden, dass sie sowohl für die Anwendung in „BigMon“, als auch für andere Projekte ausreichend Ressourcen bietet. Das Hauptaugenmerk liegt dabei bei den Ein- und Ausgängen. Diese sollen durch zusätzliche Codecs erweiterbar sein, sodass auch komplexere Mehrwegsysteme oder 5.1 Surroundsysteme bearbeitet werden können. 1.2.4 Finanzierung Das gesamte Projekt darf mitsamt Entwicklungskosten 200 Euro nicht überschreiten. Die fertige Platine sollte höchstens einen Wert von 50 Euro haben. Durch die Verwendung von hochwertigen Bauteilen ist dieser Preis schnell zu übertreffen. Diese Option soll bei dem Prototypen aber nicht gewählt werden, sondern erst für die Anwendung in BigMon. 1.2.5 Herstellung Sowohl aus finanziellen als auch praktischen Gründen sollen die Platinen selbst hergestellt werden. Es sind somit keine professionellen Platinen mit echtem Lötstopplack und galvanischer Durchkontaktierung realisierbar, dennoch bietet sich die Möglichkeit, zeitlich unabhängig und günstig zu arbeiten. Ein großer Nachteil hierbei ist, dass hauptsächlich THTBauelemente verwendet werden. Durch ihre Größe und sich dadurch ergebende Leiterbahnlängen besteht die Gefahr von Einstreuungen in Signalleitungen und unsauberen Versorgungsspannungen. Institut für Signalverarbeitung und Sprachkommunikation 11 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 1.2.6 Erweiterbarkeit Um eine universelle Platine zu erhalten, sollen alle General Purpose Input-Outputs (GPIO) auf Pins herausgeführt werden. Dies ermöglicht, sowohl externe Kontrollelemente, wie Schalter, Potentiometer oder Taster, als auch Codecs hinzuzufügen. Für den Anwendungsfall „BigMon“ bieten sich z.B. Potentiometer für die Lautstärkeregelung als auch Schalter/Taster für die Raumentzerrung an. 1.2.7 Programmierung Die Programmierung des DSPs sollte ohne Kenntnisse in einer Programmiersprache möglich sein. Das verbietet die Verwendung eines µControllers in der Schaltung, ermöglicht jedoch dem Endanwender schnelle Veränderungen am Setup durchzuführen und über eine graphische Benutzeroberfläche fast wie mit einer DigitalenAudioWorkstation (DAW) zu arbeiten. Allerdings wird die Auswahl passender DSP´s damit stark eingeschränkt, was auch zu Leistungseinbußen führt. 1.2.8 Spannungsversorgung Die Platine benötigt eine Vielzahl verschiedener Spannungen. Sowohl aus Sicherheits- als auch Kostengründen sollte die DSP-Platine über eine symmetrische Spannungsversorgung von +/-17 V versorgt werden. Dadurch ist die Verwendung eines handelsüblichen Transformators möglich, um alle erforderlichen Spannungen zur Verfügung zu stellen. Da die meisten AB-Verstärker mit symmetrischen Spannungen arbeiten, kann deren Versorgung gleichzeitig auch für den DSP verwendet werden. 1.2.9 Sicherheit Je nach Anwendungsgebiet werden Schutzschaltungen benötigt. Diese sind eingangsseitig als Überspannungsschutz und ausgangsseitig als Relaisschaltung ausgelegt. Die Relais schließen erst nach einer festgelegten Zeit, (oder einer aktiven Schutzschaltung) nachdem die Betriebsspannung anliegt und öffnen, sobald sie einen bestimmten Wert unterschreitet. Der Wert wird so festgelegt, dass der DSP zu dem Zeitpunkt noch ohne Einschränkung arbeiten kann, um Ausschaltknacksen zu vermeiden. Institut für Signalverarbeitung und Sprachkommunikation 12 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 2 Auswahl der Bauteile 2.1 Signalprozessor Nachdem durch die oben genannten Ziele die Auswahl an verfügbaren DSPs stark eingeschränkt wurde, fiel die Wahl auf die SigmaDSP-Reihe von Analog Devices. Ein Grund für diesen Hersteller lag z.B. in der sehr übersichtlichen Vergleichstabelle der verfügbaren DSP´s. Andere Hersteller boten entweder keine, oder nur dürftig aufbereitete Vergleichstabellen ihrer Produkte. Bei Analog Devices bietet sich die Möglichkeit, mit der Software „SigmaStudio“ einen DSP graphisch zu programmieren. Dadurch, dass kein µController vorhanden sein darf, fiel die Wahl auf den ADAU1701. Dieser DSP bietet alleinstehendes Arbeiten mit 50MIPS (Million Instructions Per Sample) und 28-/56-Bit Verarbeitung. Berechnungen mit doppelter Präzision sind möglich. Der Vorteil dieses Chips liegt weiterhin in den integrierten Codecs. Diese entsprechen beinahe den oben genannten Anforderungen. Durch 12 GPIOs kann jegliche externe Steuerung und visuelle Rückkopplung (z.B. via LED) realisiert werden. Da der DSP nicht über genügend internen Speicher verfügt, ist dieser auf ein externes, serielles EEPROM (I2C)1 angewiesen, welches das Programm enthält. Um Programmdaten auf das EEPROM zu schreiben, wird im Folgenden der Bau eines Programmiergerätes gezeigt. 2.2 Programmierer Um auch später Änderungen am Programm vornehmen zu können, wurde ein Programmiergerät entwickelt, welches dem Anwender ermöglichte, mit einem Windows-PC (32-Bit) über die USB-Schnittstelle Programme auf das EEPROM zu laden. Da es sehr einfache Programmierer über die RS232 Schnittstelle gibt, erschien es sinnvoll, einen USBRS232 Konverter einzusetzen. Zuerst jedoch sollte die Zuverlässigkeit von RS232Programmierern herausgefunden werden. 2.2.1 RS232-Programmierer Mittels eines vorhandenen USB-RS232-Kabels wurde ein einfaches Gerät auf Lochrasterbasis Institut für Signalverarbeitung und Sprachkommunikation 13 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs aufgebaut. Tests ergaben, dass das Gerät zwar funktioniert, aber vier bis fünf Stunden für das Schreiben eines 24AA256 benötigt. Der verwendete USB-Seriell-Adapter unterstützt Baudraten bis 9600. Da das Ziel erreicht war und das Programmieren eines EEPROMs funktionierte, wurde nach einem Wandler von USB zu RS232 gesucht, welcher höhere Baudraten unterstützt. 2.2.2 USB-RS232 Bei der Recherche im Internet fiel der Hersteller FTDI auf, der für seine USB-RS232-Chips (z.B.: FT232R) einen erweiterten Treiber anbietet. Nach Modifikationen einiger Installationsdateien oder der Windows-Registry können sehr hohe Datenraten bei Software, die für native RS232-Ports geschrieben wurde, erreicht werden 2. Da dies der einzige hochwertige Chip war, der auch für den Endkunden bzw. Studenten verfügbar zu sein schien, fiel die Wahl auf diesen Typ. Der Schaltplan des Programmiergerätes richtet sich nach dem RS232 Standard, sodass es nötig war, den Ausgangspegel des FT232 mittels zweier MAX232 auf Standardpegel heraufzusetzen. 2.2.3 EEPROM Im Datenblatt des ADAU1701 wird ein 24AA256 empfohlen. Gleichzeitig wird dort erwähnt, dass ein 8kByte großer Speicher ausreichend sei. Da das EEPROM nicht jedesmal ganz beschrieben werden muss, ist die Größe, sofern >8 kByte, vernachlässigbar. Aufgrund der Empfehlung im Datenblatt und der Verfügbarkeit wurde dieser Typ für die Arbeit verwendet. Des Weiteren hat die xxAAxxxx-Serie einen sehr weiten Spannungsbereich von 1.7 V bis 5.5 V, sodass es sich sowohl für den USB-Programmierer (V cc=5 V), als auch später für die DSPPlatine (Vcc=3.3 V) eignet. 2 Application Note 107 FT232R Advanced Driver Options 6.5 Buffered Writes Institut für Signalverarbeitung und Sprachkommunikation 14 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 3 Software Im Folgenden wird die im Laufe der Entwicklung und Herstellung benötigte Software kurz erläutert. 3.1 Target / Eagle Anfangs wurde der Schaltplan mit Target erstellt. Mit der Zeit störten vermehrt unnötige Schritte bis man in der Bibliothek ein Bauteil gefunden hatte. Gut hat die 3D-Simulation der Leiterplatte gefallen, da man sich hiermit einen Überblick über die Größe und Aufteilung verschaffen konnte3. Eagle (Einfach Anzuwendender Graphischer Layout Editor) bietet eine ausführlichere Bibliothek als Target, sodass nur wenige Bauteile selbst erstellt werden mussten. Dieses Programm wurde fortan zur Schaltplanerstellung herangezogen4. 3.2 PonyProg/IC-Prog PonyProg ist ein einfaches Programm für serielle EEPROMs. Die Software richtet sich – wie IC-Prog - an Hobbyisten und ist Freeware. Es stellte sich heraus, dass PonyProg mit der gebauten Hardware nur unzureichend funktioniert5. Als Alternative bot sich IC-Prog an, welches nach der Konfiguration fehlerfrei arbeitete. Im Gegensatz zu PonyProg lässt sich der Programmiervorgang jederzeit abbrechen. Somit ist es möglich, mit der vorher errechneten Übertragungsrate und der Größe der zu schreibenden Datei die ungefähre Programmierzeit zu ermitteln, und muss nicht das gesamte EEPROM programmieren6. 3 http://www.ibfriedrich.com/ (letzter Zugriff 06.13) Institut für Signalverarbeitung und Sprachkommunikation 15 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 3.3 SigmaStudio SigmaStudio ist eine graphische Entwicklungs-Software, mit der Programme für SigmaDSP´s entwickelt werden können. Hierbei arbeitet man ähnlich wie bei einer DAW mit vorgefertigten Elementen, Effekten, Filtern usw., die mittels virtueller Kabel verbunden werden. SigmaStudio wird ausschließlich mit den Evaluation-Kits von Analog Devices ausgeliefert und benötigt zum Programmieren ein USB-Interface „USBi“. Über mehrere Umwege kann das Programm auch ohne Evaluation-Board und USBi auf ein EEPROM gebracht werden. Hierzu erstellt man in SigmaStudio einen beliebigen Audiosignalweg. Durch „Link Compile Download“ und „Write Latest Compilation to E2PROM“ wird im Projekt- Ordner eine „e2prom.hex“-Datei abgelegt. Im „WinE2PromLoader“ wird diese Datei geladen, anschließend die Werte in die Zwischenablage kopiert und in den HexEditorNeo geladen7 . 3.4 Hex Editor Neo Es ist nicht möglich, die angezeigten Werte oder die .hex-Datei in IC-Prog zu importieren, da SigmaStudio kein IntelHex ausgeben kann. Es muss deshalb der Umweg über einen Hexadezimal-Editor, z.B. Hex Editor Neo8 , gemacht werden. Hierzu werden die Werte aus SigmaStudio in den Editor geladen und als .bin abgespeichert. Die .bin-Datei kann nun in ICProg geladen und in der EEPROM geschrieben werden. 3.5 RFsim99 Schaltungssimulationen werden mit RFsim99 dargestellt. Dieses Programm ist als Freeware aus dem Internet zu beziehen und reicht für einfache Schaltungs-Simulationen. 7 8 http://ez.analog.com/message/2694#2694, Zugriff 14.06.2013 http://www.hhdsoftware.com/hex-editor, Zugriff 14.06.2013 Institut für Signalverarbeitung und Sprachkommunikation 16 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 4 Aufbau von Testplatinen Im Folgenden wird der Erstaufbau (Entwicklung und Inbetriebnahme) der drei Schaltungsteile erläutert. Um Fehler besser finden und ausmerzen zu können, wurden alle Schaltungen getrennt erstellt. Weiterhin wurden nur die wichtigsten Elemente integriert, die zur Funktion der verschiedenen Bauteile nötig waren. Das Kapitel ist allgemein und kurz gehalten. Auf Schaltpläne und Layouts wird hier verzichtet. Genaue Angaben und Herleitungen befinden sich in Kapitel 5. 4.1 Signalprozessor Der Schaltplan wurde nach den Vorgaben im Datenblatt erstellt9. Der Plan wurde modifiziert, sodass jeder Kontroll-Pin (ADDR 0, 1; RESET; SELFBOOT; PLL_MODE0,1) mittels Kurzschlussbrücken auf High oder Low gesetzt werden kann. Zusätzlich wurden bei den Einund Ausgängen ausschließlich Koppelkondensatoren mit 25V 47µF eingesetzt. Für die Filter wurden statt 10µF Kondensatoren mit 15µF verwendet. Das Layout wurde auf eine 10x8cm Platine geätzt. Hierbei wäre es allerdings sinnvoller gewesen, den DSP auf der Rückseite der Platine zu positionieren. Dadurch hätte man 32 Durchkontaktierungen und Bohrungen einsparen können. Institut für Signalverarbeitung und Sprachkommunikation 17 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 4.2 EEPROM Programmierer Auf der Homepage von PonyProg wird ein Universal-Schaltplan für einen Programmierer angeboten. Mittels kleiner Adapter lassen sich so unterschiedliche EEPROMS (I2C, PIC, etc.) programmieren. Der Schaltplan wurde so modifiziert, dass nur die Programmierung von I 2CEEPROMs möglich ist. Statt des Spannungsreglers NVM3060 wurde trotz entsprechender Warnung auf dem Plan ein Spannungsregler des Typs 7805 eingesetzt. Die Verbindung zur USB-Schnittstelle wurde mittels des o.g. FT232R hergestellt. Der Schaltplan wurde, wie im Datenblatt beschrieben10, aufgebaut. Es wurden jedoch ausschließlich diejenigen Pins verwendet, die später auch für den Programmierer nötig waren. Ähnlich der DSP-Platine wurden alle Bauteile auf der Oberseite positioniert. Das TQFN32Gehäuse des FT232 hätte besser auf der Unterseite Platz gefunden, um sich wie beim DSP die Durchkontaktierungen sparen zu können. Hierbei zeigte sich auch beim Löten die Problematik, dass dieses Gehäuse keine herausgeführten Pins besitzt. Die Kontaktflächen sind hauptsächlich auf der Unterseite und plan an den Seiten angebracht. Mit einer Lötnadel konnte das Bauteil dennoch gut auf die Platine gelötet werden. 4.3 Netzteil Douglas Self empfiehlt aufgrund des besseren Rauschverhaltens variable, lineare Spannungsregler vom Typ LM31711. Da das Ziel der DSP-Platine die Funktionsprüfung und nicht die best mögliche Audioqualität ist, wurde das Netzteil mit nur 2 Spannungen (3.3 V, 1.8 V) ausgeführt. Auch wenn die Audioqualität im Hintergrund steht, wurden LM317 eingesetzt, da entgegen dieser mit 78/79xx schon genügend Erfahrung vorhanden war. Hier wird auf einen Schaltplan und ein Layout verzichtet und auf 4.4.5 verwiesen. 10 11 Datenblatt FT232R S.23 SELF 18.4 Institut für Signalverarbeitung und Sprachkommunikation 18 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 4.4 Inbetriebnahme der Testplatinen 4.4.1 Allgemein Durch die fehlende Erfahrung im Selbstätzen von Platinen mittels UV-Röhre, Schablone und photopositivem Basismaterial wurde das Ergebnis der DSP-Platine an den Rändern stark beeinträchtigt. Es zeigte sich, dass bei einer 25W-UV-Leuchtstoffröhre und ca. 10 cm Abstand, erst bei 11 Minuten gleichmäßiger Beleuchtung eine ausreichende Belichtung stattgefunden hat. Auf die Funktion hatten diese Fehler aber keinen Einfluss. In Eagle wurden die Standardgrößen für Durchkontaktierungen eingestellt, welche sich als zu klein erwiesen. Hinzu kam, dass der Foto-Film mit einem Laserdrucker bedruckt wurde, dessen Füllung und Randschärfe nicht ausreichend waren. Durch die fehlende Randschärfe verkleinerte sich der Durchmesser der Durchkontaktierungsflächen zusätzlich. Beim Bohren führte sowohl dieser Umstand als auch die teils mangelhafte Ausrichtung der Filme zu Löchern in Leiterbahnzwischenräumen. Um die Ätzlösung nicht zu sehr zu belasten, wurden alle leeren Flächen mit einem Abstand von 1,27 mm zur nächsten Leiterbahn gefüllt. Bei größeren Lötflächen ergaben sich Brücken, sodass für die finale Platine von der Füllung abgesehen wurde. 4.4.2 Fehlersuche Zunächst wurde das Netzteil gebaut und geprüft. Die Spannungen lagen alle im Toleranzbereich (3.3 V → 3.28 V; 1.8 V → 1.78V) und blieben bei Belastung mit einem Lastwiderstand innerhalb der Spezifikationen. Als Nächstes wurden die Widerstände der Versorgungsleitungen der DSP- / ProgrammierPlatine zueinander und die Leitungen auf korrekten Durchgang auf die ADAU1701- / FT232R-Pads und EEPROM Anschlüsse gemessen. Auch hier gab es keinen Grund zur Beanstandung. Die Platinen wurden bis auf ADAU1701, FT232, 24AA256 bestückt und mit dem Netzteil verbunden. Im Anschluss wurden nochmals alle Spannungen an den Anschlussstellen und Ströme in den Versorgungsleitungen gemessen. Nach erfolgreichem Test wurden die fehlenden Bauteile hinzugefügt und die Platinen in Betrieb genommen. Es zeigten sich folgende Probleme: Institut für Signalverarbeitung und Sprachkommunikation 19 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 4.4.3 Inbetriebnahme des EEPROM-Programmierers Die Spannungsversorgung für das EEPROM wurde laut Plan über die RS232-Schnittstelle sichergestellt. Da diese über drei Dioden (4148N) an dem Spannungsregler 7805 anliegt, über welchen zusätzliche Spannung abfällt und diese aus den Pins „DTR“, „RTS“, „DSR“ und „TXD“ abgegriffen wird, die nicht zu jedem Zeitpunkt „high“ sind, ist die Versorgungsspannung des EEPROMs sehr wellig. Diese Amplitude hatte beim Schreib-/ Lesevorgang Werte von bis zu 2Vpp. Die Spannungsversorgung über RS232 wurde später auch für den Programmiervorgang durch 3.3 VIOVDD realisiert. Der FT232R hat standardmäßig zwei Anschlüsse für Rx/Tx LEDs. Da diese bei der vorliegenden Platine ausschließlich die USB-Erkennung des PC´s über zweifaches kurzes Aufblinken signalisierten und sonst nutzlos waren, wurden sie für die neue Version gestrichen. 4.4.4 Inbetriebnahme des Signalprozessors Anfangs war die DSP-Platine nicht funktionsfähig. An den Anschlüssen „OSCO“ und „MCLCK“ konnte man am Oszilloskop erkennen, dass der Quarz auf der richtigen Frequenz (12.288 MHz) schwingt. Die Spannung an „MCLCK“ (1.5 V) genügte nicht den Spezifikationen im Datenblatt, die mit 2.2 V angegeben waren. Wie sich später herausstellte, lag der Fehler bei der Einstellung des Tastkopfes. Die Eingangsimpedanz des Oszilloskops (25pF) liegt im Bereich der beiden Kapazitäten in der Oszillatorschaltung (22pF), wodurch diese stark belastet wurde und die Spannung einbrach. Durch den Teiler 1:10 am Tastkopf wurde die Eingangskapazität um den Faktor 10 kleiner und der Eingangswiderstand um den Faktor 10 größer. Die dadurch verringerte Empfindlichkeit konnte bei dieser Messung vernachlässigt werden. Der Fehler lag schließlich an einer falschen Programmierung des EEPROMs. Die in Kap. 3.3 erwähnte e2prom.hex verwendet nicht das IntelHex-Format. PonyProg oder IC-Prog interpretieren dieses, sodass die Werte nicht mehr übereinstimmten. Über den in 3.3 und 3.4 beschriebenen Umweg ließ sich das EEPROM richtig programmieren und das Programm wurde geladen und ausgeführt. 4.4.5 Inbetriebnahme des Netzteils Die Spannungen an den Netzteil-Ausgängen hatten im Betrieb Werte innerhalb der Toleranz. Bei Schaltvorgängen kam es jedoch vor, dass Werte bis zur Betriebsspannung (12 V) an den Klemmen messbar waren. Da dies mit Sicherheit auf längere Sicht zur Zerstörung der nachfolgenden Komponenten geführt hätte, wurden am Schaltungsdesign für die endgültige Platine Änderungen vollzogen. Diese beinhalten hauptsächlich eine sehr große Pufferung (0.1F) mit einem Gold-Cap und Freilaufdioden von Aus- zu Eingang des LM317, wie es auch bei 78/79xx-Typen standard ist12. 12 SELF 18.2 Institut für Signalverarbeitung und Sprachkommunikation 20 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5 Prototyp Die Erfahrungen, die bisher gesammelt wurden, flossen in die Entwicklung des Prototyps ein. Anschließend wird detailliert auf die verschiedenen Baugruppen der Schaltung eingegangen. Abb. 2 ist ein vereinfachtes Blockschaltbild des Prototyps. Abbildung 2: Blockschaltbild des Prototyps Institut für Signalverarbeitung und Sprachkommunikation 21 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5.1 Eingänge Wie in 1.2 beschrieben sollten die Eingänge höchsten Anforderungen in Bezug auf Rauschen und Klirrfaktor genügen. Hier wurde ein Schaltungsdesign von Douglas Self 13 adaptiert, welches einen erweiterten, niederohmigen Instrumentierungsverstärker verwendet. Als Operationsverstärker kamen NE5532 zum Einsatz, welche im Audiobereich seit Jahren Standardbauteile sind. Aufgrund des niedrigen Stromrauschens (0.7 pA/√Hz) und der Fähigkeit große Lasten (600 Ω)14 treiben zu können, bietet sich ein niederohmiges Schaltungsdesign an. Wegen der zu erwartenden Ströme, wurde jeder OPV mit 0.33µF gepuffert, um eine möglichst glatte Versorgung gewährleisten zu können. 5.1.1 Auszug des Schaltplans Abbildung 3: Eingang mit erweitertem Instrumentierungsverstärker 5.1.2 Symmetrische Stereo Eingänge In professioneller Audio-Umgebung sind symmetrische Anschlüsse Standard. Auch diese Platine wurde deshalb mit symmetrischen Anschlüssen bestückt. Diese wurden so ausgelegt, dass auch unsymmetrische Quellen, z.B. mittels eines Klinke-XLR-Adapters, angeschlossen werden können. Um anderen Einsatzgebieten gerecht zu werden, wurden die Eingänge in Stereo ausgeführt. Dies kann man sich z.B. bei „BigMon“ zu Nutzen machen. Die im Datenblatt angegebenen Werte der ADCs sind schlechter als die der DACs. Speist man beide 13 SELF 16.29 14 Datenblatt NE5532 S.1 Institut für Signalverarbeitung und Sprachkommunikation 22 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs ADCs mit demselben Signalpegel (z.B. 0 dBFS), summiert diese beiden Signale im Prozessor (+6dBFS Signalpegel) und schwächt vor den D/A Umsetzern das Signal um -6dB ab, erhält man statt einem THD+N von -83 dB, eine Absenkung um 3dB zu -86 dB. Der Grund ist das sich unkorreliert addierende Rauschen und das sich korreliert addierende Signal. 5.1.3 Eingangsfilter Abbildung 4: Eingangsfilter mit Überspannungsschutz Bei aktiven Bauelementen ist es von Nöten, hohe Frequenzen, die nicht im hörbaren Bereich liegen, auszublenden15. Einstreuungen und Demodulationen in den hörbaren Bereich werden damit vermieden. In dieser Schaltung kommt ein Eingangsfilter mit 1.4 MHz Grenzfrequenz zum Einsatz. Die Dioden D1 bis D4, welche gegen die Versorgungsspannung +/- 15V geschaltet sind, schützen den Eingang vor Spannungsspitzen und defekten angeschlossenen Bauteilen. Bei hohen Eingangspegeln können diese jedoch Verzerrungen erzeugen 16 , sodass sie in „BigMon“ nicht verwendet werden. Abbildung 5: Amplituden- und Phasensimulation des Eingangsfilters 15 SELF 16.3,16.4 16 SELF 16.27 Institut für Signalverarbeitung und Sprachkommunikation 23 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5.1.4 Differenzverstärker nach Douglas Self Der Instrumentierungsverstärker nach Self basiert auf einer aktiven Summierung von niederohmigen Differenzverstärkern. Bei diesen (IC11 und IC12, Abbildung 35) wird eine Verstärkung von 1 vorausgesetzt. Alle Widerstände sind mit 820 Ω angegeben. Aus Ermangelung dieser wurden 1 kΩ-Typen eingesetzt, die das Rauschen nicht merklich anhoben. Die Ausgänge der Differenzverstärker wurden über 10 Ω-Widerstände summiert. Schon bei der Lektüre erschien dieser Wert sehr gering, was sich später bewahrheiten sollte. Dem Differenzverstärker wurde eine Spannungs-Anhebung mittels eines weiteren Differenzverstärkers (IC13) mit Verstärkung = 1 nachgeschaltet. Dies ist nötig, da die DSPEin- und Ausgänge ein auf 1.5V-DC aufmoduliertes Signal benötigen. Parallel dazu kann mittels Kurzschlussbrücke diese Stufe umgangen werden und die Gleichspannungsentkopplung mittels Kondensator durchgeführt werden. Hier kam der OPV Opa2604 von Burr Brown zum Einsatz, da dieser ein um 32 dB besseres Übersprechverhalten aufweist und für Eingang 1 und 2 zugleich genutzt wird. 5.1.5 DSP Analoger Eingang Abbildung 6: Comon Mode Differenzverstärker Der ADAU1701 besitzt keinen Spannungseingang, sondern einen Stromeingang 17. Intern wird über einen 2 kΩ-Widerstand eine Spannung abgegriffen. Um den ADC auf 0dBFS auszusteuern, ist ein Strom von 100 µA(rms) nötig. Das erleichtert die Dimensionierung der Eingangsstufe, da sich der maximale Eingangspegel mittels Vorwiderständen an ADC_0 und ADC_1 einstellen lässt. Bei Mischpulten liegt die 0 dB-Marke standardmäßig bei +4 dBu. Mit einem Puffer von ca. 4 dB nach oben erreicht man mit 18 kΩ-Eingangswiderstand eine maximale Eingangsspannung von 2 V(rms), welche 8.24 dBu entspricht. Da Vorwiderstand und ADC_Ref-Widerstand Abtastfrequenz abhängig sind, müssen diese für jeden Anwendungsfall neu berechnet werden. Der Vorwiderstand errechnet sich aus: R Eingang gesamt = 17 U i ∗10kΩ∗48000 rms fs neu Datenblatt ADAU1701 S.20 Audio ADCs Institut für Signalverarbeitung und Sprachkommunikation 24 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5.2 DSP 5.2.1 Schaltplan (Auszug) Abbildung 7: DSP Schaltplan Auszug 5.2.2 Veränderungen zur Testplatine Im Vergleich zur Testplatine wurden kaum Veränderungen vorgenommen. Lediglich wurden die GPIOs auf Steckbrücken herausgeführt sowie jeder Pin für die Spannungsversorgung mit einem eigenen Anschluss versehen . Weiterhin wurde GPIO 7 fest über einen 2 kΩ-Widerstand mit Pin 20 „WB“ verbunden. An GPIO 7 kann somit z.B. ein Rechteck Oszillator mit 1 Hz Grundfrequenz programmiert werden, sodass Veränderungen, welche z.B. extern über ein digitales Potentiometer oder Taster erfolgt sind, per „Write-Back“ alle 1 s im EEPROM abgespeichert werden. Institut für Signalverarbeitung und Sprachkommunikation 25 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5.2.3 Common Mode Abbildung 8: Common Mode Reference Buffer Wie im Datenblatt beschrieben 18 kann am Common Mode-Ausgang (Pin 40 CM) die Offsetspannung für die Ein- und Ausgänge abgegriffen werden. Da dieser Pin keinen Strom liefern kann, wurde eine Pufferstufe (Abbildung 8) eingesetzt, die es ermöglicht, bis zu 38mA zu liefern, ohne dass Pin 40 belastet wird. Sowohl die Ein- als auch Ausgänge des OPV´s wurden mit großen Kapazitäten (47 µF + 100 nF) gepuffert. 5.3 Asymmetrische Mono-Ausgänge Die Audio-Ausgänge des DSP´s wurden, wie die Eingänge, aus niederohmigen Stufen aufgebaut, um Rauschen zu vermeiden. Auch hier kamen Demodulationsfilter mit gleicher Charakteristik wie bei den Eingängen zum Einsatz. Um die DACs nicht zu überlasten, wurde der Ausgang direkt mittels OPV gepuffert und danach mit Hilfe eines Differenzverstärkers der Verstärkung = 1 das Gleichspannungs-Offset abgezogen. Die Möglichkeit der Gleichspannungsentkopplung besteht auch hier mittels Kurzschlussbrücken. Im Datenblatt des ADAU1701 sind zwei empfohlene Schaltungen für Ein- und Ausgänge zu finden19. Ein passiver Ausgangsfilter und ein aktiver Rekonstruktionsfilter. Bei der Betrachtung fiel die hohe Kapazität an C8 mit 470 µF auf. Der Rekonstruktionsfilter ist mit einer Grenzfrequenz von 50kHz angegeben. Die Simulationen zeigt, dass mit C8 = 450pF eine Grenzfrequenz von 90 kHz erreicht wird. Die Datenblattwerte sind somit falsch. Abbildung 9: Rekonstruktionsfilter aus dem Datenblatt S.21 18 19 Datenblatt ADAU1701 S.13 Pin Config. Datenblatt ADAU1701 S.20/21 Institut für Signalverarbeitung und Sprachkommunikation 26 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 10: Simulation des aktiven Rekonstruktionsfilters Der DSP soll mit verschiedenen Abtastfrequenzen betrieben werden können. Deshalb wurde auf den Ausgangsfilter verzichtet. Es hat sich am Oszilloskop gezeigt, dass bei einem Sinus (f=20kHz, fs = 41.1 kHz, U=2Vpp) bereits Treppenstufen mit einer Höhe von 0.25 V erkennbar waren. Es ist bei niedrigen Abtastraten sinnvoll, eine niedrigere Grenzfrequenz des Filters als bei hohen Abtastraten zu setzen. Der analoge Ausgang der Schaltung spiegelt die Pegel des DSP´s (0.9 Vrms) wider. Je nach Anwendungsfall müssen deshalb Verstärker oder Dämpfer nachgeschaltet werden, um an nachfolgende Geräte angepasst zu werden. Der Einfachheit halber sind jegliche Ein- und Ausgänge über Pinheader im Rastermaß 2.54 mm ausgeführt, sodass eine einfache Adaption an jede Art von Stecksystemen möglich ist. Abbildung 11: Überspannungs Schutzschaltung Die Dioden D1 bis D4, welche gegen die Versorgungsspannung +/-15 V geschaltet sind, schützen den Eingang vor Spannungsspitzen und defekten Quellen. Bei hohem Eingangspegel können diese jedoch Verzerrungen erzeugen, sodass sie im Anwendungsfall Studiomonitor nicht verwendet werden. Institut für Signalverarbeitung und Sprachkommunikation 27 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 12: Common Mode Differenzverstärker mit Ausgangsrelais Ausgangsseitig werden Reed-Ralais (exemplarisch Ausgang 4 mit K1, Abbildung 12) verwendet. Diese zeichnen sich durch kurze Schließ- und Öffnungszeiten aus und können ab +3.3 V betrieben werden. Die Ansteuerung findet vom Netzteil aus statt und ist in diesem Fall ein RC-Glied, welches langsames Ein- und schnelles Ausschalten ermöglicht. In 5.5.7 wird näher auf diese Schaltung eingegangen. 5.4 Programmierer Die Erfahrungen mit dem Programmiergerät waren bis auf die oben genannten Probleme der Spannungsversorgung positiv. Daher wird der Schaltplan auf die Anwendung zur Programmierung in der DSP-Schaltung modifiziert. 5.4.1 Schaltplan (Auszug) Abbildung 13: Schaltplan Programmierer Um zwei verschiedene EEPROM Gehäuse (DIP8, SOIC8) verwenden zu können, wurden IC2 und IC 25 parallel geschaltet (Abbildung 13). In der nachfolgenden Tabelle (Tabelle 2) werden die Bauteile und deren Funktionen im Schaltplan aufgezeigt. Institut für Signalverarbeitung und Sprachkommunikation 28 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs X1 USB Buchse Typ-B USBPUF, SUPUF 100nF Tantal Kondensator zur Glättung der USB Versorgungsspannung. FTPUF 100nF Tantal Kondensator zur Glättung der 3.3V Spannung des FT232 (IC3). IC3 FT232R IC5 Max232 C5C1, C5C2 25V 47µF Elektrolytkondensator Hochsetzsteller in IC5. IC5V- ; IC5V+ 25V 47µF Elektrolyt-Pufferkondensatoren für die im Hochsetzsteller generierte Spannung. RDTR, RDSR/RTS Überstromschutz ZDDSR/RTS, ZDDTR/CTS 3.3 V Zenerdioden, da Umax(SDA,SCL) = 3.3 V IC2, IC25 I2C serielles EEPROM R70, R13, R12 2.2 kΩ-Pull-up-Widerstände K5 Reed Relais, setzt den Hardware-Schreibschutz des EEPROMs beim Anstecken eines USB Kabels auf „0“. K6 Reed Relais, setzt Rückschreib-Trigger auf 0, wenn USB-Kabel angesteckt ist, sodass USB als einzig schreibendes Element in der Schaltung fungiert. R11 2.2 kΩ-Überstromschutz. Wenn K6 geschlossen, kein Kurzschluss zwischen GPIO 7 und Masse. R8, R9, R10 10 kΩ-Pull-down-Widerstand für den Fall, dass RST, SB, AD0 nicht kurzgeschlossen sind. für den Tabelle 2: Beuteile und Funktionen im Programmierer Institut für Signalverarbeitung und Sprachkommunikation 29 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5.4.2 Veränderungen zur Test-Platine Die Spannungsversorgung der EEPROMs wird über +3.3 V des DSP´s realisiert. Dadurch ergibt sich die Einschränkung, dass nur EEPROMs des Typs xxAAxxxx verwendet werden können und keine beliebigen, seriellen I2C EEPROMs. 5.5 Spannungsversorgung Im Folgenden wird detailliert auf den Entwurf der Spannungsversorgung eingegangen. Diese unterscheidet sich in vielerlei Hinsicht von dem Netzteil der Testplatine. 5.5.1 Schaltplan Abbildung 14: Netzteil Schaltplan Institut für Signalverarbeitung und Sprachkommunikation 30 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 5.5.2 Spezifikationen Um die im Datenblatt des DSPs angegebenen Werte 20 zu erreichen, bedurfte es eines ausgereiften Netzteils, welches alle Einzelspannungen gut gesiebt und gepuffert zur Verfügung stellt. Das Ziel dabei war, eine maximale Welligkeit und Rauschspannung von 1 mV (= -57 dBu) zu generieren, da die Dämpfung der Versorgungsspannung im DSP nur 50 dB beträgt. Des Weiteren muss die Pufferung einen Betrieb des DSP´s von mindestens eine Sekunde nach dem Abschalten der Versorgungsspannung gewährleisten, um die Relais öffnen zu können. Da die Spannungen für den DSP sehr gering sind, bietet sich die Verwendung von Gold-Caps (Kondensatoren mit sehr hoher Kapazität) an. Die Spannungen sollten von den Spezifikationen um nicht mehr als +/-0.05 V abweichen. Für die +/-15 V-Leitungen wurden lineare Spannungsregler vom Typ 78/7915 gewählt. Auch wenn deren Rauschen um 23 dB größer ist als bei LM317-Reglern, genügt deren Qualität bei der Verwendung von NE5532 (CMRR = 100 dB). D9 und D10 sorgen für sicheres entladen von C56, C57. Für die beiden +5 V-Leitungen, die zur Funktion der Platine nicht beitragen, sondern für Erweiterungen gedacht sind, wurden Spannungsregler des Typs 7805 eingesetzt. Der DSP benötigt drei unabhängig gefilterte 3.3 V-Leitungen (AVDD, PVDD, IOVDD). Aufgrund der geringen Dämpfung von Störungen über die Versorgungsleitungen wurden LM317 als lineare Spannungsregler eingesetzt. Mit der Formel aus dem Datenblatt 21 lassen sich die Widerstandsverhältnisse berechnen, die für eine Ausgangsspannung von 3.3 V oder ähnliche benötigt werden. V Out =1.25V1 R2 I ADJ R2 R1 Für 3.3 V ergeben sich die Widerstände R89, R91, R92 mit 500 Ω und R88, R90, R93 zu 820 Ω. Um das Ausgangsrauschen zu vermindern, wurden von Pin 1 (ADJ) Pufferkondensatoren (47µF) mit Bypasskondensatoren (680nF) eingesetzt. Dadurch wird die Referenzspannung, die intern verstärkt wird, im Rauschen gedämpft und die Ausgangsspannung glatter22. Die Pufferung der Ausgangsspannung erfolgt jeweils mit einem Goldcap (5.5 V 0.1 F) und Bypasskondensator (680 nF). Für den Fall eines Kurzschlusses werden D18, D19, D20 verbaut, sodass C79, C87, C88, C89, C90, C91 geschützt entladen werden können. Für die 1.8 V-Schiene wurden Widerstände R94 mit 500 Ω und R95 mit 220 Ω eingesetzt. Die Ausgangspuffer und Schutzschaltungen sind zu 5.5.5 ident. Für den Fall eines Kurzschlusses wird D21 gesetzt, sodass C78 und C88 geschützt entladen werden können. Um ein zeitversetztes Schließen und abruptes Öffnen der Ausgangsrelais zu ermöglichen, wurde eine RCD-Schaltung entwickelt. D17 (4007) fungiert als Halbwellen-Gleichrichter, während C93 (20 V, 2200 µF) über D22 (4007) ausschließlich geladen werden kann. D23 ist als Zenerdiode mit 5.1 V ausgelegt, um Überspannungen an den Relais zu vermeiden. 20 21 22 Datenblatt ADAU1701 S.5 Spec. Datenblatt LM317 S.11 SELF 18.4 Institut für Signalverarbeitung und Sprachkommunikation 31 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Beim Einschaltvorgang fällt viel Spannung an R87 ab, der C93 lädt. Die Spannung genügt nicht, um die Relais zu schließen. Je voller C93, desto mehr Spannung fällt an den Relais ab bis sie schließen. Da diese Leitung ungepuffert ist, öffnen die Relais, sobald die Spannungsversorgung abgeschalten wird. Bei den Tests hat sich herausgestellt, dass die Relais manchmal in eine 50Hz Schwingung geraten. Das Einfügen eines kleinen Pufferkondensators (47 µF) zwischen den Klemmen der Relais hat dieses Problem behoben, ohne die Zeit der Öffnung stark zu verlängern. Institut für Signalverarbeitung und Sprachkommunikation 32 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 6 Inbetriebnahme und Test des Prototyps Wie bei den Test-Platinen wurden auch hier erst alle passiven Bauteile bestückt und nach und nach unter ständiger Überprüfung aktive Bauteile bis zum ADAU1701/FT232R hinzugefügt. Bei den Überprüfungen fiel auf, dass der Operationsverstärker , der für die Offsetspannung am Eingang zuständig ist (IC13), verpolte Versorgungsspannungen erhielt. Dies war auf eine Unachtsamkeit bei der Erstellung des Schaltplans zurückzuführen und wurde mittels Lötbrücken korrigiert. Ein DSP-Chip wurde beim Löten zu heiß, sodass die Eingänge nicht funktionierten. Es konnten Programme geschrieben und geladen werden, welche Oszillatoren an den Ausgängen bereitstellten, sodass verifiziert werden konnte, dass der DSP funktioniert und die Programmierung zuverlässig läuft. Nach dem Auflöten eines neuen Chips waren keine größeren Probleme mehr zu erkennen. Die Differenzverstärker an den Eingangskanälen wurden im Betrieb sehr heiß (ca. 100 °C). Es stellte sich heraus, dass die 10 Ω-Widerstände, die als Summierer fungierten, viel zu unterdimensioniert waren. Trotz sorgfältiger Selektierung aller 1 kΩ-Widerstände auf gleiche Werte, müssen die Pegelunterschiede am Ausgang der Differenzierer so groß gewesen sein, dass Strom von dort in die Ausgänge benachbarter OPV´s geflossen ist. Speziell bei der asymmetrischen Beschaltung kann das zu großen Problemen führen, wenn über insgesamt 20 Ω Spannungen bis zu 2 V(rms) in die Ausgänge von Operationsverstärkern fließen. Am Oszilloskop konnten ab einem Eingangspegel von 0.9 V starke Verzerrungen gemessen werden. Dies führte dazu, dass alle 10 Ω-Widerstände durch 100 Ω-Typen mit 0.1 % Toleranz ausgetauscht wurden. Das Rauschen, das durch diese Änderung zusätzlich entsteht, ist vernachlässigbar. Institut für Signalverarbeitung und Sprachkommunikation 33 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 7 Messwerte und Programme Im Folgenden werden Messwerte mit zwei typischen Abtastfrequenzen dargelegt. Die Messungen wurden mit der Soundkarte „Fireface UCX“ von RME-Audio und der Software „ARTA“ sowie „STEPS“ (Artalabs, Kroatien) durchgeführt. ARTA bietet die Möglichkeit Frequenzgangmessungen mittels MLS, Sinus-Sweep oder Rauschen zu messen. Auch die Ermittlung des THD+N ist mit dem implementierten Sinusgenerator möglich. STEPS misst mittels gestepptem Sinus in x/Oct-Schritten sowohl Klirrgang, als auch Wandlerlinearität und Verzerrung vs. Amplitude. Es werden zwei DSP-Programme gezeigt, bei denen ausschließlich Audiodaten durchgereicht werden. Als Drittes wird ein exemplarisches Programm für einen Drei-Wege-Lautsprecher mit Schutzschaltungen und externen Kontrollelementen gezeigt. Da die Wandler dieser Soundkarte qualitativ herausragend sind, sollte eine Messung mit ihnen ausreichend genau sein. Das Softwarepaket ARTA soll hier nicht im Detail erklärt werden, da es den Rahmen dieser Bachelorarbeit sprengen würde. 7.1 Messaufbau Sowohl für ARTA als auch STEPS wurde eine Zwei-Kanal-Messung (192 kHz, 24-Bit) durchgeführt. Dabei verwendet die Software Kanal 1 als Messkanal und Kanal 2 als Referenzkanal. Es wird zwischen den Ausgang des 1. Kanals und den dazugehörigen Eingang das zu messende Objekt eingeschliffen. Ausgang 2 und Eingang 2 bilden eine Schleife. Zuerst wurden die Kanäle aufeinander abgeglichen um Differenzen egalisieren zu können. Der Abgleich war in diesem Fall auf 0.002 dB genau. ARTA und STEPS vergleichen bei den Messungen immer Kanal 1 und Kanal 2. Die Differenz ergibt das Messergebnis. Je hochwertiger die Soundkarte ist, desto geringer sind deren Unterschiede zwischen den Kanälen und desto genauer das Messergebnis. Gemessen wurde entweder mit einem logarithmischen Sinus-Sweep (Frequenzgang 20Hz-20kHz bis zu 5Hz-100kHz), gestepptem Sinus (Linearität, THD, Verzerrung vs. Amplitude) und 1 kHz-Sinus (THD+N). Um einen möglichst großen Signal-Rausch-Abstand zu erhalten wurden für den logarithmischen Sweep 10 s Signaldauer und für den gesteppten Sinus 200 ms Einschwingzeit, 500 ms Signaldauer und 300 ms Ausschwingzeit gewählt. Im Folgenden werden Referenzmessungen des Fireface dargelegt, welche der Information dienen sollen. Die Legenden der Abbildungen 15-18 sind jeweils von der Software erstellt und nicht veränderbar. Die Kurven in Abb. 16 bezeichnen den Klirrgang, also die Verzerrungen z.B. D2 → 2. Harmonische über den gesamten Frequenzbereich. Bei den Graphen des Frequenzganges ist zu beachten, dass das Programm ARTA zur Messung von Lautsprechern mit Messmikrofonen konzipiert wurde. Deshalb scheinen bei der Messung des Frequenzganges an der x-Achse keine dBFS auf, sondern dB relativ zu 20 µP/V. Die Messungen wurden deswegen relativ zueinander auf die 0 dB-Marke skaliert, um eine Abschätzung der Differenzen zu erleichtern. Als Amplitude für die THDMessungen wurden -8,7 dBFS (ref. +4 dBU) gewählt, da die Soundkarte hier die besten Werte liefert. Institut für Signalverarbeitung und Sprachkommunikation 34 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 15: THD+N Fireface UCX 192 kHz, 24-Bit Abbildung 16: Klirrgang Fireface UCX 192kHz, 24-Bit Institut für Signalverarbeitung und Sprachkommunikation 35 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 17: Wandlerlinearität Fireface UCX 192 kHz, 24-Bit Abbildung 18: Verzerrung vs. Amplitude Fireface UCX 192 kHz, 24-Bit Institut für Signalverarbeitung und Sprachkommunikation 36 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 7.2 44.1 kHz-Durchgangstest (Talkthrough→TT) Abbildung 19: Sigma Studio Eingang 1 zu Ausgang 1-4 Abbildung 20: Frequenzgang Eingang 1 zu Ausgang 1, 44.1 kHz Die Messung erfolgte von Eingangskanal 1 auf alle 4 Ausgänge. Der Frequenzgang ist stetig wellig, allerdings in einem Kanal von weniger als 0.05 dB. Ein Kanal weist einen anderen Verstärkungsfaktor (+0.2 dB) auf. Diese Welligkeit wird auch im Datenblatt, allerdings mit verringerter Amplitude (< 0.02 dB), angegeben 23. Ein Kanal weist einen anderen Verstärkungsfaktor (+0.2 dB) auf. Auffällig ist weiterhin die Störung bei 75 Hz in allen Kanälen. Dies könnte in einer Einstreuung z.B. eines Bildschirmes begründet werden. 23 Datenblatt ADAU1701 S. 14 Typ. Perf. Institut für Signalverarbeitung und Sprachkommunikation 37 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Entgegen dem Datenblatt fällt die Messkurve aller Kanäle ab 5 kHz bis zum Einsetzen des Filters vor der Nyquistfrequenz gleichmäßig um 0.35 dB ab. Abbildung 21: Klirrgang, Eingang 1 zu Ausgang 1 44.1 kHz Abb. 21 zeigt mehrere Graphen, welche die Verzerrungen über den gesamten relevanten Audiofrequenzbereich abdeckt. D2-D6+ geben die Harmonischen wieder. Der Signalfluss ist ohne Bearbeitung von Eingang 1 zu Ausgang 1. Im Vergleich zum Fireface sind die Graphen sehr wellig und kammfilterartig. Jedoch sind die Verzerrungen über den gesamten Bereich gleichmäßig hoch und unter 0.02 %, was einen guten Wert darstellt. Alle anderen Ausgangskanäle bewegen sich in vergleichbaren Bereichen. Abbildung 22: Verzerrungen vs. Amplitude, 44.1 kHz Bei dieser Messung (Abb. 22) zeigt sich deutlich, dass die gesamte Schaltung bei 0.73 V die geringsten Verzerrungen von 0.027 % aufweist. Gemessen wurde mit 1 kHz und 24-Bit Auflösung. Institut für Signalverarbeitung und Sprachkommunikation 38 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 23: THD+N, 44.1 kHz Bei der Messung des THD+N, welcher mit 0.031 % (-70.17 dBFS) sehr schlecht ausfällt, fallen vor Allem zwei Frequenzbereiche auf. Es gibt bei 50 Hz und deren Oberwellen Peaks, die von dem verwendeten Transformator (2x 15 V, 600 mA) herrühren. Die Einstreuungen ließen sich sowohl auf der Platine als insbesondere auch im Bereich Kabelverbindung zwischen Netzteil und Platine ausmachen. Zusätzlich zu den tieffrequenten Störungen gibt es bei 48 kHz und 96 kHz Einstreuungen der Aliasingfilter des DACs. Abbildung 24: Wandlerlinearität, 44.1 kHz Die Linearität der Wandler ist ab einem Eingangspegel von 0.1 mV ausreichend gut. Darunter verschwindet das Signal im Rauschteppich, sodass keine aussagekräftigen Messungen durchgeführt werden können. Institut für Signalverarbeitung und Sprachkommunikation 39 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 7.3 96 kHz-TT Dieses Programm ist vom Signalfluss her ident zu dem vorherigen. Lediglich die Abtastrate wurde auf 96 kHz gesetzt. Auch hier wird ein Kanal exemplarisch präsentiert. Abbildung 25: Frequenzgang Eingang 1 zu Ausgang 1-4, 96kHz Beim Frequenzgang zeigte sich im Vergleich zu der Messung mit 44.1 kHz, dass die Kurven näher zusammen liegen. Negativ fällt allerdings der Einbruch um 22 Hz auf. Dieser wird zwar im Anwendungsfall nicht stören, da es nur 0.05 dB sind, trotzdem mindert es die Qualität der Platine. Wie schon bei 44.1 kHz fallen die Graphen oberhalb 5 kHz ab. Das lässt auf eine parasitäre Kapazität im analogen Schaltungsdesign schließen. Vermutet werden hier lange, parallele Signalleitungen, die durch den mehrfachen Differenzverstärker verursacht werden. Institut für Signalverarbeitung und Sprachkommunikation 40 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 7.3.1 Verzerrungen Abbildung 26: Klirrgang 96 kHz Über den Audio-Übertragungsbereich verhalten sich die Verzerrungen identisch zu jenen bei 44.1 kHz Abtastrate. Abbildung 27: Verzerrung vs. Amplitude, 96 kHz Im Vergleich zu 44.1 kHz Abtastrate fällt die niedrigste Verzerrung mit 0.0025 % bei 0.6 V statt 0.73 V aus. Ansonsten verhält sich die Schaltung nahezu identisch. Die kleinen Unterschiede ergeben sich durch Rauschen. Institut für Signalverarbeitung und Sprachkommunikation 41 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 28: THD+N, 96 kHz Der Messwert des THD+N bei 1 kHz ist um 0.01 % (→ -73.5 dBFS) besser, als bei 44.1 kHz. Hier erkennt man zudem die Einstreuungen des Netzteils genauer. Sollte sich dieser Fehler beheben lassen, wird der Wert weiter sinken. Abbildung 29: Wandlerlinearität, 96 kHz Wie aus dem Graphen ersichtlich ist, ist die Wandlerlinearität annähernd gleich bei 44.1 kHz, wie auch bei 96 kHz. Institut für Signalverarbeitung und Sprachkommunikation 42 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 7.4 Drei-Wege Lautsprecher Um die Möglichkeiten der Platine exemplarisch auszutesten, wurde ein Programm erstellt, welches von zwei Eingängen drei Ausgänge mit verschiedenen Frequenzbereichen zur Verfügung stellt. Um den THD+N der Schaltung zu erhöhen, wurden die beiden Eingänge intern summiert und um 6 dB abgesenkt. Es wurden an jedem Kanal ein Equalizer- Band und ein Limiter eingeschliffen. Um die Wirkung der Equalizer zu sehen, fertigte man Vergleichskurven ohne diese an. Vor der Aufteilung auf die Frequenzbereiche wurde ein externes Bedienelement (analoges Potentiometer) zur Lautstärkeanpassung eingesetzt. Dieses wurde an der Platine zwischen Masse und +3.3 V installiert, wobei der Schleifkontakt mit dem AUX_ADC_0 (GPIO 9) verbunden wurde. Die Limiter liefern jeweils ein „limiter_active_flag“ an einen GPIO, sodass dort mittels LED der Zustand überwacht werden kann. Abbildung 30: SigmaStudio 3-Wege Lautsprecher mit externen Elementen Abb. 30 zeigt den Signalfluss in Sigma Studio. Hier wurden einige Plugins eingesetzt, um einen fiktiven 3-Wege-Lautsprecher darzustellen. Tabelle 3 verdeutlicht deren Funktionen. Institut für Signalverarbeitung und Sprachkommunikation 43 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Input 1 Wahl der Eingänge des ADAU 1701 2XMixer1 Summierer SWvol1 Lautstärkeregler mit externer Ansteuerung ADCin1 Ansteuerung für Hilfs-ADC um mittels Potentiometer SWvol1 steuern zu können T1 T-Connection zum Splitten von Signalen Output4 DAC3, erhält das ungefilterte Signal Crossover1 Mehrwege-Frequenzweiche mit editierbaren Filtern MidEQx Bell-Filter Limiterx Limiter mit Ansteuerung für externes Element (z.B. LED) Output1-3 DAC0-2, Audio-DACs GPOx General-Purpose Output, digitaler Ausgang, konfiguriert zur Anzeige eines aktiven Limiters via LED. Tabelle 3: Funktionen der Plugins in Sigma Studio Institut für Signalverarbeitung und Sprachkommunikation 44 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 31: Frequenzgang 3-Wege Lautsprecher, mit und ohne EQ Abb.31 zeigt die Amplitudenfrequenzgänge des DAC 0-2 bei aktivierten Frequenzweichen. Die im „FR Overlay Manager“ mit eq gekennzeichneten Kurven zeigen die Wirkung der BellFilter, wobei die Kurven ohne Kennzeichnung ausschließlich die Frequenzübergänge darstellen. Die verwendeten Filter sind in folgender Tabelle zusammengefasst. Ausgang Filter Einstellung 1 TP Linkwitz Riley F = 1.6 kHz; 24 dB/Oct 1 Bell F = 2 kHz, G = -3 dB, Q = 9 2 BP Linkwitz Riley F1 = 1.6 Hz, f2 = 5 kHz, 24 dB/Oct 2 Bell F = 3.2 kHz, G = +3 dB. Q = 3 3 HP Linkwitz Riley F = 5 kHz 24 dB/Oct 3 Bell F = 18 kHz, G = -2 dB, Q = 1 Tabelle 4: Drei-Wege Lautsprecher Filtereinstellungen Institut für Signalverarbeitung und Sprachkommunikation 45 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Zum Schutz der Lautsprecher vor Überlastung wurde ein Limiter integriert. Exemplarisch wurde ein Threshold von -24 dB angegeben, sodass die Kurve deutlich die Arbeit des Limiters zeigt. Abbildung 32: Limiter Threshold -24 dB Institut für Signalverarbeitung und Sprachkommunikation 46 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 8 Ergebnisse und Ausblick 8.1 Messtechnische Ziele/Ergebnisse Obwohl von vornherein bekannt war, dass die Datenblattwerte nicht zu erreichen waren, wurden die anfangs gesetzten Ziele zumindest im Bereich des THD+N annähernd erreicht. Es wird sich nun in einer weiteren Version zeigen, ob es positive Auswirkungen hat, die Platine in SMD fertigen zu lassen, was jedoch nicht mehr Teil dieser Arbeit sein wird. Grundsätzlich ist das Ergebnis jedoch zufriedenstellend, da die Qualität ausreicht, um die Platine als Frequenzweiche für Lautsprecher einzusetzen. 8.2 Einsatzbereich Das Layout ist nahezu modular ausgelegt. Es lässt sich problemlos eine Stufe hinzufügen oder einsparen, sodass - vorausgesetzt die Werte lassen sich optimieren - dem Einsatzzweck kaum Grenzen gesetzt sind. Durch die geringen Abmessungen und einfache Spannungsversorgung lässt sich auch eine DSP-Nachrüstung für aktive Lautsprecher leicht realisieren. 8.3 Finanzierung Obwohl während der Entwicklung und Fertigung aufgrund von Fehlbelichtungen und unerwarteten Spannungsspitzen zwei Chips und eine Platine ihren Dienst versagten, beliefen sich die Kosten insgesamt auf 190 Euro. Das sind 10 Euro weniger als maximal zur Verfügung standen. Die fertige Platine hat einen Wert von ca. 40 Euro. 8.4 Erweiterbarkeit Es ist gelungen, eine Platine zu entwickeln, die durch Zusatzmodule erweitert werden kann. Dazu zählen sowohl externe Kontrollanzeigen als auch externe Veränderungen des Programmmaterials. Auch die Erweiterung mittels weiterer ADC/DACs und digitaler Konverter scheint möglich. Dies wurde jedoch bisher noch nicht getestet. Institut für Signalverarbeitung und Sprachkommunikation 47 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs 8.5 Programmierbarkeit Die Programmierung ohne den Zukauf von USBi oder anderen kommerziellen Programmierern verlangt nach kleinen Umwegen. Dennoch funktioniert sie ausreichend schnell und zuverlässig. Es ist gelungen, ein USB-basiertes Programmiergerät zu fertigen, welches an jedem PC mit Windows (32Bit)- oder Linux- Betriebsystemen zukunftssicher funktionieren wird. 8.6 Versorgung Bei der Spannungsversorgung ist es gelungen, verschiedene exakte Spannungen aus einer symmetrischen Spannung zu erzeugen. Es hat sich gezeigt, dass Netzeinstreuungen die Qualität der Schaltung beeinträchtigen. Durch eine Optimierung des Netzteils und des Layouts ließe sich das vermeiden. 8.7 Schutzschaltungen Durch die Implementierung von Schaltungen, die vor Überspannung an den Eingängen und nachfolgende Verstärker und Lautsprecher vor Ein- und Ausschaltknacksern schützt, ist die Platine universell einsetzbar. Es bietet sich die Möglichkeit, die Ausgangsrelais durch eine intelligentere Schaltung anzusteuern. Dadurch werden auch Fehler, die während des Betriebs auf der Platine entstehen erkannt (DC-Offset an den Ausgängen, hochfrequente Schwingungen etc.), und die nachfolgenden Schaltungen wirkungsvoll geschützt. 9 Fazit Auch wenn die Messwerte nicht immer die angestrebten Ziele erreicht haben, ist ein Produkt entstanden, das als Basis für weitere Erfahrungen in diesem Bereich dienen kann. Durch die genannten Optimierungsmöglichkeiten lassen sich mit Sicherheit noch ein um 5-8 dB besserer THD+N und ein glatterer Frequenz- und Verzerrungsverlauf erreichen. Das modulare Layout erlaubt es, ohne größere Veränderungen an der Grundschaltung vielseitige Einsatzmöglichkeiten zu realisieren. Institut für Signalverarbeitung und Sprachkommunikation 48 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Anhang A: Abbildung 33: Schaltplan Testplatine Institut für Signalverarbeitung und Sprachkommunikation 49 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 34: Layout Testplatine Abb. 34 zeigt das Layout der Testplatine. Hier und bei dem Programmiergerät wird bewusst die Überlagerung beider Layer gewählt, um zu verdeutlichen, dass der DSP und der USBRS232 Umsetzer mit sehr wenig Peripherie auskommen. Deutlich zu sehen sind auch die Durchkontaktierungen, welche man sich komplett hätte ersparen können, wenn der DSP auf der Unterseite montiert worden wäre. Für den Prototypen werden im Folgenden Ober- und Unterseite getrennt aufgeführt. Institut für Signalverarbeitung und Sprachkommunikation 50 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 35: Schaltplan USB-Programmiergerät Abbildung 36: Layout USB-Programmiergerät Institut für Signalverarbeitung und Sprachkommunikation 51 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 37: Schaltplan Prototyp und Netzteil Institut für Signalverarbeitung und Sprachkommunikation 52 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 38: Layout Prototyp und Netzteil Unterseite + Oberseite Institut für Signalverarbeitung und Sprachkommunikation 53 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 39: Universal Programmierschnittstelle (Grundlage für EEPROM Programmiergerät) Abbildung 40: I2S Adapter (Grundlage für EEPROM Programmiergerät) Institut für Signalverarbeitung und Sprachkommunikation 54 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abbildung 41: Prototyp Unterseite Abbildung 42: Prototyp Oberseite Institut für Signalverarbeitung und Sprachkommunikation 55 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Literaturverzeichnis [BEUTH] BEUTH Klaus, BEUTH Olaf: Elementare Elektronik, Vogel Buchverlag, Deutschland, 2003 [HOROWITZ] HOROWITZ Paul, HILL Winfield: THE ART OF ELECTRONICS, Cambridge University Press, USA, 2008 [SELF] SELF Douglas: THE DESIGN OF ACTIVE CROSSOVERS, Focal Press, USA, 2011 ********************** [AD-EZ] ANALOG DEVICES ENGINEER ZONE, http://ez.analog.com → /message/2694#2694 (creating productionready file) letzter Zugriff 06.2013 → /message/64476#64476 (decision selfboot or µC) letzter Zugriff 06.13 → /thread/6784 (setting up register for digital in and out) letzter Zugriff 06.13 Institut für Signalverarbeitung und Sprachkommunikation 56 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs Abkürzungsverzeichnis ADC Analog-Digital-Umsetzer BP Bandpass CM Common Mode CMRR Common Mode Rejection Ratio CODEC Kodierer, Enkodierer DAC Digital-Analog-Umsetzer DAW Digital Audio Workstation DIP Dual Inline Package DSP Digitaler Signalprozessor E2Prom EEPROM GPIO General Purpose Input/Output Hex Hexadezimal HP Hochpass HT Hochton LED Leuchtdiode LS Lautsprecher MIPS Million Instructions Per Sample MT Mittelton NT Netzteil OPV Operationsverstärker THD+N Total Harmonic Distortion plus Noise Institut für Signalverarbeitung und Sprachkommunikation 57 Bachelorarbeit Entwicklung eines DSP Boards mit Audio Codecs THT Through Hole Technology TP Tiefpass TT Tiefton TTL Transistor-Transistor-Logik USB Universal Serial Bus WB Write Back Institut für Signalverarbeitung und Sprachkommunikation 58