Hola a todos,
Mi inquietud está digida a:
Cómo poder hacer que el Waveform Editor del MAX+PLUS II, permita que una señal bidireccional muestre el valor en que se encuentra y no se tengan valores como "XXXX" en la simulación, cuando esta se comporta como Señal de Entrada ó Señal de Salida.
Adjunto un ejemplo (bidir.vhd y bidir.scf) que se encuentra en la página de altera para poder ilustar lo dicho. (Bueno la página parece no tiene espacio para el adjunto, pero puedo enviarlos a las personas que me ayuden con la inquietud)
Muchas gracias a todos,
Jose Armando.
Por ejemplo: Este código al simular genera estados de indeterminación "X" en la señal bidir declarada en el port.
--bidir.vhd--
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY bidir IS
PORT(
bidir : INOUT STD_LOGIC_VECTOR (7 DOWNTO 0);
oe, clk : IN STD_LOGIC;
inp : IN STD_LOGIC_VECTOR (7 DOWNTO 0);
outp : OUT STD_LOGIC_VECTOR (7 DOWNTO 0));
END bidir;
ARCHITECTURE maxpld OF bidir IS
SIGNAL a : STD_LOGIC_VECTOR (7 DOWNTO 0); -- DFF that stores
-- value from input.
SIGNAL b : STD_LOGIC_VECTOR (7 DOWNTO 0); -- DFF that stores
BEGIN -- feedback value.
PROCESS(clk)
BEGIN
IF clk = "1" AND clk"EVENT THEN -- Creates the flipflops
a <= inp;
outp <= b;
END IF;
END PROCESS;
PROCESS (oe, bidir) -- Behavioral representation
BEGIN -- of tri-states.
IF( oe = "0") THEN
-- bidir <= "ZZZZZZZZ";
b <= bidir;
ELSE
bidir <= a;
b <= bidir;
END IF;
END PROCESS;
END maxpld;
----------------