Forum: Mikrocontroller und Digitale Elektronik Stereo DAC (S/W Control) vs (H/W Control)


von Michael (Gast)


Lesenswert?

Hallo,

ich muss mich bei 2 Audio DACs zwischen S/W oder H/W - Control 
entscheiden. Kann mir jemand erklären was es damit auf sich hat. Heißt, 
dass die Einstellungen beim einen durch Software (-> µC) geschehen und 
beim anderen durch Hardwarebeschaltung?

http://www.ti.com/product/pcm1792a

vs.

http://www.ti.com/product/pcm1794a

Dankeschön

von Lötlackl *. (pappnase) Benutzerseite


Lesenswert?

Das Problem hatte ich mal mit einem Chip (CS8420). Ist zwar kein DAC, 
bietet aber auch zwei Kontrollmöglichkeiten.
Ich entschied mich für "H/W-Control". War für meine Zwecke ausreichend.

mfg

von Kurt H. (Firma: KHTronik) (kurtharders)


Lesenswert?

Hallo Michael,

wenn die Einstellungen mittels HW-control ausreichen, nimm die 
HW-control Version. Folgende Punkte solltest Du bezüglich der 
Kompatibilität zwischen Prozessor und DAC vor mit den Manuals prüfen:
- Wortlänge
- Betriebsart (I2S, TDM, Multichannel...)
- LSB-first/MSB-first
- Endianess
- LR-Clockpolarität
- Clockphase
- Signalpolarität
Da ich gerade die Erffahrung mache, dass man sich bei der Interpretation 
schnell verrennt würde ich persönlich die SW-control-Version vorziehen 
um flexibel regieren zu können. Das hängt aber auch stark von Deiner 
Fitness in Sachen SW und Deinen Messmöglichkeiten (Scope, LA) ab.

Viel Erfolg, Kurt

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Kurt Harders schrieb:
> Da ich gerade die Erffahrung mache, dass man sich bei der Interpretation
> schnell verrennt würde ich persönlich die SW-control-Version vorziehen
> um flexibel regieren zu können.

Das kann man mit Jumperpads auch. Die Softwaresteuerung ist aber immer 
am flexiblesten, benötigt aber - wie der Name schon sagt - einen 
Controller und Programmierkenntnisse.

von Michael (Gast)


Lesenswert?

Sehr cool - vielen Dank für die Tipps und vor allem für die 
konstruktiven Beiträge. Dann erzähl ich mal noch ein bisschen weiter was 
ich vorhabe. Soll im Endeffekt mal ein "Audio DAC" von höherer Qualität 
werden.

Overall goal soll ein FLAC Decoder auf Basis eines STM32F407 oder 
STM32F415 sein. FPU und DMA sind vorhanden. Außerdem habe ich dann bis 
zum USB HS Interface alles zur Hand was mir vollständige 
Eigenentwicklung offen hält.

Natürlich sollen auch andere Möglichkeiten offen bleiben. Im 
Audiobereich sehr beliebt ist ja SPDIF. Darum habe ich mir als Audio 
Interface den DIX9211 rausgesucht. SPDIF in & out, Eingangs MUX, etc
http://www.ti.com/product/dix9211

Das ganze wollte ich dann mit einem Sample Rate Converter SRC4193 oder 
SRC4192 (wieder H/W Control vs S/W Control) nach 192 kHz konvertieren.
http://www.ti.com/product/src4193
http://www.ti.com/product/src4192

Danach das ganze dann in besagte Audio DACs und mit 2 Opamps (I/U + 
Filter mit OPA2134 + OPA604) für den Verstärker aufbereitet. Gute 
Spannungsversorgung ist ebenfalls angedacht.

Also Addon hatte ich noch an den PCM2707 (USB-Audio DAC mit 
SPDIF-Ausgang) gedacht. Die DAC-Funktionalität hätte ich in diesem Falle 
außen vor gelassen. Ich hätte lediglich den SPDIF-Out verwendet um damit 
mittels eines kurzen SPDIF-Kabels direkt wieder auf den DIX9211 
gefahren. Klingt irgendwie zwar komisch aber würde in meinen Augen eine 
gute Entkoppelung des gesamten PC-Apperats bringen.

Also Funktionsdiagramm:

+------------+        SPDIF         +--------+   +-------+
|SPDIF-Quelle|--------------------->|        |I2S|SRC    |I2S+--------+
+------------+                      |DIX9211 |-->|SRC4193|-->|PCM1792A|
+-----------+  USB  +-------+ SPDIF |Inp. MUX|   |(S/W)  |   +---^----+
|PC mit USB |------>|PCM2707|------>|        |   +---^---+       |   |
+-----------+       +----^--+       +-^^-----+       |           |   |
+--------------+         |control     || control     |           |   |
|FLAC-Quelle   |         |            ||  & audio    ^           ^   |
|z.B.          |  *  +---^------------^^+   data!    |           |   |
|Rasp. Pi GPIO |---->|                  |            |           |   |
|Eigenentwickl.|     | STM32F407        |------->----+-----------+   |
+--------------+     | evtl. Discovery  |   control     control      |
+--------------+  *  | dann USB nur FS  |      +-------------+       |
|USB HS/FS     |---->|                  |<---> |LCD+Drehgeber|       |
|Eigenentwickl.|     +------------------+      +-------------+       |
+--------------+                                                     |
                                                                     +>
                                                 Analoger Output zu OPs
* = eigenes Interface

