数字电路 - 移位寄存器的应用

在上一章中,我们讨论了四种类型的移位寄存器。根据要求,我们可以使用其中一种移位寄存器。以下是移位寄存器的应用。

  • 移位寄存器用作并行到串行转换器,将并行数据转换为串行数据。它用于模拟到数字转换器 (ADC) 块之后的发射器部分。

  • 移位寄存器用作串行到并行转换器,将串行数据转换为并行数据。它用于数字到模拟转换器 (DAC) 块之前的接收器部分。

  • 移位寄存器与一些附加门一起生成零和一的序列。因此,它被用作序列生成器

  • 移位寄存器也用作计数器。根据最右边的 D 触发器连接到串行输入的输出类型,有两种类型的计数器。它们是环形计数器和约翰逊环形计数器。

在本章中,让我们逐一讨论这两个计数器。

环形计数器

在上一章中,我们讨论了串行输入 - 并行输出(SIPO)移位寄存器的操作。它以串行形式从外部接受数据,并且需要"N"个时钟脉冲才能移位"N"位数据。

类似地,"N"位环形计数器执行类似的操作。但是,唯一的区别是,最右边的 D 触发器的输出作为最左边的 D 触发器的输入,而不是从外部应用数据。因此,环形计数器产生一系列状态(零和一的模式),并且每'N'个时钟周期重复一次。

下图显示了3位环形计数器的框图

环形计数器

3位环形计数器仅包含一个3位SIPO移位寄存器。最右边的D触发器的输出连接到最左边的D触发器的串行输入。

假设从最左边到最右边的D触发器的初始状态为$Q_{2}Q_{1}Q_{0}=001$。这里,$Q_{2}$和$Q_{0}$分别是MSB和LSB。我们可以从下表中了解环形计数器的工作原理

时钟正沿数 串行输入 = Q0 Q2(MSB) Q1 Q0(LSB)
0 - 0 0 1
1 1 1 0 0
2 0 0 1 0
3 0 0 0 1

在没有时钟信号的情况下,D 触发器的初始状态为 $Q_{2}Q_{1}Q_{0}=001$。该状态在时钟信号的每三个正沿转换时重复一次。

因此,以下操作在时钟信号的每个正沿发生。

  • 第一个 D 触发器的串行输入获取第三个触发器的先前输出。因此,第一个 D 触发器的当前输出等于第三个触发器的先前输出。

  • 第一和第二个 D 触发器的先前输出右移一位。这意味着,第二和第三个 D 触发器的当前输出等于第一和第二个 D 触发器的先前输出。

约翰逊环形计数器

约翰逊环形计数器的操作与环形计数器的操作类似。但是,唯一的区别是,最右边 D 触发器的补码输出作为最左边 D 触发器的输入,而不是正常输出。因此,"N"位约翰逊环形计数器产生一系列状态(零和一的模式),并且每"2N"个时钟周期重复一次。

约翰逊环形计数器也称为扭曲环形计数器和开关尾环形计数器。下图显示了 3 位约翰逊环形计数器的框图

Twisted Ring Counter

3 位约翰逊环形计数器也仅包含一个 3 位 SIPO 移位寄存器。最右侧 D 触发器的补码输出连接到最左侧 D 触发器的串行输入。

假设最初所有 D 触发器都已清除。因此,$Q_{2}Q_{1}Q_{0}=000$。这里,$Q_{2}$ 和 $Q_{0}$ 分别是 MSB 和 LSB。我们可以从下表中了解约翰逊环形计数器的工作原理

时钟正沿数 串行输入 = Q0 Q2(MSB) Q1 Q0(LSB)
0 - 0 0 0
1 1 1 0 0
2 1 1 1 0
3 1 1 1 1
4 0 0 1 1
5 0 0 0 1
6 0 0 0 0

在没有时钟信号的情况下,D 触发器的初始状态为 $Q_{2}Q_{1}Q_{0}=000$。该状态在时钟信号的每六个正沿转换时重复一次。

因此,以下操作在时钟信号的每个正沿发生。

  • 第一个 D 触发器的串行输入获得第三个触发器的先前补码输出。因此,第一个 D 触发器的当前输出等于第三个触发器的先前补码输出。

  • 第一和第二个 D 触发器的先前输出右移一位。这意味着,第二和第三个 D 触发器的当前输出等于第一和第二个 D 触发器的先前输出。