← 数字IC设计经典笔试题

推荐答案 测试一下

画出fsm(有限状态机)

题目配图 题目配图
编程题 中等 笔试真题

参考答案

有限状态机(Finite State Machine, FSM)是一种对数字系统行为进行建模的数学模型,由状态、输入、输出和状态转移规则组成。设计FSM通常包括以下步骤: 1. 确定需求,明确输入输出和状态数量。 2. 画出状态转移图(State Diagram):用圆圈表示状态,箭头表示状态转移,标注输入条件和输出信号。 3. 根据状态图编写状态转移表(State Table),列出当前状态、输入、下一状态和输出。 4. 分配状态编码(如二进制、格雷码或独热码)。 5. 推导下一状态逻辑和输出逻辑的表达式,使用组合逻辑实现。 6. 用时序逻辑(触发器)存储当前状态。 根据输出产生方式,FSM分为: - Moore型:输出仅与当前状态有关,稳定,无毛刺。 - Mealy型:输出与当前状态和输入有关,响应快,但可能有毛刺。 例如,设计一个“101”序列检测器(Mealy型): 状态定义:S0(等待1),S1(检测到1),S2(检测到10)。 状态转移图: S0—输入1→S1,输出0; S1—输入0→S2,输出0; S1—输入1→S1,输出0; S2—输入1→S0,输出1(检测到101); S2—输入0→S0,输出0。 图形中每个状态圆圈内写状态名,箭头旁标注“输入/输出”。 FSM设计中易错点: - 状态遗漏:未能覆盖所有输入组合或非法状态。 - 状态冗余:不必要的状态增加面积和功耗。 - 异步输入处理:未使用同步器可能导致亚稳态。 - 复位状态:应定义上电复位状态。 - 时序违例:组合逻辑级数过多导致建立时间不满足。 实际应用中,FSM广泛应用于协议控制器、数据路径控制、数字信号处理等。掌握绘制状态转移图和编写状态转移表是IC设计工程师的基本功。

涉及知识点

  • 有限状态机基本概念
  • Mealy和Moore型区别
  • 状态转移图绘制方法
  • FSM设计步骤与状态编码
  • 序列检测器设计示例
  • FSM常见易错点
登录后反馈错题
下一题 →