mikrocontroller.net

Forum: FPGA, VHDL & Co. XC9572 Verschiedene Clocks und I²C


Autor: tobias1503 (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: tobias1503 (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Das mit dem Glitch während der Taktumschaltung ist kein Problem
Dann kannst du sogar mit den SPI-FFs direkt auf den Vergleicher gehen 
und sparst dir so eine Registerebene.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.