6.4 寄存器和移位寄存器一?寄存器寄存器常用于寄存一组二值代码,它被广泛地用于各类数字系统和数字计算机。
从广义上说寄存器也是一种存储器,但是它又不同于第九章介绍的半导体存储器。
寄存器的特点,
存数方便,但容量小,一般只能存放一个或几个字,通常用来 暂存运算的中间结果,而且一旦掉电,
存放的数据即丢失。
存储器的存储容量较大,可达数十千位,
而且可以使所存数据长期保存。 (注意,寄存器和存储器之间的区别 )
由第五章我们知道,一个 FF能储存一位二值代码,所以用 N个 FF组成的寄存器能储存一组 N
位的二值代码。
对于寄存器中的触发器,我们只要求它们具有置 1?置 0的功能即可,因而无论是用同步
RSFF,还是用主从结构或边沿结构的 FF,都可以组成寄存器,但用 DFF最为方便 。
1,寄存单元 (一位数码寄存器 )
寄存单元由一级触发器构成。它有着两种接受方式,即,双拍接收 和 单拍接收 。
( 1)双拍接收由一位基本 RSFF构成的寄存器单元。
特点,电路简单,
使用不便。
因此,
每次存数之前 必须先清,0”,然后当存数指令脉冲到达时,FF的状态 Q才能与所存数据 D一致。
由四位基本 RSFF构成的寄存器单元。
并行输出并行输入
① 清 0
R S R S R SR S
& & &
Q3 Q2 Q1 Q0
D0D1D2D3
&
0 0 0 0
1 0 1 1
② 存数指令
0 1 0 0
( 2)单拍接收由 DFF构成的单拍接收的寄存单元。其数据 D加在激励端,存数指令加在 CP端,只要 CP的上升沿一到,数据不管为 0或 1都立即被放入 FF。
则在存数之前就不必先清,0”,只要存数指令一到,所加数据便可存入 FF。
由四位 DFF构成的寄存器单元。
存数
1 0 1 1
1 0 1 1
C1 1D
Q3 Q2 Q1 Q0
D0D1D2D3
C1 1D C1 1D C1 1D
2,MSI寄存器
(1)电路结构 (典型芯片为 74175 四位寄存器 )
图 6.4.2 4位 MSI 寄存器 74175
结构特点,
1)各 FF之间没有连接,独立工作。
3)有 Q和 Q输出端。
2) CP=CP1=CP2 =CP3 =CP4(同步存数)。
四位集成寄存器 74175是常用的 MSI寄存器,
是较为典型的逻辑暂存部件,其结构简单,但应用广泛,可用来构成 缓冲 或 暂存寄存器?移位寄存器 和图形发生器 等。
( 2)功能 (插入功能表 6.4.1)
74175芯片除了功能表所示的 清除?送数 和 保持之外,还可以实现 移位功能 。
实现的方法 是将 D0作为串行数据输入端,并将
Q0接 D1,Q1接 D2,Q2接 D3。此时,寄存器成 串入 — 串出的右移寄存器。
同理,也可接成 串入 — 串出 的左移寄存器。
入出
( 3)工作原理当 CP↑时,D0 ~ D3同时并行输入到 FF的 Q
端,使得 Q0 ~ Q3= D0 ~ D3。对于这种输入 /输出方式,我们常称为,并行输入 /并行输出 方式。
强调:
① 内部结构作为了解,而掌握器件的功能是 重点 。
② 74175芯片为( ↑)上升沿触发。
二?移位寄存器 (移存器)
1,概述除了具有暂存数码的功能之外,还具有移位功能的逻辑部件称为 移位寄存器,简称,移存器 。
所谓 移位功能,就是存在寄存器中的数码可以在移位脉冲 (即,CP) 的作用下,逐次转移到相邻的触发器中。
移存器是在寄存器的基础上发展起来的。 两者在结构上的区别为:
1)寄存器中的各级 FF在电路上 互相独立 。各个 FF
的输入数据都来自电路外部。 (典型芯片为 74175)
2)移存器中的各级 FF在电路上有联系,
除第一级外的各级 FF的数据输入端均连接相邻
FF的输出端。
( 1) 功能暂存数据,移位数据。
强调,移存器中所使用的 FF必须是无空翻的 FF。否则工作时会出现逻辑错误。
( 2)分类
1)按移位方向分类单向 移位寄存器 和 双向 移位寄存器。
(2)分类
1)按移位方向分类单向 移位寄存器 和 双向 移位寄存器。
寄存器左移
(a)
寄存器右移
(b)
寄存器双向移位
(c)
根据移位数据的输入-输出方式,又可将它分为四种:
串行输入-串行输出
串行输入-并行输出
并行输入-串行输出
并行输入-并行输出:
FF FF FF FF
FF FF FF FF
FF FF FF FF
FF FF FF FF
串入-串出串入-并出并入-串出并入-并出
2)按输入 /输出方式进行分类
1D
C1
R
1D
C1
1D
C1
FF0 FF2FF1
CP
1D
C1
FF3
R R R
Q1
DI
Q2 Q3
Do
清 0
Q0
用 D触发器构成的移位寄存器例 6.4.1 四位串入并出右移移存器。
串行输入串行输出并行输出
0 0 00
例一,4位串入 — 并出左移移存器
( 1)结构特点:
由 4个 DFF串接而成,即,Di+1=Qin,数据从 D0
端输入。 CP1=CP2= CP3=CP4=CP(同步 ),在 CP↑
时,进行串入和移位。
D0 = D外 ; Di+1 = Qi,i=0,1,2,…,n-2
( 2)工作状态转移表
1 1 10
例二:图 6.4.4四位并入 — 串出左移移存器
( 1)结构分析
1)由四个 DFF组成;
2) FF的次态方程为:
(2)工作原理据 D0D1D2D3的并入;
,在 CP↑的作用下可实现数在 CP↑的作用下可实现左移。
D3
D2
D1
D0
三?MSI移位寄存器 (典型芯片,74194重点掌握 )
1,四位串入?并入 — 串出?并出双向移存器注意,左移?右移的说法。
右移,Q0→ Q3( 0 to 3的移位);
左移,Q0← Q3 ( 3 downto 0的移位)。
2,功能表
3,应用
(1) 74194的扩展
① 结构,(1)片,Q3接 (2)片的 DSR,即,DSR(2)= Q3(1)。
(2)片,Q0接 (1)片的 DSL,即,DSL(1)= Q0(2)。
(1)片?(2)片的 M0=M0,M1=M1,CP=CP,
这样就构成了八位双向移存器。
② 功能当 M0M1= 00 时,执行保持操作;
当 M0M1= 01 时,执行左移操作;
当 M0M1= 10 时,执行右移操作;
当 M0M1= 11 时,执行并入操作;
右移:串行信号从 (1)片的 DSR端输入;
左移:串行信号从 (2)片的 DSL端输入。
在计算机通信中,一般人们把 8位二进制划分为一个字节,从发送机发送数据时,通常是以串出的形式,
一个码一个码地发送 (即,并入 — 串出 ),对于接收机上的 CPU来讲,它有一个控制信号告诉接收机的计算机数据还没有到齐,请计算机等待。
( 2)实现数据转换当接收机收到的数满了,就将告诉计算机,
它可以取数了。那么,通知计算机可以取数的信息,
就是通过一位标志位来进行的。当标志位 =0时,通知计算机可以取数。在图 6.4.7中 D1=0就是作为标志位 。
1) 串行 → 并行 (接收机)
Q0′ … Q6′,并行数据输出端
D1:取 0,作为标志码工作过程:
清 0 置数 右移 读取
M0M1=11 M0M1=10 M0M1=11
并行取数电路,
并行接收和取数电路
1 0
0
1
并行接收和取数电路
0 1
1
RD
RC
1CP 2 3 4 5 6 7 8
Q7′
并行接收电路的波形图:
取数置数讨论:
教科书 150页 图 6.4.5 (a)图第一级,
当 M0 =M1=1时,
当 M0 =1,M1=0时,
这一项起作用这一项起作用丢失讨论,
当 M0 =M1=1时,S0中起作用的是 D0,DSR不起作用。
当 M0 =1,M1=0时,S0中起作用的是 DSR,D0不起作用。
所以,如果 D0接,0”,DSR接,信号会丢失。
丢失 结论,DSR 和 D0要接在一起,才不会丢失 信号。
6.4 试画出用 MSI移存器 74194构成 8位串行?并行码的转换电路(用 3片 74194或 2片 74194和一个 D
触发器)。
解,1)用 3片 74194:
2)用 2片 74194和一个 D触发器
1
方法一:
方法一存在的问题:输出少了 D0’。
1
方法二:用 2片 74194和一个 D触发器方法三:触发器输出作 Q4’
2) 并行 → 串行 (发送机)
(2)片的 Q3:串行数据输出端
D0:取 0,作为标志码工作过程,
启动 置数 右移
M0M1=10 M0M1=11
结束
M0M1=11
强调,启动信号启动:使 M0=M1=1,准备并入。
1 2 3 4 5 6
A
B
C
D
654321
D
C
B
A
T i t l e
N u m b e rR e v i s i o nS i z e
B
D a t e,1 0 - M a y - 2 0 0 2S h e e t o f
F i l e,C,\ M y D o c u m e n t s \ p r o t e l 文件 \ l i b 1,d d bD r a w n B y,
0
D'
CR
CP
D
DDDD
D
0
M
M
QQQQ
SR
123
SL
0
1
3210
74194
CR
CP
D
DDDD
D
0
M
M
QQQQ
SR
123
SL
0
1
3210
74194
1
( 1 )
( 2 )
1
D'
2
D'
3
D'
4
D'
5
D'
6
D'
启动串行输出
&
&
1D
C1
D'
7
1
CP
Q 0 '
Q 1 'Q 2 'Q 3 'Q 4 '
Q 5 'Q 6 'Q 7 'Q 8 '6.5 在下图基础上增加一片 74194或 DFF构成 8位并行
串行码的转换电路。
1
1 1 1
1 2 3 4 5 6
A
B
C
D
654321
D
C
B
A
T i t l e
N u m b e rR e v i s i o nS i z e
B
D a t e,1 0 - M a y - 2 0 0 2S h e e t o f
F i l e,C,\ M y D o c u m e n t s \ p r o t e l 文件 \ l i b 1,d d bD r a w n B y,
0
D'
CR
CP
D
DDDD
D
0
M
M
QQQQ
SR
123
SL
0
1
3210
74194
CR
CP
D
DDDD
D
0
M
M
QQQQ
SR
123
SL
0
1
3210
74194
1
( 1 )
( 2 )
1
D'
2
D'
3
D'
4
D'
5
D'
6
D'
启动串行输出
&
&
1D
C1
D'
7
1
CP
Q 0 '
Q 1 'Q 2 'Q 3 'Q 4 '
Q 5 'Q 6 'Q 7 'Q 8 '6.5 在下图基础上增加一片 74194或 DFF构成 8位并行
串行码的转换电路。
0
0 0 00
1
启动串行输出在下图基础上增加一片 或 位并行串行码的转换电路。
0
1
0
1
1
6.5 在下图基础上增加一片 74194或 DFF构成 8位并行
串行码的转换电路。
在下图基础上增加一片 或 位并行串行码的转换电路。
1
1
四?四位右移移存器 (典型芯片 74195)
1,结构强调,为双端的串行输入端,作右移操作时,第一级 FF的状态 Q0n+1由 和 Q0n决定。
五?串入?并入 /串出八位右移移存器 74165
( 1)结构
74165移存器与前面所讲的移存器的 主要不同点是增加了一个时钟禁止端 CLKINHIBIT。
当 CLKINHIBIT=1时,CLK不起作用。
当 CLKINHIBIT=0时,CLK才起作用。
Q0 ~ Q6是内部输出,Q7才是电路的输出端。
作业,6.4,6.5 (提示在前面加一个 DFF)
6.22(a)
6.8分析图 P6.8电路,画出其全状态转移图并说明能否自启动。
1 2 3 4 5 6
A
B
C
D
654321
D
C
B
A
T i t l e
N u m b e r R e vi s i o nS i z e
B
D a t e,1 3- A p r - 20 02 S he e t o f
F i l e,E,\ D e s i gn E xp l o r e r 9 9 S E \ L i br a r y \ Y a n gH e ng X i n \ M y D e s i g n,d dbD r a w n B y,
1J
C1
1K
1J
C1
1K
1J
C1
1K
CP
Q
Q Q
1
2 3
图 P 6.8
解,(1)分析电路结构
(2)写出四组方程
① 时钟方程
② 各触发器的激励方程
③ 各触发器的次态方程
CP1 = CP2 = CP; CP3 = Q1
K2 = 1
J1 = 1 ;
Q2nK3 = J3 = 1 ;
Q3nJ2 = ;
Q2nK1 =
④ 电路的输出方程
Qn+1=[ Qn + ]· Q13 3 2Qn
Qn+1=[ Qn ]· CP2 3 2Qn
Qn+1=[ Qn + ]· CP1 1 2Qn
(3)作状态转移表、状态转移图
(4)电路的逻辑功能描述模 M=5的计数器,具备自启动性。
Q3 Q2 Q1 CP1(CP)↓CP2(CP)↓CP3(Q1)↓
0 0 0 0 0 0
0 1 1 1 1 0
0 0 1 1 1 0
1 1 0 1 1 1
1 0 1 1 1 0
0 0 0 1 1 1
0 1 0 0 0 0
0 0 1 1 1 0
1 0 0 0 0 0
1 0 1 1 1 0
1 1 1 0 0 0
1 0 1 1 1 0
图 P6.8的 状态转移表
Q3Q2Q1
图 P6.8的 状态转移图
000
偏离状态有效循环
011 001
110101 010
100 111