M
Michael Dreschmann
Guest
Hallo,
ich habe ein Design für einen FPGA (Spartan 3) erstellt, welcher per
USB mit einem PC verbunden wird und von ihm einen unkomprimierten
Audiodatenstrom (16 Bit Stereo, 44100 Hz) aus einer Wave Datei erhält.
Diese wurde zuvor per Winamp mit Diskwriter Plugin aus einer mp3 Datei
erstellt.
Der Datenstrom wird im FPGA nun auf zwei 16 Bit Delta Sigma DA Wandler
geleitet, welche mit einer Frequenz von 44.1 KHz jeweils ein neues 16
Bit Sample erhalten. Die Taktfrequenz der Wandler liegt bei 48 MHz.
Die beiden Ausgangspins der Wandler am FPGA gehen auf einen Tiefpass
und dann noch durch einen 10ľF Kondensator zur DC Entkopplung und dann
auf einen Satz Brüllwürfel.
Im Prinzip funktioniert das ganze schon richtig gut (hat mich wirklich
überrascht). Aber bei leisen Stellen der Musik (also vor allem am
Anfang und am Ende) hört man ganz deutlich ein krutscheln (keine
Ahnung wie ich das beschreiben soll, so ein digital klingendes
rauschen *g*). Solange ein leises Audiosignal vorhanden ist (z.B. das
ausklingen des letzten Tons) ist dieses Rauschen schon wesentlich
gedämpfter. Scheinbar tritt das Problem vor allem dann auf, wenn die
auszugebende Amplitude nur äusserst gering ist.
Die Delta Sigma Wandler funktionieren eigentlich einwandfrei (d.h. bei
konstant angelegtem Wert ist absolut Ruhe) und auch der Datenstrom zu
den Wandlern scheint konstant und ohne Unterbrechungen zu kommen.
(Jedenfalls denke ich, dass man sowas durchaus dann auch bei lauten
Passagen bemerken müsste)
Mich würde jetzt mal interessieren, woher dieses Problem kommt und wie
man das behebt. Ich vermute, dass ich da noch irgendeine wichtige
Regel der DA Wandlung von Signalen grösser als 100 Hz verletze.
Insgesamt dient diese Audiogeschichte allerdings nur dazu die USB
Implementierung und ein On Chip Network zu testen, d.h. hier steht
mehr das Interesse im Vordergrund, nicht eine Marktreife Entwicklung.

Vielen Dank,
Michael
ich habe ein Design für einen FPGA (Spartan 3) erstellt, welcher per
USB mit einem PC verbunden wird und von ihm einen unkomprimierten
Audiodatenstrom (16 Bit Stereo, 44100 Hz) aus einer Wave Datei erhält.
Diese wurde zuvor per Winamp mit Diskwriter Plugin aus einer mp3 Datei
erstellt.
Der Datenstrom wird im FPGA nun auf zwei 16 Bit Delta Sigma DA Wandler
geleitet, welche mit einer Frequenz von 44.1 KHz jeweils ein neues 16
Bit Sample erhalten. Die Taktfrequenz der Wandler liegt bei 48 MHz.
Die beiden Ausgangspins der Wandler am FPGA gehen auf einen Tiefpass
und dann noch durch einen 10ľF Kondensator zur DC Entkopplung und dann
auf einen Satz Brüllwürfel.
Im Prinzip funktioniert das ganze schon richtig gut (hat mich wirklich
überrascht). Aber bei leisen Stellen der Musik (also vor allem am
Anfang und am Ende) hört man ganz deutlich ein krutscheln (keine
Ahnung wie ich das beschreiben soll, so ein digital klingendes
rauschen *g*). Solange ein leises Audiosignal vorhanden ist (z.B. das
ausklingen des letzten Tons) ist dieses Rauschen schon wesentlich
gedämpfter. Scheinbar tritt das Problem vor allem dann auf, wenn die
auszugebende Amplitude nur äusserst gering ist.
Die Delta Sigma Wandler funktionieren eigentlich einwandfrei (d.h. bei
konstant angelegtem Wert ist absolut Ruhe) und auch der Datenstrom zu
den Wandlern scheint konstant und ohne Unterbrechungen zu kommen.
(Jedenfalls denke ich, dass man sowas durchaus dann auch bei lauten
Passagen bemerken müsste)
Mich würde jetzt mal interessieren, woher dieses Problem kommt und wie
man das behebt. Ich vermute, dass ich da noch irgendeine wichtige
Regel der DA Wandlung von Signalen grösser als 100 Hz verletze.
Insgesamt dient diese Audiogeschichte allerdings nur dazu die USB
Implementierung und ein On Chip Network zu testen, d.h. hier steht
mehr das Interesse im Vordergrund, nicht eine Marktreife Entwicklung.
Vielen Dank,
Michael