Forum: FPGA, VHDL & Co. Signal auf globale Clock-Leitung routen


von Michael (Gast)


Lesenswert?

Hi @ all

Ich habe einen externen Quarz, der mit 1,152MHz läuft. Diesen Takt
möchte ich für meine RS232 verwenden. Die RS232 soll mit 115200Hz
betrieben werden. Demnach muss der Takt heruntergeteilt werden. Wenn
ich jedoch den Clock herunterteile, dann liegt dieser nicht mehr auf
der globalen Clock-Leitung.

Wenn ich die Schaltung routen lasse, dann kommt eine Warnmeldung
"Clock-Leitung enthält einen Skew". Dies wundert auch nicht, da mit
dem neuen Clock-Signal eine große Anzahl an Logik synchron betrieben
wird.

1. Wie bekomme ich das Signal wieder auf eine Clock-Leitung?
2. In der Bibliothek habe ich "BUFG" gefunden. Kann ich diese
globalen    Clock-Teiber einfach benutzen oder muss ich dabei was
beachten?

Grüsse Michael

von tobias oddoy (Gast)


Lesenswert?

es gibt dann noch ibufg, einfach mal beide austesten was funktioniert.
Zu beachten gibt es eigentlich dabei nichts.

G. Tobias

von Xenu (Gast)


Lesenswert?

>Wenn ich die Schaltung routen lasse, dann kommt eine Warnmeldung
>"Clock-Leitung enthält einen Skew". Dies wundert auch nicht, da mit
>dem neuen Clock-Signal eine große Anzahl an Logik synchron betrieben
>wird.

Wesentlich besser wäre es, wenn Du das heruntergeteilte Signal als
Enable-Signal für diese Flip-Flops benutzen würdest.

  if(rising_edge(clk)) then
    if(clk_enable) then
      BLABLA
    end if;
  end if;

von Xenu (Gast)


Lesenswert?

Kleiner Fehler, richtig so:

if(clk_enable = '1') then

von Michael (Gast)


Lesenswert?

Das ist auch nicht wirklich gut, da ich schon Enable-Leitungen benutze,
wenn ich diese jetzt noch mit einem logischen "UND" verknüpfe, dann
wird das ganze nur noch langsamer.

Grüsse

Michael

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.