Diskreter D/A Wandler mit nichtlinearer Quantisierung

OP #2610300
Lesenswert?
• ▲
▼
Hi Leute,

folgende Ausgangssituation: Renesas R8C Mikrocontroller ohne 
integrierten D/A Wandler. 6 digitale Ausgangsports sind an einen 6 bit 
D/A R2R Widerstandsnetzwerk angeschlossen (Siehe 
http://de.wikipedia.org/wiki/R2R ). Der Controller schickt mit einer 
Frequenz von 32kHz Audio Samples über diesen 6 bit "Bus". Die Signale 
werden über das Netzwerk D/A gewandelt und anschließend über einen 
Operationsverstärker auf einen Lautsprecher gegeben.

Ich möchte den Schaltungsaufwand weiter minimieren. Das Audiosignal 
braucht keinen Hifi-Ansprüchen genügen, sollte aber noch 
Wiedererkennungswert haben ;-). Frequenzen bis ca. 14kHz sind z.B. 
wichtig.

Der Versuch die Busbreite zu verkleinern, z.B. auf 5 oder 4 Bit, war 
nicht zielführend. Die Signalqualität nahm deutlich ab, z.B. wegen dem 
Quantisierungsrauschen.  Nun gibt es ja diese tolle nichtlineare 
Quantisierung, z.B. http://de.wikipedia.org/wiki/A-law welche bei 
Telefonie benutzt wird.

Die Idee: Die A-Law Quantisierungskennlinie auf 4 bit umrechnen. Die 
Audiosamples damit komprimieren, im Flash-Speicher des µC ablegen, auf 
dem Bus ausgeben und dann über das Widerstandsnetzwerk entsprechend der 
inversen A-Law Kennlinie expandieren. Im Prinzip also genau wie bei 
ISDN, u.ä. Eigentlich müsste man dadurch mit weniger Busbreite, z.B. 4 
Bits, eine ähnliche Qualität hinbekommen, wie mit 5 oder 6 Bits und 
linearer Quantisierung. Zumindest, wenn ich das Prinzip richtig 
verstanden habe ;-) Hängt sicherlich von der Art des wiederzugebenden 
Signals ab. Ein Versuch schadet zumindest nicht!

Leider fehlt mir als Informatiker der richtige Ansatz, um so einen D/A 
Wandler diskret aufzubauen. Und Infos dazu finde ich auch nicht. 
Höchstens fertige Codec-Chips, z.B. für ISDN. Man kann natürlich an den 
Widerstandswerten herumschrauben und aus dem R2R was krummes machen. 
Aber da sich die ganzen Spannungen gegenseitig beeinlussen, ist das gar 
nicht so einfach. Hätte da jemand eine Idee? Bin für jeden Tipp dankbar!
#2610315
Lesenswert?
• ▲
▼
@  Daniel St. (danstroem)

>Ich möchte den Schaltungsaufwand weiter minimieren.

Dann nimm PWM.

>ISDN, u.ä. Eigentlich müsste man dadurch mit weniger Busbreite, z.B. 4
>Bits, eine ähnliche Qualität hinbekommen, wie mit 5 oder 6 Bits und
>linearer Quantisierung.

Ja.

MG
Falk

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.