时间:2024-07-30 来源:网络搜集 关于我们 0
1、状态机的本质就是对具有逻辑顺序或时序规律事件的一种描述方法。
这个论断的最重要的两个词就是“逻辑顺序”和“时序规律”,这两点就是状态机所要描述的核心和强项,换言之,所有具有逻辑顺序和时序规律的事情都适合用状态机描述。
状态机的基本要素有 3 个:状态、输出和输入。
1-1 状态:也叫状态变量。在逻辑设计中,使用状态划分逻辑顺序和时序规律。 比如:设计伪随机码发生器时,可以用移位寄存器序列作为状态;在设计电机控制电路时,可以以电机的不同转速作为状态;在设计通信系统时,可以用信令的状态作为状态变量等。
1-2 输出:输出指在某一个状态时特定发生的事件。如设计电机控制电路中,如 果电机转速过高,则输出为转速过高报警,也可以伴随减速指令或降温措施等。
1-3 输入:指状态机中进入每个状态的条件,有的状态机没有输入条件,其中的 状态转移较为简单,有的状态机有输入条件,当某个输入条件存在时才能转移到相应的状态。
1-1 状态转移图;
1-2 状态转移列表;
1-3 HDL 语言描述状态机;
好的RTL 级FSM 的评判标准如下:
1-1 FSM 要安全,稳定性高。
所谓 FSM 安全是指FSM 不会进入死循环,特别是不会进入非预知的状态, 而且由于某些扰动进入非设计状态,也能很快的恢复到正常的状态循环中来。这里面有两层含义,第一:要求该FSM 的综合实现结果无毛刺等异常扰动;第二: 要求状态机要完备,即使收到异常扰动进入非设计状态,也能很快恢复到正常状态。
1-2 FSM 速度快,满足设计的频率要求。
任何 RTL 设计都应该满足设计的频率要求。
1-3 FSM 面积小,满足设计的面积要求。
同理任何 RTL 设计都应该满足设计的面积要求。
1-4 FSM 设计要清晰易懂、易维护。
不规范的 FSM 写法很难让其他人解读,甚至过一段时间后设计者也发现很难维护。
一,推荐的状态机描述方法
• 一段式状态机描述方法(应该避免的写法);
• 两段式状态机描述方法(推荐写法);
状态机的二段式描述