mikrocontroller.net

Forum: FPGA, VHDL & Co. CLK für externe AD-Wandleransteuerung


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi @ all

Ich habe einen externen Quarz, der auf einen Clockeingang am FPGA geht.
Dieses Clock möchte ich jetzt auf einen Ausgangspin geben. Dies habe ich
auch gemacht, jedoch gibt es beim Routen eine Warnung. Wie kann ich das
ganze umgehen?

Gibt es eine Lösung oder muss ich den Clock per Hardware an den
AD-Wandler anbinden?

Grüsse

Michael

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
IBUF , OBUF

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mache ich ja. Das Clocksignal wird direkt auf den Ausgang gegebenen,
jedoch mekert er beim Routen.

Autor: FPGA-User (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn der ADC mit der Quarzfreq. laufen soll, würde ich
den Takt direkt an den ADC legen. Dann haben FPGA und
ADC einen synchronen Takt.
Den Takt durchs FPGA zu ziehen halte ich für eine schlechte
Idee.

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
<Das mache ich ja. Das Clocksignal wird direkt auf den Ausgang
<gegebenen,
<jedoch mekert er beim Routen.

Wie meckert er (Bitte logdatei *.par anhängen).

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das PCB ist schon fertig. Deshalb kann ich nur eine Leitung anlöten,
aber das ist nur die absolute Notlösung.

Die Fehlermeldung lautet wie folgt:

WARNING:Route:447 - CLK Net:SCLK_ADC_int may have excessive skew
because
   1 NON-CLK pins failed to route using a CLK template.

Kann man etwas dagegen machen?

Grüsse

Michael

PS FPGA-küchle und FPGA-User sind aber aktive Helfer in diesem Forum.
Macht weiter so. Man kann ja mal einen Chatroom für FPGA-User
einrichten oder über Skype miteinander telefonieren. Noch besser wäre
ein Treffen der FPGA-Profis und alle die kommen wollen :-) Dann kann
man sich mal besser über Erfahrungen austauschen

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn dein FPGA über DDR (Double Data Rate) Ausgangsregister (z.B.
Spartan) verfügt, kannst Du Deinen Ausgangstakt auch damit spiegeln.
Im Prinzip schaltet man den Ausgang bei der Aufsteigenden Taktflanke
nach '1' und bei der abfallenden Flanke nach 0.

Dies wird von Xilinx auch empfohlen, wenn Datenausgänge genau synchron
mit dem Takt schalten will.

OFDDRRSE_inst : OFDDRRSE
     port map (
            Q  => Sdram_Clk,
            C0 => Clk50,                -- 0 degree clock input
            C1 => nClk50,               -- 180 degree clock input
            CE => '1',                  -- Clock enable input
            D0 => '1',                  -- Posedge data input
            D1 => '0',                  -- Negedge data input
            R  => '0',                  -- Synchronous reset input
            S  => '0'                   -- Synchronous preset input
            );

Aufgrund der von Dir gelieferten Warnung glaube ich aber dass Du irgend
etwas anderes falsch machst.

Poste doch mal die relevanten Teile deines Codes.

Grüße
Klaus

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber wenn ich einen FlipFlop verwende, dann halbiere ich doch die
Frequenz.

Was ich bis jetzt mache ich Leite die Clock-Leitung vom InputBuffer
direkt auf den OutputBuffer.

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
#PS FPGA-küchle und FPGA-User sind aber aktive Helfer in diesem Forum.
#Macht weiter so. Man kann ja mal einen Chatroom für FPGA-User
#einrichten oder über Skype miteinander telefonieren. Noch besser wäre

#ein Treffen der FPGA-Profis und alle die kommen wollen :-) Dann kann
#man sich mal besser über Erfahrungen austauschen

Der chat läuft grad (diehe anderes Posting), Antwort kann aber dauern,
hab einen
Haufen fenster drüber liegen, die wollen erst weggeklickt sein.

mal schauen ob der chat sich hält, fände ich praktischer als Telefon,
da text
kann man gleich abspeichern und in die webseite pappen kann.

Autor: FPGAküchle (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
#WARNING:Route:447 - CLK Net:SCLK_ADC_int may have excessive skew
#because
#   1 NON-CLK pins failed to route using a CLK template.

#Kann man etwas dagegen machen?

Hm eventuell. Also du scheinst ein Signal zu haben das nicht nur als
clk genutzt wird, Also nicht nur mit BUFG oder CLK von Slices
(FF,SRL16) oder BRAMS verbunden ist. im PlaceandRoute report (ab 8.1.?)
steht auch der skew auf den
Taktnetzwerk. steht dort was kleiner 1.1 .. 1.5 ns wäre ich nicht
beunruhigt. Hast Du aber Timingerrors solltest du den grund für diese
warning beseitigen.

Zur analyse welche Pins an diesem clock hängt empfiehlt sich entweder
das EDIF
File (muss mit ngc2edif erzeugt werden) oder der FPGAeditor. Bei
FPGAeditor
suchst du nach diesem netzt (vorher unter main properties case
sensitive abwählen) und * verwenden. Das netz im linken fenster
anklicken und unter tools
delay auswählen. Dann zeigt er alle Pins am Netz. Am besten mal eine
Weile mit
FPGA editor rumspielen, läßt sich schlecht erklären.

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.