Mealy和Moore状态机概述

Mealy和Moore状态机的语义学
Mealy和Moore通常被认为是建模有限状态机的基本行业标准范式。通常在状态机模型中,下一个状态是当前状态及其输入的函数,如下所示:
X(n+1)=f(X(n),u)
在这个等式中:

X(n)表示时间步n的状态
X(n+1)表示下一时间步n+1的状态
u代表输入

状态是本地数据和图表活动的组合。因此,计算状态意味着更新本地数据并从当前活动状态转换到新状态。状态从一个阶段延续到另一个阶段。
在这种情况下,Mealy和Moore状态机都有明确的语义。

状态机类型语义应用
Mealy输出是输入和状态的函数:y=g(X,u)在时钟边沿发生状态转换的时钟同步机
Moore输出仅是状态的函数:y=g(X)在时钟边沿修改输出的时钟同步机

默认状态机类型

当您创建状态流图时,默认类型是混合状态机模型,它将Mealy和Moore图的语义与扩展的状态流图语义相结合。此默认图表类型称为“Classic”。

输出可用性

Mealy机器计算转换的输出,而Moore机器计算状态的输出。因此,Mealy图表可以比Moore图表更早地计算输出,也就是说,在图表的默认路径执行时。如果为Mealy图表启用图表属性Execute(enter)chart At Initialization,则此计算发生在t=0(第一时间步);否则,它发生在t=1(下一时间步)。相比之下,Moore机器只能在默认路径执行后计算输出。在此之前,输出将采用默认值。

Mealy和Moore图表的优点

Mealy和Moore图表与经典状态流程图相比具有以下优势:
您可以验证您创建的Mealy和Moore图表,以确保它们符合其形式定义和语义规则。错误消息出现在编译时(而不是设计时)。
对于C/C++和HDL目标,Moore图提供了比经典图更有效的实现。
你可以使用Moore图表来模拟反馈回路。在Moore图中,输入没有直接的馈通。因此,你可以设计一个从输出端口到输入端口的反馈回路,而无需引入代数回路。Mealy和Classic图表具有直接的馈通和代数循环误差。

在这里插入图片描述

创建Mealy和Moore图表

要创建新的Mealy或Moore图表,请执行以下步骤:
将新的图表块添加到Simulink模型中。然后双击该块以打开Stateflow编辑器。
在图表的空白区域单击鼠标右键,然后选择“Properties”。
“图表属性”对话框打开。
从状态机类型下拉菜单中,选择Mealy或Moore。
单击“OK”。

在这里插入图片描述
图表图标将更新以显示所选图表类型:
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值