_时序逻辑与FSM__00(PDF精品)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ü 广泛用于计算机或数字系统的输入缓冲电路 ü 将输入信号暂时寄存,等待处理
ü 一方面因为计算机或数字系统的操作都是有序进 行的,通常不可能信号一到即刻处理
ü 另一方面,可防止输入信号的各个位到达时间不 一致造成竞争与险象
41
基本时序逻辑单元-触发器
l Ref.1/6.1 l 双稳态单元-触发器的基本结构,已介绍 l 锁存器Latches l 触发器Flip-Flops
◆状态 ——系统的基本数学特征 ◆状态机 —— 一个离散数学模型
给定一个输入集合,根据对输入的接收 次序来决定一个输出集合 ◆有限状态机 —— 输入集合和输出集合 都是有限的,且状态数目是有限的
23
有限状态机
l 在计算机科学与工程中,有限状态机是最常使用 的设计模型
l 模型包括 l 状态集合 l 状态转移集合 l 关联于状态的操作集合 l 关联于转移的操作集合 l 同时关联于状态和转移的操作集合
l C L K A 和 C L K B 之 间 时 钟 频 率 不 一 样 , 或 者 虽 然 频 率 相同,但存在相位差 l DA被CLKB这个时钟域认为是异步的输入信号
D
DA D DB
D DFF
DFF
CLKA
CLKB
14
亚稳态Metastability
l 在时钟的上升沿,CLKB采样DA,而此时DA正 在发生变化,则DB的输出是亚稳态的,其值可 能为1,也可能为0,不确定
12
时钟域Clock Domain
l 逻辑单元由不同来源的多个时钟驱动 l 这些时钟称作时钟域
Clock Domain1
Clock Domain2
13
跨时钟域
l 如 果 在 两 个 不 同 的 时 钟 域 之 间 传 递 数 据 , 存 在 跨时钟域(clock domain crossing, CDC)问题
4
典型的时序逻辑电路
5
FSMD模型
27
基本时序逻辑单元-触发器
l Ref.1/6.1 l 双稳态单元-触发器的基本结构,已介绍 l 锁存器Latches l 触发器Flip-Flops
l 主从触发器 l 边沿触发器
28
锁存器和触发器的定义
l John F.Wakerly, Digital Design- Theory and Practice《数字设计--原理和实践》
去,有时停留在状态01,有时停留在状态10
ü 时序逻辑电路的竞争——最终电路产生的状态与
时间相关,且不能事先预测
ü 通过约束输入取值来避免竞争条件的出现
SR=0
34
门控D锁存器
D
Enable (C)
逻辑图
DQ
DQ
C
C
Q
Q
Q
D C Q+ Q +
010 1
111 0
Q
×0Q Q
功能表
逻辑符号
35
锁存器的时间参数
l 一个时钟域就是所有同步于同一个时钟信号的信号集合 l 同一个时钟域中的信号只能由同一个时钟的时钟沿 (上升沿或下降沿)来触发,在时隙内,所有的信号 不会发生变化
11
信号与时钟同步分类
分类 同步
周期性 Δφ
是
0
亚同步 是
φc
准同步 是
可变
周期性 是
异步 无 无时钟 无
Δf 0 0
fd < ε
l 存0/复位/清零
l 1状态/置位 Q =1,Q = 0
l 存1/置位/预置
20
此电路的问题
l 如何预置初值? l 如何改变状态?
21
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
4
有限状态机
22
有限状态机(Finite State Machine)
RS 00 01 11 10 Q 0 0 1- 0 1 1 1- 0
Q+=f (R, S, Q)
Q+ = S + RQ SR=0
约束项/无关项
32
SR锁存器的理想状态图
状态图: ü 由节点和弧线组成 ü 节点代表电路的不SR=00 同状态 ü 弧线上标注了引发SR=01 状态转换的输入信 号取值
SR=10
状态
寄存 器 现态
时钟
有限状态机的分类-Moore机
l 输出只依赖于电路当前的状态,和当前输入 无关
用来产生输出的 输出 组合逻辑
用来产生次态的 组合逻辑
输入
状态 寄存 器
现态
时钟
时序逻辑设计与FSM
1
基本概念
2
基本时序逻辑单元-触发器
34
同步A时cc序om电p路lis分hm析en和ts设计方法
D
tsu th
tsu th
tsu th 足
要
C
求
Q
Q t1
t2 t3 t4 t5 t6
t7 t8
t9 t10 t11 t12 t
输 出 不 确 定
40
锁存器小结
l 可以有时钟信号作为控制端,在时钟信 号有效期间,时刻检测输入取值
l 具有透明性
l 锁存就是把信号暂存以维持某种电平状态 l 锁存器的主要作用有:
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
4
有限状态机
10
时钟域与同步
l 同步(Synchronization)包含对信号事件顺序的决定和 处理
l 讨论数据与各种时钟之间的同步问题 l 当数据与采样时钟异步时,就需要同步处理。为了确 定在一个时钟节拍上的信号值,对于信号变化就需要 决定时钟采样沿到底在信号变化之前还是之后 l 当数据同步于一个时钟源,而又要传送到另一个时钟 (不同频率)进行处理时,也需要同步处理。在这种情 况下,信号跨越了时钟域(clock domain crossing), 它必须同步于新的时钟域
Duty Cycle
Clock(C)
Period t
50%
Clock(C)
Period t
在单位时间里电压升高/下降的幅度
7
如何产生时钟信号?
l 利用反相器 l 环形振荡器
A tpd
l Ring Oscillators
1 1
1
1
1
1
0
0
0
0
0
0
B tpd
× 0 0 0 0 0 0 1 1 1 1 1
fd > ε
描述 信号与时钟同频同相位,可以用时钟信号直接对 信号取样 信号与时钟同频,但是有任意的相位差异,信号 或者时钟延时固定的相位之后,可以准确的利用 时钟对信号进行取样 信号与时钟频率接近,相位差异缓慢变化。信号 或者时钟延时可变的相位之后,可以准确地利用 时钟对信号进行取样 信号是具有任意频率的周期性信号,信号的周期 性可以用来预测何时在时钟信号的“不安全”部 分发生变化 信号在任意时刻出现。需要完全的同步器 系统没有全局的绝对时钟,整个系统只有事件传 递的先后顺序
l 特性参数
l 周期=1/频率 (Period=1/frequency)
l 从时钟的一个上升沿(从低电平到高电平)到下一个 上升沿的时间
l 占空比 duty-cycle
l 时钟信号中高电平在一个周期之内所占的时间比例
6
时钟信号(续)
任何信号都有摆率(slew rate)! 存在上升和下降时间!
QQ’
SR=01
SR=00
01
10
SR=11
SR=01 SR=10
SR=10
SR=11
SR=11
00
R
Q SR=01 SR=00 SR=00 SR=10
SR=11
S
Q’
11
33
SR锁存器的实际状态图
S=1,R=0
S=0,R=φ
S=φ,R=0
01
Q
S=0,R=1
实际上:
ü SR锁存器并没有无限地在状态00和11之间振荡下
29
SR锁存器
R
QR
Q
交
叉基 耦本 S
QS
Q
合存
逻辑图
的储
单
SQSQ元Fra bibliotek门:RQ
RQ
逻辑符号 30
NOR
SR锁存器的分析
R
QR
1
0
S
Q0
1
S: 置位端 R: 复位端
功能表
S
Q+
Q+
0
0
1
1
1
0
0 Q Q’
1
0
0
31
SR锁存器的分析
功能表
R
Q
R
S
Q+
Q+
10
0
1
01
1
0
S
Q0 0 11
Q Q’ 0 unstab0le
4
有限状态机
18
双稳态单元-基本时序单元结构
x
x Q x = 0, x =1,Q =1
y =1, y = 0,Q = 0
y
Q x =1, x = 0,Q = 0
y
y = 0, y =1,Q =1
19
状态
l 一组状态变量的取值记录电路过去的信息, 从而说明电路将来的行为
l 0状态/复位 Q = 0,Q = 1
tw(min)
输出不确定
t
37
SR锁存器的延时
S
R
tpLH Q
tpHL Q
tpHL tpLH
t
38
建立时间和保持时间
l 建立时间tsu
l 锁存操作开始之前,输入信号应保持不变的最 短时间
l 保持时间th
l 锁存操作之后,输入信号还应保持不变的最短 时间
39
门控D的建立时间和保持时间
不
满
l 锁存器在任意时刻都连续监测其输入,并改变其输出状 态,与有无时钟信号无关
l On the other hand, most digital designers use the name latch for a sequential device that watches all of its inputs continuously and changes its outputs at any time, independent of a clocking signal
l 狼羊白菜人
l 这 些 状 态 需 要 用 记 忆 元 件 ( 锁 存 器 / 触 发器)来控制和预测
l 时钟就是分布于包含记忆元件的电路中 的一个周期信号
l 保证所有的元件都能在同一时刻改变状态同步
l 不使用同一个时钟信号的电路是异步的
5
时钟信号
l 用来同步控制所有时序单元-锁存器/触发 器
l 更规范的,有限状态机可表达为五元组
< S, I,O, f : S × I → S, h : S × I → O >
24
有限状态机的分类-Mealy机
l 输 出 依 赖 于 当 前 的 网 络 状 态 和 当 前 的
输入(ref.1/7.3.2)
用来产生输出的
输出
组合逻辑 输
入 用来产生次态的 组合逻辑
l 最小脉宽Minimum Pulse Width
ü 为了得到希望的输出结果,该输入信号有效的 最短时间
l 延时
ü 输入信号发生变化,导致输出信号发生相应变 化的时间
l 建立和保持时间Setup and Hold Time
36
SR锁存器的最小脉宽
S tw(min)
R
Q
tw(min)
不满足要求
时序逻辑设计与FSM
1
基本概念
2
基本时序逻辑单元-触发器
34
同步A时cc序om电p路lis分hm析en和ts设计方法
4
典型的时序逻辑电路
5
FSMD模型
1
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
4
有限状态机
2
过程的离散化与时钟
l 过程的离散化
l Discrete Process l 为了充分利用数字信号处理的简单快捷高效
l 触发器仅在时钟信号有效时采样输入,并改变其输出状 态
l All digital designers use the name flip-flop for a sequential device that normally samples its inputs and changes its outputs only at times determined by a clocking signal
l 主从触发器 l 边沿触发器
42
主从触发器
l 脉宽触发的触发器 l 可避免锁存器的透明性 l 在控制信号发生改变时,触发器状态的变化
发生相应的变化 l 具有一个主触发器和一个从触发器
43
C tpd
× × 1 1 1 1 1 1 0 0 0 0
D tpd
× × × 0 0 0 0 0 0 1 1 1
E tpd F
×× ×× ×× ×× 1× 10 10 10 10 10 00 01
8
环形振荡器的时序波形
tpd
A=F
周期?
t
10tpd
B
占空比?
t
C
50%,方波
t D
t E
t
产生一组具有不同相位的时钟信号! 9
CLKA
DA
CLKB
DB
CLK B 采样了正在
变化的DA
D
DA D DB
D DFF
DFF
CLKA
CLKB
15
示波器观察到的亚稳态
亚稳态
16
容忍亚稳态
l 亚稳态不能避免 l 通过合理的设计容忍亚稳态
l 同步器设计 l 异步FIFO
17
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
l 时钟
l Clock
l 时钟信号
l Clock Signal
3
过程的离散化
l 过程在数学上可以表示为时间的函数 l 在数学中,离散化关注连续模型和等式
转化为离散形式的过程 l 从信号的角度看
模拟信号 模拟信号
时间采样 滤波
幅度量化 数模转换
数字信号 数字信号
4
时钟
l 过程需要用不同的状态表示
ü 一方面因为计算机或数字系统的操作都是有序进 行的,通常不可能信号一到即刻处理
ü 另一方面,可防止输入信号的各个位到达时间不 一致造成竞争与险象
41
基本时序逻辑单元-触发器
l Ref.1/6.1 l 双稳态单元-触发器的基本结构,已介绍 l 锁存器Latches l 触发器Flip-Flops
◆状态 ——系统的基本数学特征 ◆状态机 —— 一个离散数学模型
给定一个输入集合,根据对输入的接收 次序来决定一个输出集合 ◆有限状态机 —— 输入集合和输出集合 都是有限的,且状态数目是有限的
23
有限状态机
l 在计算机科学与工程中,有限状态机是最常使用 的设计模型
l 模型包括 l 状态集合 l 状态转移集合 l 关联于状态的操作集合 l 关联于转移的操作集合 l 同时关联于状态和转移的操作集合
l C L K A 和 C L K B 之 间 时 钟 频 率 不 一 样 , 或 者 虽 然 频 率 相同,但存在相位差 l DA被CLKB这个时钟域认为是异步的输入信号
D
DA D DB
D DFF
DFF
CLKA
CLKB
14
亚稳态Metastability
l 在时钟的上升沿,CLKB采样DA,而此时DA正 在发生变化,则DB的输出是亚稳态的,其值可 能为1,也可能为0,不确定
12
时钟域Clock Domain
l 逻辑单元由不同来源的多个时钟驱动 l 这些时钟称作时钟域
Clock Domain1
Clock Domain2
13
跨时钟域
l 如 果 在 两 个 不 同 的 时 钟 域 之 间 传 递 数 据 , 存 在 跨时钟域(clock domain crossing, CDC)问题
4
典型的时序逻辑电路
5
FSMD模型
27
基本时序逻辑单元-触发器
l Ref.1/6.1 l 双稳态单元-触发器的基本结构,已介绍 l 锁存器Latches l 触发器Flip-Flops
l 主从触发器 l 边沿触发器
28
锁存器和触发器的定义
l John F.Wakerly, Digital Design- Theory and Practice《数字设计--原理和实践》
去,有时停留在状态01,有时停留在状态10
ü 时序逻辑电路的竞争——最终电路产生的状态与
时间相关,且不能事先预测
ü 通过约束输入取值来避免竞争条件的出现
SR=0
34
门控D锁存器
D
Enable (C)
逻辑图
DQ
DQ
C
C
Q
Q
Q
D C Q+ Q +
010 1
111 0
Q
×0Q Q
功能表
逻辑符号
35
锁存器的时间参数
l 一个时钟域就是所有同步于同一个时钟信号的信号集合 l 同一个时钟域中的信号只能由同一个时钟的时钟沿 (上升沿或下降沿)来触发,在时隙内,所有的信号 不会发生变化
11
信号与时钟同步分类
分类 同步
周期性 Δφ
是
0
亚同步 是
φc
准同步 是
可变
周期性 是
异步 无 无时钟 无
Δf 0 0
fd < ε
l 存0/复位/清零
l 1状态/置位 Q =1,Q = 0
l 存1/置位/预置
20
此电路的问题
l 如何预置初值? l 如何改变状态?
21
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
4
有限状态机
22
有限状态机(Finite State Machine)
RS 00 01 11 10 Q 0 0 1- 0 1 1 1- 0
Q+=f (R, S, Q)
Q+ = S + RQ SR=0
约束项/无关项
32
SR锁存器的理想状态图
状态图: ü 由节点和弧线组成 ü 节点代表电路的不SR=00 同状态 ü 弧线上标注了引发SR=01 状态转换的输入信 号取值
SR=10
状态
寄存 器 现态
时钟
有限状态机的分类-Moore机
l 输出只依赖于电路当前的状态,和当前输入 无关
用来产生输出的 输出 组合逻辑
用来产生次态的 组合逻辑
输入
状态 寄存 器
现态
时钟
时序逻辑设计与FSM
1
基本概念
2
基本时序逻辑单元-触发器
34
同步A时cc序om电p路lis分hm析en和ts设计方法
D
tsu th
tsu th
tsu th 足
要
C
求
Q
Q t1
t2 t3 t4 t5 t6
t7 t8
t9 t10 t11 t12 t
输 出 不 确 定
40
锁存器小结
l 可以有时钟信号作为控制端,在时钟信 号有效期间,时刻检测输入取值
l 具有透明性
l 锁存就是把信号暂存以维持某种电平状态 l 锁存器的主要作用有:
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
4
有限状态机
10
时钟域与同步
l 同步(Synchronization)包含对信号事件顺序的决定和 处理
l 讨论数据与各种时钟之间的同步问题 l 当数据与采样时钟异步时,就需要同步处理。为了确 定在一个时钟节拍上的信号值,对于信号变化就需要 决定时钟采样沿到底在信号变化之前还是之后 l 当数据同步于一个时钟源,而又要传送到另一个时钟 (不同频率)进行处理时,也需要同步处理。在这种情 况下,信号跨越了时钟域(clock domain crossing), 它必须同步于新的时钟域
Duty Cycle
Clock(C)
Period t
50%
Clock(C)
Period t
在单位时间里电压升高/下降的幅度
7
如何产生时钟信号?
l 利用反相器 l 环形振荡器
A tpd
l Ring Oscillators
1 1
1
1
1
1
0
0
0
0
0
0
B tpd
× 0 0 0 0 0 0 1 1 1 1 1
fd > ε
描述 信号与时钟同频同相位,可以用时钟信号直接对 信号取样 信号与时钟同频,但是有任意的相位差异,信号 或者时钟延时固定的相位之后,可以准确的利用 时钟对信号进行取样 信号与时钟频率接近,相位差异缓慢变化。信号 或者时钟延时可变的相位之后,可以准确地利用 时钟对信号进行取样 信号是具有任意频率的周期性信号,信号的周期 性可以用来预测何时在时钟信号的“不安全”部 分发生变化 信号在任意时刻出现。需要完全的同步器 系统没有全局的绝对时钟,整个系统只有事件传 递的先后顺序
l 特性参数
l 周期=1/频率 (Period=1/frequency)
l 从时钟的一个上升沿(从低电平到高电平)到下一个 上升沿的时间
l 占空比 duty-cycle
l 时钟信号中高电平在一个周期之内所占的时间比例
6
时钟信号(续)
任何信号都有摆率(slew rate)! 存在上升和下降时间!
QQ’
SR=01
SR=00
01
10
SR=11
SR=01 SR=10
SR=10
SR=11
SR=11
00
R
Q SR=01 SR=00 SR=00 SR=10
SR=11
S
Q’
11
33
SR锁存器的实际状态图
S=1,R=0
S=0,R=φ
S=φ,R=0
01
Q
S=0,R=1
实际上:
ü SR锁存器并没有无限地在状态00和11之间振荡下
29
SR锁存器
R
QR
Q
交
叉基 耦本 S
QS
Q
合存
逻辑图
的储
单
SQSQ元Fra bibliotek门:RQ
RQ
逻辑符号 30
NOR
SR锁存器的分析
R
QR
1
0
S
Q0
1
S: 置位端 R: 复位端
功能表
S
Q+
Q+
0
0
1
1
1
0
0 Q Q’
1
0
0
31
SR锁存器的分析
功能表
R
Q
R
S
Q+
Q+
10
0
1
01
1
0
S
Q0 0 11
Q Q’ 0 unstab0le
4
有限状态机
18
双稳态单元-基本时序单元结构
x
x Q x = 0, x =1,Q =1
y =1, y = 0,Q = 0
y
Q x =1, x = 0,Q = 0
y
y = 0, y =1,Q =1
19
状态
l 一组状态变量的取值记录电路过去的信息, 从而说明电路将来的行为
l 0状态/复位 Q = 0,Q = 1
tw(min)
输出不确定
t
37
SR锁存器的延时
S
R
tpLH Q
tpHL Q
tpHL tpLH
t
38
建立时间和保持时间
l 建立时间tsu
l 锁存操作开始之前,输入信号应保持不变的最 短时间
l 保持时间th
l 锁存操作之后,输入信号还应保持不变的最短 时间
39
门控D的建立时间和保持时间
不
满
l 锁存器在任意时刻都连续监测其输入,并改变其输出状 态,与有无时钟信号无关
l On the other hand, most digital designers use the name latch for a sequential device that watches all of its inputs continuously and changes its outputs at any time, independent of a clocking signal
l 狼羊白菜人
l 这 些 状 态 需 要 用 记 忆 元 件 ( 锁 存 器 / 触 发器)来控制和预测
l 时钟就是分布于包含记忆元件的电路中 的一个周期信号
l 保证所有的元件都能在同一时刻改变状态同步
l 不使用同一个时钟信号的电路是异步的
5
时钟信号
l 用来同步控制所有时序单元-锁存器/触发 器
l 更规范的,有限状态机可表达为五元组
< S, I,O, f : S × I → S, h : S × I → O >
24
有限状态机的分类-Mealy机
l 输 出 依 赖 于 当 前 的 网 络 状 态 和 当 前 的
输入(ref.1/7.3.2)
用来产生输出的
输出
组合逻辑 输
入 用来产生次态的 组合逻辑
l 最小脉宽Minimum Pulse Width
ü 为了得到希望的输出结果,该输入信号有效的 最短时间
l 延时
ü 输入信号发生变化,导致输出信号发生相应变 化的时间
l 建立和保持时间Setup and Hold Time
36
SR锁存器的最小脉宽
S tw(min)
R
Q
tw(min)
不满足要求
时序逻辑设计与FSM
1
基本概念
2
基本时序逻辑单元-触发器
34
同步A时cc序om电p路lis分hm析en和ts设计方法
4
典型的时序逻辑电路
5
FSMD模型
1
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
4
有限状态机
2
过程的离散化与时钟
l 过程的离散化
l Discrete Process l 为了充分利用数字信号处理的简单快捷高效
l 触发器仅在时钟信号有效时采样输入,并改变其输出状 态
l All digital designers use the name flip-flop for a sequential device that normally samples its inputs and changes its outputs only at times determined by a clocking signal
l 主从触发器 l 边沿触发器
42
主从触发器
l 脉宽触发的触发器 l 可避免锁存器的透明性 l 在控制信号发生改变时,触发器状态的变化
发生相应的变化 l 具有一个主触发器和一个从触发器
43
C tpd
× × 1 1 1 1 1 1 0 0 0 0
D tpd
× × × 0 0 0 0 0 0 1 1 1
E tpd F
×× ×× ×× ×× 1× 10 10 10 10 10 00 01
8
环形振荡器的时序波形
tpd
A=F
周期?
t
10tpd
B
占空比?
t
C
50%,方波
t D
t E
t
产生一组具有不同相位的时钟信号! 9
CLKA
DA
CLKB
DB
CLK B 采样了正在
变化的DA
D
DA D DB
D DFF
DFF
CLKA
CLKB
15
示波器观察到的亚稳态
亚稳态
16
容忍亚稳态
l 亚稳态不能避免 l 通过合理的设计容忍亚稳态
l 同步器设计 l 异步FIFO
17
基本概念
1
过程的离散化与时钟
2
时钟域与同步
34
Accompl状ish态ments
l 时钟
l Clock
l 时钟信号
l Clock Signal
3
过程的离散化
l 过程在数学上可以表示为时间的函数 l 在数学中,离散化关注连续模型和等式
转化为离散形式的过程 l 从信号的角度看
模拟信号 模拟信号
时间采样 滤波
幅度量化 数模转换
数字信号 数字信号
4
时钟
l 过程需要用不同的状态表示