数字电路基础---时序逻辑

时序逻辑

       通过前面的组合逻辑的学习,我们知道了组合逻辑电路是没有记忆功能的,也就是说在任何时刻产生的输出信号都仅仅取决于该时刻电路的输入信号,而与它以前的输入信号是无关的。下来我们来学习下什么是时序逻辑。

1、简介

       时序电路是有记忆功能的, 它在任何时刻的输出,不仅与该时刻的输入信号有关,而且还与该时刻以前的输入信号有关。可能大家觉得这样说可能有点绕,下面我们举一个实际的例子,来说明一下。

       有一个排队机分发苹果,实现的功能是公平的给每个排队的人不停的发苹果,假设排队总人数有 4 个人,名字分别分别是 A、B、C、D,每个人的机会都是相等的,假设从第一个人 A 开始服务,第二个得到服务的是 B,后面依次是 C 和 D,此时机器需要将上一次服务的人记录下来,才好给下一个人服务,不然可能每次都给一个人服务,那么这样的记忆功能,就是由机器内部的时序电路来实现的。

数字电路基础---时序逻辑_第1张图片

       从上图时序逻辑示意图我们可以看出,时序逻辑由组合逻辑和存储逻辑构成,组合逻辑完成输入到输出的逻辑处理,处理的结果同时会进入存储逻辑里面存储下来,等到下一个时刻再和输入的信号做逻辑处理,得到最终的处理结构。

       时序逻辑的存储电路一般由锁存器、触发器和寄存器构成。下面我们先了解下这三个器件的概念。

       锁存器(latch)是电平触发的存储单元,数据存储的动作取决于输入时钟(或者使能)信号的电平值,即当锁存器处于使能状态时,输出才会随着数据输入发生变化。

       触发器(flipflop)是边沿敏感的存储单元,数据存储的动作由某一信号的上升或者下降沿进行同步的。(钟控 D 触发器其实就是 D 锁存器,边沿 D 触发器才是真正的 D 触发器)

       寄存器(register)是用来暂时存放参与运算的数据和运算结果。在实际的数字系统中,通常把能够用来存储一组二进制代码的同步时序逻辑电路称为寄存器。

2、触发器和寄存器的区别:

       由于触发器内有记忆功能,因此利用触发器可以方便地构成寄存器。由于一个触发器能够存储一位二进制码,所以把 n 个触发器的时钟端口连接起来就能构成一个存储 n 位二进制码的寄存器。

       从寄存数据的角度来讲,寄存器和锁存器的功能是相同的;它们的区别在于寄存器是同步时钟控制,而锁存器是电位信号控制。

你可能感兴趣的:(硬件工程,fpga开发,dsp开发,算法)