Spartan3E zwei unabhängige Frequenzen aus einer SysClk erzeugen

Gast #1343731
Hallo zusammen,

ich versuche gerade aus einem CLK Signal (48MHz) zwei unabhängige CLK 
Signale zu erzeugen.

Das erste (16MHz) habe ich mit dem Xilinx Clocking Wizard erzeugen 
lassen. Funktioniert auch super.

Bei dem Versuch das zweite (10MHz) ebenfalls so zu erzeugen meckert ISE:

ERROR:NgdBuild:462 - input pad net 'iSYSCLOCK' drives multiple buffers:

So weit so klar... oder auch nicht. Klar treibt mein CLK input dann zwei 
Buffer.

An irgendeiner Stelle hab ich dann mal gelesen dass man das CLK Input 
Signal erst buffern muß und dann in die beiden DCM füttern muß. Aber 
leider ging auch der Versuch schief...

Hat jemand eine Idee wie ich dieses Problem lösen kann?

Vielen Dank!

Matthias
Moderator (Firma: Titel) Persönliche Seite #1343750
> Klar treibt mein CLK input dann zwei Buffer.
Das kanner nich...
Allerdings könnte das der Takt nach dem IBUFG oder BUFG.

> An irgendeiner Stelle hab ich dann mal gelesen dass man das CLK Input
> Signal erst buffern muß und dann in die beiden DCM füttern muß. Aber
> leider ging auch der Versuch schief...
Warum?
Gast #1343757
Und wie komm ich dann zu dem Takt nach dem Buffer??

Ich hatte schon versucht den zweiten Output der ersten DCM der den 
selben Takt wie der Input hat als Eingang für den zweiten DCM zu nutzen.
Dann meckert ISE aber dass man DCM nicht in Reihe schalten kann...

Danke!
Gast #1343802
Das war auch mein erster Gedanke....
Geht nur leider auch ned!

ERROR:NgdBuild:455 - logical net 'INT_SYSCLK_48' has multiple driver(s):
ERROR:NgdBuild:462 - input pad net 'INT_SYSCLK_48' drives multiple 
buffers:

?????
#1343824
Also prinzipiell geht das. Ein CLK Eingang und 2 DCMs, die müssen dann 
aber auf "internal" stehen beim Input. Und die beiden dann an das 
interne Signal des CLK anschließen. Ist allerdings etwas unsauber und 
wird dann auch als Warnung angemeckert, weil die DCMs dafür vorgesehen 
sind, einzig und allein an dem GCLK Eingang zu hängen, der sich direkt 
vor ihnen befindet. Den IBUFG instaziiert der von alleine, wenn er 
merkt, dass das ein CLK netz ist.
Gast #1343866
eine DCM

48MHz -> 16 MHz mit dem CLKDV-Ausgang und dem Setting
   CLKDV_DIVIDE = 3.0

48MHz -> 10 MHz mit dem FX Ausgang und den Settings
   CLKFX_MULTIPLY = 5
   CLKFX_DIVIDE = 24

DCM-Feedback mit dem Ausgang CLK0

 => 1 Clock-Input, 3 BUFGs

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.