当前位置: 首页 > news >正文

verilog HDLBits刷题[Finite State Machines]“Fsm3”---Simple FSM 3 (asynchronous reset)

1、题目

See also: State transition logic for this FSM

The following is the state transition table for a Moore state machine with one input, one output, and four states. Implement this state machine. Include an asynchronous reset that resets the FSM to state A.

StateNext stateOutput
in=0in=1
AAB0
BCB0
CAD0
DCB1

2、分析

使用one-hot state encoding: A=4'b0001, B=4'b0010, C=4'b0100, D=4'b1000.(还是有点困惑)

parameter A=0, B=1, C=2, D=3;

A,B,C,D=bit 下标

  • state[A]state[0]
  • state[B]state[1]
  • state[C]state[2]
  • state[D]state[3]

独热编码规则:

  • 在状态 A:state = 4'b0001state[0]=1
  • 在状态 B:state = 4'b0010state[1]=1
  • 在状态 C:state = 4'b0100state[2]=1
  • 在状态 D:state = 4'b1000state[3]=1

3、代码

module top_module( input clk, input in, input areset, output out); // reg [3:0] state,next_state; parameter A=0, B=1, C=2, D=3; // State transition logic: Derive an equation for each state flip-flop. assign next_state[A] = state[0]&(~in) | state[2]&(~in); assign next_state[B] = state[0]&(in) | state[1]&(in)|state[3]&(in); assign next_state[C] = state[1]&(~in) | state[3]&(~in); assign next_state[D] =state[2]&(in); always @(posedge clk ,posedge areset)begin if(areset) state<=4'd1; else state<=next_state; end // Output logic: assign out = (state[D]==1'b1); endmodule

4、结果

http://www.jsqmd.com/news/1277633/

相关文章:

  • 如何在5分钟内完成本地AI部署?LocalAI终极隐私保护方案详解
  • 粉笔直播课vsB站免费课突破瓶颈效率对比
  • 开源AI模型管理挑战:TextGen如何通过智能下载引擎重塑本地部署体验
  • C++/Qt + Mqtt协议 实现客户端订阅/发布功能
  • MLOps 数据漂移检测:模型性能退化的自动预警
  • 大数据平台弹性伸缩架构设计与实践指南
  • AI辅助编程实战:蒙特卡洛模拟构建NBA选秀预测模型
  • 洛雪音乐音源实践手册:三步解锁全网无损音乐的完整方案
  • ICHSSR 2026:跨学科人文社科研究的数字化转型
  • (2026最新)台州本地人必选的靠谱漏水检测维修推荐:正规防水补漏防水-卫生间/厨房/屋顶/阳台/外墙渗漏水精准测漏,本地人的信赖之选 - 安佳防水
  • 从文字识别到文档智能:2026年主流OCR工具对比与技术选型全景指南
  • 【企业通信】基于ipad协议全类型消息发送接口设计:支持文本、多媒体、群聊及大文件传输的API
  • 3大革新突破:Chili3D如何让专业CAD设计在浏览器中触手可及
  • LocalAI深度解析:如何用开源引擎在普通硬件上运行各类AI模型的完整指南
  • 【CarbonData】什么是 Segment?它在 CarbonData 的数据管理和生命周期中起什么作用?
  • 19.1 Cloudflare Pages点击 「Drag and drop your files」 右侧的蓝色 「Get started」发生报错,不支持多文件
  • TPS92520-Q1同步降压LED驱动器评估:GUI操作与高级功能实战
  • 什么是原生IP?原生IP与住宅IP有何区别?
  • 基于YOLO与SpringBoot+Vue的道路缺陷智能检测系统实践
  • 暗黑破坏神2网页存档编辑器:零安装修改游戏存档的终极指南
  • Windows集成笔设备
  • 通义万相提示词工程实战:5类高转化率提示模板,90%用户不知道的隐藏参数调优法
  • Cursor+Firecrawl / Playwright MCP 实战:PGV 三循环法实现网站高效复刻,前端开发效率提升 75%
  • Java线程超时不抛异常?这招让代码2滚蛋继续干
  • DataHub数据质量监控:从静态规则到智能异常检测的演进之路
  • 2026年威海老旧小区加装电梯服务商选择全攻略 - 装修教育财税推荐2026
  • 利用 Taotoken 多模型能力为智能客服场景选择最佳模型
  • 【新】5p242基于机器学习的农产品价格数据分析与预测可视化系统31(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_
  • SQL Server性能突降排查:从CPU飙高到执行计划分析实战
  • 竞价推广账户竞价托管公司核心能力解析与专业化实践路径探究——丽鸿科技行业案例分析