Forum: FPGA, VHDL & Co. Testbench - ganzes Projekt


von Gustl B. (-gb-)


Lesenswert?

Hallo,
nach jetzt doch einiger Zeit LED/Logicanalyser/Oszi-Debugging möchte ich 
endlich mal eine Testbench verwenden, also erstmal nur angucken wie das 
so geht.
Ich habe auch schon geschafft mir eine einzelne Component zu simulieren 
mit Takt und so, total super, aber ich würde schon gerne mein ganzes 
Projekt in die Testbench einbinden, also so, dass ich wirklich nur die 
Ein/Ausgänge verbinden muss, die der FPGA auch wirklich nach aussen hin 
hat.

Wenn ich das aber so mache, dann werden alle in dem Top-Modul 
verdrahteten Componenten ignoriert, ich hab hier eine RS232 Componente 
die vom Top-Modul mit Daten beschickt wird. Im FPGA geht das auch, aber 
wenn ich nur das Top-Modul in die Testbench schreibe, dann fehlen in 
iSim alle Signale die die Componente RS232 verwendet.

Wie muss ich das einbinden, damit alles richtig auftaucht?

Ich habe (ganz grob):

entity TOP
port(); --FPGA IO

architecture
component RS232
port(); --RS232 IO

begin
rs: RS232 port map();

Und derzeit ist nur der FPGA IO in der Testbench. Was muss da also noch 
wie rein?

Vielen Dank!
-gb-

von Christian R. (supachris)


Lesenswert?

Nur das Top-Level einbinden reicht eigentlich. Gerade bei ISim erkennt 
der ja dann welche Komponenten instanziiert sind. Zeigt denn ISE im View 
Modus "Simulation" die internen Komponenten unter der Testbench an?
Hast du die Testbench von ISE erstellen lassen? Gerade die Integration 
mit ISim klappt eigentlich sehr gut.

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


Lesenswert?

Gustl Buheitel schrieb:
> Wie muss ich das einbinden, damit alles richtig auftaucht?
Deine RS232-Komponente ist ja noch innerhalb des FPGAs, richtig?
Dann wird/ist die in diesem FPGA-Design als Komponenete eingebunden.

> Und derzeit ist nur der FPGA IO in der Testbench. Was muss da also noch
> wie rein?
Du hast also deinen "Toplevel" in der Testbench. Damit hast du bereits 
das gesamte Design auf dem Prüfstand, dein Problem liegt jetzt offenbar 
nur darin, dass du interne Signale ansehen willst. Das geht im ISIM 
ganz einfach, indem du ganz links auf dem Baum deine Signale in die 
Waveform ziehst. Mit der Suche hier im Forum ist da auch schon was zu 
finden:
https://www.mikrocontroller.net/search?query=isim+interne+signale
--> Beitrag "Re: ISE Simulator - wie interne Signale darstellen lassen"

von Gustl B. (-gb-)


Lesenswert?

Ah, ok, es geht. Die RS232 ist nur so unglaublich langsam, dass man da 
erst nach einiger Zeit was erkennen kann. Super! Eigentlich echt einfach 
das Ganze.

-gb- der jetzt Testbenches nutzt :-)

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.