Guten Abend, ich frage mich grad wie man am besten I2S Quellen umschaltet, sprich ich habe eine Schaltung die einen festen Masterclock (12.288MHz) und Wordclock (192kHz) hat. Nun soll der DSP Chip entweder das Signal vom AD Wandler bekommen oder das Signal eines ASRC Samplingrate Converters. Mein Gedanke war es mit dem DSP Chip als Master den Wordclock zu generieren und alle anderen Geräte am I2S Bus als Slave laufen zu lassen. Die Bitclockleitung wollte ich mit einem SN74LVC1G125 umschalten, sprich immer den aktiven enablen. Nun frage ich mich allerdings ob ich damit das komplette Timing durcheinander bring und ob es nicht vielleicht sinnvoller ist entweder den AD Chip oder den ASRC Chip komplett abzuschalten? Der SN74LVC1G125 hat ein Delay von 0,6 - 3,7 nS bei 3,3V und eine t(enable) und t(disable) von 5,3 nS bzw. 5,0 nS. Hat damit schon jemand Erfahrung? Klappt das oder bau ich mir damit nur Fehlerquellen in die Schaltung? Gruß Bernhard
Mir ist noch nicht ganz klar was du machen willst. Wieso willst du die Bitclock schalten wenn es um eine Quellenauswahl geht?. Wenn es nur einen Master gibt, genügt es die Datenleitung zu schalten. Damit wir nicht aneinander vorbei reden: SDATA LRCK SCLK MCLK Was schaltest du? Ich mache so etwas mit einem Analogschalter in der Datenleitung. Aktuell mit dem TS5A3357 um zwischen drei Quellen auszuwählen.
Stefan schrieb: > Mir ist noch nicht ganz klar was du machen willst. > Wieso willst du die Bitclock schalten wenn es um eine Quellenauswahl > geht?. Wenn es nur einen Master gibt, genügt es die Datenleitung zu > schalten. Ja … richtig… mein Fehler ich will natürlich die Datenleitung schalten. LRCK, SCLK, MCLK sind natürlich fix. > Damit wir nicht aneinander vorbei reden: > SDATA > LRCK > SCLK > MCLK > > Was schaltest du? SDATA > > Ich mache so etwas mit einem Analogschalter in der Datenleitung. Aktuell > mit dem TS5A3357 um zwischen drei Quellen auszuwählen. Ok und das funktioniert ohne Stress? Im I2S Standard steht was von einem max. Delay von 20ns SCLK -> SDATA. Hab halt Angst davor das nicht mehr einhalten zu können wenn ich den SDATA mit ca. 5ns verzögere.
Ja das geht ohne Probleme. Ich hatte zuerst auch meine Bedenken. Zumindest hatte ich ein übles Knacken befürchtet wenn man zu einem beliebigen Zeitpunkt die Datenleitungen umschaltet. Aber der passiert nichts. Nüchtern betrachtet ist das auch keine Überraschung. Die Taktleitungen sind ja synchron. Die Anforderungen bezügl. SDATA zu SCK erfüllen die Slaves mit grosszügiger Reserve. Wäre ja schlimm wenn ein 5ns Delay im Signalweg alles durcheinander bringen würde. Neben dem 3-fach Analogschalter (die verzögern nicht) habe ich in einem anderen Gerät auch ein 74LVC1G157 im Einsatz für zwei Quellen. Der Prototyp ist sogar nur mit einem 74AHC1G157 bestückt. Die Bitclock läuft da allerdings nur mit 3MHz. Du hast vermutlich 6MHz. Ich erwarte aber keine Probleme.
Alles klar dann brauch ich mir ja keine Sorgen zu machen. Danke für die Info. Habs jetzt übrigens wie im Anhang mit zwei Bus Buffer und zwei XOR Gatter gelöst. Somit kann ich mit nur einem Jumper oder einer µC Leitung "SRC_SEL" zwischen den Inputs umschalten. Gruß Bernhard
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.