Forum: FPGA, VHDL & Co. EDK selbsterstelter IP-Core timing constrain


von Sebastian S. (s_suesens)


Lesenswert?

Hallo,
ich habe mir ein eigenen IP-Core generiert und habe diesen mit dem 
MicroBlaze verbunden. Nun lass ich das Tool die Componenten bauen 
funktioniert auch alles. Aber nun möchte ich für mein IP-Core ein 
bestimmten Takt haben unzwar 280Mhz. Deshalb habe ich den clock des 
IP-Core über Clock-Generator angeschlossen und diesen auf 280Mhz 
gesetzt.

Nun meine Frage, habe ich das mit dem timing constrain für mein IP-Core 
richtig gemacht oder wie erzeuge ich das timing?

Anmerkung: Im ISE schafft mein IP-Core 280MHz.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sebastian S. schrieb:
> den clock des IP-Core über Clock-Generator angeschlossen
Wenn du einen DCM verwendest, dann reicht es, den Eingangstakt am 
FPGA-Pin bekanntzugeben. Der "interne" Takt wird automatisch berechnet.

von Sebastian S. (s_suesens)


Lesenswert?

Hallo,
danke für die schnelle Antwort, probier ich gleich mal aus.
Kannst du mir auch sagen, ob man multicycle path angeben kann?

von Sebastian S. (s_suesens)


Lesenswert?

Hey,
ich hab das jetzt ausprobiert. Ich habe ein DCM reingezogen und 
konfiguriert. An diesem DCM ist der Haupttakt angeschlossen der mit 
einem timing constrain versehen wurde. Aber leider werden die constrains 
immer noch nicht eingehalten.

von D. I. (Gast)


Lesenswert?

Sebastian S. schrieb:
> Aber leider werden die constrains
> immer noch nicht eingehalten.

Welches FPGA?

280 MHz kan man als sportlich bezeichnen, wie alles jenseits der 200MHz. 
Hast du Multi-Cycle schon definiert?

von Valko Z. (hydravliska)


Angehängte Dateien:

Lesenswert?

Anbei eine Beispiellösung aus unserem Vorlesung "Digitale Systeme".

Gruss,
Valentin

von Valko Z. (hydravliska)


Lesenswert?

Sorry, falsche Beitrag...

von Sebastian S. (s_suesens)


Lesenswert?

Moin,
ich hab herausgefunden das das Tool über rising clock skew meckert. 
Unzwar zwischen dem MicroBlaze clock und meinem IP-Core clock. Der 
IP-Core (280MHz) ist über Register an den Microblaze (100MHz) 
angeschlossen, wenn ich ich meinem IP-Core ein Clock von 200MHz zuweise 
funktiuniert das Erstellen, bei 190MHz schlägt es fehl und gibt die 
genannte Fehlermeldung im timing constrain aus.

Es scheint so als müssen beide Taktflanken zusammenfallen. Wie kann ich 
das Problem umgehen? Oder stimmt meine Vermutung nicht?

von Duke Scarring (Gast)


Lesenswert?

Sebastian S. schrieb:
> Der
> IP-Core (280MHz) ist über Register an den Microblaze (100MHz)
> angeschlossen, wenn ich ich meinem IP-Core ein Clock von 200MHz zuweise
> funktiuniert das Erstellen, bei 190MHz schlägt es fehl und gibt die
> genannte Fehlermeldung im timing constrain aus.
Klar, bei "krummen" Frequenzunterschieden treten ja auch massenhaft 
setup&hold-time Verletzungen auf. Zeichne Dir mal die beiden Frequenzen 
(100 MHz und 280 MHz) über einen gwissen Zeitraum auf und überlege Dir, 
wieviel Zeit den FFs bleibt um sicher zu schalten, wenn sich an jeder 
steigenden Flanke die Daten ändern können...

Duke

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.