【SoC设计的简单艺术】第四章:层次化状态机

在这里插入图片描述

重构为层次化状态机

在前一章中,我们对BCU进行了多项改进,并为代码开发了一个整体结构。在本章中,我们将重新设计有限状态机,使其成为一个层次化状态机(HFSM)。我们将从HFSM的一般模型开始,然后继续重新编码BCU的状态机。

有限状态机是BCU结构的核心:它定义了设计随着时间如何运作。它就像C代码中的main函数:是我们开始任何代码分析的地方。使状态机结构良好且易于理解至关重要。

HFSM的一般模型

状态机如同设计中的大多数方面一样,遵循“七条规则”。如果状态机中的状态数量超过大约七个,那么设计、审查和理解都会变得困难得多。解决方案是使用层次结构进行设计和编码,并将任何一层级中的状态数量限制为最多大约七个。

图4-1展示了一个(通用的)层次化状态机的顶层,它由三个状态组成。IDLE是一个普通状态。S1S2是复合状态,用同心圆表示。

在这里插入图片描述

复合状态是子状态机:由另一个状态机调用的状态机。图4-2展示了S1子状态机的详细情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尼德兰的喵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值