0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

入门课程之简单状态机设计流程

电子工程师 ? 来源:FPGA设计论坛 ? 作者:FPGA设计论坛 ? 2021-03-14 10:01 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

《 简单状态机 》设计

设计背景:

状态机是描述各种复杂时序的时序行为,是使用 HDL 进行数学逻辑设计中非常重要的方法之一,状态机分为摩尔机和米粒机,当输出只和状态有关系的话称为摩尔机,当输出不仅和状态有关系也和输入信号有关系的时候称为米粒机,米粒机和摩尔机的电路原型我就不在这里给大家介绍了。

状态机是由状态寄存器和组合逻辑电路构成,能够根据控制信号按照预先设计的状态进行状态的转移,是协调相关信号的动作,完成特定操作的控制中心。比如我们生活中遇到的问题,健康---感冒---健康,这个就是一个状态的转移图,从健康状态到感冒状态在到健康状态。

设计原理:

我认为对于我们初学者来说我们只要只要状态机就是当这个状态也就是当这个时钟来的时候发生这件事情,当下各时钟来的时候发生另一件事,也就是说发生这件事后,跳转下一个时钟发生另一件事情,两个事情发生没有关系。我们理解初学者理解这个就行了,不用理解高深的二段式,三段式。

我们会在下面的设计中用到简单的状态机让大家明白简单的状态机。

我们的设计也是一个流水灯,我们的设计是在复位的时候让 4 个等全熄灭,第一个上升沿点亮一个,第二个点亮下一个,依次类推。我们的写法可以这样想,当第一个状态也就是一个上升沿点亮第一个灯,然后跳转下一个状态点亮第二个灯,第三个点亮下一个。。。。

设计架构图:

设计代码:

仿真图:

在仿真图中我们可以看到,当 0 状态的时候点亮第一个灯,当 1状态点亮第二个灯,2 状态第三个灯,3 状态第四个灯,然后又到了0 状态第一个灯,这样就实现了流水。

责任编辑:lq6

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5448

    浏览量

    125467
  • HDL
    HDL
    +关注

    关注

    8

    文章

    330

    浏览量

    48244
  • 状态机
    +关注

    关注

    2

    文章

    494

    浏览量

    28383

