Post on 03-Jan-2016
description
1
时序逻辑电路分析与设计 (III)
孙卫强
sunwq@sjtu.edu.cn 2/34
内容提要 时序逻辑电路的分类 时序电路的分析方法
同步时序电路的分析方法 异步时序电路的分析方法
常用的时序逻辑电路 计数器 寄存器和移位寄存器 序列脉冲发生器 序列信号发生器
时序逻辑电路的设计方法 同步时序电路设计 异步时序电路设计
sunwq@sjtu.edu.cn 3/34
寄存器 (Register) 寄存器用来存储数据
是对触发器存储功能的扩展 每一个 bit 用一个触发器来存储,最常用的是 D
触发器 将多个触发器按照一定方式连接,可以构成各
种结构的寄存器 寄存器的存储容量 (Storage Capacity) 为寄存
器所能存储 bit 的数目,实际也就是寄存器中所包含的触发器的数目
sunwq@sjtu.edu.cn 4/34
寄存器
简单四位寄存器74LS75
带异步复位的四位寄存器74LS175
带异步复位和输入使能的四位寄存器 CC4076
与或门 三态门
sunwq@sjtu.edu.cn 5/34
移位寄存器 在时钟信号作用下,可以将数据向左或者向
右移位
串行输入 / 右移 / 串行输出
输入 输出
串行输入 / 左移 / 串行输出
输出 输入
循环右移
循环左移
输入
输出串行输入 / 并行输出
输入
输出
并行输入 / 串行输出
输入
输出
并行输入 / 并行输出
sunwq@sjtu.edu.cn 6/34
串行输入 / 串行输出寄存器例: DI 输入 1011 ,并且寄存器初始状态为所有触发器都在 reset 状态
0 0 0 0
0 0 0 0
sunwq@sjtu.edu.cn 7/34
串行输入 / 串行输出寄存器
第一个时钟周期,第一个输入’ 1’ 进入 FF0
例: DI 输入 1011 ,并且寄存器初始状态为所有触发器都在 reset 状态
1 0 0 0
0 0 0 0
1 0 0 0
sunwq@sjtu.edu.cn 8/34
串行输入 / 串行输出寄存器
第二个时钟周期,第二个输入’ 0’ 进入 FF0 ,而前一个周期输入的’ 1’进入 FF1
例: DI 输入 1011 ,并且寄存器初始状态为所有触发器都在 reset 状态
0 1 0 0
0 0 0 0
1 0 0 0
0 1 0 0
sunwq@sjtu.edu.cn 9/34
串行输入 / 串行输出寄存器
第三个时钟周期,第三个输入’ 1’ 进入 FF0 ,后级继续往右移
例: DI 输入 1011 ,并且寄存器初始状态为所有触发器都在 reset 状态
1 0 1 0
0 0 0 0
1 0 0 0
0 1 0 0
1 0 1 0
sunwq@sjtu.edu.cn 10/34
串行输入 / 串行输出寄存器
第四个时钟周期,第四个输入’ 1’ 进入 FF0 ,后级继续往右移,并从 Do 输出 1
例: DI 输入 1011 ,并且寄存器初始状态为所有触发器都在 reset 状态
1 1 0 1
0 0 0 0
1 0 0 0
0 1 0 0
1 0 1 0
1 1 0 1
sunwq@sjtu.edu.cn 11/34
串行输入 / 串行输出寄存器
第 1 个时钟周期
第 2 个时钟周期
第 3 个时钟周期
第 4 个时钟周期
Q0 Q1 Q2 Q3
0 0 0 0
1 0 0 0
0 1 0 0
1 0 1 0
1 1 0 1
sunwq@sjtu.edu.cn 12/34
串行输入 / 并行输出寄存器
Q0 Q1 Q2 Q3
0 0 0 0
1 0 0 0
0 1 0 0
1 0 1 0
1 1 0 1
第 1 个时钟周期
第 2 个时钟周期
第 3 个时钟周期
第 4 个时钟周期
如果 DI 端输入 1011 ,那么 FF0-FF3 中的存储的内容为:
这个电路有何作用? 可以实现串并转换!
寄存器中的初始值:
sunwq@sjtu.edu.cn 13/34
8 位串行输入 / 并行输出寄存器 74HC164
sunwq@sjtu.edu.cn 14/34
移位寄存器 在时钟信号作用下,可以将数据向左或者向
右移位
串行输入 / 右移 / 串行输出
输入 输出
串行输入 / 左移 / 串行输出
输出 输入
循环右移
循环左移
输入
输出串行输入 / 并行输出
输入
输出
并行输入 / 串行输出
输入
输出
并行输入 / 并行输出
sunwq@sjtu.edu.cn 15/34
8 位并行输入 / 串行输出寄存器 74HC165
D0~D7 :异步并行输入Ds :串行输入CE :芯片使能 , Chip EnablePL :并行输入使能 ,Parallel Load
sunwq@sjtu.edu.cn 16/34
移位寄存器 在时钟信号作用下,可以将数据向左或者向
右移位
串行输入 / 右移 / 串行输出
输入 输出
串行输入 / 左移 / 串行输出
输出 输入
循环右移
循环左移
输入
输出串行输入 / 并行输出
输入
输出
并行输入 / 串行输出
输入
输出
并行输入 / 并行输出
sunwq@sjtu.edu.cn 17/34
四位并行输入 / 并行输出移位寄存器 (74HC195)
PE: Parallel EnableMR: Master Reset
与或逻辑
sunwq@sjtu.edu.cn 18/34
与或逻辑加法 / 减法计数器
由 输入来控制计数器向上 / 向下计数,即加法 / 减法计数。
sunwq@sjtu.edu.cn 19/34
四位并行输入 / 并行输出移位寄存器 (74HC195)
PE: Parallel EnableMR: Master Reset
与或逻辑
sunwq@sjtu.edu.cn 20/34
四位并行输入 / 并行输出移位寄存器(74HC195)
PE: Parallel EnableMR: Master Reset
当 PE=0 时,并行输入功能使能
1 1 1 1
0
sunwq@sjtu.edu.cn 21/34
四位并行输入 / 并行输出移位寄存器 (74HC195)
PE: Parallel EnableMR: Master Reset
当 PE=1 时,串行输入 / 移位使能
D=JQ’+K’Q
1
0
1
sunwq@sjtu.edu.cn 22/34
四位并行输入 / 并行输出移位寄存器 (74HC195)
PE: Parallel EnableMR: Master Reset
当 PE=1 时,串行输入 / 移位使能
1
0
1 1 1
sunwq@sjtu.edu.cn 23/34
移位寄存器 在时钟信号作用下,可以将数据向左或者向
右移位
串行输入 / 右移 / 串行输出
输入 输出
串行输入 / 左移 / 串行输出
输出 输入
循环右移
循环左移
输入
输出串行输入 / 并行输出
输入
输出
并行输入 / 串行输出
输入
输出
并行输入 / 并行输出
sunwq@sjtu.edu.cn 24/34
双向万能移位寄存器 74LS194
G1 G2 G3 G4
S1
S0
D0
G1=s0s1’DSR
G2=s0s1D0
G3=s0’s1Q1
G4=s0’s1’Q0
D1 D2 D3
DSR
DSL
Q0 Q1 Q2 Q3
sunwq@sjtu.edu.cn 25/34
双向万能移位寄存器 74LS194 S0,S1: 工作模式选择
S1S0 = 00 ,保持 S1S0 = 01 ,右移 S1S0 = 10 ,左移 S1S0 = 11 ,并行输入
CLEAR: 清零,低电平时所有触发器复位 DSR :右移串行输入 DSL :左移串行输入
sunwq@sjtu.edu.cn 26/34
双向万能移位寄存器74LS194 的级联
d0 d1 d2 d3
0
1
sunwq@sjtu.edu.cn 27/34
74LS194 的应用举例
红框中的部分是由 74194 构成的 8bit 移位寄存器
sunwq@sjtu.edu.cn 28/34
74LS194 的应用举例
红框中的部分是由两片 4 位加法器构成的 8 位加法器
sunwq@sjtu.edu.cn 29/34
74LS194 的应用举例
第一个时钟周期 :S1S0=11 ,数据被装载
m0 m1 m2 m3
n0 n1 n2 n3 0 0 0 0
0 0 0 0
y7…y0=M+N
S1S0 = 00 ,保持S1S0 = 01 ,右移S1S0 = 10 ,左移S1S0 = 11 ,并行输入
sunwq@sjtu.edu.cn 30/34
74LS194 的应用举例
第二个时钟周期 :S1S0=01 ,数据 M,N 右移
m0 m1 m2 m3
n0 n1 n2 n3 0 0 00
0 0 00
y7…y0=2M+2N
S1S0 = 00 ,保持S1S0 = 01 ,右移S1S0 = 10 ,左移S1S0 = 11 ,并行输入
sunwq@sjtu.edu.cn 31/34
74LS194 的应用举例
第三个时钟周期 :S1S0=01 ,数据 M,N 右移
m0 m1 m2 m3
n0 n1 n2 n3 0 0 00
0 0 00
y7…y0=4M+2N
S1S0 = 00 ,保持S1S0 = 01 ,右移S1S0 = 10 ,左移S1S0 = 11 ,并行输入
sunwq@sjtu.edu.cn 32/34
74LS194 的应用举例
第四个时钟周期 :S1S0=01 ,数据 M,N 右移
m0 m1 m2 m3
n0 n1 n2 n3 0 0 00
0 0 00
y7…y0=8M+2N
S1S0 = 00 ,保持S1S0 = 01 ,右移S1S0 = 10 ,左移S1S0 = 11 ,并行输入
sunwq@sjtu.edu.cn 33/34
移位寄存器的逻辑符号
8bit 串进 / 串出移位寄存器SRG8: 8bit Shift Register
4bit 串进 / 并出移位寄存器
8bit 串进 / 并出移位寄存器 74HC1648bit 并进并行装载移位寄存器 74HC165
sunwq@sjtu.edu.cn 34/34
移位寄存器的逻辑符号
4bit 并行访问移位寄存器 74LS195A 4bit 双向万能移位寄存器 74HC194(Parallel Access) (Bidirectional Universal)
sunwq@sjtu.edu.cn 35/34
移位寄存器的应用(1) 移位寄存器用来产生延时 (Delay)
数据经过移存器后经过 8 个时钟周期出现在 Q7 输出端口如果输入时钟是 1MHz :那么 Q7 的输出比输入延迟了 8×10-6s ,即 8us
sunwq@sjtu.edu.cn 36/34
移位寄存器的应用(2) 用移位寄存器实现串并转换电路(简化的示意图)
从数据中恢复出时钟信号
每 8 个时钟周期输出移位寄存器的并行输出数据变化一次。
sunwq@sjtu.edu.cn 37/34
移位寄存器 在时钟信号作用下,可以将数据向左或者向
右移位
串行输入 / 右移 / 串行输出
输入 输出
串行输入 / 左移 / 串行输出
输出 输入
循环右移
循环左移
输入
输出串行输入 / 并行输出
输入
输出
并行输入 / 串行输出
输入
输出
并行输入 / 并行输出