Forum: FPGA, VHDL & Co. Belibigen eingang als CLK ?


von Sven (Gast)


Lesenswert?

Guten Abend.
Ich würde gerne einen Zähler über einen belibigen eingangs pin mit Takt 
speisen. Um damit events einer Schaltung zu Zählen.

Wenn ich aber den CLK vom zähler mit einem anderen Pin als dem CLK 
verbinde bekomme ich eine Fehlermeldung.

ERROR:Place:1018 - A clock IOB / clock component pair have been found 
that are not placed at an optimal clock IOB /
   clock site pair.

Bedeutet das das mein vorhaben unmöglich ist?

Liebe grüße

von J. S. (engineer) Benutzerseite


Lesenswert?

Das ist eine Xilinx-ISE Meldung, denke ich.

Pin auf IBUFG und dann PLL einbauen, von dort auf einen BUFG.

Wenn der IBUFG nicht geht, dann einen BUFG versuchen.

von Sven (Gast)


Lesenswert?

o.O

Ja es ist eine Xilinx-ISE Meldung. Nur deine "Problemlösung" verstehe 
ich nicht.
Kann das jemand für einen Anfänger übersetzen?

von Marius S. (lupin) Benutzerseite


Lesenswert?

Ist das für CPLD oder FPGA?

Bei CPLDs gibt es idR nur spezielle GCK-Pins welche als Clock genutzt 
werden sollten. Bei FPGAs kannst du ein Signal folgendermaßen als Clock 
definieren:

attribute BUFFER_TYPE : string;
attribute BUFFER_TYPE of MYCLKSIGNAL: signal is "BUFG";

Was genau du als Attribut einstellen kannst hängt glaube ich vom 
jeweiligen FPGA ab. Das muss zur Signal-Deklaration (also zwischen 
Architecture und begin). Ich frage mich warum das bei dir zu einem 
Fehler führt. Bei mir gab es nur Warnungen wegen eines möglichen 
Clock-Versatzes (Skew).

Aber bei mir ging es auch um ein Signal. Bei dir geht es wohl um einen 
Eingangs-Pin den du als Clock nutzen willst. Vielleicht musst du den 
erst auf ein Signal führen welches du dann als BUFG (siehe oben) 
deklarierst. Weiss ich leider auch nicht :-/

von Christian R. (supachris)


Lesenswert?

Eigentlich steht unter der Fehlermeldung, was zu tun ist, nämlich das 
CLOCK_DEDICATED_ROUTE=false für das Signal in die ucf Datei eintragen. 
Man hat dann allerdings einige Nachteile, die CLK Eingänge sind nicht 
umsonst CLK Eingänge.

von Marius S. (lupin) Benutzerseite


Lesenswert?

Kann man den Eingang nicht auf ein Clock-Signal führen so wie ich das 
beschrieben habe?

Also nach außen ein ganz normaler Eingang und intern wird es dann als 
Clock geroutet?

von Christian R. (supachris)


Lesenswert?

Nein, nicht wirklich. Man kann zwar ein Logik-Signal (und nichts anderes 
ist ein Takt, der an einem Nicht-CLK Eingang reinkommt), mit einem BUFG 
auf das Taktnetzwerk geben, aber optimal ist das nicht. Für 20...50MHz 
noch machbar, je nachdem, was deine ANforderungen an Jitter sind, aber 
bei höheren Frequenzen ganz schlecht.
Ist denn die Platine schon fertig oder wieso kannst du den Takt nicht 
richtig einspeisen?

von P. K. (pek)


Lesenswert?

Sven schrieb:
> Ich würde gerne einen Zähler über einen belibigen eingangs pin mit Takt
> speisen. Um damit events einer Schaltung zu Zählen.

Weiss nicht wie hoch Dein Systemtakt ist. Wenn er hoch genug ist, würde 
es vielleicht Sinn machen, Deinen Zähler damit zu betreiben und dann die 
aktiven Flanken Deines (auf Systemtakt synchronisierten) 
Eingangssignales zu zählen.

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
Noch kein Account? Hier anmelden.