Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Audioadapter (Soundblaster) 1. Aufgaben eines Audioadapters 1.1 Komponenten 1.2 Ein / Ausgänge und Signalwege (Grober Überblick) 2. Funktionsweise 2.1.

Ähnliche Präsentationen


Präsentation zum Thema: "Audioadapter (Soundblaster) 1. Aufgaben eines Audioadapters 1.1 Komponenten 1.2 Ein / Ausgänge und Signalwege (Grober Überblick) 2. Funktionsweise 2.1."—  Präsentation transkript:

1

2 Audioadapter (Soundblaster)

3 1. Aufgaben eines Audioadapters 1.1 Komponenten 1.2 Ein / Ausgänge und Signalwege (Grober Überblick) 2. Funktionsweise 2.1 A/D Wandler + Sampling 2.2 AC 97 2.3 DSP 3. Klangerzeugungsverfahren 3.1 Wavetable - Synthese 3.2 FM - Synthese 4. Midi 4.1 Midi – Standards 4.2 Hardware Merkmale 4.3 Software Merkmale 4.4 Midi Message Spezifikationen 5. Schlusswort Gliederung

4 1. Aufgaben eines Audioadapter -Analoge Audiosignale in digitale Audiosignale umwandeln -Digitale Audiosignale in analoge Audiosignale umwandeln -Klangerzeugung – verschiedene Verfahren (Wavetable / FM / PM Synthese) -Steuerung der Klangsynthese und externer Geräte (Keyboard, DAT Recorder usw.) über MIDI -Anschluss verschiedener externer Geräte (Keyboard, Mikrofon, CD-Player usw.) 1.1 Komponenten AD / DA - Wandler (SB Live; AC97 Cod. Sigmatel 9708) - A/D – D/A Wandler - Mixer Funktion DSP (Digital Signal Processing) – (SB Live; EMU10K1) - Zentraleinheit - Music Synthesizer (Wavetable) + Audio Processor - Datenzugriff auf Systemkomponenten (PCI) - Effekte Prozessor + Digital Audio Mixer - 3D Sound Berechnung - Leistungsstärker als Pentium 166 OPL – Chip - FM – Synthese 1.1 Komponenten

5 1. Aufgaben eines Audioadapters 1.2 Ein und Ausgänge + Signalwege

6 2. Funktionsweise 2.1 A / D Wandler Sigmatel 9708 AC97 Codec (SB Live) -Fixiert auf 48 kHz -Analoge Signale werden über Mixer in 1 Stereosignal (PCM – Pulse Code Modulation) konvertiert -Datentransfer über AC Link Interface (Bestandteil von AC 97 Standard) -Multi-Codec ID0, ID1 für Anschluss von zwei weiteren AC97 Codecs -2 Stereosignale am Ausgang für Surround Sound (Front/Rear Output)

7 Qualität des digitalen Signals hängt ab von: -Abtastrate / Samplingrate: Abtastung des analogen Signals in regelmäßigen Abständen (Bsp.: 44,1 kHz = 44100 Abtastungen pro Sekunde) Nyquist Abtasttheorem: Die Bandbreite eines digital abgetasteten Signals ist weniger als die Hälfte der Abtastfrequenz (Mensch hört von 20-22 kHz, je nach Alter verschieden; 44 kHz Samplingrate kann maximal 22 kHz darstellen) -Auflösung (Quantisierung): hängt davon ab, wieviel Bits zur Messung der Amplitude des Signals verwendet werden sollen. 8 bit Quantisierung bedeutet 256 mögliche Werte, 16 bit Quantisierung sind 65536 mögliche Werte Datengröße bestimmen: Samplingrate * Auflösung(1 oder 2 bytes) * Kanal (Mono 1, Stereo 2) = byte / s Rechenbeispiel: 44100 Hz * 2 bytes (Auflösung 16 bit) * 2 (Stereo) = 0.16 MB/s. 2. Funktionsweise 2.1 A / D Wandler (Sampling nach dem PCM Standard)

8 Probleme beim Sampling: -Aliasing Effekt: Frequenzen oberhalb der Hälfte der Abtastfrequenz werden falsch dargestellt Lösung: Lowpass Filter (schneidet Frequenzen ab bestimmter CutOff Frequenz ab) -Quantisierungsrauschen: Je weniger Bits für Messung der Amplitude des Signals -> desto größer der Rundungsfehler -> Rauschen 2. Funktionsweise 2.1 A / D Wandler (Sampling nach dem PCM Standard)

