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

Fsm1

为了处理有时间上先后的事件,在FPGA中采用状态机的形式完成事件处理。

Mealy 状态机:输出不仅取决于当前状态,还取决于输入状态。

Moore 状态机:组合逻辑的输出只取决于当前状态,而与输入状态无关。

 

         二段式状态机:用两个 always 模块来描述状态机,其中一个 always模块采用同步时序描述状态转移;另一个模块采用组合逻辑判断状态转移条件,描述状态转移规律以及输出。不同于一段式状态机的是,它需要定义两个状态,现态和次态,然后通过现态和次态的转换来实现时序逻辑。
         三段式状态机:在两个 always 模块描述方法的基础上,使用三个always 模块,一个always 模块采用同步时序描述状态转移,一个 always 采用组合逻辑判断状态转移条件,描述状态转移规律,另一个 always 模块描述状态输出

module top_module(input clk,input areset,    // Asynchronous reset to state Binput in,output out);//  parameter A=0, B=1; reg state, next_state;//组合逻辑判断状态转移条件,描述状态转移规律always @(*) begin    // This is a combinational always block// State transition logic case(state)A: next_state = in?  A:B;B: next_state = in?  B:A;endcaseend//同步时序描述状态转移always @(posedge clk, posedge areset) begin    // This is a sequential always block// State flip-flops with asynchronous resetif(areset)state <= B;  //复位初始状态elsestate <=next_state;  //次态转移到现态end//时序逻辑描述输出// Output logic// assign out = (state == ...);// assign out = (state == A)? 0:1;always @(posedge clk, posedge areset) begin    // This is a sequential always blockout <= (state == B);endendmodule

http://www.lryc.cn/news/474583.html

相关文章:

  • C. Gorilla and Permutation
  • 从0开始学python-day17-数据结构2
  • (蓝桥杯C/C++)—— 编程基础
  • 企业物流管理数据仓库建设的全面指南
  • 数据采集-Kepware 安装证书异常处理
  • ubuntu禁止自动更新设置
  • Rust 力扣 - 1461. 检查一个字符串是否包含所有长度为 K 的二进制子串
  • C#/.NET/.NET Core技术前沿周刊 | 第 11 期(2024年10.21-10.31)
  • unity 三维数学 ,角度 弧度计算
  • Java基础4-控制流程
  • 面试题分享11月1日
  • 【含文档】基于ssm+jsp的学科竞赛系统(含源码+数据库+lw)
  • Docker方式部署ClickHouse
  • 车载通信架构 --- PNC、UB与信号的关系
  • 智慧农业云平台:大数据赋能现代农业的未来
  • 【python】OpenCV—Tracking(10.4)—Centroid
  • 为什么TCP(TIME_WAIT)2倍MSL
  • jieba-fenci 05 结巴分词之简单聊一聊
  • Hadoop期末复习(完整版)
  • Python篮球王子
  • 分享一些在部署k8s集群时遇到的问题
  • 【Canal 中间件】Canal使用原理与基本组件概述
  • 《Baichuan-Omni》论文精读:第1个7B全模态模型 | 能够同时处理文本、图像、视频和音频输入
  • YOLOv6-4.0部分代码阅读笔记-common.py
  • 移植 AWTK 到 纯血鸿蒙 (HarmonyOS NEXT) 系统 (4) - 平台适配
  • Java 多线程(八)—— 锁策略,synchronized 的优化,JVM 与编译器的锁优化,ReentrantLock,CAS
  • 【项目分享】法拉利中控台模拟 html+css+js
  • Rust 力扣 - 2461. 长度为 K 子数组中的最大和
  • stm32103c8t6 pwm驱动舵机(SG90)
  • Python For循环