XC9572 Verschiedene Clocks und I²C

Gast #1702110
Lesenswert?

Hallo,

hab da ein paar Fragen an euch.

Versuche derzeit einen Wandler von Analogaudio auf AES3 zu bauen. Ich 
habe nun vor mit einem Xilinx CPLD (XC9572) die Clocks für I²S zu 
generieren.
Da ich die Samplingfrequenz für die Wandler variabel gestalten will, 
habe ich vor den CPLD als Slave mit einem Atmega als Master zu 
verbinden. Habe da an I²C gedacht.
Wie kann ich nun zum einen die Taktteilung für I²S (Quarzoszillator 
49,152 MHz) und die I²C Übertragung (100 kHz) unter einen Hut bringen.

Mir ist aktuell nicht so ganz klar, ob ich einen der Clock Eingänge des 
CPLD`s für den Quarzoszillator und den anderen für die Clockleitung von 
I²S unabhängig voneinander verwenden kann.

Gruß,
Tobias
Moderator (Firma: Titel) Persönliche Seite #1702173
Lesenswert?

> Habe da an I²C gedacht.
Nimm SPI, das ist wesentlich einfacher zu implementieren, weil es 
eigentlich nur ein Schieberegister ist: 
http://www.lothar-miller.de/s9y/categories/26-SPI-Slave

> Wie kann ich nun zum einen die Taktteilung für I²S (Quarzoszillator
> 49,152 MHz) und die I²C Übertragung (100 kHz) unter einen Hut bringen.
Wenn dir ein eventuell auftretender Glitch in der Taktfrequenz beim 
Eintakten und Umschalten eines neuen Teilers nichts ausmacht, dann 
kannst du das ganz einfach asynchron zueinander machen.

Zudem hast du mit 72 FFs nicht sehr viel Platz im CPLD.... :-o

> Mir ist aktuell nicht so ganz klar, ob ich einen der Clock Eingänge des
> CPLD`s für den Quarzoszillator und den anderen für die Clockleitung von
> I²S unabhängig voneinander verwenden kann.
Du kannst sogar jeden x-beliebigen Eingang zum lokalen Takten der FFs 
nehmen.
Gast #1702190
Lesenswert?

Hi,

Danke erstmal für deine Antwort. Werde mir deinen Vorschlag mit SPI mal 
ansehen.

Das mit dem Glitch während der Taktumschaltung ist kein Problem, da ich 
während des Umschaltvorgangs die Ausgänge der Wandler Mute.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren