|
您好' a+ E7 y I8 P7 n5 I4 I" N% O9 G
" n( q. s/ C K9 D3 h4 s. h
有一個方法,你的state狀態有四個,
& [ I- g6 D+ d, f6 X" j用SIGNAL state :STD_LOGIC_VECTOR(1 DOWNTO 0);
0 R, N2 h& x5 B- ~, V: X7 e8 z來取代你的狀態機宣告type state_s is (s0,s1,s2,s3 ); 2 ~' V" s2 H4 @6 E; Y! } h
signal state : state_s ;
# X4 s; P5 E3 ^) P( p
' _! o# C& Q8 O1 Q然後就可以 state_output<=state;) d5 `% _; B' ]7 {% \! [, k
假設state_output宣告為輸出OUT STD_LOGIC_VECTOR(1 DOWNTO 0);
0 a* r" q# D( r4 j4 b! K
1 o% a7 [& A1 C2 v! y不過此法可讀性不佳,因為你要自己定義state={00,01,10,11}分別代
7 [. ^2 }% e5 R8 W表甚麼狀態
9 }/ ]4 m2 E# V0 H8 I
& ~/ q8 Y1 P$ p4 i X2 P" W請問你的state為甚需要輸出? |
|