EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
library ieee;
2 d# |& i. d8 `. {* V+ Wuse ieee.std_logic_1164.all;
0 H" O% R* L, h% _# Ouse ieee.std_logic_arith.all;
4 @5 X5 S. a1 w% V+ P: Euse ieee.std_logic_unsigned.all;# u% d9 m; ?; t( S* w6 p
entity time4 is7 _+ L7 V! ^8 D; f
port(ab : in std_logic_vector(1 downto 0);
/ e; O D& s4 c& s6 P$ k6 | clk : in std_logic;
# f( j( \7 s. g pp,np : out std_logic);$ v( c/ L% X6 r- G7 D+ p1 p+ I! y
end time4;# b, F8 [6 N5 s+ i9 U' N
architecture one of time4 is
, b6 W/ L4 e1 j5 a, P: u7 asignal state : std_logic_vector(1 downto 0);+ [6 _( m: b, ] p& C. X* R
signal ab_1 : std_logic_vector(1 downto 0);
$ ^2 d7 e* O: zsignal spp,snp : std_logic;! P0 H5 l' E( L, b) j
begin
# I6 h% {1 S) _0 J0 E: G4 q7 ] process(clk,ab), {* p; o5 u# W% U0 P8 ~, B: g0 C8 q
begin
$ P: K% t' g3 Q: X) v if(clk'event and clk='0') then ab_1<=ab;
0 G6 c: B- C: p# L! x% @4 a9 s1 V end if;
# n$ N9 ~9 ^4 O end process;
3 y4 h8 @3 I3 I% b process(clk,state,snp,spp)
2 B# ?! t% S& C begin- x @8 D- U8 z9 J8 F& V
if(clk'event and clk='1') then3 Z, _ {0 o' N; B) V3 {, N- e4 F4 M
if(ab_1="00") then& Z, c0 H1 A w0 e
case state is
! N0 r5 _4 R. F6 \9 \* g: Q* E* l when "10"=>state<="00";spp<=’1’;& \1 M. U% s% Y- c: S! M6 Y
when "01"=>state<="00";snp<=’1’;
! D- ?5 t0 P ^* a+ ^. ], e when others=>state<="00";spp<='0’;snp<=’0’;0 g& D7 Q' N, z: A, {
end case;* t- d7 l# ~ y
elsif(ab_1="01") then3 w1 p! N0 ?$ d1 X" \! M
case state is6 l0 E5 q; s! ^; j9 w
when "00"=>state<="01";spp<='1';
. v3 K& F( s( x: I" d- r7 y when "11"=>state<="01";snp<='1';
1 r( ^* k- e) p when others=>state<="01";snp<='0';spp<='0';& B. r4 v# [. m, F% [" D
end case;
. F( Z! l* v+ }9 r# A& v- t elsif(ab_1="11") then
6 W5 U( i: V+ q6 p9 ? case state is
9 q2 S# ^/ T$ O# q3 H; a when "01"=>state<="11";spp='1';
0 ?4 z8 z! B) C# X3 P3 T when "10"=>state<="11";snp='1';% m2 l, R/ {4 r7 f( k% `" o( O8 a9 E
when others =>state<="11";--spp='0';snp='0';
- y" {" q' a2 r% E* i end case;
1 ~& L. h4 G! j: l& Z7 W2 o else
- m7 f! o0 O. B8 o* h case state is" y8 k1 X* I0 [* S
when "11"=>state<="10";spp='1';
1 I J8 o& N9 j8 O* c. y when "00"=>state<="10";snp='1';$ E2 j' H* Z/ c! a8 W2 c
when others =>state<="10";snp='0';spp='0';
]% h* ^$ q5 t3 ^ end case;
4 t- O) g1 V% Q- U& p& V1 { end if;3 D6 N" i4 Y8 t: C2 B
end if;
7 q/ A# G! \. {1 F2 {4 ^end process;
; X: O: H+ e9 n- }/ C pp<=spp;' K+ |) L% O8 {. N( y
np<=snp;0 \( e3 V0 v& M0 h% G' n+ ?
end one;
A0 H- N+ P" H- b/ z程序在QII中老是错误,请大虾们帮帮小弟! |