mikrocontroller.net

Forum: FPGA, VHDL & Co. Sigma Delta DA-Wandler


Autor: Johnsn (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich will auf einem Spartan 3 Board (Schematic siehe Anhang) einen Sigma 
Delta DA-Wandler für Audio-Anwendung ansteuern. Derzeit habe ich es so 
gelöst, dass ich einfach jedes Bit eines Samples gleich lang am Pin des 
Sigma-Delta Wandler angelegt habe. Also bei 16 Bit und einer Abtastrate 
von 44117 Hz wären das "44117 / 16 = 362.67 µs".

Ich bin mir aber nicht sicher, ob ich das Prinzip des Digital zu Analog 
Konverters ganz verstanden habe. Woher weiß die Schaltung dann 
eigentlich, wann ein neues Sample eingetroffen ist, da es ja keine 
Steuerleitungen, sondern nur eine serielle Datenleitung gibt?

Ich wäre sehr froh, wenn mir jemand dabei auf die Sprünge helfen könnte, 
bin nahe der Verzweiflung...

Grüße,
Johnsn

Autor: VHDL_Mensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kann auf dem Schaltplan keinen DA-Wandler entdecken. Allerhöchstens 
einen Satz Lowpass-Filter. Evtl. solltest du mit einer PWM arbeiten.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich will auf einem Spartan 3 Board (Schematic siehe Anhang) einen Sigma
> Delta DA-Wandler für Audio-Anwendung ansteuern. Derzeit habe ich es so
> gelöst, dass ich einfach jedes Bit eines Samples gleich lang am Pin des
> Sigma-Delta Wandler angelegt habe. Also bei 16 Bit und einer Abtastrate
> von 44117 Hz wären das "44117 / 16 = 362.67 µs".

Meist sind es ja wohl nominal 44100 Hz. Und wenn man eine Freqeunz durch 
16 teilt kommt eine Zeit raus?

> Ich bin mir aber nicht sicher, ob ich das Prinzip des Digital zu Analog
> Konverters ganz verstanden habe. Woher weiß die Schaltung dann

Hast du nicht. Sigma-Delta ist auch ein wenig tricky.
Eigentlich braucht ein Sigmal-Delta Wandler 2^n Pulse, um einen Wert 
digital-analog zu wandeln. Bei dir also 2^16 = 65536. Deine 44.1 kHz 
Ausgabe müsste demnach theoretisch mit 44.1kHz * 65536 ~ 2,8 GHz (Ja , 
GIGA Hertz) getaktet werden. Real werden solche Dinger aber nur mit ein 
paar zig MHz getaktet. Erstens, weil das menschliche Ohr bei hohen 
Freqeunzen nicht so genau hört und zweitens weil noch andere technische 
Tricks verwendet werden.

> eigentlich, wann ein neues Sample eingetroffen ist, da es ja keine
> Steuerleitungen, sondern nur eine serielle Datenleitung gibt?

Der arithmetische Mittelwert ist die Ausgangsgrösse. Da braucht es keine 
Steuerleitung.

MfG
Falk

Autor: Johnsn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@VHDL_Mensch: Die Schaltung auf Seite 4 ist laut Produktbeschreibung ein 
Stereo Delta-Sigma Wandler.

@Falk: Sorry ich meinte natürlich 16/44100, der Wert stimmt eh. Ich hab 
eine 50 MHz Taktquelle zu Verfügung und es hätte mich auch gewundert, 
wenn das Prinzip so einfach wäre ;-). Hast du so ein Ding selbst schon 
mal angesteuert?

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Johnsn

> Die Schaltung auf Seite 4 ist laut Produktbeschreibung ein
> Stereo Delta-Sigma Wandler.

Schreiben kann man viel. ;-) Ich seh dort nur ein Paar OPVs (Filter) und 
einen Stereoverstärker (LM4880). Der Sigma-Delta-Wandler muss als 
Funktionsflock im FPGA realisiert werden.

> @Falk: Sorry ich meinte natürlich 16/44100, der Wert stimmt eh. Ich hab
> eine 50 MHz Taktquelle zu Verfügung und es hätte mich auch gewundert,
> wenn das Prinzip so einfach wäre ;-). Hast du so ein Ding selbst schon
> mal angesteuert?

Mehr oder weniger. Es gibt da ne Application Note von Xilinx, die hab 
ich mal in einen PACMAN Spielautomaten (im FPGA) eingebaut. Piepste ganz 
brauchbar ;-)

@VHDL Mensch

Sigma-Delta DA Wandler sind im Prinzip PWM Wandler, nur eben nicht 
Pulsbreite, sondern Pulsdichte. Hat den Vorteil, dass man mit wesentlich 
niedrigeren Filterbandbreiten arbeiten kann.

MfG
Falk

Autor: Chef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
siehe mal unter Dezimationsfilter!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.