状态机类型

存在两种类型的状态机,分别为mealy型状态机和moore型状态机,在实验中,二者的大体实现如下:

其中从输入到输出的连线只有mealy状态机才有,而moore型则无此线。

区分两种类型的状态机的方法

  • mealy的输出由输入和当前状态决定;moore的输出只由当前状态决定

    具体体现在时序中时,我们知道在一个时钟周期内状态机的输出状态不会改变,因此moore的最终输出也不会改变;但当周期内的输入变化时,mealy的输出却可以改变。因此,当题目要求输出保持一个周期时,选择moore无疑。

  • mealy的输出是比moore更快的。举一个例子:状态机由state3->state4时,如果我们希望state4输出高电平,那么moore会在寄存器的输出端输出为state4时变为高电平,但mealy只需要在当前状态为3(无论时钟)且输入为使state3转变为state4时即可变为高电平。

时序逻辑的辨析

如图,是两种寄存器的初始化方式。观察可以发现,他们都是采用counter(max_value = 0x1,stay at value),从而在第一次时钟上升沿前完成舒适化,但不同的是二者的mux摆放位置,这带来的影响是:

  • 当初始化mux放在寄存器前面时,实现了第一时钟上升沿寄存器的输出为初始化的值。
  • 当初始化mux放在寄存器后面时,实现了第一次时钟上升沿寄存器的输出便为初始化状态更新后的新状态。

因此mux置放于register后总会比放于register前输出块一个周期,二者的选择取决于具体题目,例如:当我们将状态采用独热码编号时,我们的初始状态可能为state0 = 00001,而我们又希望从第一次时钟上升沿开始就从state0进行转移,就应该采用mux放于register后的方法。

同步复位与异步复位

上面为同步复位,下面为异步复位。

不常用的元器件简介

  • pull resistor(拉电阻),长得像弹簧一样的玩应

作用:和输入端相连,使浮空值变为高电平或低电平或error

  • transistor(晶体管) 用于模拟开关,使用方式和controlled buffer有点像。
  • decoder(解码器) 相当于一个没有输入的dmx(多位分配器),只是输出的为1。
  • bit selector(比特选择器)将选择的比特位上的数值输出(比特位0下标)。
  • bit adder 输出一个数字共有多少位是1。
  • bit finder 找到0和1在最高位或者最低位出现的位置并输出。
  • ram和rom 都是存储器,不同的是rom只能存储,不能写入。

logisim学习感想(持续更新)的更多相关文章

  1. 【pwn】学pwn日记——栈学习(持续更新)

    [pwn]学pwn日记--栈学习(持续更新) 前言 从8.2开始系统性学习pwn,在此之前,学习了部分汇编指令以及32位c语言程序的堆栈图及函数调用. 学习视频链接:XMCVE 2020 CTF Pw ...

  2. Pig基础学习【持续更新中】

    *本文参考了Pig官方文档以及已有的一些博客,并加上了自己的一些知识性的理解.目前正在持续更新中.* Pig作为一种处理大规模数据的高级查询语言,底层是转换成MapReduce实现的,可以作为MapR ...

  3. [读书]10g/11g编程艺术深入体现结构学习笔记(持续更新...)

    持续更新...) 第8章 1.在过程性循环中提交更新容易产生ora-01555:snapshot too old错误.P257 (这种情况我觉得应该是在高并发的情况下才会产生) 假设的一个场景是系统一 ...

  4. Java同步学习(持续更新)

    在需要考虑线程安全性的场合,可以考虑以下五种方式来实现线程的安全性: 1.同步方法 即有synchronized关键字修饰的方法. 由于java的每个对象都有一个内置锁,当用此关键字修饰方法时,   ...

  5. Linux学习历程(持续更新整理中)

    1.文件目录操作命令 (1) ls   显示文件和目录列表 a ls -l  显示文件的详细信息 b ls -a 列出当前目录的所有文件,包含隐藏文件. c stat '目录/文件'   显示指定目录 ...

  6. 数据分析之Pandas和Numpy学习笔记(持续更新)<1>

    pandas and numpy notebook        最近工作交接,整理电脑资料时看到了之前的基于Jupyter学习数据分析相关模块学习笔记.想着拿出来分享一下,可是Jupyter导出来h ...

  7. Python基础学习总结(持续更新)

    https://www.cnblogs.com/jin-xin/articles/7459977.html 嗯,学完一天,白天上班,眼睛要瞎了= = DAY1 1,计算机基础. CPU:相当于人的大脑 ...

  8. Cadence物理库 LEF 文件语法学习【持续更新】

    我是 雪天鱼,一名FPGA爱好者,研究方向是FPGA架构探索. 关注公众号,拉你进"IC设计交流群". @ 目录 一.LEF简介 1.1 通用规则 1.2 管理 LEF 文件 二. ...

  9. [Hadoop] Hadoop学习历程 [持续更新中…]

    1. Hadoop FS Shell Hadoop之所以可以实现分布式计算,主要的原因之一是因为其背后的分布式文件系统(HDFS).所以,对于Hadoop的文件操作需要有一套全新的shell指令来完成 ...

  10. Semantic ui 学习笔记 持续更新

    这个semantic 更新版本好快~ 首先是代码的标识<code></code> 具体样式就是红框这样的 圈起来代码感觉不错 不过要在semantic.css里在加上如下样式~ ...

