|
本帖最後由 masonchung 於 2010-12-2 11:09 AM 編輯 ! S C; y2 _" K2 ]8 O$ b
4 R ^& A( n2 T) m我要怎麼把原本演算法用FSM的方式去用pipeline的方式去寫呢???. m5 M7 X+ `1 A) W! ~3 Y
==>將演算法先排好data flow,再用FSM安排控制流程! ]- [, s' F, d% Y( y$ I
pipeline的概念我大概知道我的疑問是如果我現在有3個stage9 v6 T; x- V' p
那我是否可以把這3個stage"分別"分開用always block的方式去寫 可是這樣第2個stage要如何去取第1個stage的值呢???
: [# Z. d+ X5 I O: D2 W+ F N( T==>用循序電路的Register0 q1 Q) r* j* k3 ~/ i
而這這3個stage是否能都不要用到FSM的方式去寫呢
; H& P& u9 S! M. H' q==>請你想一下 FSM 是做啥用的 電路沒有狀態 要控制只能用一堆計數器吧
( C) l+ c) p9 j" {3 _5 `. g因為我之前有看到一篇文章
( g. u0 x* F; G9 V d她是說如果要寫演算法就一定會用到FSM1 @3 |+ i$ p- I$ P7 [# [: E: ^# j
所以我就一整個很疑惑- G$ C K$ N) v i
我是有去找一些資料, {' U( J0 E0 l8 `. A
但那都是一些簡單的觀念跟程式
" }6 ]# B' |' M9 k所以我想請教一下各位大大是否能提供任意一種演算法的程式是用verilog去寫成pipeline的方式做的) x3 U& ~4 H0 l0 b
==>pipeline 就是控制電路幾個cycle 要出來結果, 這個跟電路合成的頻率有關係9 `2 K# U2 p, J; y- ~- ^2 z8 L: I
先控制好你的fsm要幾個cycle完成 ' v$ Q& b' x( l2 ^. n1 G
再來想pipeline 要怎樣切,怎樣調整. |
|