移位寄存器的原理
4607
随着科技的发展现在的科技产物越来越多。很多出现在我们生活中,而我们却不知道,有没有这样一种经历就是有一天你不小心把自己的高端产品摔坏了,出现很多很小的 机械 零件却不知道它的功能和名称呢?有的时候你甚至不在意这个。现在小编大家知道移位 寄存器 吗?
移位寄存器的原理
移位寄存器不仅能寄存数据,而且在 时钟 信号的最用下使它其中的数据依次左移或者右移。
四位移位寄存器的原理:F0、F1、F2、F3是四个边沿触发的 触发器 D,每一个触发器的输出端Q接到右边一个触发器的输入端D。因为从时钟的信号CP的上升沿加到触发器上开始到输出端新状态稳定地建立起来有一段延迟的时间,所以当时钟信号同时加到四个触发器上的时候,每个触发器接受的都是左边一个触发器中原来的而数据(F0接收的输入数据D1)。寄存器中的数据依次右移一位。
移位寄存器按照不同的分类方法可以分为不同的类型。 如果按照移位寄存器的移位方向来进行分类, 可以分为左移移位寄存器、移位寄存器和双向移位寄存器等;如果按照工作方式来分类,可以分为串入/串出移位寄存器、串入/并出移位寄存器和并入/串出移位寄存器等。
移位寄存器能将所储存的数据逐位向左或向右移动,以达到 计算机 运行过程中所需的功能,请看图
启动时,先在清零端加清零脉冲,使触发器输出置0。然后,第一个数据D0加到触发器1的串行输入端,在第一个CLK脉冲的上升沿Q0=Q0,Q1=Q2。Q3=Q0。其后,第二个数据D1加到串行输入端,在第二个CLK脉冲到达时,Q0=Q1,Q1=Q0,Q2=Q3=0。以此类推,当第四个CLK来到之后,各输出端分别是Q0=Q3,Q1=Q2,Q2=Q1,Q3=Q0。输出数据可用串行的形式取出,也可用并行开式取出。
移位寄存器的工作原理是什么?
把若干个触发器串接起来,就可以构成一个移位寄存器。由4个边沿D 触发器构成的4位移位寄存器逻辑 电路 如图8.8.1所示。数据从串行输入端D1输入。左边触发器的输出作为右邻触发器的数据输入。假设移位寄存器的初始状态为0000,现将数码D3D2D1D0(1101)从高位(D3)至低位依次送到D1端,经过第一个时钟脉冲后,Q0=D3。由于跟随数码D3后面的数码是D2,则经过第二个时钟脉冲后,触发器FF0的状态移入触发器FF1,而FF0变为新的状态,即Q1=D3,Q0=D2。依此类推,可得4位右向移位寄存器的状态, 如表8.8.1所示。
由表可知,输入数码依次地由低位触发器移到高位触发器,作右向移动。经过4个时钟脉冲后,4个触发器的输出状态Q3Q2Q1Q0与输入数码D3D2D1D0相对应。为了加深理解,在图8.8.2中画出了数码1101(相当于D3=1,D2=1,D1=0 ,D0=1)在寄存器中移位的波形,经过了4个时钟脉冲后,1101出现在寄存器的输出端Q3Q2Q1Q0。这样,就可将串行输入(从D1端输入)的数码转换为并行输出(从Q3、Q2、Q1、Q0端输出)的数码。这种转换方式特别适用于将接收到的串行输入信号转换为并行输出信号,以便于打印或由计算机处理。
在图8.8.3中还画出了第5到第8个时钟脉冲作用下,输入数码在寄存器中移位的波形(如图8.8.2所示)。由图可见,在第8个时钟脉冲作用后,数码从Q3端已全部移出寄存器。这说明存入该寄存器中的数码也可以从Q端串行输出。根据需要,可用更多的触发器组成多位移位寄存器。
除了用边沿D 触发器外,还可用其他类型的触发器来组成移位寄存器,例如,用主从JK 触发器来组成移位寄存器,其级间连接方式如图8.8.3所示。根据JK触发器的特征方程,由图8.8.3可得:
FF2和FF3的接法与FF1完全相似,所以各JK 触发器均以D 触发器的功能工作,图8.8.3和图8.8.1所示电路具有相同的功能。
双向移位寄存器:
若将图8.8.1所示电路中各触发器间的连接顺序调换一下,让右边触发器的输出作为左邻触发器的数据输入,则可构成左向移位寄存器。若再增添一些控制门,则可构成既能右移(由低位向高位)、又能左移(由高位至低位)的双向移位寄存器。图8.8.4是双向移位寄存器的一种方案,它是利用边沿D 触发器组成的,每个触发器的数据输入端D 同与或非门组成的转换控制门相连,移位方向取决于移位控制端S的状态。
当S=1时,D0=DSR,D1=Q0,即FF0的D0端与右移串行输入端DSR接通,FF1的D1端与Q0接通,在时钟脉冲CP 作用下,由DSR端输入的数据将作右向移位;反之,当S=0时,D0=Q1 ,D1=Q2,在时钟脉冲CP作用下,Q2、 Q1的状态将作左向移位。同理,可以分析其他两位触发器间的移位情况。由此可见,图8.8.4所示寄存器可作双向移位。当S=1时,数据作右向移位;当S=0时,数据作左向移位。可实现串行输入——串行输出(由DOR 或DOL 输出)、串行输入――并行输出工作方式(由Q3~Q0 输出)。
有时要求在移位过程中数据不要丢失,仍然保持在寄存器中。只要将移位寄存器的最高位的输出接至最低位的输入端,或将最低位的输出接至最高位的输入端。这种移位寄存器称为循环移位寄存器,它也可以作为计数器用,称为环行计数器。
移位寄存器工作原理
移位寄存器不仅能够寄存数码,而且具有移位功能。移位是数字系统和计算机技术中非常重要的一个功能。如二进制数0101乘以2的运算,可以通过将0101左移一位实现;而除以2的运算则可通过右移一位实现。
移位寄存器的种类很多,有左移寄存器、右移寄存器、双向移位寄存器和循环移位寄存器等。
图9-14所示是由四个触发器组成的四位左移寄存器。数码从第一个触发器的端串行输入,使用前先用将各触发器清零。现将数码 1101从高位到低位依次送到端。
图9-14 由触发器组成的四位左移寄存器
表9-6 四位左移寄存器状态表
第一个CP过后,=d3=1,其他触发器输出状态仍为0,即=000,d3= 0001。第二个CP过后,=d2=1,=d3=1,而==0。经过四个CP脉冲后,=d3d2d1d0=1101,存数结束。各输出端状态如表9-6所示。如果继续送四个移位脉冲,就可以使寄存的这四位数码1101逐位从端输出,这种取数方式为串行输出方式。直接从 取数为并行输出方式。