← eetop.cn_数字IC设计工程师笔试面试经典100题(大部分有答案)
推荐答案
测试一下
题目
确定状态数画出状态转移图,没有投币之前的初始状态 S0,投入了 1分硬币 S1,投入
参考答案与知识点
参考答案
本题考察有限状态机(FSM)设计,典型场景为硬币投币机(如售货机),每次投币1分或2分,累计达3分时输出并归零。题目已给出初始状态S0(0分)和投入1分后的状态S1(1分),需补充状态S2(2分)。状态数共3个(S0、S1、S2),无需额外状态表示已投3分,因为当在S2投入1分后立即输出且返回S0,或通过Mealy型输出在转移时产生。状态转移图:S0投1分→S1,S0投2分→S2;S1投1分→S2,S1投2分→(累计3分)输出并回S0;S2投1分→输出并回S0,S2投2分→(累计4分,但题目不找零,可视为非法输入或忽略)。注意采用Moore型时需增设S3(3分状态),输出在状态内;Mealy型则输出与转移关联。常见考点:状态编码(二进制、格雷码、独热码选择)、状态化简(本例不可化简)、自启动检查(避免进入无效状态)。易错点:忽略S2后投2分或S0投2分的处理;未考虑无效输入导致死循环;将输出与状态混淆。
涉及知识点
- 有限状态机(FSM)设计
- 状态转移图绘制
- Moore型与Mealy型区别
- 状态编码策略
- 状态化简与自启动