在数字电子学中,移位寄存器是一种时序逻辑电路,它可以临时存储数据,并为每个时钟脉冲向其输出设备提供数据传输。它们能够在串行和并行模式下向右或向左传输/移位数据。根据输入/输出操作的模式,移位寄存器可以用作串入并出移位寄存器、串入串输出移位寄存器、并入并输出移位寄存器和并入并出寄存器。基于对数据的移位,有通用移位寄存器和双向移位寄存器。以下是对通用移位寄存器的完整描述。


什么是通用移位寄存器?

定义:可以存储数据和/或将数据与并行负载能力一起向右和向左移位的寄存器被称为通用移位寄存器。它可以用于在串行和并行模式下执行输入/输出操作。将单向移位寄存器和双向移位寄存器组合在一起,得到通用移位寄存器的设计。它也被称为并行输入并行输出移位寄存器或具有并行负载的移位寄存器。

通用移位寄存器能够执行下面列出的3个操作。

  • 并行负载操作-并行存储数据以及并行存储数据
  • 左移操作-存储数据并传输串行路径中向左移动的数据
  • 右移操作-存储数据并通过在串行路径中向右移位来传输数据。

因此,通用移位寄存器可以利用串行和并行负载执行输入/输出操作。

通用移位寄存器图

4位通用移位寄存器示意图如下所示。

ding="async" class="size-full wp-image-39407" src="https://uploads.9icnet.com/images/aritcle/20230518/Universal-Shift-Register-Diagram.jpg" alt="Universal Shift Register Diagram" width="421" height="511" sizes="(max-width: 421px) 100vw, 421px">
通用移位寄存器图
  • 用于右移控制的串行输入允许向右传输数据,并且所有串行输入和输出线路都连接到右移模式。该输入通过串行输入引脚提供给触发器-1的AND门-1,如图所示。
  • 左移的串行输入允许向左传输数据,并且所有串行输入和输出线都连接到左移模式。
  • 在并行数据传输中,所有并行输入和输出线都与并行负载相关联。
  • 清除引脚清除寄存器并设置为0。
  • CLK引脚提供时钟脉冲以同步所有操作。
  • 在控制状态下,即使施加时钟脉冲,寄存器中的信息或数据也不会改变。
  • 如果寄存器以并行负载操作,并将数据左右移位,那么它就充当了通用移位寄存器。

通用移位寄存器的设计

使用多路复用器和触发器的4位通用移位寄存器的设计如下所示。

Universal Shift Register Design
通用移位寄存器设计
  • S0和S1是被选择的引脚,用于选择该寄存器的操作模式。它可以是左移操作或右移操作或并联模式。
  • 第一个4×1多路复用器的引脚0被馈送到第一个触发器的输出引脚。观察如图所示的连接。
  • 第一个4X1 MUX的引脚1连接到用于向右移位的串行输入。在这种模式下,寄存器将数据向右移动。
  • 类似地,4X1 MUX的引脚2连接到向左移位的串行输入。在这种模式下,通用移位寄存器将数据向左移位。
  • M1是提供给第一个4×1 MUX的引脚3的并行输入数据,以提供并行模式操作,并将数据存储到寄存器中。
  • 类似地,剩余的单个并行输入数据位被提供给相关4X1MUX的引脚3,以提供并行加载。
  • F1、F2、F3和F4是与4×1 MUX相关联的触发器的并行输出。

通用移位寄存器工作

  • 从上图中,所选引脚为通用移位寄存器的操作模式。串行输入将数据左右移位,并将数据存储在寄存器中。
  • 清除引脚和CLK引脚连接到触发器。
  • M0、M1、M2、M3是并行输入,而F0、F1、F2、F3是触发器的并行输出
  • 当输入引脚为活动HIGH时,通用移位寄存器并行加载/检索数据。在这种情况下,输入引脚直接连接到4×1 MUX
  • 当输入引脚(模式)为低电平时,通用移位寄存器对数据进行移位。在这种情况下,输入引脚通过非门连接到4×1 MUX。
  • 当输入引脚(模式)连接到GND(接地)时,通用移位寄存器充当双向移位寄存器。
  • 为了执行向右移位操作,输入引脚通过向右移位的串行输入被馈送到第一个触发器的第一个与门。
  • 为了执行向左移位操作,输入引脚通过输入M被馈送到最后一个触发器的第8个AND门。
  • 如果所选引脚S0=0和S1=0,则该寄存器不在任何模式下操作。这意味着即使施加了时钟脉冲,它也将处于锁定状态或无变化状态。
  • 如果所选引脚S0=0和S1=1,则该寄存器向左传输或移位数据并存储数据。
  • 如果选择的引脚S0=1和S1=0,则该寄存器将数据向右移位,从而执行向右移位操作。
  • 如果所选引脚S0=1和S1=1,则该寄存器并行加载数据。因此,它执行并行加载操作并存储数据。

S0

S1

操作模式

0

0 锁定状态(无变化)

0

1. 向左移动
1. 0

向右移动

1. 1.

平行加载

从上表中,我们可以观察到,该寄存器在使用4×1多路复用器和触发器的串行/并行输入的所有模式下都工作。

优势

这个通用移位寄存器的优点包括以下内容。

  • 该寄存器可以执行向左移位、向右移位和并行加载等3种操作。
  • 将数据临时存储在寄存器中。
  • 它可以执行串行到并行、并行到串行、并行到并行和串行到串行操作。
  • 它可以在串行和并行两种模式下执行输入输出操作。
  • 单向移位寄存器和双向移位寄存器的组合给出了通用移位寄存器。
  • 该寄存器充当一个设备与另一个设备之间的接口,以传输数据。

应用

这个通用移位寄存器的应用包括以下内容。

  • 用于I/O扩展的微控制器
  • 用作串行到串行转换器
  • 用作并行到并行数据转换器
  • 用作串行到并行数据转换器。
  • 用于串行到串行数据传输
  • 用于并行数据传输。
  • 用作计算机等数字电子设备中的存储元件。
  • 用于延时应用
  • 用作频率计数器、二进制计数器和数字时钟
  • 用于数据处理应用程序。

因此,这一切都与通用移位寄存器有关——定义、图表、设计、工作、优点和缺点。有多种不同类型的4位寄存器,可以采用IC 74291、IC 74395等形式。这里有一个问题要问你,“双向通用移位寄存器的工作原理是什么?”