双向总线输出仿真问题?
下面是程序,但仿真波形怎么都不对,以前在工程中我用过这模块,没问题。问题出在哪?
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 cpld OF bidir IS
SIGNALa: STD_LOGIC_VECTOR (7 DOWNTO 0);-- DFF that stores
SIGNALb: 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 cpld; 问题是双向口作高电平输出时是高阻,是不是要换成上拉口? 等待解决·······
页:
[1]