Guest
Just a short question to the VHDL experts.
Assume we have the following TestBench
-------
library IEEE;
use IEEE.std_logic_1164.all;
entity TestBench is
end TestBench;
architecture behaviour of TestBench is
signal test : STD_LOGIC := '0';
begin
test <= transport '1' after 3 ns;
test <= transport '0' after 5 ns;
end behaviour;
------
Now which output wave-form is expected for "test" ?
I thought it should be:
0 at 0 ns (initial value because of declaration)
1 at 3 ns (first signal assignment becomes active).
X at 5 ns (two drivers '1' and '0', resolved to 'X').
But running it through a VHDL simulator gave
0 at 0 ns
X at 3 ns
X at 5 ns
Now I'm not at all sure why that happens and what the correct waveform
is for the "test" signal according to the VHDL2000 language reference.
Is this a bug in the VHDL simulator or what ?
Any comments ?
so long
lundril
Assume we have the following TestBench
-------
library IEEE;
use IEEE.std_logic_1164.all;
entity TestBench is
end TestBench;
architecture behaviour of TestBench is
signal test : STD_LOGIC := '0';
begin
test <= transport '1' after 3 ns;
test <= transport '0' after 5 ns;
end behaviour;
------
Now which output wave-form is expected for "test" ?
I thought it should be:
0 at 0 ns (initial value because of declaration)
1 at 3 ns (first signal assignment becomes active).
X at 5 ns (two drivers '1' and '0', resolved to 'X').
But running it through a VHDL simulator gave
0 at 0 ns
X at 3 ns
X at 5 ns
Now I'm not at all sure why that happens and what the correct waveform
is for the "test" signal according to the VHDL2000 language reference.
Is this a bug in the VHDL simulator or what ?
Any comments ?
so long
lundril