9 -Von Intel, Yamaha, Creative Labs und anderen Firmen definiert -AC 97 beschreibt Design und Anforderungen eines Codec, sowie das Interface zur Datenübertragung Ein Codec muss: -48 oder 64 Pins haben -8-48 kHz Samplingrate unterstützen -4 analoge Signale gleichzeitig konvertieren -über das 5 Kanal serielle AC Link Interface kommunizieren können -AC97 wird häufig auf Mainboards (Onboard Sound) integriert und aus Kostengründen wird auf DSP verzichtet -Ohne DSP übernimmt die CPU alle Aufgaben des DSP und des AC97 Controller -AC Link Controller (ICH – I/O Controller Hub) in der Southbridge installiert (Mainboard) -Es können bis zu 4 Audio Codecs in einem System vorhanden sein. (Primary+3 Secondary) 2. Funktionsweise 2.2 AC 97 Standard

10 -5 Datenleitungen mit serieller Übertragung in beide Richtungen -Taktrate erhält der Primary Codec über externen Taktgeber (24,576 MHz) -Synchronisation wird über BIT_CLK Pin erreicht und die Taktrate ist Hälfte von Taktgeber (12,288 MHz) -aufsteigende Flanke: Biterkennung; absteigende Flanke: Bitübertragung (ist ausreichend für 48 kHz Audio) -Übertragung mehrerer PCM Audiostreams, durch TDM Schema (Time Division Multiplex) -TDM: 12 ein- ausgehende Datenströme (Slots) mit jeweils 20 bit -AC97 Codec kann 16 - 20 bit Auflösung unterstützen 2. Funktionsweise 2.2 AC 97 Standard (AC Link Interface)

11 2. Funktionsweise 2.2 AC 97 Standard (Übertragung AC-Link + Slots) SlotsErklärung (SDATA OUT)Erklärung (SDATA IN) 0Tag Informationen (16bit lang) – zeigt an, welche nachfolgenden Slots 1-12 gültige Daten enthalten Bit 0-1 enthält Codec ID (00 reserviert für Primary Codec; 01-10-11 Secondary Codecs; bis zu 3 Secondary Codecs können über AC97 Controller angesteuert werden) Bit 15: enthält Codec Ready Bit Tag Informationen (16bit lang) – zeigt an, welche nachfolgenden Slots 1-12 gültige Daten enthalten Bit 15: enthält Codec Ready Bit 3,416-18-20 bit PCM Audio-Daten für linken und rechten Kanal 16-18-20 bit PCM Audio-Daten von linken und rechten Eingangssignal 6,7,816-18-20 bit PCM Audio Daten für Surround linken und rechten Kanal reserviert 1Slotrequest Informationen – sind wichtig für variable Samplingraten Die Bits 3-12 werden belegt.

12 -AC97 sieht vor das Samplingraten zwischen 8-48 kHz vorhanden sein müssen -Der Codec ist aber fixiert auf 48 kHz, wegen 12,288 MHz Taktgeber. Es werden immer 48 kHz übertragen. Problem: Wie erreicht man variable Samplingraten ? On Demand Technologie: -Der AC 97 Codec muss diese Technik beinhalten -Slot1 von SDATA IN beinhaltet in den Bits 3-12 Slotrequest Informationen. -Diese Bits geben an, ob Slot 3-12 belegt ist, oder nicht -Wenn im Slot1 von SDATA IN eines der Bits 3-12 mit 0 belegt ist, so übergeht der AC97 Controller diesen Slot beim nächsten Audioframe 2. Funktionsweise 2.2 AC 97 Standard (Variable Samplingraten)

13 EMU10k1 - Intern - Konvertierung aller Audiosamples auf 48 kHz durch Multipoint Sample Rate Konverter -PCI Master + Slave Unterstützung, dadurch direkten Zugriff auf Speicher (DMA) ohne CPU Nutzung -Virtual Memory Mapping wegen DMA Zugriff: Page Tabelle im Systemspeicher vorhanden -Look aside Buffer: Interne Page Tabelle, worauf der Zugriff noch schneller ist. -Wenn ungültige Daten im Look aside Buffer, dann update des Buffers mit Page Tabelle aus Systemram Abspielen und Aufnehmen von Daten (Problem – Datenstrom wird kurzzeitig unterbrochen): -Double Buffering: Nutzung von 2 Speicherblöcken. Während ein Speicherblock ausgelesen wird, wird der andere Speicherblock beschrieben. -Auto Init DMA: Gleiche Funktionsweise wie Double Buffering, aber es wird nur 1 Speicherblock benutzt. DMA Speicherblock mit bestimmter Länge angelegt; Soundkarte auf die Hälfte der Länge des DMA Speicherblockes programmiert. 2 Interrupts pro Speicherblock ausgelöst. 2. Funktionsweise 2.3 DSP

