|
回復 1# michael6172 " l- ?: z: O9 x0 F; ~# y
- i3 k$ @4 H( |- H
會這樣通常是RTL model的方式不正確導致合成後產生latch,但沒看到code&你也沒詳細描述是怎樣的錯誤,很難找出問題
, w% c g* D0 w, f6 v5 K
; I3 l3 F! Q' N7 v g; \另外model FSM時,個人習慣分成3個always block:2 `5 O8 Y2 r: i, }; p, r p$ ]
O1 D5 j/ e0 h& k' `( p7 W 1. sequential logic part for state assign
4 W/ ]2 `: _2 x& \6 s 2. combinational logic part for state transition
) F& W; R" p- R- N& r 3. combinational logic part for control signals2 u, R: j1 _6 a' t: x: ~7 {/ j
. Q( B1 O, v9 D4 X6 S
這樣做的好處是可以讓合成器確切的合出FSM,另外閱讀時也可以很清楚的掌握狀態的改變和每個狀態所要做的事,debug的時候比較方便,希望對你有幫助,FYI。 |
評分
-
查看全部評分
|