Forum

Einloggen | Registrieren | RSS  

chaos.klaus(R)

29.07.2014,
21:33
(editiert von chaos.klaus
am 29.07.2014 um 21:34)
 

ADAT-Decoder mit DAC verbinden. Serielle Datenformate. (Elektronik)

Hallo liebes Forum,

ich möchte aus einem ADAT-Stream acht analoge Audio-Signale erhalten und habe zwei ICs die das bewerkstelligen sollen:

Einen Adat-Decoder: CoolAudio V1402
(Datenblatt: http://www.coolaudio.com/docs/datasheet/V1402_DATASHEET.pdf)

Und einen 8-Kanal D/A-Konverter (DAC): Texas Instruments PCM1680
(Produktseite mit Datenblatt: http://www.ti.com/product/pcm1680)

Mir geht es um das serielle Datenformat über das beide kommunizieren sollen.

Ab Werk ist der DAC auf "Left Justified" eingestellt.

Am Decoder kann ich Left-Justified auch als Format anwählen. Dazu ist vermerkt: "BCLK rises on WDCLK edge" (siehe: Datenblatt Seite 2) Aus den Bildchen darunter wird ersichtlich, dass die BitClock also immer steigt wenn die WordClock den Zustand wechselt. All diese Clocks kann der Decoder aus dem ADAT-Stream übrigens selbst generieren.

Was mich nun verwundert ist folgendes:

Im Datenblatt des DAC steht dass für die Bitclock auch die aufsteigende Transiente ausschlaggebend ist, soweit so gut. Aber auf den Bildchen darunter fällt (!) die Bitclock wenn die Wordclock den Zustand wechselt! (siehe: Datenblatt Seite 15)

Das kann aber nicht sein weil ja beide Chips die selben Clocks verwenden sollen. Nun frage ich mich ob die Modi kompatibel sind.

Ich bitte um Hilfe!

Gruß!

Thomas Kuster(R)

31.07.2014,
10:14

@ chaos.klaus

ADAT-Decoder mit DAC verbinden. Serielle Datenformate.

Hallo chaos.klaus

» Was mich nun verwundert ist folgendes:
»
» Im Datenblatt des DAC steht dass für die Bitclock auch die aufsteigende
» Transiente ausschlaggebend ist, soweit so gut. Aber auf den Bildchen
» darunter fällt (!) die Bitclock wenn die Wordclock den Zustand wechselt!
» (siehe: Datenblatt Seite 15)
»
» Das kann aber nicht sein weil ja beide Chips die selben Clocks verwenden
» sollen. Nun frage ich mich ob die Modi kompatibel sind.
»
» Ich bitte um Hilfe!

Aus dem Datenblatt des pcm1680 von ti geht hervor, dass BCK immer dann die positive Flanke hat, wenn die seriellen Daten stabil vorliegen. Das Umschalten von LRCK geschieht im Moment, wenn BCK eine negative Flanke hat und die Eingangsdaten gerade wechseln. Auf die positive Flanke von BCK werden die Daten übernommen : Also passt ja alles so wie gewollt, oder ?

Mit vielen freundlichen Grüssen Thomas

chaos.klaus(R)

31.07.2014,
11:42
(editiert von chaos.klaus
am 31.07.2014 um 14:53)


@ Thomas Kuster

ADAT-Decoder mit DAC verbinden. Serielle Datenformate.

» Aus dem Datenblatt des pcm1680 von ti geht hervor, dass BCK immer dann die
» positive Flanke hat, wenn die seriellen Daten stabil vorliegen. Das
» Umschalten von LRCK geschieht im Moment, wenn BCK eine negative Flanke hat
» und die Eingangsdaten gerade wechseln. Auf die positive Flanke von BCK
» werden die Daten übernommen : Also passt ja alles so wie gewollt, oder ?

Ja, empfängerseitig passt das. Jedes Bit wird quasi "in der Mitte" ausgelesen, wenn es stabil ist.

BCK und LRCK bekommt der TI1680 vom ADAT-Decoder V1407 geliefert. Dort wird aber auf die aufsteigende Flanke das Bit umgeschalten. Diese Clocks sind doch bei allen Geräten synchron, oder?

Wenn also der DAC bei aufsteigender Flanke der BCK das Bit ausliest, dann müsste doch der ADAT-Decoder bei der vorangegangenen absteigenden Flanke das Bit geschalten haben. Sehe ich das richtig? Oder muss beides gleichzeitig geschehen?

Es gibt eine Einstellung beider Chips bei denen alles zu passen scheint. Der Decoder lässt sich auf "Right-Justified, BCLK falls on WDCLK edge" einstellen. Dann würden die Bits auf der fallenden Flanke geschalten. Genauso würde der DAC dann einen halben cycle später auf die steigende Flanke das bit auslesen, wenn ich dort auch "Right-Justified" einstelle.

Dazu muss ich aber den DAC softwaremäßig per ISP umprogramieren. Das wollte ich mir gerne sparen. Aber ich fürchte es macht schon Sinn, dass Bits nicht zu selben Zeitpunkt geschalten und ausgelesen werden. ;)

Gruß!