天天看点

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

我们先来看看这道题目吧!

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

解题前的准备知识:

1.什么是自循环功能?

现有右移寄存器和右移循环寄存器两个寄存器,假设两个寄存器都是8位的。

则:

右移寄存器的移位1011 1111, 向右移一位,移出的位扔掉,左边空位自动补0,结果为0101 1111。

右移循环寄存器的移位1011 1111,向右移一位,移出的位补到左边空的位上,结果为1101 1111。

右移循环寄存器所展示的就是自循环功能!

2.什么是边沿触发的D触发器?

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

 请注意:

(1)当CP=0时,D触发器处于保持状态。当CP=1时,才符合上图中的特性方程。

(2)边沿触发即在CP信号发生变化的那一刻触发。

3.什么是移位寄存器?

移位寄存器中的数据可以在移位脉冲作用下依次逐位右移或左移。数据可以并行输入、并行输出;串行输入、串行输出;并行输入、串行输出;串行输入、并行输出。

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

在此仅展示最基本的右向移位寄存器。

下面进入正题!

(1)我们知道右移寄存器是同步的,所以画出三个D触发器,将他们的时钟信号CP端连接起来。

(2)要实现右移进位的功能,就要把前两个D触发器的输出端依次接到后一个D触发器的输入端,从而实现进位功能。

以上两步就得到了最基本的电路图。

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

(3)现在我们来分析输入端。

1.假设D触发器最左边的输入端为S(上图中小人眼睛盯着的地方),最终输出为D0。

2.画出控制端X和输入端S的真值表。

X(控制端) S(输入端)
0(X=0时串行输出新数据DI) DI(新数据)
1(X=1时自循环,所以输入和输出相等) D0(最终输出值)

3.根据上述真值表,我们写出相应的表达式:S=X非 DI+X D0

将上述式子化简成全部用与非门表示:

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

 4.直接根据化简后的式子,画出输入电路。

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

5.最后将原先的基本电路与刚刚得到的输入电路连接起来,就得到最终的答案啦!

如何用边沿触发D触发器和与非门设计一个三位右移寄存器?

 by 访问宇宙

继续阅读