原文标题:至芯入门课程-简单状态机设计

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    请问如何在FX10上使用GPIF III状态机 *.h 文件?

    LVCMOS 2 位 SlaveFIFO GPIF III 状态机的演示中有一个 cy_gpif_header_lvcmos.h 文件。 我想知道如何使用.h文件,只需放入.h文件放入 FX10 项目? 您有它的用户指南文档吗?
    发表于 07-16 08:17

    NVMe高速传输之摆脱XDMA设计之十:NVMe初始化状态机设

    1为NVMe配置初始化状态机状态转移图。各状态的说明如下: 图1NVMe初始化状态转移图 IDLE:空闲状态,复位后的初始
    发表于 07-05 22:03

    NVMe高速传输之摆脱XDMA设计之八:PCIe初始化状态机设

    PCIe配置初始化状态机实现PCIe设备枚举和配置空间初始化过程,在完成链路训练后,使用DFS(深度优先搜索)算法枚举PCIe总线上的设备,完成PCIe总线域的地址分配和设备的初始化。PCIe配置
    发表于 07-05 22:00

    有可能在 FX3 GPIF2 中创建两个独立的状态机吗?

    我想,如果我想通过 FX3 GPIF2 创建两个独立的传输流接口,我需要在 GPIF2 设计器中创建两个独立的状态机,我是否有可能在 GPIF2 设计器中创建两个独立的状态机
    发表于 05-20 06:14

    cypress3014视频格式改变的话,GPIF状态机需不需要重新配置?

    你好,请问视频格式改变的话,GPIF状态机需不需要重新配置
    发表于 05-14 07:28

    求助,关于srammaster.cydsn中状态机的问题求解

    晚上好。 我目前正在学习 GPIF II。 查看..EZ-USB FX3 SDK1.3firmwaregpif_examplescyfxsrammastersrammaster.cydsn中的状态机,有状态START和START1。 这意味着什么?
    发表于 05-12 06:20

    高速ssd存储系统中数据缓存控制器流程控制设计

    高速SSD系统中流程控制模块设计。该模块主要由寄存器、读状态机、写状态机和命令生成模块组成,系统介绍各模块功能。
    的头像 发表于 04-14 10:43 ?348次阅读
    高速ssd存储系统中数据缓存控制器<b class='flag-5'>流程</b>控制设计

    Simulink中的状态机建模方法 Simulink数据可视化与分析功能

    1. Simulink中的状态机建模方法 1.1 理解状态机的基本概念 在开始建模之前,了解状态机的基本概念是必要的。状态机由以下几个部分组成:
    的头像 发表于 12-12 09:27 ?3292次阅读

    Linux从零到精通:最简单的Shell脚本入门教程

    通过简单的命令和脚本,实现对系统的灵活控制和自动化管理。 shell脚本前言 shell脚本入门 shell变量基础 shell变量子串 shell数值运算 条件表达式 流程控制语句 shell函数
    的头像 发表于 12-05 09:56 ?1735次阅读
    Linux从零到精通:最<b class='flag-5'>简单</b>的Shell脚本<b class='flag-5'>入门</b>教程

    用CPLD控制ADS7229,工作流程是怎么样的?

    用CPLD控制ADS7229,因为需要用到状态机,需要了解7229的工作流程是怎么样的,手册上没有看懂,望大侠指点! 比如:流程一:通过SPI接口进行寄存器(CFR)配置——》启动转换-——》等待转换完成——》输出数据(sdo
    发表于 12-03 07:50

    基于状态机和面向对象的思想设计按键检测模块

    嵌入式入门学习的教程里面,按键原理普遍被认为是“很简单”的知识点之一,按键输入检测的原理,无非就是通过CPU不断扫描按键引脚的电平状态,或者采用单片机引脚外部中断方式,然后在死循环或者中断服务程序里面处理按键被按下
    的头像 发表于 11-14 11:44 ?1086次阅读
    基于<b class='flag-5'>状态机</b>和面向对象的思想设计按键检测模块

    【「数字IC设计入门」阅读体验】+ 数字IC设计流程

    :将芯片设计结果交出去进行生产制造。 上述这些只是芯片设计过程中的主要节点,细节还有很多,如果验证测试中不通过,就需要从数字前端设计开始找原因,之后再经历一次全流程测试,可见IC设计流程之繁琐,愈加需要技术人员具备严谨认真的精工态度。加油吧,中国芯!
    发表于 09-25 15:51

    【全新课程资料】正点原子《基于GD32 ARM32单片机项目实战入门》培训课程资料上线!

    ,掌握ARM32单片机项目的开发流程; 三、课程特色 1、基础入门,循序渐进 从开发环境搭建和工程创建开始,逐步深入学习每一个外设的原理及应用。通过实战项目巩固所学技能,确保全面掌握 2、教学内容
    发表于 09-24 18:06

    【全新课程资料】正点原子《ESP32基础及项目实战入门》培训课程资料上线!

    基础开发流程 三、课程特色 1、基础入门,循序渐进: 从C语言基础开始,逐步深入学习ESP32 IDF开发。首先搭建开发环境并熟悉工具使用,然后学习基础原理和模块驱动,最后通过外设实战巩固技能 2
    发表于 09-24 17:59

    【全新课程资料】正点原子《ESP32物联网项目实战》培训课程资料上线!

    ,解决ESP32物联网项目入门难的问题; 2、综合应用基础知识,提高项目实战能力,解决眼高手低的问题; 3、通过多个项目实战,掌握ESP32物联网项目的开发流程; 三、课程特色 1、化整为零,循序渐进: 把
    发表于 09-24 17:05