EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册  
 
x
 
原代码如下: LIBRARY IEEE; 
& H) q$ e0 m! ]( dUSE IEEE.STD_LOGIC_1164.ALL; 
# U; E+ g- W# ?# jENTITY bio_buffer IS 
- x; w) H9 C+ N6 |$ ?7 J3 @3 ~% i7 o2 UPORT(a,b:INOUT STD_LOGIC; 
# y0 }$ d5 y3 p* `- ]     en,dr :IN STD_LOGIC 
8 I' b& e' S8 q0 a0 ]$ w' I! P1 g* w1 z     ); END ENTITY; ARCHITECTURE behaver OF bio_buffer IS 
) J) U) V) D; n  \$ i( ISIGNAL aout: STD_LOGIC; 
$ P0 F1 _! `9 v6 |9 h/ iSIGNAL bout: STD_LOGIC;, |+ r7 v" ?1 \$ H+ B2 V 
BEGIN 
& T& `6 O+ N% f/ J) y8 B  PROCESS(a,dr,en) " g5 I3 H- S' D! E# W  Q# V$ ] 
  BEGIN 
, ?6 ~1 ^" A( x. R  d    IF((en='0')AND(dr='1')) THEN bout<=a; 
6 u+ D2 H/ g3 @4 [8 E     ELSE bout<='Z'; 
6 a+ ^; a1 y7 I! }. M/ X  M- w% l& c     END IF; 
8 J, c+ R- V' r     b<=bout;$ W  \3 `. E: ?  w6 Z  w1 S2 J+ [( O- T 
    END PROCESS;; P9 b  w  m- Y& T' F 
  PROCESS(b,dr,en)  
: m7 l# n. F& j' I% A* j- _0 V  BEGIN 
; ^& Z2 E7 f  `1 _    IF((en='0')AND(dr='0'))THEN aout<=b; 
8 ^6 w* C; X& i2 H3 H     ELSE aout<='Z';! x$ F1 o8 R' H0 {& o$ _0 n: c 
     END IF;# x' h9 b2 l6 `1 x/ C 
     a<=aout;9 r' [1 w# a; ^+ r# r  v+ ^7 o% ]0 ] 
  END PROCESS; 
4 q* _; Q1 w- q0 B; M END ARCHITECTURE;% j, q7 J( t( D* o 
  仿真结果如下:   可以看到在输入信号a改变后,用以接手输入信号值的bout赋值正确,同时也有写b<=bout这条语句,为什么b信号始终为高阻状态,求大神解答。 
, `5 i. A# V% P8 P/ T. o- p$ n |