数字电路与逻辑设计-第6章-时序逻辑电路.ppt
第5章 时序逻辑电路,5.1 概述 5.2 时序逻辑电路设计的分析方法 5.3 计数器 5.4 寄存器5.5 顺序脉冲发生器5.6 时序逻辑电路的设计方法,5.1.1 时序逻辑电路概述,1、时序电路的特点,在任何时刻的输出,不仅与该时刻的输入信号有关,而且还与电路原来的状态有关。,5.1 时序逻辑电路的分析与设计,2、时序电路逻辑功能的表示方法,功能可用逻辑表达式、状态表、卡诺图、状态转换图、时序图和逻辑图6种方式表示,这些表示方法在本质上是相同的,可以互相转换。,逻辑表达式有:,从上图可知,时序电路特点:由组合电路和存储电路两部分电路组成。由具有“记忆”功能的“存储电路”记住电路当前时刻的状态,并产生下一时刻的状态;存储电路的基本单元电路是“触发器”;电路必须具有“反馈”功能,增加两组反馈线:第一组反馈线Z1Zk 是存储电路当前时刻的输入,第二组反馈线Q1QL 是存储电路下一时刻的输出。“状态”概念十分重要。存储电路当前时刻的状态,称为现态或原态;下一时刻的状态,称为次态或新态。,组合逻辑与时序逻辑的区别,组合逻辑 时序逻辑,1、定义,2、结构,不包含存储元件,包含存储元件,3、功能描述,线路特性用输出函数描述,线路特性用输出函数及次态函数描述,输出仅与当时的输入有关,输出与当时的输入及线路状态有关,3、时序电路的分类,(1)根据时钟分类同步时序电路中,各个触发器的时钟脉冲相同,每来一个时钟脉冲,电路的状态只改变一次。异步时序电路中,电路中没有统一的时钟脉冲,电路状态改变时,触发器的翻转有先有后,异步进行。(2)根据输出分类 输出不仅与现态有关,还与当前的输入有关。Mealy(米里)型时序电路 输出仅与电路的现态有关,与当前的输入无关;或者直接以电路的状态作为输出。Moore(莫尔)型时序电路,电路图,时钟方程驱动方程输出方程,状态方程,状态图、状态表或时序图,判断电路逻辑功能,1,2,3,5,5.1.2 时序逻辑电路的分析方法,时序电路的分析步骤:,计算,4,2、时序逻辑电路的分析步骤(1)确定时序电路工作方式。时序电路有同步电路和异步电路之分,同步电路中各触发器的时钟端均与总的时钟相连,即CP1=CP2=CP,这样在分析电路时每一个触发器所受时钟控制是相同的,可总体考虑。而异步电路中各触发器的时钟脉冲是不完全相同的,故在分析电路时必须分别考虑,以确定触发器的翻转条件。(2)写驱动方程。驱动方程即为各触发器控制输入端的逻辑表达式,它们决定着触发器的未来状态。驱动方程必须根据逻辑图的连线得出。(3)确定状态方程。状态方程也称为次态方程,它表示了触发器次态与现态之间的逻辑关系。状态方程是将各触发器的驱动方程代入特性方程而得到。,(4)写输出方程。若电路有外部输出,如计数器的进位输出,则要写出这些输出的逻辑表达式,即输出方程。(5)列状态表。状态表即状态转换真值表,它是将电路所有现态依次列举出来,分别代入各触发器的状态方程中求出相应的次态并列成表。通过状态表可分析出时序电路的转换规律。(6)状态图和时序图。状态图和时序图分别是描述时序电路逻辑功能的另外二种方法。状态图是将状态表变成了图形的形式;而时序图即为电路的时序波形图,为了分析直观,这二种形式也是必不可少的。,例1,时钟方程:,输出方程:,输出仅与电路现态有关。,同步时序电路的时钟方程可省去不写。,驱动方程:,1,写方程式,2,求状态方程,JK触发器的特性方程:,将各驱动方程代入,即得电路的状态方程:,3,计算、列状态表,0 0 0,0 0 1,0 1 0,0 1 1,1 0 0,1 0 1,1 1 0,1 1 1,0 0 1,0 1 1,1 0 1,1 1 1,0 0 0,0 1 0,1 0 0,1 1 0,0,0,0,0,1,1,0,0,4,画状态图、时序图,状态图,5,电路功能,时序图,有效循环的6个状态分别是05这6个十进制数字的格雷码,即:000001011111110100000 用格雷码表示的六进制同步加法计数器。当对第6个脉冲计数时,计数器又重新从000开始计数,并产生输出Y1。,例2,输出方程:,输出与输入有关,,同步时序电路,省去时钟方程。,驱动方程:,1,写方程式,2,求状态方程,T触发器的特性方程:,将各触发器的驱动方程代入,即得电路的状态方程:,3,计算、列状态表,4,5,电路功能,当输入X 0时,在CP作用下,4个状态按递增规律循环变化,即:0001101100当X1时,4个状态按递减规律循环变化,即:0011100100该电路既具有递增计数功能,又具有递减计数功能,是一个2位二进制同步可逆计数器。,画状态图时序图,分析异步时序电路,异步时序电路的分析与同步时序电路的分析基本相同,但由于在异步时序电路中并不是所有触发器的CP端均与总的时钟脉冲相连,所以在分析时要特别注意每个触发器的时钟脉冲的连接方式,这样才能正确确定触发器的翻转情况。,例3,异步时序电路,时钟方程:,驱动方程:,1,写方程式,2,求状态方程,D触发器的特性方程:,将各驱动方程代入,即得电路的状态方程:,3,计算、列状态表,4,5,电路功能,在CP的作用下,电路的8个状态按递减规律循环变化,即:000111110101100011010001000电路具有递减计数功能,是一个3位二进制异步减法计数器。,画状态图、时序图,组成:由一组触发器构成 用途:累计输入脉冲个数 最大记忆脉冲数称为该计数器的模,记为N。模2n计数器需n个触发器,5.3 计数器,计数器是对输入脉冲进行计数的逻辑部件。,计数器是数字系统和计算机广泛使用的逻辑器件,不仅用于对时钟脉冲个数进行计数,还用作分频、定时、控制、节拍发生器等。通常把作用于计数器的时钟脉冲称为计数脉冲,用 CP 表示。,记忆输入脉冲个数的电路称为计数器。,计数器,二进制计数器(计数长度N=2n),十进制计数器,N进制计数器(N2n),加法计数器,同步计数器,异步计数器,减法计数器,可逆计数器,加法计数器,减法计数器,可逆计数器,二进制计数器,十进制计数器,N进制计数器,5.3 计数器,计数器:用以统计输入时钟脉冲CP个数的电路。计数器的分类:,5.3 二进制计数器,1按计数进制分 二进制计数器:按二进制数运算规律进行计数的电路称作二进制计数器。十进制计数器:按十进制数运算规律进行计数的电路称作十进制计数器。任意进制计数器:二进制计数器和十进制计数器之外的其它进制计数器统称为任意进制计数器。,二进制计数器是结构最简单的计数器,但应用很广。,2按数字的变化规律 加法计数器:随着计数脉冲的输入作递增计数的电路称作加法计数器。减法计数器:随着计数脉冲的输入作递减计数的电路称作减法计数器。加/减计数器:在加/减控制信号作用下,可递增计数,也可递减计数的电路,称作加/减计数器,又称可逆计数器。也有特殊情况,不作加/减,其状态可在外触发控制下循环进行特殊跳转,状态转换图中构成封闭的计数环。,3按计数器中触发器翻转是否同步分 异步计数器:计数脉冲只加到部分触发器的时钟脉冲输入端上,而其它触发器的触发信号则由电路内部提供,应翻转的触发器状态更新有先有后的计数器,称作异步计数器。同步计数器:计数脉冲同时加到所有触发器的时钟信号输入端,使应翻转的触发器同时翻转的计数器,称作同步计数器。,异步计数器的计数脉冲没有加到所有触发器的CP端。当计数脉冲到来时,各触发器的翻转时刻不同。分析时,要特别注意各触发器翻转所对应的有效时钟条件。异步二进制计数器是计数器中最基本最简单的电路,它一般由接成计数型的触发器连接而成,计数脉冲加到最低位触发器的CP端,低位触发器的输出Q作为相邻高位触发器的时钟脉冲。,异步二进制计数器,返回,1异步二进制加法计数器,必须满足二进制加法原则:逢二进一(1+1=10,即Q由10时有进位。)组成二进制加法计数器时,各触发器应当满足:每输入一个计数脉冲,触发器应当翻转一次(即用T触发器);当低位触发器由1变为0时,应输出一个进位信号加到相邻高位触发器的计数输入端。,图5-12 3位异步二进制加法计数器,(1)JK触发器构成的3位异步二进制加法计数器(用CP脉冲下降沿触发)电路组成,工作原理,计数器的状态转换表,表5-5 3位二进制加法计数器状态转换表,时序图,图5-13 3位二进制加法计数器的时序图,波形图,F0每输入一个时钟脉冲翻转一次。,F1在Q0由1变0时翻转。,F2在Q1由1变0时翻转。,二分频,四分频,八分频,状态转换图,图5-14 3位二进制加法计数器的状态转换图,圆圈内表示Q2Q1Q0的状态,用箭头表示状态转换的方向,结论,如果计数器从000状态开始计数,在第八个计数脉冲输入后,计数器又重新回到000状态,完成了一次计数循环。所以该计数器是八进制加法计数器或称为模8加法计数器。,如果计数脉冲CP的频率为f0,那么Q0输出波形的频率为1/2f0,Q1输出波形的频率为1/4 f0,Q2输出波形的频率为1/8 f0。这说明计数器除具有计数功能外,还具有分频的功能。,图5-15 由D触发器构成的3位异步二进制加法计数器(a)电路图(b)时序图,(2)由D触发器构成的3位异步二进制加法计数器(用CP脉冲上升沿触发),2异步二进制减法计数器,必须满足二进制数的减法运算规则:0-1不够减,应向相邻高位借位,即10-11。组成二进制减法计数器时,各触发器应当满足:每输入一个计数脉冲,触发器应当翻转一次(即用T触发器);当低位触发器由0变为1时,应输出一个借位信号加到相邻高位触发器的计数输入端。,图5-16 3位异步二进制减法计数器(a)逻辑图(b)时序图,(1)JK触发器组成的3位异步二进制减法计数器(用CP脉冲下降沿触发)。,表5-6 3位二进制减法计数器状态表,图5-17 3位异步二进制减法计数器的状态转换图,圆圈内表示Q2Q1Q0的状态,用箭头表示状态转换的方向,图5-18 由D触发器构成的3位异步二进制减法计数器,(2)D触发器构成的3位异步二进制减法计数器(用CP脉冲上升沿触发)。,异步二进制计数器的构成方法可以归纳为:,N位异步二进制计数器由N个计数型(T)触发器组成。,若采用下降沿触发的触发器加法计数器的进位信号从Q端引出 减法计数器的借位信号从Q端引出,若采用上升沿触发的触发器加法计数器的进位信号从Q端引出 减法计数器的借位信号从Q端引出,N位二进制计数器可以计2N个数,所以又可称为2N进制计数器。,异步二进制计数器的优点:电路较为简单。,缺点:进位(或借位)信号是逐级传送的,工作频率不能太高;,状态逐级翻转,存在中间过渡状态。,状态从111000的过程?,111110 100 000,集成二进制异步计数器,74197、74LS197,计数/置数,异步清零,异步置数,加法计数,二 八 十六进制计数,各触发器的驱动方程:,同步二进制计数器,返回,同步计数器中,各触发器的翻转与时钟脉冲同步。同步计数器的工作速度较快,工作频率也较高。,1同步二进制加法计数器,(1)设计思想:所有触发器的时钟控制端均由计数脉冲CP输入,CP的每一个触发沿都会使所有的触发器状态更新。应控制触发器的输入端,可将触发器接成T触发器。当低位不向高位进位时,令高位触发器的T0,触发器状态保持不变;当低位向高位进位时,令高位触发器的T=1,触发器翻转,计数加1。,(2)当低位全1时再加1,则低位向高位进位。111111100111110001111110000可得到T的表达式为:,T0=J0=K0=1T1=J1=K1=Q0 T2=J2=K2=Q1Q0T3=J3=K3=Q2Q1Q0,表5-7 4位二进制加法计数器的状态转换表,图5-19 4位同步二进制加法计数器的时序图,图5-20 4位同步二进制加法计数器,T0=J0=K0=1T1=J1=K1=Q0 T2=J2=K2=Q1Q0T3=J3=K3=Q2Q1Q0,2同步二进制减法计数器,(1)设计思想:所有触发器的时钟控制端均由计数脉冲CP输入,CP的每一个触发沿都会使所有的触发器状态更新。应控制触发器的输入端,可将触发器接成T触发器。当低位不向高位借位时,令高位触发器的T0,触发器状态保持不变;当低位向高位借位时,令高位触发器的T=1,触发器翻转,计数减1。,(2)触发器的翻转条件是:当低位触发器的Q端全1时再减1,则低位向高位借位。,1011100111100011111000011111可得到T的表达式为:,表5-8 4位二进制减法计数器的状态转换表,3同步二进制可逆计数器,将加法和减法计数器综合起来,由控制门进行转换,可得到可逆计数器。,图5-21 4位同步二进制可逆计数器,S为加减控制端S=1时,加法计数S=0时,减法计数,选用4个CP下降沿触发的JK触发器,分别用FF0、FF1、FF2、FF3表示。,二、十进制计数器,状态图,输出方程:,时钟方程:,1、十进制同步加法计数器,状态方程,电路图,比较,得驱动方程:,将无效状态10101111分别代入状态方程进行计算,可以验证在CP脉冲作用下都能回到有效状态,电路能够自启动。,2、十进制同步减法计数器,选用4个CP下降沿触发的JK触发器,分别用FF0、FF1、FF2、FF3表示。,状态图,输出方程:,时钟方程:,状态方程,次态卡诺图,将无效状态10101111分别代入状态方程进行计算,可以验证在CP脉冲作用下都能回到有效状态,电路能够自启动。,电路图,比较,得驱动方程:,例:分析图示计数器为几进制计数器。,三、N进制计数器(逢非2n个脉冲归零),状态方程:,列状态表的过程如下:首先假设计数器的初始状态000,然后根据在CP计数脉冲触发下各触发器的状态。在第1个CP计数脉冲触发下状态为001,反复判断,直到第5个CP脉冲时计数器的状态又回到000。即5个计数脉冲计数器状态重复一次,所以该计数器为五进制计数器。,用同步(CR=0条件下,输入一个CP信号后各触发器才能清零)或异步(直接CR=0即可清零)清零端或置数端归零构成N进置计数器,均采用同步方式的有74LS163;均采用异步方式的有74LS193、74LS197、74LS192;清零采用异步方式、置数采用同步方式的有74LS161、74LS160;只具有异步清零功能,如CC4520、74LS190、74LS191。,四、集成计数器的应用,4位集成二进制同步加法计数器74LS161,COCPTQ3Q2Q1Q0。CO=1,进位。,十进制计数器,缺点是在Ql输出波形上有毛刺,这是因为计数器的Q3Q1同时为l(即状态1010)时才会产生置0脉冲CR,使计数器归0,所以,计数器在状态1010 闪一下,这种工作方式不能可靠地归0,会造成计数错误。,例,过渡状态,1 0 1 0,例如,设Q1比Q3翻转速度快,则一旦Q1由10后,CR立即由0 1,如果Q3还没有完成翻转,则因清零信号已消除,使输出状态保持在1000状态,这样就发生了错误。改进的方法是加一个基本RS触发器。,由于集成组件各触发器在翻转过程中,由于速度不等,可能出现不能使全部触发器同时归0。,提高归零可靠性的方法,二、M16的任意进制计数器的设计(级联)M=(147)10=(10010011)2,同步级联,00000000,10010011,八位二进制数,进位“1”片(2)才能计数,清零法,也可以采用置数法,由于置数是同步的,不用设过渡状态,10010011,异步级联构成256进制计数器(1616256),片(1)16个脉冲 Q3Q2Q1Q0=11110000时,CO:1 0片(2)CP:01,上沿作用,计数。,COCPTQ3Q2Q1Q0。,例,用74LS161实现60进制计数(106)5421码,也可以考虑用同步级联,但是CO端都没有输出,例,本节小结:,计数器是一种应用十分广泛的时序电路,除用于计数、分频外,还广泛用于数字测量、运算和控制,从小型数字仪表,到大型数字电子计算机,是任何现代数字系统中不可缺少的组成部分。计数器可利用触发器和门电路构成。但在实际工作中,主要是利用集成计数器来构成。在用集成计数器构成N进制计数器时,需要利用清零端或置数控制端,让电路跳过某些状态来获得N进制计数器。,存放二进制数据或代码的电路称为寄存器。,寄存器是由具有存储功能的触发器组合起来构成的。一个触发器可以存储1位二进制代码,存放n位二进制代码的寄存器,需用n个触发器来构成。,按照功能的不同,可将寄存器分为基本寄存器和移位寄存器两大类。,4.3.2 寄存器,数码寄存器有双拍和单拍两种工作方式。双拍工作方式是指接收数码的过程分二步进行,第一步清零,第二步接收数码的工作方式。单拍工作方式是指只需一个接收脉冲就可完成接收数码的工作方式。一个触发器能存储一位二进制代码,N 个触发器组成的 N 位寄存器能存储 N 位二进制代码。各种触发器均能构成寄存器,用 D 触发器最为简单。寄存器是同步时序电路,写入脉冲连到所有触发器时钟输入端。,一、基本寄存器,1、单拍工作方式基本寄存器,无论寄存器中原来的内容是什么,只要CP上升沿到来,输入数据D0D3,立即被送入进寄存器中,即有:,2、双拍工作方式基本寄存器,基本寄存器,所谓移位功能,是指寄存器里存储的代码在移位脉冲的作用下依次的左移或右移。因此,移位寄存器还可以实现代码的串行并行转换、数值运算和数据处理等。,二、移位寄存器,根据移位数据的输入-输出方式,又可将它分为串行输入串行输出、串行输入并行输出、并行输入串行输出和并行输入并行输出四种电路结构:,串入串出,串入并出,并入串出,并入并出,二、移位寄存器,1、单向移位寄存器,并行输出,时钟方程:,驱动方程:,状态方程:,(1)在CP脉冲操作下,可以依次右移或左移。(2)n位单向移位寄存器可以寄存n位二进制代码。n个CP脉冲即可完成串行输入工作,此后可从Q0Qn-1端获得并行的n位二进制数码,再用n个CP脉冲又可实现串行输出。(3)若串行输入端状态为0,则n个CP脉冲后,寄存器便被清零。,单向移位寄存器具有以下主要特点:,2、双向移位寄存器,M=0时右移,M=1时左移,三、寄存器的应用,1、环形计数器,即将FFn-1的输出Qn-1接到FF0的输入端D0。,根据起始状态设置的不同,在输入计数脉冲CP的作用下,环形计数器的有效状态可以循环移位一个1,也可以循环移位一个0。,1、环形计数器,(一)电路组成,(二)工作原理,1000,0100,0010,0001,有效循环,0000,1111,0101,1010,1100,0110,0011,1001,1101,1110,0111,1011,无效循环,(三)能自启动的环型计数器,2、扭环形计数器,状态图,能自启动的4位扭环形计数器,本节小结:,寄存器是用来存放二进制数据或代码的电路,是一种基本时序电路。任何现代数字系统都必须把需要处理的数据和代码先寄存起来,以便随时取用。寄存器分为基本寄存器和移位寄存器两大类。基本寄存器的数据只能并行输入、并行输出。移位寄存器中的数据可以在移位脉冲作用下依次逐位右移或左移,数据可以并行输入、并行输出,串行输入、串行输出,并行输入、串行输出,串行输入、并行输出。寄存器的应用很广,特别是移位寄存器,不仅可将串行数码转换成并行数码,或将并行数码转换成串行数码,还可以很方便地构成移位寄存器型计数器和顺序脉冲发生器等电路。,95,6.3 同步时序电路的设计,设计步骤,(1)分析要求,作状态图;,(2)状态化简;,(3)选触发器及确定触发器的个数;,(4)状态分配(状态编码);,(5)作状态转换真值表;,(6)求出状态方程、激励方程、和输出方程;,(7)对存在无效状态的电路,检查能否自启动;,(8)电路图。,96,6.3.1 形成原始状态图和状态表,例1:试作101串行序列检测器(可重叠)的状态图和状态表。,X:,Y:,97,S3 d/d d/d,S2 S0/0 S1/1,S1 S2/0 S1/0,S0 S0/0 S1/0,设:S0=00 S1=01 S2=10 S3=11,98,0 0 0 0 0 0,0 0 1 1 0 0,0 1 0 0 0 0,0 1 1 d d d,1 0 0 0 1 0,1 0 1 0 1 0,1 1 0 0 1 1,1 1 1 d d d,设:S0=00 S1=01 S2=10 S3=11,99,000,001,010,011,100,101,110,111,例2:试设计三位二进制加/减法(可逆)计数器的状态图和状态表。若X=0作减法;X=1作加法。,100,0 0 0 111/1 001/0,0 0 1 000/0 010/0,0 1 0 001/0 011/0,0 1 1 010/0 100/0,1 0 0 011/0 101/0,1 0 1 100/0 110/0,1 1 0 101/0 111/0,1 1 1 110/0 000/1,101,6.3.2 状态化简,化简目的:,(2)简化激励方程。,等效状态最简单的判别方法是:“输入相同,输出相同,到达的次态也相同”。,(1)使触发器个数最少;,所谓状态化简就是要省略等效状态。,102,例:,103,一、完全确定状态表的化简,等效状态:设状态S1和S2是完全确定状态表中的两个状态,如果对于所有可能的输入序列,分别从状态S1和S2出发,所得到的输出和次态序列完全相同,则状态S1和S2是等效的。,记为:(S1,S2),或者说S1和S2是等效对。,等效状态可以合并。,等效状态的传递性:若状态S1和S2是等效的,状态S2和S3是等效的,则状态S1和S3也是等效的。,104,例如:若有(S1,S2)和(S2,S3),则有等效类(S1,S2,S3)。,最大等效类:若一个等效类不是任何其它等效类的子集,则此等效类称为最大等效类。即使是一个状态,只要它不包含在别的等效类中,它也是最大等效类。,状态化简就是从原始状态表中找出最大等效类的集合,然后用一个新符号表示最大等效类,从而得到最小化状态表。,等效类:是彼此等效的状态的集合称为等效类。,105,如果Si和Sj是完全确定原始状态表中的两个现态,则Si和Sj等效的条件可归纳为:,在输入的各种取值组合下,,第一,它们的输出完全相同;,第二,它们的次态满足下列条件之一:,(1)次态相同;,(2)次态交错(循环);,(3)次态保持原状态不变;,(4)次态对等效。,106,次态相同,次态交错(循环),107,次态对等效,保持原状态不变,108,1、观察法状态化简,满足输出都相同的现态只有A,B和C,D。但可见仅C,D是等效的。故上表的最大等效类集合为:(A),(B),(C,D)。,109,若将(A)、(B)、(C,D)分别用符号a、b、c表示并代入原始状态表中,则得最小化状态表。,110,2、隐含表法状态化简,基本思想:对原始状态表中的所有状态两两比较,找出等效状态对;利用等效状态的传递性得到等效类和最大等效类;将最大等效类中的状态合并,得到最小化状态表。,111,例:化简下列状态表。,112,(1)作隐含表,113,(2)顺序比较,先将水平方向A与纵向的所有状态一一比较,再将水平方向B与纵向一一比较,依此类推。,比较的结果有3种情况:,*状态对等效(在方格内填),*状态对不等效(在方格内填),*状态对是否等效需要进一步检查(填入次态对),114,CF,BE,115,(3)关联比较,关联比较是要确定隐含表中待检查的那些次态对是否等效。如果隐含表中某方格内有一个次态对不等效,则该方格对应的两个状态就不等效。于是在相应方格中增加标志“/”。,若方格内的次态对均为等效状态对,则该方格对应的状态为等效状态。该方格不增加任何标志。,例如:AB对应的方格中次态为CF,而CF有“”表明CF等效,故判定AB等效。,116,再看:,已知C、F等效,而B、E又与A、E构成循环,故A、E是等效对,BE也是等效对。,状态C、D和D、E对应的方格都已标有“”,故D、G不等效。只要有一个方向有“”标记该状态对就不等效了。在C、D和D、E间标记“/”。,由隐含表可得以下4个等效状态对:,(A,B)、(A,E)、(B,E)、(C,F),117,(4)确定最大等效类,作最小化状态表。,根据等效关系的传递性,等效状态对(A,B)、(B,E)、(A,E)构成最大等效类(A,B,E)。而(C,F)也是最大等效类。另外,状态G和D不同任何其它状态等效,所以它们也是最大等效类。这样最大等效类的集合为:,(A,B,E)、(C,F)、(D)、(G),将最大等效类(A,B,E)、(C,F)、(D)、(G)分别用新符号a、b、c、d表示,并代入原状态表中。,则可得以下简化表:,118,d b/1 c/0,c c/1 a/0,b c/0 d/0,a b/0 a/1,119,6.3.3 状态分配,(1)在相同输入条件下具有相同次态的现状态应分配逻辑相邻编码。,(2)同一现状态在相邻输入条件下的不同次态应分配逻辑相邻编码。,分配原则:,这样可以保证相应触发器的激励函数对应的卡诺图中有较多的“1”相邻有利于激励函数的化简。,这是因为在激励函数的卡诺图中,同一现态,相邻输入所对应的方格相邻。该原则也有利于激励函数的化简。,120,(3)在所有输入条件下具有相同输出的现状态应分配逻辑相邻编码。,当时序电路的状态分配满足原则1和原则2时,电路的激励方程比较简单;满足原则3时,电路的输出表达式比较简单。这三条原则实际分配时可能会产生矛盾,此时应按原则1、原则2、原则3的优先顺序进行分配。,这可使输出函数对应的卡诺图中有较多的“1”相邻,有利于输出函数的化简。,121,例:对下列状态表进行状态分配。,由原则1:A、B应分配相邻编码,B、C应分配相邻编码;由原则2:A和C、A和D、B和C应分配相邻编码;由原则3:B和C应分配相邻编码。,122,A=00,B=01,C=11,D=10。,所以对上述状态表的一种状态分配方案是:,完成状态分配后的编码状态表如下图:,123,6.3.4 求激励方程和输出方程,例:用J-K触发器和适当的逻辑门实现下列状态表:,124,下面用两种方法求激励方程:,0 0 0 1 1 0,0 0 1 0 0 0,0 1 0 0 1 0,0 1 1 0 0 1,1 0 0 0 1 0,1 0 1 0 0 1,1 1 0 1 1 0,1 1 1 1 0 1,方法一:从状态方程中提取激励方程,125,126,0 0 0 1 1 1 d 1 d 0,0 0 1 0 0 0 d d 1 0,0 1 0 0 1 d 1 1 d 0,0 1 1 0 0 d 1 d 1 1,1 0 0 0 1 0 d 1 d 0,1 0 1 0 0 0 d d 1 1,1 1 0 1 1 d 0 1 d 0,1 1 1 1 0 d 0 d 1 1,方法二:直接求激励方程,127,128,129,130,6.3.5 检查电路的自启动情况,一、什么样的电路需要检查?,对于存在无效状态的电路需要讨论其自启动情况。,二、怎么检查?,检查所有无效状态能否在有限个时钟脉冲作用下进入有效状态且输出正确,或检查电路中是否存在无效循环。,三、如何修改不能自启动的电路?,修改状态转换表或采取适当的解决措施。,131,6.3.5 同步时序逻辑电路设计实例,一、序列检测器,用途:用于对串行随机序列信号进行检测,从中识别某种特定的序列。,设计序列检测器必须明确:,(1)检测什么样的特定序列,如“101”序列;,(2)检测到特定序列后,输出“1”标志还是“0”标志;,(3)给定序列是否可以首尾重叠。,132,例:试用JK触发器设计一个串行“111”序列检测器(可重叠)。,设四个状态,它们分别表示如下的意义:,S1表示收到第一个有效输入“1”;,S2表示收到第二个有效输入“1”;,S3表示收到第三个或三个以上有效输入“1”;,S0表示未收到第一个有效输入“1”,即初始状态;,133,(1)画状态图,134,S0 S0/0 S1/0,S1 S0/0 S2/0,S2 S0/0 S3/1,S3 S0/0 S3/1,由状态图可得状态表:,135,检查状态图或状态表,可见S2和S3等效,故省去S3,可得简化后的状态图如下:,(2)状态化简,(3)确定触发器类型及个数,136,若分配S0=00、S1=01、S2=10、S3=11,则得下表:,0 0 0 0 0 0,0 0 1 0 0 0,0 1 0 0 0 0,0 1 1 d d d,1 0 0 0 1 0,1 0 1 1 0 0,1 1 0 1 0 1,1 1 1 d d d,(4)状态分配及状态转换真值表,137,(5)求激励函数和输出函数,138,0 1 1 0 0 0,1 1 1 1 0 0,(6)检查自启动情况,经检查,无效状态在不同输入情况下都能进入有效状态且输出正确,电路中没有无效循环,因此本电路能自启动。,139,(7)画电路图,140,二、代码检测器,例:试用D触发器设计一个代码检测器,它接收串行的二进制代码,输入代码每三位为一组,当连续输入的三位代码为“011”时,电路输出“1”,否则输出为“0”。每次判别后电路都返回起始状态,准备接收下一组代码。,代码检测器检测的对象是依次输入的指定代码。检测时应按各代码的规定进行分组,组与组之间不能混淆。,141,(1)画状态图,142,(2)状态化简,由图可见:状态D、F、G是等效的。故可以消去F和G,得以下化简后的状态图:,143,(3)确定触发器类型及个数,共5个状态,故由三个触发器即可完成。,状态 A、B、C、D、E按自然二进制数分配的代码为:000、001、010、011、100。,(4)状态分配,144,(5)作状态转换真值表,0 0 0 0 0 0 1 0,0 0 0 1 0 1 1 0,0 0 1 0 0 1 1 0,0 0 1 1 0 0 0 0,0 1 0 0 0 0 0 0,0 1 0 1 d d d d,0 1 1 0 d d d d,0 1 1 1 d d d d,145,1 0 0 0 0 1 0 0,1 0 0 1 1 0 0 0,1 0 1 0 0 1 1 0,1 0 1 1 0 0 0 0,1 1 0 0 0 0 0 1,1 1 0 1 d d d d,1 1 1 0 d d d d,1 1 1 1 d d d d,146,(6)求激励函数和输出函数,147,148,149,150,(7)检查自启动情况,0 1 0 1 0 1 0 0,0 1 1 0 0 1 1 0,0 1 1 1 0 0 0 0,1 1 0 1 1 0 0 1,1 1 1 0 0 1 1 1,1 1 1 1 0 0 0 1,经检查,所有无效状态在不同输入情况下都能进入有效状态,电路中没有无效循环,因此本电路能自启动。,但是无效状态有错误输出,可修改输出方程使 来解决。,本节小结:,时序电路的特点:任何时刻的输出不仅和输入有关,而且还决定于电路原来的状态。时序电路可分为同步和异步时序电路两类。它们的主要区别是,前者的所有触发器受同一时钟脉冲控制,而后者的各触发器则受不同的脉冲源控制。时序电路的逻辑功能可用逻辑图、状态方程、状态表、卡诺图、状态图和时序图等6种方法来描述,它们在本质上是相通的,可以互相转换。时序电路的分析,是由逻辑图到状态图的转换;而时序电路的设计,在画出状态图后,由状态图到逻辑图的转换。,