AMEsim狀態(tài)機優(yōu)先級
如果沒有轉(zhuǎn)換優(yōu)先級,以下狀態(tài)圖是模棱兩可的。事實上,狀態(tài) 1 之后的狀態(tài)并不是唯一的,因為兩個Guard x>= 2 和 x > 0 都是真的,因為在初始轉(zhuǎn)換期間 x 被賦予了值 5。
這種歧義可以通過向轉(zhuǎn)換添加優(yōu)先級編號來解決:
優(yōu)先級編號是附加到退出給定狀態(tài)的轉(zhuǎn)換的唯一編號。在幾個候選轉(zhuǎn)換中,采用優(yōu)先級編號最低的轉(zhuǎn)換。例如,這里采取了向State 2 的過渡。
復(fù)合過渡的優(yōu)先級
在存在復(fù)合狀態(tài)和并行狀態(tài)的情況下,優(yōu)先級規(guī)則將擴展為處理離開復(fù)合狀態(tài)的轉(zhuǎn)換。選擇的優(yōu)先級是“ 內(nèi)部優(yōu)先 ”(這一點應(yīng)當(dāng)熟記),在嘗試在封閉復(fù)合或并行狀態(tài)上定義的轉(zhuǎn)換之前,我們始終傾向于本地定義的轉(zhuǎn)換。
在此示例中,如果狀態(tài) 2 或 3 處于活動狀態(tài)(或狀態(tài) 1處于活動狀態(tài) 且 x <= 0),我們可以轉(zhuǎn)到狀態(tài) 4。如果 x 大于 0 并且狀態(tài) 1 處于活動狀態(tài),則其中一個本地轉(zhuǎn)換將具有更高的優(yōu)先級并將被采用( 這也即是所謂本地局部優(yōu)先原則 )。
并行過渡優(yōu)先級
并行狀態(tài)的規(guī)則擴展了相同的“ 內(nèi)部優(yōu)先 ”規(guī)則,在并行狀態(tài)下,如果任何子級進行過渡,則不進行上部過渡。
在這種情況下,如果狀態(tài) 1 、狀態(tài) 2 處于活動狀態(tài)并且 e 被激活,則進行從狀態(tài) 2 到狀態(tài) 3 的轉(zhuǎn)換。進行轉(zhuǎn)換時,不會進行從并行狀態(tài)到狀態(tài) 4 的轉(zhuǎn)換。如果在狀態(tài) 1、狀態(tài) 3 處于活動狀態(tài)且e被激活,因為沒有過渡“消耗”事件,那么我們嘗試上層轉(zhuǎn)換并進入狀態(tài) 4。
-
轉(zhuǎn)換器
+關(guān)注
關(guān)注
27文章
8741瀏覽量
147711 -
信號處理器
+關(guān)注
關(guān)注
1文章
254瀏覽量
25319 -
狀態(tài)機
+關(guān)注
關(guān)注
2文章
492瀏覽量
27615 -
AMESIM
+關(guān)注
關(guān)注
1文章
15瀏覽量
11742
發(fā)布評論請先 登錄
相關(guān)推薦
評論