Ich bin mir im klaren darüber, dass das eine sagen wir sportlich 
Angelegenheit wird und ich mit dem 24bit Design sicher erstmal ein paar 
Fehlschüsse in Sachen PCB-Layout starten werde. Aber man kann ja 
immernoch die letzten 8 bis 12 LSBs wegwerfen. Auch wenn ich das bei 
Gott nicht hoffe. Der "komisch" Ansatz mit dem USB DAC mit SPDIF-out wie 
gesagt zum Zwecke der Entkopplung vom PC.

Hat jemand Ideen? Anregungen? Bedenken?

Dankeschön

von Jobst M. (jobstens-de)


Lesenswert?

DIX9211 + SRC4193 = SRC4392 - wenn Dir weniger Eingänge ausreichen.

Du kannst statt des PCM2707 auch den PCM2902 oder 2906 benutzen. Ein 
Übertrager dazwischen ist ausreichend. Wofür dient die 
control-Verbindung zum PCM2707? Möchtest Du damit den USB-Host 
fernbedienen? Auf jeden Fall solltest Du auch hier eine galvanische 
Trennung vorsehen.

Kritisch wird Dein Layout vor allem auf der analogen Seite. Achte auf 
saubere Masse und darauf, daß zusammengehörende Signale auch räumlich 
zusammen bleiben (also z.B. IoutL+ und IoutL-).


Gruß

Jobst

von Michael (Gast)


Lesenswert?

Jobst M. schrieb:
> DIX9211 + SRC4193 = SRC4392 - wenn Dir weniger Eingänge ausreichen.

Das ist ein guter Tipp. Werde ich mir mal näher anschauen. Das könnte 
mir u.U. einiges an Komplexität nehmen. Dankeschön.

Jobst M. schrieb:
> Wofür dient die
> control-Verbindung zum PCM2707? Möchtest Du damit den USB-Host
> fernbedienen? Auf jeden Fall solltest Du auch hier eine galvanische
> Trennung vorsehen.

Die control-Verbindung habe ich vorgesehen, da VID + PID und Deskriptor 
veränderbar sind. Und wenn ich schon einen Controller dranhängen habe, 
dann möchte ich da keine Kompromisse machen. Control-Verbindung ist 
vielleicht ein falsch gewählter Ausdruck. Die galvanische Trennung hätte 
ich fast vergessen. Standart-Optokoppler erscheinen mir hier durchaus 
ausreichend - with respect to fmax.

Jobst M. schrieb:
> Kritisch wird Dein Layout vor allem auf der analogen Seite. Achte auf
> saubere Masse und darauf, daß zusammengehörende Signale auch räumlich
> zusammen bleiben (also z.B. IoutL+ und IoutL-).

Ja darüber habe ich mir auch schon Gedanken gemacht. Nachdem meine 
Erfahrung im Analogbereich eher nicht so die größte ist, habe ich 
gedacht ich übernehme zuerst mal ein vernünftiges Konezept von 
http://wakalixes.propirate.net/elektronik/audio-dac/#analog
Hier ist ja alles mit Layout. Darum würde ich eben vorerst nur den 
Digitalteil neu stricken (das ist genügend Arbeit) und mich dann später 
(wenn nötig / möglich) mich dem Analogteil widmen. An der Uni habe ich 
Zugriff auf entsprechende Messmittel sowohl im Messtechik- als auch 
Audiolabor. Es ist ja so und so ein etwas größeres Projekt an dem man 
länger arbeitet. Darum nehme ich jetzt mal den Analogteil als fertige 
Komponente hin die ich dann in einer späteren Version noch betrachte.

Ich dachte außerdem auch an eine physische Trennung von Analogteil und 
Digitalteil. Speziell weil ich großen Respekt vor dem Digitalterror auf 
der Digitalseite habe. Ich denke ich werde mich bemühen die 
Stromversorgung auf eine Platine zu bringen, die ganze Digitalsache auf 
eine andere Platine und von dort aus dann nur noch mit den 
Datenleitungen es DACs auf das Analogboard. Das soll dann nur den DAC + 
die OPs beinhalten.

Klingt das sinnvoll oder sollte ich eher alles auf eine Platine stecken 
(günstiger) und dafür dann räumlich deutlichen abtrennen? 
Stromversorgung für die OPs ist ja sowieso eine andere da bipolar. Also 
mit Abtrennung meine ich quasi eine "clearance-Zone" in der nichts außer 
Basismaterial FR4 ist. Eure Meinung: lieber 2 Platinen und Flexkabel 
oder alles auf eine aber räumlich getrennt?

Schönen Sonntag noch

Gruß Michael

von Jobst M. (jobstens-de)


Lesenswert?

Michael schrieb:
> Die control-Verbindung habe ich vorgesehen, da VID + PID und Deskriptor
> veränderbar sind.

Die legt man in einem EEPROM ab. Das wird mit dem Controller in die Hose 
gehen. Allein schon, weil beide (auch zeitlich) unterschiedliche 
Spannungsversorgungen haben.


Michael schrieb:
> Darum nehme ich jetzt mal den Analogteil als fertige
> Komponente hin die ich dann in einer späteren Version noch betrachte.

Gut.

Michael schrieb:
> Eure Meinung: lieber 2 Platinen und Flexkabel
> oder alles auf eine aber räumlich getrennt?

Ersteres hat den Vorteil, daß man eine Komponente austauschen kann, ohne 
den Rest neu zu machen.

Wenn es ordentlich gemacht ist, spricht sonst nichts dagegen, beides auf 
ein Board zu setzen.


Gruß

Jobst

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.