随机推荐

  1. char字符_C

    字符的表示  字符类型由单引号' '包围,字符串由双引号" "包围. //正确的写法 char a = '1'; char b = '$'; char c = 'X'; char ...

  2. 句子成分&分类 被动

    句子成分&分类 简单句的两个主要句子成分,分别是主语 + 谓语 谓语的核心是谓语动词 谓语 不等于 谓语动词 主语 谓语 [The rabbit] [ate a carrot] ate 为谓语 ...

  3. Jmeter函数助手31-changeCase

    changeCase函数用于字符转换大小写. 字符串修改:填入需要转换的字符 更改案例模式UPPER(默认),LOWER,CAPITALIZE:不填默认UPPER,UPPER全部转换为大写,LOWER ...

  4. java 使用openoffice将doc、docx、ppt、pptx等转换pdf格式文件

    软件的安装与配置 链接: 官网 / C**N / 毒盘:提取码k47b 有能力的大佬可以选择c**n下载支持支持,官网下载可能有点慢 Windows下安装配置 下载安装包,安装到硬盘(这个就不截图了吧 ...

  5. JavaScript 中的闭包和事件委托

    包 (Closures) 闭包是 JavaScript 中一个非常强大的特性,它允许函数访问其外部作用域中的变量,即使在该函数被调用时,外部作用域已经执行完毕.闭包可以帮助我们实现数据的私有化.封装和 ...

  6. 2、SpringBoot2之入门案例

    2.1.创建Maven工程 2.1.1.创建空项目 2.1.2.设置项目名称和路径 2.1.3.设置项目sdk 2.1.4.项目初始状态 注意:需要关闭项目再重新打开,才能看到SpringBoot-P ...

  7. 【Java】在线文件预览服务 KkFileView

    原来有第三方在线预览服务接口: 需要收费使用: https://view.xdocin.com/ 但是经费不足,突然撤掉服务接口,只能把KkFileView架出来使用了 KkFileView官网地址: ...

  8. 【Java】单号创建服务

    需求:ERP项目存在若干个业务功能,每个业务的单子的单号创建规则需要被统一规划 1.每个业务有自己对应的标识 2.业务单号必须以英文字母为前缀,长度在2 - 4个字符 3.单号的组成 = [ 前缀 ] ...

  9. 【Mybatis】Bonus02 补充

    关于主键生成问题 Mybatis的主键生成是基于JDBC的使用主键[getGeneratedKeys()]方法 也就是说,必须要JDBC驱动的支持才行 @Test public void junitT ...

  10. 【Java】自制查找工具

    需求:查找后台代码中写的SQL是否包含拆分表,如果存在,则返回那些表名 Context.txt 粘贴我们找到的DAO层代码,因为所有方法封装的SQL都在DAO层里[就理解为筛查的字符串] Dictio ...