14 2. Funktionsweise 2.3 DSP (Effekt Prozessor FX 8010) FX8010 -Befindet sich im EMU10k1 -Zuständig für 3D Audio Berechnung (EAX – Environmental Audio) -Digitale Mixerfunktion (32 Ein- und Ausgangskanäle; Ausgangskanäle können zu Einganskanäle umgewandelt werden) -Effekte zu digitalen Audiospuren hinzufügen -Effekte für Wavtable Synthese (MIDI) -1 Kb Instruction Memory, worin sich die Effektealgorithmen befinden -Effekte können über C programmiert werden und in Assemblercodekonvertierung (spezielles Tool) auf den Instruction Memory hochgeladen werden

15 -Basis bilden kurze Soundfragmente -Wegen Speichermangel meist 1 Soundfragment pro Instrument -Layering: mehrere Soundfragmente pro Instrument -> Klang naturgetreuer -Soundfregmente werden in Systemram, ROM oder Ram abgelegt (SBLIVE – 32 MB im Systemram) -Dynamik wird durch ADSR Hüllkurven erreicht -Weitere Sounddetails über Loop-Funktion, LFO (Tremolo (Amplitudenmodulation), Vibrato (Frequenzmodulation)) -Ansteuerung der Wavetabe-Synthese über MIDI -Um Soundsamples zu finden wird eine Wave Tabelle verwendet, welche die Speicheradressen mit dem jeweiligen Soundsample enthalten 3. Klangerzeugungsverfahren 3.1 Wavetable - Synthese

16 Problem: Tonerhöhung !! Lösung: Pitch-Shifting Pitch-Shifting: Bsp: Ein Ton soll eine Oktave höher gespielt werden (doppelte Frequenz): Sample im RAM oder Rom ist mit 44,1 kHz gespeichert -> nur jeden 2. Wert vom Sample abspielen -> Ton Oktave höher Problem: Tonerhöhung, aber keine Frequenzverdopplung !! Lösung: Interpolation Interpolation: Bsp: Tonhöhe soll um das 1,5 fache erhöht werden -> fehlende Werte im Originalsample im ROM oder RAM -> neues Adressierungsschema (Integer Part, Fractional Part), Zwischenwerte müssen berechnet werden. 3. Klangerzeugungsverfahren 3.1 Wavetable - Synthese

17 -1967 entwickelt (Yamaha hat als erster FM Synthese auf Audioadaptern integriert) -FM – Synthese basiert auf Sinusgeneratoren (Generatorzellen, Operatoren), welche sich gegenseitig beeinflussen -Yamaha OPL 2,3,4,5 Chip übernehmen diese Funktionen (OPL2,3 werden nicht mehr verbaut) auf Soundkarten. -OPL2 hat 18 Generatorzellen; jeweils 2 Generatorzellen pro Kanal (1 Träger, 1 Modulator) -Jede Generatorzelle besteht aus einem Oszillator (Frequenzerzeuger) und einer ADSR Hüllkurve Ablauf: -Träger erzeugt Sinussignal -Modulator Ausgangssignal wird immer als Träger Eingangssignal genutzt -Es kann auch nur ein Träger ohne Modulator genutzt werden -Modulator ohne Träger funktioniert nicht (kein Ton) 3. Klangerzeugungsverfahren 3.2 FM - Synthese

