通過數(shù)據(jù)路徑的逐步穿透,設(shè)計(jì)模塊,是一種常見的設(shè)計(jì)方法。而從另外一種常規(guī)思想來看,電路的另一種表現(xiàn)形式,是狀態(tài)的轉(zhuǎn)換。往往在設(shè)計(jì)有模式變換,且組合關(guān)系較復(fù)雜的電路時(shí),使用狀態(tài)機(jī)描述電路,比數(shù)據(jù)路徑穿透的方法更加直接。
比如說,某個(gè)電路存在S0、S1、S2、S3、S4、S5六種狀態(tài),電路上電后處于一個(gè)特定的狀態(tài),只有當(dāng)發(fā)生輸入變換時(shí),才會(huì)切換到其他的狀態(tài)。這種電路,直觀上無法用數(shù)據(jù)路徑穿透設(shè)計(jì),但如果使用狀態(tài)機(jī)設(shè)計(jì),則會(huì)簡單很多。
狀態(tài)機(jī)設(shè)計(jì),一般先把3種類型的信號(hào)(狀態(tài))整理出來:
- 狀態(tài)信號(hào),表示當(dāng)前狀態(tài)機(jī)處于什么狀態(tài)下
- 條件信號(hào),狀態(tài)機(jī)在不同條件下的跳轉(zhuǎn),需要不同的信號(hào)
- 輸出信號(hào),根據(jù)狀態(tài)的不同,輸出相應(yīng)的結(jié)果
接著就可以把狀態(tài)機(jī)的狀態(tài)變化描述圖整理出來,如下圖所示:
以上狀態(tài)機(jī)的狀態(tài)信號(hào)一共6種,S0~S5,而條件信號(hào)為a。可以看出不同狀態(tài)下,a的變換決定了狀態(tài)的下一次跳轉(zhuǎn)會(huì)向哪個(gè)方向跳。這里有2個(gè)必須理解的點(diǎn):
- a沒有變換的時(shí)候,無論多少個(gè)時(shí)鐘信號(hào),狀態(tài)都會(huì)保持不變
- a的到來應(yīng)該是脈沖型信號(hào)(單個(gè)時(shí)鐘周期),以確保狀態(tài)的變換是按照時(shí)鐘周期進(jìn)行的。
Z則是輸出信號(hào),在不同狀態(tài)下,其輸出會(huì)有所不同。
根據(jù)以上狀態(tài)圖的描述,我們可以開始用Verilog HDL進(jìn)行電路描述了(狀態(tài)機(jī)跳轉(zhuǎn)圖,可視為電路圖)。一般的狀態(tài)機(jī)描述,我們稱為三段式描述,實(shí)際上就是剛才說的,分別對三種不同信號(hào)的描述。
第一部分是狀態(tài)跳轉(zhuǎn)的描述,采用時(shí)序邏輯與組合邏輯分離的描述方式,將狀態(tài)信號(hào)看成寄存器:
以上狀態(tài)的定義,使用的是順序編碼,如果根據(jù)實(shí)際情況,采用格雷碼設(shè)計(jì),跳轉(zhuǎn)頻率高的盡量減少跳轉(zhuǎn),則可以相應(yīng)減少一些功耗。
接著第二部分,描述條件對狀態(tài)的影響,屬于組合邏輯,一般來說我們用case語句結(jié)構(gòu)來實(shí)現(xiàn),需要注意的是,必須加上default條件,其實(shí)就是說其他條件不滿足的話,nextstate就保持在上一個(gè)狀態(tài)。如果沒有default語句,且條件不完整,則synthesis工具會(huì)生成一個(gè)鎖存器來實(shí)現(xiàn)case語句,那樣的話,與我們的設(shè)計(jì)初衷就不同了,要避免:
條件語句,其實(shí)也可以用數(shù)據(jù)路徑來設(shè)計(jì),但那樣的話就會(huì)有優(yōu)先級出現(xiàn),需要根據(jù)實(shí)際情況來分析。
第三部分,就是根據(jù)狀態(tài)的變換,為輸出值Z賦值。根據(jù)狀態(tài)圖分析,只有處于S5的時(shí)候,Z才輸出1'b1,否則都是1'b0:
所以輸出仍然可以使用數(shù)據(jù)路徑描述方式。
由此三段式描述狀態(tài)機(jī)的方式,就完成了。至于條件a怎么來的,輸出Z又給到哪里去了,該如何進(jìn)一步的設(shè)計(jì),就需要各位看官自己吸收理解了。
-
寄存器
+關(guān)注
關(guān)注
31文章
5357瀏覽量
120681 -
變換器
+關(guān)注
關(guān)注
17文章
2101瀏覽量
109377 -
鎖存器
+關(guān)注
關(guān)注
8文章
906瀏覽量
41554 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
492瀏覽量
27578 -
HDL語言
+關(guān)注
關(guān)注
0文章
47瀏覽量
8936
發(fā)布評論請先 登錄
相關(guān)推薦
評論