|
LIBRARY ieee;
) w/ M. r% F, H9 lUSE ieee.std_logic_1164.all;
: L! C* {0 f! U- c! D1 l! M; xUSE ieee.std_logic_unsigned.all;
( f1 c* c! d: ?3 L- j/ KENTITY counter_backwards60_seg2 IS/ s# N' {9 H1 a% s9 F
PORT(Clk : IN STD_LOGIC;
1 |" m$ Y( B# D- o7 G$ T, S Q0,Q1 : OUT STD_LOGIC_VECTOR(3 downto 0)) ;
8 a( q# i. A6 J) u/ ^. dEND counter_backwards60_seg2;
: c7 j1 k# A$ X: W/ A4 MARCHITECTURE arc OF counter_backwards60_seg2 IS
! e. w6 o) M* j BEGIN
/ q4 b: }& c% o PROCESS (Clk)
3 i( G' E! F' G VARIABLE imper0 :STD_LOGIC_VECTOR(3 downto 0);
* a' t, y- |* _; H VARIABLE imper1 :STD_LOGIC_VECTOR(3 downto 0);
) { L. z! R/ N. p* {( S BEGIN 3 ?& h4 V3 i# n2 X4 a! `8 O. H
, U% @3 @( r7 r( s, D IF (Clk'event AND Clk='1') THEN
8 g6 o- O1 [9 i- s% S: I8 z3 o; X( E
( ?- s6 S6 C9 D1 C J8 P/ [ IF imper0 >"0000" THEN imper0 := imper0-1;
/ _/ o6 ]' \# d6 h; p ELSE imper0:="1001";2 H8 t, }6 P2 T0 J+ T& p9 C7 }2 @ J
IF imper1 >"0000" THEN imper1 := imper1-1;" k$ m; D! F7 B; Z1 `! u6 ^. `
ELSE imper1:="0101";
) l* M, M% w" Y; u( M( n) E END IF;
3 Z! d7 b6 U3 U% U( V1 p5 s END IF; 7 }9 M* P9 C5 q I
END IF;
0 Q2 z, a2 h3 }, E( K3 l; H( W Q0 <= imper0; Q1 <= imper1; 2 [, s$ f* S( [5 \' i N0 r
END PROCESS ;" \7 Z2 w. K0 u6 l; h8 X
END arc;
' @6 F) c1 l+ L( E- y以上我精簡了一些 也能跑模擬圖$ \; c7 E( }+ M8 Q ?" h5 R1 x
但現在重點是我該怎寫60→59→58...
5 N+ `0 Y% j- J* X初始值60要怎寫...1 ?# W& _% ~, M3 M. b6 c2 d, F, @, |
是要多2個input 然後給他一開始的值?# ?/ f+ l# \/ D" j4 r/ K
但要怎寫啊@@...4 ?! K- S7 O K, E$ Q, J9 g
|
|