Forum: FPGA, VHDL & Co. Testbench


von Frank (Gast)


Lesenswert?

Ich bin neu hier, VHDL Anfänger und hätte da mal eine Frage zur
Testbench. Wenn ich das richtig verstanden habe, kann man mit einer
Testbench das Verhalten des VHDL Codes überprüfen.

Ich habe hier zu Testbenches eingiges gelesen, doch was sind Timing
Constraints? Auch unter einer Place&Route Simulation kann ich mir
nichts vorstellen.

Was ist zudem zu beachten, wenn Daten mit unterschiedlichen Clocks
verarbeitet werden müssen? Ich stelle die Frage, da ich hier öfters von
einem synchronen Design gelesen habe.

Entschuldigt bitte mein Unwissen.

von Stefan (Gast)


Lesenswert?

Hallo,
ich bin auch VHDL Anfänger. Den Einstieg habe ich aber geschafft. Die
Testbench ist wie du schon weist dazu da um das Verhalten deines VHDL
Codes zu überprüfen. Bei Timing Constraints und der Place&Route
Simulation kann ich aber leider nicht weiterhelfen. Von einem
Synchronem Design spricht man wenn das ganze Design Synchron zu einem
Takt abläuft. Also so das änderungen nur bei einem Clock übernommen
werden. zu beachten ist das wenn man z.B einen Systmemtakt von 100Mhz
hat, und einen Teil nur mit 50Mhz clocken will, so setzt man als clock
nicht den 50Mhz Takt ein, sondern immernoch den 100Mhz Takt und nutzt
den 50Mhz Takt als clock enable. Das ergebnis ist das gleiche, jedoch
ist die bedingung für ein Synchrones Design erfüllt das alle Flip Flops
am gleichen Takt hängen.

mfg
Stefan

von Stephan Walter (Gast)


Lesenswert?

Place & Route Simulation:

Aus der Synthese und dem P&R erhälst du ein Model deines Designs, das
die Timings deines Zielsystems (FPGA / CPLD / ASIC) enthält. Das Model
solltest du nun wiederum in die Testbench einsetzen, um zu überprüfen,
ob es sich auch mit den Verzögerungen durch Logik unf FFs noch so
verhält, wie du es willst.

Timing Constraints:

Wenn du für Signale bestimmte Vorgaben bzgl. des Timings hast, also
z.B. ein Signal von einm Ort zu anderen nur eine Bestimmte Zeit
brauchen darf, kannst du das der Synthese und dem P&R mit Constraints
angeben. Ein Constraint, was z.B. immer gilt ist, dass ein Signal vom
Ausgang eines FFs bis zum Eingang des nächsten FFs maximal eine
Periodendauer des Taktes brauchen darf (abzügl. einer der Hold Time des
ersten und der Setup Time des Nächsten). Daduch ist also die "Tiefe"
der Kombinatorik zwischen zwei FFs begrenzt.

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.