Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Audioadapter (Soundblaster)

Ähnliche Präsentationen


Präsentation zum Thema: "Audioadapter (Soundblaster)"—  Präsentation transkript:

1

2 Audioadapter (Soundblaster)

3 Gliederung 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 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

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 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

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

6 2. Funktionsweise 2.1 A / D Wandler Fixiert auf 48 kHz
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 2.1 A / D Wandler (Sampling nach dem PCM Standard)
2. Funktionsweise 2.1 A / D Wandler (Sampling nach dem PCM Standard) Qualität des digitalen Signals hängt ab von: Abtastrate / Samplingrate: Abtastung des analogen Signals in regelmäßigen Abständen (Bsp.: 44,1 kHz = Abtastungen pro Sekunde) Nyquist Abtasttheorem: Die Bandbreite eines digital abgetasteten Signals ist weniger als die Hälfte der Abtastfrequenz (Mensch hört von 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 mögliche Werte Datengröße bestimmen: Samplingrate * Auflösung(1 oder 2 bytes) * Kanal (Mono 1, Stereo 2) = byte / s Rechenbeispiel: Hz * 2 bytes (Auflösung 16 bit) * 2 (Stereo) = 0.16 MB/s.

8 2.1 A / D Wandler (Sampling nach dem PCM Standard)
2. Funktionsweise 2.1 A / D Wandler (Sampling nach dem PCM Standard) 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

9 2. Funktionsweise 2.2 AC 97 Standard
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)

10 2.2 AC 97 Standard (AC Link Interface)
2. Funktionsweise 2.2 AC 97 Standard (AC Link Interface) 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 bit Auflösung unterstützen

11 2. Funktionsweise 2.2 AC 97 Standard (Übertragung AC-Link + Slots)
Erklärung (SDATA OUT) Erklärung (SDATA IN) Tag 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; 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 3,4 bit PCM Audio-Daten für linken und rechten Kanal bit PCM Audio-Daten von linken und rechten Eingangssignal 6,7,8 bit PCM Audio Daten für Surround linken und rechten Kanal reserviert 1 Slotrequest Informationen – sind wichtig für variable Samplingraten Die Bits 3-12 werden belegt.

12 2.2 AC 97 Standard (Variable Samplingraten)
2. Funktionsweise 2.2 AC 97 Standard (Variable Samplingraten) 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

13 2. Funktionsweise 2.3 DSP 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.

14 2.3 DSP (Effekt Prozessor FX 8010)
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 3. Klangerzeugungsverfahren
3.1 Wavetable - Synthese 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

16 3. Klangerzeugungsverfahren
3.1 Wavetable - Synthese 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.

17 3. Klangerzeugungsverfahren
3.2 FM - Synthese 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)

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 4. MIDI (Musical Instruments Digital Interface)
4.2 Hardware - Merkmale Um Geräte zu verbinden werden Midikabel mit meist 5 poligen Steckern verwendet (nur 3 Leitungen wichtig) Übertragungsrate von Baud (Bits / Sek) = ca 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

21 4. MIDI (Musical Instruments Digital Interface)
4.3 Software - Merkmale 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)

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
Datasheets STAC9708, EMU10k1,OPL2,FX8010 Google und verschiedene andere Internetseiten


Herunterladen ppt "Audioadapter (Soundblaster)"

Ähnliche Präsentationen


Google-Anzeigen