Labview设计计算机--组合逻辑与时序逻辑(5)

来源:互联网 发布:netbeans php插件 编辑:程序博客网 时间:2024/05/08 04:37

在写接下来的内容之前,我要强烈推荐一部书《编码:隐匿在计算机软硬件背后的语言》,这是一本由浅入深的书,我也是借鉴了书中的很多想法才有勇气尝试在Labview上构建一个简单的计算机,看这本书的门槛不高,大概有高中知识就差不多了;


ok,进入正题;实现需要明白的一个问题是,为什么需要时序逻辑电路?时序逻辑电路和组合逻辑电路有什么区别?

我想通过一个生活中的例子能够帮助大家更好的理解两者的区别,因为人从自己已知的知识去理解未知的世界时,能够更快的掌握新知识;

比如,交给你一个任务:将一堆有白色和黑色两种颜色的球分成两堆,其中一堆全为白球,另一堆全为黑球,你可以叫任意多个小伙伴和你一起进行这项工作;当你找到一定数量的小伙伴后,每个小伙伴可以同时并行工作,几乎可以在很短时间内完成这项工作。这就类似组合逻辑电路,有输入和输出,并且从输入到输出数据流是单向的,输入不依靠输出,速度快;

再比如,叫你炒一盘菜,因为炒菜根据菜谱有一定的顺序,并且在炒菜的过程中,如果发现菜要炒焦了,就将火关小,如果发现菜太淡,就加盐;在炒菜的过程中需要根据前一阶段的结果来动态调整当前状态的动。这就类似时序逻辑电路,当前的输入与前一阶段的输出相关,按照一定的步骤进行处理,直到完成任务,每个步骤都是一个节拍,通过脉冲进行控制,脉冲也称为时钟信号;

可见,组合逻辑电路与时序逻辑电路的一个本质区别在于是否存在反馈。

又因为需要将输出作为下一次的输入,所以必须使用存储元件,通常将锁存器作为暂存元件,下一篇将介绍几种常用的触发器,如RS触发器、D触发器,以及以触发器为部件组成的锁存器;

0 0