时序逻辑电路.docx
- 文档编号:8903287
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:38
- 大小:448.54KB
时序逻辑电路.docx
《时序逻辑电路.docx》由会员分享,可在线阅读,更多相关《时序逻辑电路.docx(38页珍藏版)》请在冰点文库上搜索。
时序逻辑电路
第6章时序逻辑电路
内容提要
时序逻辑电路的特性是具有记忆功能,即电路在某一时刻的输出不仅仅取决于这一时刻当前的输入,而且还与电路历史状态有关。
时序逻辑电路在结构上由组合电路和存储电路两部分组成,而且存储电路至少有一个输出作为组合逻辑电路的输入,组合电路的输出至少有一个作为存储电路的输入。
本章主要介绍时序逻辑电路的组成原理、时序逻辑电路的分析和设计方法及常用时序逻辑功能器件等。
时序逻辑电路的分析就是根据给定的时序逻辑电路的结构,找出该时序逻辑电路在输入信号及时钟作用下,存储电路状态的变化规律以及电路的输出值,从而了解该时序逻辑电路所完成的逻辑功能。
描述时序逻辑电路的逻辑功能一般采用存储电路的状态转移方程和电路输出函数表达式;或者采用状态转移表、状态转移图;或者用时序图(工作波形)来描述。
本章重点分析了移位寄存器、同步计数器和异步计数器,介绍了VHDL描述时序逻辑电路的方法。
时序逻辑电路的设计就是根据逻辑命题的要求,设计出实现该命题功能要求的时序电路,并力求最简。
本章重点介绍了采用小规模器件设计同步计数器、异步计数器的方法,介绍了采用中规模功能器件设计任意模值计数器的方法以及序列信号发生器的方法。
并介绍了同步时序逻辑电路设计的一般步骤。
教学基本要求
(1)掌握时序逻辑电路的基本分析方法。
(2)掌握同步时序逻辑电路(同步计数器)的设计方法。
(3)掌握常用时序功能部件(集成计数器、移位寄存器)的逻辑功能及应用。
(4)理解异步计数器的设计方法。
(5)理解VHDL描述方法。
(6)了解同步时序逻辑电路设计的一般步骤。
重点与难点
本章重点:
(1)时序逻辑电路的分析,正确画出时序图(工作波形)。
(2)同步计数器的设计。
本章难点:
(1)异步时序逻辑电路的分析与设计。
(2)同步时序逻辑电路设计的一般步骤(原始状态流图建立、状态合并、状态编码等)。
主要教学内容
6.1 时序逻辑电路的分析
6.2 常用时序逻辑功能器件
6.2.1 常用集成计数器
6.2.2 常用集成寄存器和移位寄存器
6.3 时序逻辑电路设计
6.3.1 同步时序逻辑电路设计的一般步骤
6.3.2 同步计数器的设计
6.3.3 异步计数器的设计
6.3.4 序列信号发生器
6.4 采用中规模时序功能器设计时序逻辑电路
6.4.1 采用中规模计数器实现任意模值计数(分频)器
6.4.2 采用中规模集成移位寄存器
6.5 VHDL描述时序逻辑电路
6.1时序逻辑电路的分析
分析由小规模逻辑器件构成的时序逻辑电路一般步骤为:
(1)根据给定的时序电路图,写出下列各逻辑表达式:
①各触发器的时钟信号CP的逻辑表达式。
②各触发器的驱动方程,也就是各触发器的输入信号(激励)的逻辑表达式。
③时序电路的输出方程。
(2)将各触发器的驱动方程代入相应的触发器特征方程,得到该时序逻辑电路的状态转移方程。
(3)根据状态转移方程、时钟函数及输出方程,列出该时序电路的状态转移表,画出状态转移图或时序图(工作波形)。
(4)描述给定时序逻辑电路的逻辑功能。
例6–1图6–1–1为一个同步时序电路,X是输入控制信号,画Q1、Q2和Z在X信号控制下的工作波形(设Q1、Q2初态均为0)。
图6–1–1例6–1电路
解由电路可列出各方程。
(1)时钟表达式为CP1=CP↓,CP2=CP↓。
由于是同一时钟,所以为同步时序逻辑电路。
(2)各触发器的驱动方程为
(3)将驱动方程代入J–K触发器的特征方程,则各触发器的状态转移方程为
(4)写出输出函数表达式为
(5)根据状态转移方程和输出函数表达式可画出工作波形,如图6–1–2所示。
图6–1–2例6–1工作波形
画工作波形时必须注意:
只有时钟触发沿到达时,触发器状态才能发生变化。
该题画工作波形时,有一定技巧,由于Q1n+1是X⊕Q1n,所以当X=0且CP下降沿到达时,Q1n+1=Q1n;当X=1且CP下降沿到达时,Q1n+1=Q1n。
对于Q2波形,若Q2原状态为0,只有在X=0、Q1=1时,时钟CP下降沿到达使Q2由0变化为1,以后Q2就一直为1。
根据Z=XQ1nQ2n,可以很容易画出Z的波形。
例6–2画出图6–1–3所示计数器的状态转移图,并说明其逻辑功能。
图6–1–3例6–2电路图
解由电路可列出各方程。
(1)时钟表达式为CP1=CP2=CP3=CP↓,为同步时序逻辑电路。
(2)各触发器的驱动方程为
(3)各触发器的状态转移方程为
(4)列出状态转移表,如表6–1–1(a)所示。
.
表6–1–1例6–2状态转移表
除去5个有效状态外,还有3个偏离状态,要检验3个偏离状态的转移情况,如表6–1–1(b)所示,才能得到完整的状态转移图。
(5)状态转移图,如图6–1–4所示。
图6–1–4例6–2状态转移图
(6)该电路的逻辑功能是模5同步计数器。
例6–3画出图6–1–5所示时序逻辑电路Q1、Q2的工作波形。
图6–1–5例6–3电路
解根据电路列出各方程。
(1)时钟表达式为CP1=CP↓,CP2=[Q1+CP·Q2]↓。
由于触发器1和触发器2的时钟不同,所以为异步时序逻辑电路。
(2)各级触发器驱动方程为
(3)各级触发器状态转移方程为
(4)画工作波形,设Q1、Q2初态为0,如图6–1–6所示。
图6–1–6例6–3工作波形
为了能正确画出波形,对异步时序最好同时画出或标出各触发器时钟的波形。
对于Q2,只有从CP2函数产生下降沿时,Q2才有可能改变状态。
由上面3个例题可以看出:
(1)时序逻辑电路有两大类,一是同步时序逻辑电路,其特点是各存储电路(触发器)的时钟是同一时钟,因此在时钟作用下,各存储电路同时发生状态转移。
二是异步时序逻辑电路,其特点是存储电路(触发器)的时钟不同,各存储电路发生状态转移只有在该存储电路的时钟信号作用下才会发生。
(2)分析时序逻辑电路除要正确写出状态转移方程外,特别要注意时钟信号的作用。
触发器只有在时钟信号作用下才会发生状态的变化。
(3)完整的状态转移图除去有效状态外,还必须包括偏离状态。
如果偏离状态能在时钟作用下自动进入有效状态,则该电路具有自启动功能,如果偏离状态不能自动进入有效状态,则该电路就出现锁住的现象,要使其正常工作必须重新启动(置位或复位),这一点在下面时序逻辑电路设计中详细叙述。
6.2 常用时序逻辑功能器件
6.2.1常用集成计数器
常用时序逻辑功能器件主要有计数器、寄存器和移位寄存器。
对于常用时序逻辑功能器件只要求了解功能以及各使能端的使用。
常用集成计数器分为二进制计数器(含同步、异步、加减和可逆)和非二进制计数器(含同步、异步、加减和可逆),下面介绍几种典型的集成计数器。
1.集成计数器54/74161
集成计数器54/74161为4位二进制同步加法计数器,其功能表如表6–2–1所示。
表6–2–1CT54/74161功能表
从表6–2–1中可见:
(1)异步清零。
即当CR=0时,不管其他输入的状态如何,计数器输出将被直接置零,称为异步置零,清零信号CR低电平有效。
(2)同步并行预置。
即当CR=1、LD=0,且有时钟脉冲CP的上升沿到达时,预置输入d0、d1、d2、d3将同时分别置入到Q0、Q1、Q2、Q3。
由于在时钟作用下完成置入,所以称同步预置。
(3)保持。
在CR=LD=1时,当CTT·CTP=0,计数器保持原状态不变。
但当CTT=0、CTP=1时,输出CO=0;而当CTT=1、CTP=0时,输出CO也保持不变。
(4)计数。
当CR=LD=CTT=CTP=1时,计数器在CP上升沿作用下,执行4位二进制同步加法计数。
2.集成计数器CT54/74193
集成计数器CT54/74193为双时钟4位二进制同步可逆计数器,其功能表如表6–2–2所示。
表6–2–2CT54/74193功能表
从表6–2–2中可见:
(1)异步清零。
当CR=1时,输出直接清零,清零信号CR高电平有效。
(2)异步预置。
当CR=0、LD=0,预置输入d0~d3直接置入到Q0~Q3,预置信号LD低电平有效。
(3)加法计数。
当CR=0、LD=1、CPD=1时,计数脉冲由CPU加入,完成同步4位二进制加法计数。
(4)减法计数,当CR=0、LD=1、CPU=1时,计数脉冲由CPD加入,完成同步4位二进制减法计数。
3.集成计数器CT54/74290
CT54/74290为异步十进制计数器,它由4个1位二进制计数器和1个五进制计数器组成,如果计数器脉冲由CP0端输入,Q0端输出,即为二进制计数器。
如果计数脉冲由CP1端输入,Q3~Q1端输出,即为五进制计数器。
如果将Q0与CP1相连,计数脉冲由CP0移入,Q3~Q0输出,即为8421码十进制计数器,因此又称二–五–十异步计数器。
其功能表如表6–2–3所示。
表6–2–3CT54/74290功能表
由表6–2–3可以看出,当复位输入R0A=R0B=1,且置位输入S9A·S9B=0时,Q3~Q0被直接置0;只要置位输入S9A=S9B=1时,Q3Q2Q1Q0=1001,即直接被置9;只有同时满足R0A·R0B=0、S9A·S9B=0时,才能在计数CP下降沿作用下实现二–五–十计数。
6.2.2常用集成寄存器和移位寄存器
1.集成寄存器
寄存器是用来存储代码或数据的逻辑部件,1个触发器可存储1位二进制代码。
CT54/74175是一个4位集成寄存器,其功能表如表6–2–4所示。
表6–2–4CT54/74175功能表
2.集成移位寄存器
移位寄存器是寄存器中的各位数据(代码)在移位控制信号作用下,依次向高位或依次向低位移动1位,也就是具有移动功能的寄存器。
移位寄存器内部的状态转移符合移位寄存规律。
即Qin+1=Qi–1n,某一级触发器的下一个状态是邻级触发器的现状,只有第1级按输入信号变化。
CT54/74195是4位并入、并出移位寄存器,具有J–K串行输入端,SH/LD移位/置数端,CR直接清零端,其功能见表6–2–5。
表6–2–5CT54/74195功能表
有表6–2–5可见,CR=0时,直接异步置零;当CR=1、SH/LD=0时,同步置位;当CR=1、SH/LD=1时,在CP上升沿作用下,串列输入J–K至Q0,其余Q0移入Q1,Q1移入Q2,Q2移入Q3,实现右移功能。
CT54/74194是一个4位双向移位寄存器,它具有左移、右移、并行输入、保持及异步清零等五种功能,其功能表如表6–2–6所示。
表6–2–6CT54/74194功能表
6.3 时序逻辑电路设计
6.3.1同步时序逻辑电路设计的一般步骤
第一步:
根据设计要求,建立原始状态转移图和原始状态转移表。
首先分析设计要求的输入变量、输出变量,以及该电路应包含记忆状态,并用A、B、C等表示。
进一步观察在每一种可能输入组合作用下,各个状态的转移情况及相应的输出,然后求得设计要求的状态转移图。
在建立原始状态图时,重要的是正确的描述题意,不必考虑是否简单。
第二步:
状态化简。
状态化简是建立在状态等价的基础上。
所谓两个状态等价是指这两个状态在相同输入条件下状态输出相同,状态转移效果相同,例为A和B两个状态A→B,C→D。
若B和D是等价的,则A和C状态转移效果相同。
两个等价的状态可以合并,通过等价状态合并从而消去多余的状态。
第三步:
状态编码,建立状态转移表。
状态编码即是对每个状态指定一个二进制代码。
状态编码方案不同,实现电路的结构也不同,选取编码方案要有利于触发器驱动方程和输出方程的简化。
第四步:
根据状态转移方程选择触发器。
求触发器驱动方程和输出方程。
第五步:
画逻辑电路并检查是否具有自启动特性。
例6–4设计一个时序网络,只有连续3个或3个以上时钟作用期间,该网络的2个输入x1和x2都一致时输出才为1,否则输出为0。
画出该时序网络的逻辑图。
解第一步:
建立原始状态图和原始状态表。
该电路网络有3个输入端x1、x2和CP,且x1、x2和CP同步,有1个输出Z。
原始状态图如图6–3–1所示,原始状态表如表6–3–1所示。
表6–3–1例6–4原始状态表
图6–3–1例6–4原始状态图
第二步:
状态化简。
由原始状态表6–3–1可见,C和D在x1=x2和x1≠x2输入条件下,有相同的输出,且状态转移情况也完全相同,C和D为等价状态,可以合并为一个状态C,消去状态D。
第三步:
状态编码,建立状态转移表。
该电路有3个状态,可用2位二进制码组合,令A=00、B=01、C=11,则状态转移表如表6–3–2所示。
表6–3–2例6–4状态转移表
第四步:
根据状态转移方程选择触发器。
求触发器的驱动方程和输出方程。
由表6–3–2可列出Q2n+1、Q1n+1和输出Z的卡诺图如图6–3–2所示。
化简得
图6–3–2例6–4卡诺图
选择D触发器,则
第五步:
检验是否具有自启动特性,画出逻辑图。
检验自启动是检验偏离状态Q1Q2=10时,在x1x2作用下的转移状况,Q1Q2=10时:
当x1≠x2时,状态转移到00,输出0;当x1=x2时,状态转移到01,输出为1。
由于在所有输入条件下偏离状态均能转移到有效状态,电路具有自启动特性。
该时序网络的逻辑图如图6–3–3(a)所示,状态转移图如图6–3–3(b)所示。
(a)
(b)
图6–3–3例6–4逻辑电路图与状态转移图
6.3.2同步计数器的设计
同步计数器的设计步骤同6.3.1同步时序逻辑电路的设计,但由于一般计数器的模值即是状态数,因此无需状态化简。
关于状态编码,通常选用二进制代码、循环代码或移存型代码等。
所以同步计数器的设计主要是完成一般步骤中第三、四、五步。
例6–5设计模6同步计数器。
解由于模6计数器必须记忆6个状态,S0、S1、S2、S3、S4、S5用3位二进制代码表示。
在教材中,选取的是S0=000、S1=001、S2=011、S3=111、S4=110、S5=100,按移位规律的编码,同时该码组又符合循环码规律(即相邻码组只有一位不同),本例采用二进制码规律来设计,以示比较。
令S0=000、S1=001、S2=010、S3=011、S4=100、S5=101,由此可列出状态转移表如表6–3–3所示。
表6–3–3例6–5状态转移表
画出次态卡诺图和输出卡诺图如图6–3–4所示。
化简得
图6–3–4例6–5卡诺图
检验偏离状态。
将偏离状态110、111代入状态转移方程得到110→111→100,能自动纳入有效状态,具有自启动特性。
如果采用D触发器,显然电路比教材中采用移存码编码结构复杂。
如果采用J–K触发器,则可将各级触发器的状态转移方程变换成JK触发器特征方程Qn+1=JQn+KQn的形式。
从而求得J、K激励方程为
采用自然二进制编码的模6同步计数器电路如图6–3–5(a)所示,状态转移图如图6–3–5(b)所示。
(a)
(b)
图6–3–5例6–5逻辑电路图的状态转移图
例6–6设计一个能实现如图6–3–6时序图要求的同步时序逻辑电路。
图6–3–6例6–6时序图
解
(1)由时序图可列出状态转移表如表6–3–4所示。
表6–3–4例6–6状态转移表
列状态转移表时,注意状态转移表中次态的状态N(t)就是下一次转移的状态S(t)。
列状态转移表直至完成状态转移循环,也就是转移至开始的初态结束。
(2)通过图6–3–7所示卡诺图,求得状态转移方程为
图6–3–7例6–6卡诺图
分析该题的状态转移表,它符合移位寄存器编码规律,因此该题也可以只设计Q1n+1就可以了。
(3)采用D触发器的激励信号为
(4)检查是否具有自启动。
偏离状态有000、010和101,其转移为:
000→001;010→101→011,都能进入有效状态,具有自启动特性。
(5)逻辑电路图如图6–3–8所示。
图6–3–8例6–6逻辑图
6.3.3异步计数器的设计
异步计数器的设计与同步计数器的不同点是,在开始要由状态转移表选择各级触发器的时钟信号,然后由简化状态转移表来求状态转移方程,其余与同步计数器设计步骤方法相同。
例6–7设计模6异步计数器。
解模6计数器采用如表6–3–5所示的状态转移表。
表6–3–5例6–7状态转移表
(1)由状态转移表选择各级触发器时钟。
第一级触发器时钟一定是计数脉冲CP,以下各级触发器时钟从CP和各级触发器的Q输出来选择。
选择的原则是该级触发器状态改变时(由0变为1,或由1变为0)必须有时钟触发沿到达,其二是在上述条件下,时钟多余的触发沿越少越好。
由表6–3–5可见,CP1=CP↓;Q2在序号1、3发生状态改变,这两个时刻Q1在CP作用下均有下降沿产生,所以选CP2=Q1↓;Q3在序号3发生状态改变时,Q2和Q1都有下降沿产生,在序号5发生状态改变时,Q2无下降沿产生,Q1有下降沿产生,所以选择CP3=Q1↓。
(2)列简化状态转移表,求状态转移方程。
在列简化状态转移表时,将触发器没有时钟触发的下一个状态用×表示,因此表6–3–5可以化简为表6–3–6。
表6–3–6例6–7简化状态转移表
Q1要CP↓触发,因此每个序号均会触发而发生状态转移。
Q2、Q3要Q1↓触发,因此只有在序号1、3、5时才触发且发生状态转移,其余序号0、2、4由于没有Q1下降沿产生,Q2、Q3不会发生状态改变,状态转移表中用×表示。
用卡诺图化简,如图6–3–9所示。
由此可列出
图6–3–9例6–7卡诺图
Q3n+1=Q2n,Q2n+1=Q3nQ2n,Q1n+1=Q1n
(3)检验是否具有自启动特性,画逻辑图。
该计数器有两个偏离状态110和111,在CP作用下,110→111→000,可以自启动纳入有效状态,具有自启动特性。
用D触发器实现的逻辑图如图6–3–10所示。
图6–3–10例6–7逻辑图
例6–5是同步模6计数器,请同学们比较这两个计数器的不同。
6.3.4序列信号发生器
1和0数码按一定规律排列的串行周期性信号称序列信号,在数字系统中通常作为同步信号、地址码等。
对于序列信号发生器的设计有两种情况,一是根据给定序列信号设计发生器电路,二是根据要求序列信号的周期(码长)设计发生器电路。
1.根据给定序列信号设计发生器电路
有两种方案,一是基于移位寄存器产生(移位型序列信号发生器),二是基于计数器产生(计数型序列信号发生器)。
基于移位寄存器产生电路需要将给定码长M的序列信号按移存规律组成M个状态循环,最后求出第一级串行输入激励函数。
基于计数器产生电路是在同步计数器基础上加输出组合电路组成。
同步计数器的模值就是序列信号的码长M。
例6–8设计产生序列信号101001,101001,…的发生器电路。
解
(1)设计移存型发生器电路。
根据给定序列信号,由于码长M=6,所以确定移位寄存器的位数n=3,按移位规律组成的状态转移如表6–3–7所示。
表6–3–7例6–8状态转移表
图6–3–11例6–8卡诺图
因此,第一级输入激励信号,由卡诺图6–3–11可求得
Q1n+1=Q3nQ1n+Q3nQ2n
检验是否具有自启动特性,由表6–3–7可见,有效状态6个,偏离状态为000和111,检验结果000→001,111→110,具有自启动特性。
逻辑图如图6–3–12所示。
图6–3–12例6–8移位型逻辑图
(2)设计计数型发生器电路。
由于码长M=6,设计模6同步计数器(同例6–5)。
设计产生101001序列信号的组合电路,其真值表如表6–3–8所示。
输出F的卡诺图如图6–3–13所示,求出
表6–3–8例6–8真值表
图6–3–13例6–8F卡诺图
逻辑图如图6–3–14所示。
图6–3–14例6–8计数型逻辑图
2.根据序列信号码长M的要求设计发生器电路
当设计已给定序列信号码长M的要求时,首先是选择码型,码型确定后可根据给定序列信号的方法设计。
对于码型的选择应根据序列信号的作用来选择,应用最多的是M=2n-1的最长线性序列信号及其派生的M<2n-1的非最长线性序列信号。
(1)M=2n-1的最长线性序列又称为伪随机序列信号,它是在n位移位寄存器的基础上加上异或反馈电路组成。
N位移位寄存器产生(2n-1)长度(最长线性序列的反馈函数可查表得到)。
例如n=4,由表中可查得反馈函数f=Q4⊕Q3,则可以得到M=15的序列信号为111100010011010。
(2)M<2n-1的非最长线性序列信号可以在M=2n-1最长线性序列信号基础上产生,其方法是在(2n-1)个状态中跳过[(2n-1)-M]个状态,使其M个状态符合移存规律循环。
这种设计方法的关键在于找到起跳状态。
寻找起跳状态的方法是:
①根据M要求,确定移位寄存器的位数n,n≥log2M。
②由表查得(2n-1)位最长线性序列的反馈函数f。
③从111…开始作为序列Ⅰ,由反馈函数求出(2n-1)最长线性序列信号。
④将序列Ⅰ左移[(2n-1)-M]位,作为序列Ⅱ。
⑤序列Ⅰ和序列Ⅱ对应位进行异或运算,得到序列Ⅲ。
⑥在序列Ⅲ中找到10000…n位数代码,对应于序列Ⅰ的n位数码即为起跳状态。
⑦在序列Ⅰ中从起跳状态开始删去[(2n-1)-M]位数码,即可得到长度为M的序列信号。
例6–9设计M=12的序列信号发生器。
解①由于M=12,可能是n=4。
②由表查得(2n-1)位最长线性序列信号的反馈函数f=Q4⊕Q3。
③(2n-1)位最长线序列信号为序列Ⅰ。
⑥在序列Ⅲ中找到1000,对应序列Ⅰ为起跳状态。
⑦在序列Ⅰ中从0001开始删去3位数码001,即可得到长度M=12的序列信号为111100011010,可设计移存型的序列信号发生器(步骤略)。
第一级输入激励函数为
其逻辑图如图6–3–15所示。
图6–3–15例6–9逻辑图
6.4 采用中规模时序功能器设计时序逻辑电路
6.4.1采用中规模计数器实现任意模值计数(分频)器
应用N进制的集成计数器可以实现任意模值M(M<N)计数分频,通常利用集成计数器的清除端和置位端来实现。
1.利用清除端复位
清除信号产生电路是固定结构形式,如图6–4–1所示,其中G1为判别门,G2和G3为基本触发器产生足够的清除脉冲,G1的输入端为计数模值M的二进制代码中1。
图6–4–1清除信号产生
例6–10利用CT54/74161实现模12计数分频。
解CT54/74161是4位二进制计数器,CR为低电平异步清零,模12的二进制代码Q3Q2Q1Q0=1100,因此电路结构如图6–4–2所示。
图6–4–2例6–10逻辑电路图
其工作原理是,当CP为0时,G3为1,CR=1,在CP脉冲作用下,正常计数。
一旦计数器进入到M=12(Q3Q2Q1Q0=1100)时,G1输出为0,使G2输出为1。
由于CP=1,G3输出为0,作用于CR,使计数器清零为0000状态,同时G1输出为1。
G3输出为0的持续时间为CP=1的持续时间。
此后CP=0,使G3输出为1。
计数器又进入正常计数,直至进入Q
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 时序 逻辑电路
![提示](https://static.bingdoc.com/images/bang_tan.gif)