Forum: FPGA, VHDL & Co. "State"Anzeige in einer Testbench


von Gabriel (Gast)


Lesenswert?

Hi -
würde gerne in meiner Testbench als Text anzeigen, welchen Test ich 
gerade durchführe.
Habe es derzeit mit

write(state,string'("modul im reset"));

.. diese Variable kann ich aber in der Testbench nicht tracen.

Kann mir da Jemand weiterhelfen?

Danke,
Gabriel

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Wenn du deinen States selber Namen gibst erscheinen diese Auch in der 
Simulation.

von Gabriel (Gast)


Lesenswert?

Danke.
Bei einer statemachine, ich weiss..

aber wie mache ich sowas:

entity top_tb is
end top_tb;

architecture behaviour of top_tb is

component xy..
port(..
);
end component;

signal xy..

begin

uut: xy port map(
);

stim_proc: process

RESETN <= '0';
wait for 100 ns;
RESETN <= '1';

..
..


####hier möchte ich als signal / info wie auch immer einen string 
schreiben können, so dass ich im Simulationsfenster sehe, welcher test 
gerade ausgeführt wird####

..
..



begin
end process;

end ;

von MW (Gast)


Lesenswert?

Abhängig davon welchen Simulator du benutzt: mit assert(...) gibts eine 
Konsolenausgabe.

von Patrick S. (abaddon1979)


Lesenswert?

assert nutzen:
1
assert (dout /= value) report "not passed" severity error;

In einer Testbench verwende ich auch ganz gerne das:
1
signal text: string(1 to 10) := ("UNASSIGNED");         
2
3
BEGIN
4
5
wait until rising_edge(clk);
6
text <= "first edge";
7
wait until rising_edge(clk);
8
text <= "seco. edge";

Dabei ist zu beachhten das der String auch 10 Zeichen hat.

von Gabriel (Gast)


Lesenswert?

Danke - das habe ich gesucht!!

Grüße

von Gabriel (Gast)


Lesenswert?

schade - in modelsim wird das signal text wohl rausoptimiert. das signal 
steht nicht zum tracen zur verfügung.

von MW (Gast)


Lesenswert?

Da sollte eigentlich nix rausoptimiert werden. Zeig mal deinen Code. 
Ansonsten, was ist mit der assert-Anweisung? Mit

assert false report "wasauchimmer" severity note;

sollte es klappen.

von Patrick S. (abaddon1979)


Lesenswert?

Hm???? Wüsste nicht das in einer TESTBENCH was "rausoptimiert" wird. Da 
gibt es nichts zu optimieren.

Der code gehört in die Testbench, sicher das du es da rein geschrieben 
hast? und nicht vielleicht in deinen eigentlichen Code?

von FPGA-Vollprofi (Gast)


Lesenswert?

Gfs hat er eine Variable benutzt.

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.