时序逻辑电路分析与设计.ppt
第11章 时序逻辑电路的分析与设计,时序电路的框图:,描述时序电路的三组方程:,时序电路分类:,根据存储单元的状态改变是否在统一的时钟脉冲控制下同时发生来分:同步时序电路;异步时序电路。,根据输出信号的特点来分:,米里(Mealy)型:输出信号不仅仅取决于存储电路的状 态,而且还取决于外部输入信号。,摩尔(Moore)型:输出信号仅仅取决于存储电路的状态,而和该时刻的外部输入信号无关。,11.1 MSI构成的时序逻辑电路,11.1.1 寄存器和移位寄存器,1.寄存器,寄存器用途:暂时存放二进制数码.,4位D触发器寄存器(74175),具有三态输出的四位缓冲数据寄存器(74173),2.移位寄存器,功能:存放代码;移位.,分类:,按移位方向分类:单向移位寄存器;双向移位寄存器.,2)按输入输出的方式分类:,串入-串出;,串入-并出;,并入-串出;,并入-并出.,移位寄存器组成:,移位寄存器中的存储电路可用时钟控制的无空翻的D、RS或JK触发器组成。,(1)单向移位寄存器,a)串入-串/并出单向移存器,问题:若输入10110111,经过几个CP后可在VO 收到完整数据?5个CP后四个触发器的状态?,各触发器初态为0,Vi依次输入1011时的波形图,b)串/并入-串出单向移存器,工作原理:,1)串行输入,2)并行输入:,清零,接收(以D0D1D2D3=1010为例),(2)双向移位寄存器,多功能双向移位寄存器74194,注意:,清零为异步;置数为同步。,练习:试分析电路状态转换图,设初始状态为0000,用两片74194接成八位双向移位寄存器,(1)串行加法器,置数,清零,移出(1)(2)加 移进(3),(2)串行累加器,(1)置数,清零,(1)移位进(2),(1)再置数,移位,加,11.1.2 计数器,计数器功能:统计输入脉冲的个数.,计数器除了直接用于计数外,还可以用于定时器、分频器、程序控制器、信号发生器等多种数字设备中.,计数器分类:,A:同步计数器;异步计数器。,B:二进制计数器;非二进制计数器。,1.同步二进制计数器,1)电路组成和逻辑功能分析,以由T触发器构成的四位同步二进制加法计数器为例进行讨论.,四位二进制加法计数器波形图,二进制计数规则:每加1,最低位改变一次状态,高位的状态是否改变,由低位是否计满来决定。,CP:计数脉冲;,Q3Q2Q1Q0:计数器的输出状态;,C:计数器的进位标志.,2)同步二 进制加法计数器的特点,由n 个触发器构成的同步二进制加法计数器的模为2n,没有多余状态,状态利用率最高;,(2)用T 触发器构成的同步二进制加法计数器,其电路结构 有两条规则:T0=1;Ti=Qi-1Qi-2Q0(i0).,(3)同步计数器工作速度快,3)MSI同步二进制加法计数器,MSI同步二进制加法计数器典型器件有74161、74163等,它们都是四位同步加法计数器.,利用多片74161实现计数器的位数扩展:,2.异步二进制计数器,1)电路组成和功能分析,由下降边沿触发的T触发器构成的四位二进制加法计数器:,波形图,如将电路改为:,二进制减法计数器波形图,2)异步二进制计数器的特点,异步二进制计数器可由T触发器构成,触发器之间串接,低位触发器的输出,作为高位触发器的时钟.,用D触发器构成二进制计数器的例子:,异步二进制减法计数器,问:为何种类型计数器,(2)异步二进制计数器,由于触发器的状态翻转是由低位向 高位逐级进行的,因此,计数速度较低.,4.同步十进制8421BCD码计数器,1)电路组成和逻辑功能分析,驱动方程和输出方程:,T0=1,同步十进制加法计数器状态图,计数器的自启动特性,时序电路由于某种原因进入无效状态,若在若干个时钟脉冲作用下,能自行返回到某个有效状态,进入有效循环圈,则称该电路具有自启动特性.否则就不具有自启动特性.在上述设计中,得到的结果正好能自启动。否则要修改设计,3)MSI同步十进制计数器,74160为中规模集成同步十进制加法计数器,其逻辑符号、功能表、引脚图均和同步二进制计数器74161类同.,6.任意进制计数器,利用已有的中规模集成计数器,经外电路的不同连接,以得到所需任意进制计数器,是数字电路中的一项关键技术.,1)反馈复位法,例:试用74160构成模6加法计数器。,例:试用四位二进制计数器74161构成模10计数器。,复位法的缺点:,存在一个极短的过渡状态;清零的可靠性较差。,提高清零可靠性的改进电路:,当CP上升沿到达,使输出为0110时,门G1输出为0,G2输出为1,G3输出为0。G3输出的0信号使清零有效,该信号在CP=1期间不变。,2)反馈置位法(置数法),利用计数器的预置数控制端来获得任意进制计数器.,例:试用74161实现模10计数器.,思考题:用74161构成5421BCD码计数器.,例:试用74161构成一个可控模10 计数器,要求:,X=1,电路为5421BCD码计数器;X=0,电路为8421BCD码计数器.,用置数法构成5421BCD码计数器,用复位法构成8421BCD码计数器,下面例子介绍 用MSI设计序列信号发生器.,序列信号发生器在数字设备中具有重要作用.序列信号发生器有两种类型:1)计数型,由计数器辅以组合电路组成;2)移存型,由移位寄存器辅以组合电路组成.,例:试设计一个能产生序列信号为0101101的计数型序 列信号发生器.,解:1)根据序列信号的长度M(本例为7),设计模M计数器;(本例计数器选用74161,并用置数法实现模7计数器),2)将计数器的输出Q2Q1Q0作为输入,序列信号作为输 出,列出真值表;,3)根据真值表,求出组合逻辑关系表达式;,4)画逻辑图.,11.1.3 移位寄存器型计数器,移位寄存器型计数器,是指在移位寄存器的基础上加反馈电路而构成的具有特殊编码的同步计数器.,移位寄存器型计数器框图,1.环形计数器,1)电路组成,(以四位环形计数器为例),特点:将串行输出端和串行输入端相连.,2)环形计数器状态图,有效循环,无效循环,3)实现自启动的方法,可利用触发器的置位 和复位端,将电路初 始状态预置成有效循 环中的某一状态;,重新设计反馈电路,使电路具有自启动 特性。设计方法如 下:,(1)列表确定反馈函数f;,(2)作反馈函数f 的卡诺图,求f 的最简表达式;,(3)画逻辑图,4)用MSI构成的能自启动环形计数器,如输出均为0,则通过 DSR移入1,进入有效 循环;否则经过移位,总会将1移到Q3处,电路进入置数状态,置入1000,进入有效循环状态,5)环形计数器的特点,环形计数器附带有译码器功能;,环形计数器的输出波形为顺序脉冲;,常称环形计数器为顺序脉冲发生器.,环形计数器的缺点是状态利用效率低,n 个触发器构成的环形计数器仅有n 个有效状态,有2n-n个无效状态.,2.扭环形计数器,1)电路组成和逻辑功能分析,可在无效循环圈内选合适的状态,通过修改反馈函数,达到自启动的目的.,2)实现自启动的方法,3)用中规模集成移位计数器构成扭环形计数器,4)扭环形计数器的特点,扭环形计数器输出码为循环码,能有效防止冒险现象;,扭环形计数器的输出波形为:,扭环形计数器状态的利用效率比环形计数器高,n 个触 发器构成的环形计数器有2n个有效状态,有2n-2n个无效 状态.,例:试设计一个能产生序列信号为00011101的移位型序列 信号发生器.,解:移位型序列信号发生器的一般框图为,11.1.4 用MSI设计同步时序逻辑电路,工作原理:将移位寄存器和外围组合电路构成一个移存型计数器,使该计数器的模和要产生的序列信号的长度相等,并使移位寄存器的串行输入信号F(即组合电路的输出信号)和所要产生的序列信号相一致。,设计方法:序列长度为8,考虑用3位移位寄存器。选用74194。仅使用74194的Q0、Q1和Q2。,状态划分,0 0 0 1 1 1 0 1 0 0 0 1 1 1 0 1,求右移串行输入信号DSR,外围组合电路用四选一MUX实现,取Q1Q2为地址,则:,画电路图,状态划分,解:,由于序列长度为5,先对序列按3位划分。,对序列按4位划分:,求左移串行输入信号DSL,经检查电路可以进行自启动,11.2 时序逻辑电路的分析方法,分析目的:所谓分析,就是由给定电路,来找出电路的功能。对时序逻辑电路而言,本质上是求电路在不同的外部输入和当前状态条件下的输出情况和状态转换规律.,同步时序逻辑电路和异步时序逻辑电路有不同的分析方法。,11.2.1 同步 时序逻辑电路的分析方法,由于在同步时序电路中,各触发器的动作变化是在CP脉冲作用下同时发生的,因此,在同步电路的分析中,只要知道了在当前状态下各触发器的输入(即驱动信号),就能根据触发器的特性方程,求得电路的下一个状态,最终找到电路的状态转换规律。,(3)根据状态方程和输出方程,列出状态表;,(4)根据状态表画出状态图或时序图;,(5)由状态表或状态图(或时序图)说明电路的逻辑功能.,分析步骤:,列出时序电路的输出方程和驱动方程(即该时序电路中组合电路部分的逻辑函数表达式);,(2)将上一步所得的驱动方程代入触发器的特性方程,导出 电路的状态方程;,例:分析下列时序电路.,(1)写出输出方程和驱动方程.,Z=ABQn,(2)写出状态方程.,(3)列出状态表.,(4)列状态图.,Z=ABQn,(5)说明逻辑功能.,串行输入串行输出的时序全加器.A和B为两个二进制加数,Qn为低位来的进位,Z表示相加的结果,Qn+1表示向高位的进位.,例:分析下列时序电路的逻辑功能.,00,10,01,11,0/0,0/0,0/0,0/0,1/0,1/0,1/0,1/1,功能:1111序列检测器,11.3 同步时序逻辑电路设计方法,11.3.1 用SSI设计同步时序逻辑电路,由触发器设计同步时序逻辑电路的一般步骤:,(1)根据逻辑要求,建立原始状态表或原始状态图;,(2)利用状态化简技术,简化原始状态表,消去多余状态;,(3)状态分配或状态编码,即将简化后的状态用二进制代码 表示;,(4)选择触发器类型,并根据编码后的状态表求出驱动方程 和输出方程;,(5)检查自启动性,若在所设计电路中存在无效状态,则必须 检查电路能否自启动,如果不能自启动,则需修改设计;,(6)画出逻辑图.,例:试设计一个“111”序列检测器.要求:当连续输入三个 或三个以上“1”时,输出为“1”,否则输出为“0”.,解:(1)建立原始状态表,S0:输入0以后的状态;(即未收 到一个“1”以前的状态),S1:输入一个“1”以后的状态;,S2:连续输入二个“1”以后的状态;,S3:连续输入三个或三个以上“1”以后的状态,原始状态图,状态S2和S3 在相同的输入下有相同的输出,而次态也相同,称S2和S3两个状态等价.等价状态仅需保留一个.这里,去除S3,保留S2,可得简化状态图.,(2)状态化简,(3)状态编码,3个状态,需要2个触发器,每个状态用2位二进制编码.,本例如选用D触发器,(4)选择触发器类型,求驱动方程和输出方程;,(5)检查自启动特性,本例存在无效状态Q1Q0=11,由上面卡诺图可见:当Q1Q0=11时,若X=0,则D1D0=00,次态为00;当Q1Q0=11时,若X=1,则D1D0=10,次态为10;结论:能自启动.,(6)画逻辑图和完整的状态图.,