18 3. Klangerzeugungsverfahren 3.2 FM - Synthese Zugriff auf den OPL2: -Für Zugriff des Ports (388h, 389h); 388h Registeradresse, 389h Wert des Registers -Zugriff auf Basisregister (Generatorzelle) durch Basisregister+Offset der Generatorzelle -Zugriff auf Basisregister (Kanal) durch Basisregister+Offset des Kanals -Für Generatorzelle zuständige Basisregister (20h,40h,60h,80h) -Für Kanal zuständige Basisregister (A0h,B0h,C0h) -Frequenzerzeugung durch 8 bit im Register A0h + 2bit im Register B0h -10 bit Frequenz bietet nur 1024 Möglichkeiten -> zu wenig - >Blocknummer der Okatve (Register B0h – Bit 2-4) -Kanäle zusammenschalten über Reg. C0h -Register 20h, Bit 0-3: Multiplikationsfaktor Kanalfrequenz Beispiel: Kammerton A Kanal 1 Modulator: 2*Frequenz Träger: 1*Frequenz Verbindung (FM-Synt.)

19 4. MIDI (Musical Instruments Digital Interface) Allgemein -1983 entwickelt von Yamaha, Roland, Korg usw. -MIDI ist eine genormte Schnittstelle, mit der verschiedene Geräte, Instrumente (mit Midianschluss) über ein Standard Interface kommunizieren können -MIDI überträgt nur Steuersignale und keine digitalisierten oder analogen Audiosignale 1. Standard war und ist GM (General - Midi) Standard: -Stimmenzahl, mindestens 24 Stimmen mit dynamischer Zuordnung -16-fach multitimbral (16 Instrumente können gleichzeitig angesteuert werden) – 16 Midikanäle -festgelegte Controllernummern (Chorus, Hall) -Aftertouch (Anschlagdynamik) für jeden Kanal -Pitchbend-Range 2 Halbtonschritte -festgelegte Drummaps und Sounds 2. Standard GS (General Standard) Standard: -Standard hat an Bedeutung verloren, da nur sehr wenige Veränderungen gegenüber GM 3. Standard XG (Extended General Midi) Standard: -Nur von Yamaha entwickelt und eingesetzt, bietet er volle Kompatibilität zu GM -Mind. 460 Sounds, viele neue Effekte (Phaser, Distortion, Flanger usw.) -Sehr viele Effektparameter zum einstellen 4.1 MIDI - Standards

20 -Um Geräte zu verbinden werden Midikabel mit meist 5 poligen Steckern verwendet (nur 3 Leitungen wichtig) -Übertragungsrate von 31.250 Baud (Bits / Sek) = ca. 3000 Midibytes pro Sekunde, da jedes Byte aus 2 Synchronisationsbits und 8 bits für Daten besteht. -UART (universal asynchronous receiver / transmitter) Baustein, der ein erhaltenes Midibyte über ein 8 bit breites Interface zum Microcontroller parallel sendet -Vor dem Transfer zum Mikrocontroller werden Daten noch in einen Zwischenpuffer abgelegt. Ist dieser voll wird per Interrupt gemeldet, dass Daten abgeholt werden müssen -Intern können Daten mit wesentlich höherer Takt- rate verarbeitet werden 4. MIDI (Musical Instruments Digital Interface) 4.2 Hardware - Merkmale

21 -Bis heute keine Änderung an der Midiübertragung -Über das Midiprotokoll können Instrumente mit Midianschluss, sowie Mischpulte und Effektgeräte usw. angesteuert werden Aufbau der Mididaten: -Statusbyte (10 bit, MSB immer 1) -Datenbyte (10 bit, MSB immer 0) -Jedes Midisignal beginnt immer mit einem Statusbyte, gefolgt von 1 oder 2 Datenbytes -Wenn die Variationsmöglichkeiten eines Datenbytes nicht ausreichen, wird ein 2. verwendet -Running Status: Datenreduktion -Extern können über 1 Midikabel nur 16 Midikanäle gesteuert werden -Intern (Wavetablesynthese) können auch mehr Midikanäle verwendet werden (Softwareemulation) 4. MIDI (Musical Instruments Digital Interface) 4.3 Software - Merkmale

22 4. MIDI (Musical Instruments Digital Interface) 4.4 Midi Message Spezifikationen

23 4. MIDI (Musical Instruments Digital Interface) ÜBUNG

24 The End Quellen http://emu10k1.sourceforge.net http://www.tu-chemnitz.de http://www.creative.com http://www.midi.org Datasheets STAC9708, EMU10k1,OPL2,FX8010 Google und verschiedene andere Internetseiten


Herunterladen ppt "Audioadapter (Soundblaster) 1. Aufgaben eines Audioadapters 1.1 Komponenten 1.2 Ein / Ausgänge und Signalwege (Grober Überblick) 2. Funktionsweise 2.1."

Ähnliche Präsentationen


Google-Anzeigen