|
您好; k8 _- o- N" D
& f7 w g% F# D6 I1 o
有一個方法,你的state狀態有四個,
& J! m$ q- r7 m3 V7 Z7 Q8 t' b+ A用SIGNAL state :STD_LOGIC_VECTOR(1 DOWNTO 0);% f2 x+ b% N3 q5 b `( H. ^0 o' ?
來取代你的狀態機宣告type state_s is (s0,s1,s2,s3 );
. C* O6 B; ~7 j( _7 q signal state : state_s ;
* u4 j3 l" L. t, Q4 H+ r* C- b1 b c8 m8 \6 d- {- y# Z8 R
然後就可以 state_output<=state;
% e" q9 N6 D. ~" g假設state_output宣告為輸出OUT STD_LOGIC_VECTOR(1 DOWNTO 0);8 {# J4 Q7 g3 P' i( S/ H8 N
7 v+ {2 A, `0 h4 t. L4 \- n. z
不過此法可讀性不佳,因為你要自己定義state={00,01,10,11}分別代
$ Y% m' H `5 t: H. }' R表甚麼狀態
: b) O+ g# P' _9 @; r5 F2 w$ i6 G, ~. W" n' f; }3 ~6 g
請問你的state為甚需要輸出? |
|