1、本章要求:本章要求:掌握同步时序电路的基本分析掌握同步时序电路的基本分析过程过程掌握同步时序电路的设计原理掌握同步时序电路的设计原理掌握状态表的化简过程掌握状态表的化简过程组合电路记忆电路x1xmz1znY1Yry1yr4.1 时序电路的描述时序电路的描述注:这是一个一般的结构,在实际的逻辑中可注:这是一个一般的结构,在实际的逻辑中可以合并某些输出和状态,也可以没有输入。以合并某些输出和状态,也可以没有输入。输入变量输入变量输出变量输出变量状态变量状态变量(现态)(现态)状态变量状态变量(次态)(次态)同步时序电路和异步时序电路同步时序电路和异步时序电路n同步时序电路同步时序电路:记忆电路一般
2、由触发器构成,记:记忆电路一般由触发器构成,记忆电路中所有触发器状态的变化都是在同一时钟忆电路中所有触发器状态的变化都是在同一时钟信号操作下同时发生的。触发器的时钟信号不计信号操作下同时发生的。触发器的时钟信号不计在输入之内。在输入之内。n异步时序电路异步时序电路:记忆电路可以由触发器构成,也记忆电路可以由触发器构成,也可以由组合电路的反馈构成。记忆电路可以由组合电路的反馈构成。记忆电路状态的变状态的变化不是同时发生的化不是同时发生的,可能有公共的时钟信号,也可能有公共的时钟信号,也可能没有公共的时钟信号。可能没有公共的时钟信号。现态与次态概念现态与次态概念时钟时钟状态状态时刻时刻tktk+1
3、tk+2当前状态当前状态次态次态当前状态当前状态次态次态 以两次驱动(在同步时序逻辑中就是时钟)的间隔时以两次驱动(在同步时序逻辑中就是时钟)的间隔时间作为时序电路的定时单位,把某个间隔时刻间作为时序电路的定时单位,把某个间隔时刻 tk 作为作为“当当前时刻前时刻”,将下一个间隔时刻,将下一个间隔时刻 tk+1 称为称为“次时刻次时刻”。对于对于“当前时刻当前时刻”和和“次时刻次时刻”的表述,都是相对于的表述,都是相对于时刻时刻 tk 而言。当前时刻的状态为而言。当前时刻的状态为现态现态,次时刻的状态为,次时刻的状态为次次态态。驱动信号驱动信号时序电路的状态方程与输出方时序电路的状态方程与输出
4、方程程)(),()()(),()(21kkkkkkttftttftyxzyxY意义:意义:次态是输入与现态的函数(一般情况,也可以无输入)次态是输入与现态的函数(一般情况,也可以无输入)输出是输入与现态的函数(一般情况,也可以无输入)输出是输入与现态的函数(一般情况,也可以无输入)注意点:注意点:Y 是次态变量,通常是一个隐含的变量,不一定是触发器是次态变量,通常是一个隐含的变量,不一定是触发器的激励输入。只有记忆电路全部是的激励输入。只有记忆电路全部是 D 触发器时,次态才与触发器时,次态才与激励相同。激励相同。1JC1XZCP1K1JC11K&1&J1J2K1K2Q1Q2例例1 状态机状态
5、机JK 触发器,触发器,Q1、Q2 是现态,是现态,X 是输入。是输入。Z 是输出,仅是现态的函数。是输出,仅是现态的函数。次态隐含在次态隐含在 J1、K1、J2、K2 中。中。1D&Q3Q2Q1Q0CP111111C1C1C1C11D1D1D例例2 计数器计数器D 触发器,无输入,触发器,无输入,Q0 Q3 为状态同时也为状态同时也是输出。是输出。次态是次态是 D0 D3,可以,可以通过组合逻辑显式地通过组合逻辑显式地写出。写出。米利模型和摩尔模型米利模型和摩尔模型组合电组合电路路记忆电路记忆电路(触发器)(触发器)输入变量输入变量组合电组合电路路激励激励状态变量状态变量输出变量输出变量时钟
6、时钟xzy)(),()()(),()(21kkkkkkttftttftyxYyxz米利(米利(Mealy)模型)模型某时刻的输出是该时刻的输入和电路状态的函数某时刻的输出是该时刻的输入和电路状态的函数)(),()()()(21kkkkkttfttftyxYyz摩尔摩尔(Moore)模型模型组合电组合电路路记忆电路记忆电路(触发器)(触发器)输入变量输入变量组合电组合电路路激励激励状态变量状态变量输出变量输出变量时钟时钟xzy某时刻的输出仅是该时刻电路状态的函数,某时刻的输出仅是该时刻电路状态的函数,与该时刻的输入无关与该时刻的输入无关。米利模型和摩尔模型的区别:米利模型和摩尔模型的区别:一、米
7、利模型的输出直接同输入有关,所以在输入变化时,一、米利模型的输出直接同输入有关,所以在输入变化时,不管状态是否改变,输出立即产生变化。即输入不仅影不管状态是否改变,输出立即产生变化。即输入不仅影响次态,同时影响输出。响次态,同时影响输出。二、摩尔模型的输出只同状态有关,所以在整个状态保持期二、摩尔模型的输出只同状态有关,所以在整个状态保持期间保持输出不变。输入的变化只影响次态。间保持输出不变。输入的变化只影响次态。三、根据上述情况,若输入与时钟同步,则两种模型的输出三、根据上述情况,若输入与时钟同步,则两种模型的输出在整个时钟周期内均保持不变,但米利模型比摩尔模型在整个时钟周期内均保持不变,但
8、米利模型比摩尔模型提前一个时钟周期改变输出。提前一个时钟周期改变输出。四、若输入存在干扰,一般不会影响摩尔模型的输出,但可四、若输入存在干扰,一般不会影响摩尔模型的输出,但可以影响米利模型的输出。以影响米利模型的输出。状态转换表状态转换表现态现态次态次态/输出输出输入输入1输入输入2输入输入n现态现态1次态次态11/输出输出11次态次态12/输出输出12次态次态1n/输出输出1n现态现态2次态次态21/输出输出21次态次态22/输出输出22次态次态2n/输出输出2n现态现态m次态次态m1/输出输出m1次态次态m2/输出输出m2次态次态mn/输出输出mn以表格的形式描述现态、输入与次态、输出的关
9、系。以表格的形式描述现态、输入与次态、输出的关系。米利模型的表格形式是:米利模型的表格形式是:摩尔模型的表格形式是:摩尔模型的表格形式是:现态现态次态次态 输出输出输入输入1输入输入2输入输入n现态现态1次态次态11次态次态12 次态次态1n 输出输出1现态现态2次态次态21次态次态22 次态次态2n 输出输出2现态现态m次态次态m1次态次态m2 次态次态mn 输出输出m以信号流图形式显示状态转换关系。以信号流图形式显示状态转换关系。米利模型形式将输出写在转换线上,摩尔模型形式将输米利模型形式将输出写在转换线上,摩尔模型形式将输出写在状态圈内。出写在状态圈内。状态转换图状态转换图状态状态状态状
10、态状态状态输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出输入/输出状态状态/输出/输出状态状态/输出/输出状态状态/输出/输出输入输入输入输入输入输入输入输入输入输入输入输入米利模型米利模型 摩尔模型摩尔模型状态转换图的特点状态转换图的特点n状态转换图中每个状态射出的状态转换线的根数状态转换图中每个状态射出的状态转换线的根数同系统输入的组合数相同,转换条件包含了所有同系统输入的组合数相同,转换条件包含了所有的输入组合。例如某系统输入组合有的输入组合。例如某系统输入组合有3种:种:00、01和和10,则无论哪个模型,每个状态射出的状
11、态,则无论哪个模型,每个状态射出的状态转换线都是转换线都是3根,分别对应根,分别对应3个输入组合。这个特个输入组合。这个特点常常被用来检查状态转换图的正确性。点常常被用来检查状态转换图的正确性。n摩尔模型的状态数通常大于米利模型的状态数。摩尔模型的状态数通常大于米利模型的状态数。形成这个特点的原因是由于米利模型中一个状态形成这个特点的原因是由于米利模型中一个状态可以对应多个输出,而摩尔模型一个状态只能对可以对应多个输出,而摩尔模型一个状态只能对应一个输出。应一个输出。例例自动售饮料机。可以投入自动售饮料机。可以投入1元或元或5角的硬币,饮料角的硬币,饮料1.5元元一杯。一杯。当先后投入的硬币满
12、当先后投入的硬币满1元元5角后,机器送出一杯饮料;当投入角后,机器送出一杯饮料;当投入的硬币满的硬币满2元后,机器送出一杯饮料以及送出一个元后,机器送出一杯饮料以及送出一个5角硬币。角硬币。作出上述自动售饮料机问题的状态转换图和状态转换表。作出上述自动售饮料机问题的状态转换图和状态转换表。分析分析1:n输出输出:设:设Z1=1输出饮料;输出饮料;Z2=1输出找零。所有的输出输出找零。所有的输出情况为情况为Z1Z2=00、Z1Z2=10、Z1Z2=11。n输入输入:当前投入的币值,:当前投入的币值,X1X2=00、币值为、币值为0;X1X2=01、币值为币值为5角;角;X1X2=10、币值为、币
13、值为1元。元。n状态状态:记录已经投入的币值,:记录已经投入的币值,S00、S1 5角、角、S2 1元。元。S0S1S200/0000/0000/0001/0010/1001/0010/0001/1010/11X1X2/Z1Z2米利模型的状态图米利模型的状态图初始状态初始状态已收已收0.5元状态元状态投币投币0.5元元已收已收1元状态元状态输出饮料输出饮料投币投币1元元现态现态次态次态/输出输出Z1Z2X1X2=00X1X2=01X1X2=10S0S0/00S1/00S2/00S1S1/00S2/00S0/10S2S2/00S0/10S0/11米利模型的状态转换表米利模型的状态转换表分析分析2
14、:n输出输出:设:设Z1=1输出饮料;输出饮料;Z2=1输出找零。所输出找零。所有的输出情况为有的输出情况为Z1Z2=00、Z1Z2=10、Z1Z2=11。n输入输入:当前投入的币值,:当前投入的币值,X1X2=00、币值为、币值为0;X1X2=01、币值为、币值为5角;角;X1X2=10、币值为、币值为1元。元。n状态状态:记录已经投入的币值,:记录已经投入的币值,S00、S1 5角、角、S2 1元、元、S2 1.5元、元、S2 2元。元。S0/00S1/00S2/00000001010110S3/10S4/11101001000001101000摩尔模型的状态图摩尔模型的状态图初始状态初始
15、状态已收已收0.5元状态元状态输出饮料输出饮料已收已收1.5元状态元状态现态现态次态次态输出输出Z1Z2X1X2=00X1X2=01X1X2=10S0S0S1S200S1S1S2S300S2S2S3S400S3S0S1S210S4S0S1S211摩尔模型的状态转换表摩尔模型的状态转换表时钟时钟状态状态输入输入S2S0S3状态状态输出输出输出输出S2米利模型米利模型摩尔模型摩尔模型X2Z1Z1两个模型的时序图两个模型的时序图 状态:已经投入的硬币总值为状态:已经投入的硬币总值为1元元 输入:再投入输入:再投入1个个5角硬币角硬币 输出:一杯饮料,即输出:一杯饮料,即Z1=1 米利模型的输出米利模
16、型的输出摩尔模型的输出摩尔模型的输出两种基本模型的相互转换两种基本模型的相互转换1、摩尔模型转换为米利模型、摩尔模型转换为米利模型n将摩尔模型状态转换表的最后一列输出去将摩尔模型状态转换表的最后一列输出去掉。掉。n在每个次态后面加上在每个次态后面加上“/输出输出”。其中的。其中的输出对应于该次态在原模型中的输出。输出对应于该次态在原模型中的输出。n观察修改后的状态转换表,合并相同的状观察修改后的状态转换表,合并相同的状态。态。2、米利模型转换为摩尔模型、米利模型转换为摩尔模型n输出同类状态输出同类状态:所有指向某个状态的状态转换线都具有相同的输出所有指向某个状态的状态转换线都具有相同的输出。这
17、种类型的状态,次态和输出是统一的,所以只要将所有这种类型的状态,次态和输出是统一的,所以只要将所有指向这个状态的状态转换线上的输出改写到表示状态的圆指向这个状态的状态转换线上的输出改写到表示状态的圆圈中,就可以将米利模型转换为摩尔模型。圈中,就可以将米利模型转换为摩尔模型。n输出非同类状态输出非同类状态:指向某个状态的状态转换线具有几个不同的输出指向某个状态的状态转换线具有几个不同的输出。显然这个状态转换成摩尔模型后将对应几个状态,所以按显然这个状态转换成摩尔模型后将对应几个状态,所以按照下列步骤改画这种类型的状态:一、将此状态分成几个照下列步骤改画这种类型的状态:一、将此状态分成几个新状态。
18、每个新状态对应一个输出,写在表示新状态的圆新状态。每个新状态对应一个输出,写在表示新状态的圆圈中。二、按照不同的输出,将原来的状态转换线分别改圈中。二、按照不同的输出,将原来的状态转换线分别改画成指向具有对应输出的新状态。画成指向具有对应输出的新状态。三、原来从输出非同三、原来从输出非同类状态出发的所有状态转换线,都应该在每个新状态中重类状态出发的所有状态转换线,都应该在每个新状态中重新画出来,并且它们的目的状态应该与原来的相同。新画出来,并且它们的目的状态应该与原来的相同。4.2 同步时序电路的分析同步时序电路的分析n根据给定的电路,确定电路的类型。列出触根据给定的电路,确定电路的类型。列出
19、触发器的激励方程。发器的激励方程。n将激励方程代入触发器的特征方程,写出电将激励方程代入触发器的特征方程,写出电路的状态方程。同时写出电路的输出方程。路的状态方程。同时写出电路的输出方程。n由状态方程和输出方程,列出电路的状态转由状态方程和输出方程,列出电路的状态转换表或状态转换图。换表或状态转换图。n分析电路的状态转换表或状态转换图,得到分析电路的状态转换表或状态转换图,得到电路的功能表示或者相应的时序图。如果已电路的功能表示或者相应的时序图。如果已知电路的功能,可以通过这一步的分析,验知电路的功能,可以通过这一步的分析,验证电路功能的正确性。证电路功能的正确性。1DC11DC1&XCPZQ
20、2Q1米利型电路。米利型电路。1121112121211121,QQXQQDXDDQDQQXQZnnnn输出方程:输出方程:D触发器:触发器:激励方程:激励方程:次态方程:次态方程:例例1现态现态次态次态/输出输出 次态次态/输出输出状态编号状态编号Q1Q2X=0X=10000/010/0S00100/010/0S11001/011/0S21101/011/1S3状态转换表状态转换表S0S1S3S20/01/11/01/00/00/00/01/0CPXZS0S2S0S1S3S3S2S0S1状态转换图和时序图状态转换图和时序图例例21JC1&XCPZQ2Q1&11K1JC11K摩尔型电路。摩尔型
21、电路。输出方程:输出方程:JK触发器:触发器:激励方程:激励方程:次态方程:次态方程:2121211211122121121,QXQQXQXQQXQQXQKXJXKXQJQKQJQQQZnnn状态转换表状态转换表Q1Q2X=0X=1Z0000010S00100100S11000110S21100111S3现态现态次态次态输出输出编号编号S0/0S1/0S3/1S2/011101000CPXZS0S1S0S0S3S2S1S0S0状态转换图和时序图状态转换图和时序图例例31JC1XZCP1K1JC11K&1&J1J2K1K2Q1Q2摩尔型电路。摩尔型电路。输出方程:输出方程:JK触发器:触发器:激
22、励方程:激励方程:次态方程:次态方程:2121212111221121121,QXQQXQQXQQXQKXJQKXQJQKQJQQQZnnnS0/0S1/0S2/101001011S3/0S0:Q1Q2=00S1:Q1Q2=01S2:Q1Q2=11S3:Q1Q2=10CPXZS0S1S1S1S1S1S1S2S2S2S0S0S0状态转换图和时序图状态转换图和时序图例例4 串行加法器串行加法器BARABS激励方程&11C11S1R&1CPABZ状态方程、输出方程和时序图状态方程、输出方程和时序图 BAQBAABQBAABQZBQAQABQBAABQRSQnnnnnnnn )()()(1CPAZB1
23、54326Q010000000001111111111001ZZ常见的同步时序电路分析常见的同步时序电路分析DDQAQBCPQCQD=1D=1D=1&DADBDCDD&1CBADnDBACnCABnBAnAQQQQQQQQQQQQQQ)1()1()1()1(1、计数器类电路、计数器类电路4位二进制同步加法计数器位二进制同步加法计数器 状态方程:状态方程:0(1)01(1)0(),0nii nijjQQQQQi二进制同步加法计数器的状态方程的一般形式二进制同步加法计数器的状态方程的一般形式 时序图时序图CPQAQDQCQB带同步置数、同步复位、保持等多种功能的带同步置数、同步复位、保持等多种功能
24、的4位二进制同步加法计数器位二进制同步加法计数器D&DQAQBCP11=1&11QCQDDCBAENPENTLOADCLR(8)(4)(2)(1)1,5DC5/2,3,4+M1M2G3G45,CT=03,CT=15CTRDIV16QAQBQCQDRCORCOCPDCBAENPENTLOADCLR=1&D&11=1&D&11=1&1&111111 1DADBDCDDDADBDCDD111110()()(),nnAAinjnjDLOAD CLR nLOAD CLR DDENP ENTQDENP ENTQQnA利用与或门作为数据选择器实现多种逻辑功能转换利用与或门作为数据选择器实现多种逻辑功能转换C
25、LRLOADENPENT功能功能0XXX复位(清零)复位(清零)10XX加载(置数)加载(置数)1111计数计数110X保持保持11X0保持保持说明:说明:用用“与或门与或门”构成数据选择器构成数据选择器(或者它或者它的变形的变形),用控制端来控制,用控制端来控制数据选择器,数据选择器,对触发器激励端的输入信号加以选择,对触发器激励端的输入信号加以选择,从而构成不同的工作模式。这是实现多从而构成不同的工作模式。这是实现多功能时序逻辑电路的一个常用手段。功能时序逻辑电路的一个常用手段。(8)(4)(2)(1)1,5DC5/2,3,4+M1M2G3G45,CT=03,CT=15CTRDIV16CP
26、并行输入并行输入ENPHLOADCLR(8)(4)(2)(1)1,5DC5/2,3,4+M1M2G3G45,CT=03,CT=15CTRDIV16D0 D3D4 D7Q0 Q3Q4 Q7并行输入并行输入计数输出计数输出计数输出计数输出联往高位联往高位二进制加法计数器的串联二进制加法计数器的串联CBADnDBACnCABnBAnAQQQQQQQQQQQQQQ)1()1()1()1(0),(10)1(0)1(0iQQQQQijjinin二进制减法计数器二进制减法计数器 状态方程状态方程二进制减法计数器的状态方程的一般形式二进制减法计数器的状态方程的一般形式与加法计数器的差别仅在于这个与加法计数器的
27、差别仅在于这个“非非”D&DQAQBCP1&1QCQDDCBAENPENTLOADU/DRCO&11QAQBQCQD&1&1=1=1&D&D1&1&1&1=1=1&1可可逆逆计计数数器器实现同步置数、保持等多功能的与或门实现可逆计数的与或门用二进制同步计数器用二进制同步计数器构成其他进制计数器构成其他进制计数器 A、同步置数法、同步置数法(8)(4)(2)(1)1,5DC5/2,3,4+M1M2G3G45,CT=03,CT=15CTRDIV16QAQBQCQDRCOCPD=0C=0B=1A=1ENPENTLOADCLR1111153414利用进位信号进行同步置利用进位信号进行同步置数,跳过若干
28、状态。数,跳过若干状态。例如例如 DCBA00113,则有以下时序图:则有以下时序图:CPQB、同步复位法、同步复位法(8)(4)(2)(1)1,5DC5/2,3,4+M1M2G3G45,CT=03,CT=15CTRDIV16QAQBQCQDRCOCPDCBAENPENTLOADCLR11118421BIN/HEXn利用输出译利用输出译码进行同步码进行同步复位,跳过复位,跳过若干状态。若干状态。例如例如 n12,则有以下时则有以下时序图:序图:120111CPQCPCP1DC11DC11DC11DC11DC1P1P2P3P4P5P1P2P3P4P5112、移位寄存器类电路、移位寄存器类电路单活
29、跃(单活跃(One-hot)电路)电路通用移位寄存器通用移位寄存器 CP11C11RQ011RD1S1&R11C11RQ11S1&R11C11RQ21S1&R11C11RQ31S1&R11PEP0P1P2P3JKQ3M11,2J1,2KC2/11,2DR1,2DQ0Q1Q2Q3Q3CPRDPEP0P1P2P3JKSRG4右移方式关联并行输入串行输入实现多功能的与或门CP1C11DA/QA11RDR1&G1DSAM3,4D5,13C4/1/21,4DR2,4D3,4DQACPRD01SRG8EN1C11DREN1C11DREN1C11DREN&B/QBG/QGH/QHQAQHDSH111G2&S
30、0S1中间4组触发器未画出Z5Z6Z126,1312,13QH03&3 EN13A/QAB/QBC/QCD/QDE/QEF/QFG/QGH/QHDSHDSAG1G2S0S13,4D4.3 同步时序电路设计同步时序电路设计 设计一个同步时序电路的一般步骤设计一个同步时序电路的一般步骤 n确定采用何种模型确定采用何种模型n状态转换表或状态转换图状态转换表或状态转换图 n化简冗余状态化简冗余状态n状态编码状态编码 n确定触发器类型,状态激励表确定触发器类型,状态激励表n触发器的激励方程,电路的输出方程触发器的激励方程,电路的输出方程 n最终的逻辑电路图最终的逻辑电路图 例例1:设计:设计101序列检
31、测电路序列检测电路 采用摩尔模型,状态转换图:采用摩尔模型,状态转换图:S0/0S1/0S2/001S3/1010110已是最简状态,无需化简已是最简状态,无需化简状态编码如下:状态编码如下:S0=00,S1=01,S2=10,S3=11 问题:输入序列为问题:输入序列为“101”时,输出时,输出“1”状态状态状态(编码)状态(编码)次态(编码)次态(编码)输出输出X=0X=1S0Q1Q0=0000010S1Q1Q0=0110010S2Q1Q0=1000110S3Q1Q0=1110011输入输入激励激励 J1K1,J0K0Q1Q0=00 Q1Q0=01 Q1Q0=10 Q1Q0=11X=00d
32、,0d1d,d1d1,0dd0,d1X=10d,1d0d,d0d0,1dd1,d0状态转换表状态转换表采用采用JK触发器的状态激励表触发器的状态激励表Q1Q0X0001111001ddd00d01J1Q1Q0X00011110dd010dd101K1Q1Q0X000111100dd011dd01J0Q1Q0X00011110d11ddd0001K0激励函数激励函数XKXJXQQXKQXJ0000101,01QQZ 输出函数输出函数逻辑图逻辑图1J&1Q0CP1C11K1JQ1C11K&X&Z例例2:设计:设计8进制计数器进制计数器状态转换表状态转换表状态状态Q2Q1Q0Q2(n+1)Q1(n+
33、1)Q0(n+1)S0000001S1001010S2010011S3011100S4100101S5101110S6110111S7111000采用采用D触发器的激励卡诺图触发器的激励卡诺图Q1Q0Q2000111100010111001D2Q1Q0Q2000111100101101001D1Q1Q0Q2000111101001110001D02102221011000DQ QQQ QQ QDQQDQ激励方程激励方程&Q2Q1Q0CP=11C1C1C11D1D1D逻辑图逻辑图带有冗余状态的同步时序电路设带有冗余状态的同步时序电路设计计一个具有n个状态的同步时序电路,如果n不是恰巧等于2m,一
34、般总有2m-n个冗余状态。这些冗余状态在设计时必须加以处理。若处理不当,会造成严重后果。例例1:自动售饮料机:自动售饮料机S0S1S200/0000/0000/0001/0010/1001/0010/0001/1010/11X1X2/Z1Z2米利模型,米利模型,状态转换图:状态转换图:已是最简状态,无需化简已是最简状态,无需化简状态编码如下:状态编码如下:S0=00,S1=01,S2=11 S3=10是冗余状态。是冗余状态。现态现态编码编码Q1Q2次态次态Q1(N+1)Q2(N+1)/输出输出Z1Z2X1X2=00X1X2=01X1X2=11X1X2=10S00000/0001/00dd/dd
35、11/00S10101/0011/00dd/dd00/10S21111/0000/10dd/dd00/11S310dd/dddd/dddd/dddd/dd采用采用D触发器设计触发器设计 Qn+1=D直接从上表得到激励表直接从上表得到激励表状态转换表状态转换表X1X2Q1Q20001111000d1001d0001D1X1X20001111001d1011dD2X1X20001111000d0100dZ1X1X20001111000d0000dZ210d0dddd10d0dddd01d1dddd00d1ddddQ1Q2Q1Q2Q1Q21110000111100001111000011110激励与
36、输出卡诺图激励与输出卡诺图1121221112212122122212111XQZXQXQZXQXQXXQDXQXQQXXQD激励函数与输出函数激励函数与输出函数疑问疑问:冗余状态是:冗余状态是Q1Q2=10,我们将此冗余状态代,我们将此冗余状态代入上式。看输出方程:当入上式。看输出方程:当Q1Q2=10时,若输入时,若输入X1=1,则则Z1=0,Z2=1。若输入。若输入X2=1,则,则Z1=1,Z2=0。换。换句话说,若系统进入冗余状态,那么投入句话说,若系统进入冗余状态,那么投入1圆硬币将没圆硬币将没有饮料但有有饮料但有5角找零;而只要投入角找零;而只要投入5角硬币,将会得到角硬币,将会得
37、到一杯饮料?一杯饮料?现态现态编码编码Q1Q2次态次态Q1(N+1)Q2(N+1)/输出输出Z1Z2X1X2=00X1X2=01X1X2=11X1X2=10S00000/0001/0011/0011/00S10101/0011/0011/1000/10S21111/0000/1000/1100/11S31010/0000/1011/1111/01错误的冗余状态:错误的冗余状态:例如:例如:X1X2=00,则则 S3 S3发生错误的原因:发生错误的原因:按照上面化简后的激励函数重新得到实际的状态转换表按照上面化简后的激励函数重新得到实际的状态转换表现态现态编码编码Q1Q2次态次态Q1(N+1)Q
38、2(N+1)/输出输出Z1Z2X1X2=00 X1X2=01 X1X2=11 X1X2=10S00000/0001/00dd/dd11/00S10101/0011/00dd/dd00/10S21111/0000/10dd/dd00/11S31000/0001/00dd/dd11/00修改方法:将冗余状态的次态和输出按照实际情况填修改方法:将冗余状态的次态和输出按照实际情况填入合理的值,修改后的状态转换表如下。按照此表进入合理的值,修改后的状态转换表如下。按照此表进行设计,没有不合理的冗余状态。行设计,没有不合理的冗余状态。由于输入由于输入X1X2=11不可能发生,所以有关不可能发生,所以有关X
39、1X2=11的的次态和输出不作调整。次态和输出不作调整。例例2:五进制计数器:五进制计数器现态现态Q2Q1Q0Q2(n+1)Q1(n+1)Q0(n+1)S0000001S1001010S2010011S3011100S4100000S5101000S6110000S7111000为了避免出现自启动问题,在开始设计时将冗余状态指向为了避免出现自启动问题,在开始设计时将冗余状态指向S0Q1Q0Q200 01 11 100010000001D2Q1Q000 01 11 1001010000D1Q1Q000 01 11 1010010000D0Q2Q20101卡诺图中红色的卡诺图中红色的0是原来设计的
40、冗余项。但是按照原来的设是原来设计的冗余项。但是按照原来的设计,卡诺圈太小。所以可以修改设计,按照上图加大卡诺圈计,卡诺圈太小。所以可以修改设计,按照上图加大卡诺圈(蓝色),相当于改变次态,仍然满足自启动要求。(蓝色),相当于改变次态,仍然满足自启动要求。S2S3S4S1S6S0S5有效循环有效循环S7如果问题要求所有冗余状态都具有特定的输出和次如果问题要求所有冗余状态都具有特定的输出和次态,则在开始进行设计时,除了明确不可能出现的态,则在开始进行设计时,除了明确不可能出现的状态以外,应该将所有的冗余状态的输出和次态考状态以外,应该将所有的冗余状态的输出和次态考虑在状态转换表或状态转换图中。这
41、样得到的设计虑在状态转换表或状态转换图中。这样得到的设计可以满足问题的原始要求。可以满足问题的原始要求。如果问题只要求满足自启动条件,则可以以任意项如果问题只要求满足自启动条件,则可以以任意项方式处理冗余状态,但是最后要进行自启动检查。方式处理冗余状态,但是最后要进行自启动检查。也可以以确定方式处理冗余状态,但可能得到的结也可以以确定方式处理冗余状态,但可能得到的结果不是比较好的结果,所以应该进行优化检查。果不是比较好的结果,所以应该进行优化检查。无论上述哪种方法,若在检查后发现问题,都需要无论上述哪种方法,若在检查后发现问题,都需要按照检查的结果重新修改设计。按照检查的结果重新修改设计。冗余
42、状态的处理规则冗余状态的处理规则现态现态Q3Q2Q1Q0Q3(n+1)Q2(n+1)Q1(n+1)Q0(n+1)S000000001S100010010S200100011S300110100S401000101S501010110S601100111S701111000S810001001S910010000S101010ddddS111011ddddS121100ddddS131101ddddS141110ddddS151111dddd例:例:十十进进制制计计数数器器问问题题31021032102021210310100QQQQQQDQQQQQQQDQQQQQDQD自启动检查:通过自启动检
43、查:通过S0S1S2S6S5S4S3S10S9S8S7S11S14S13S12S15用算法状态机方法设计同步时序电路用算法状态机方法设计同步时序电路状态名称状态名称摩尔型输出摩尔型输出米利型输出米利型输出输入条件输入条件01状态框状态框判断框判断框条件输出框条件输出框算法状态机方法是从计算机程序设计者那里借用了流算法状态机方法是从计算机程序设计者那里借用了流程图的一些符号,构成算法状态机图(程图的一些符号,构成算法状态机图(ASM图)。图)。ASM图的主要包括以下图的主要包括以下3种元件种元件 S0S0已收 0 元已收 0 元输出饮料输出饮料投0.5元投0.5元01S1S1已收 0.5 元已收
44、 0.5 元投1元投1元投0.5元投0.5元S2S2已收 1元已收 1元1投1元投1元00投0.5元投0.5元11输出饮料输出饮料100投1元投1元01输出找零输出找零售饮料机的售饮料机的ASM图图S0S1S200/0000/0000/0001/0010/1001/0010/0001/1010/11X1X2/Z1Z2售饮料机的状态转换图售饮料机的状态转换图S0X101S1X2S210S3S1S0S31d0001X1X2S2ASM图图状态转换图状态转换图优先级的处理优先级的处理例:反应时间测试电路例:反应时间测试电路 该电路用来测量短跑运动员的反应速度,要求时间测量该电路用来测量短跑运动员的反应
45、速度,要求时间测量精确到毫秒。由于运动员的反应时间不可能小于精确到毫秒。由于运动员的反应时间不可能小于200ms,所,所以要求当反应时间小于以要求当反应时间小于200ms时,要给出犯规信号。时,要给出犯规信号。晶体振荡器晶体振荡器模1000模1000计数器计数器1kHz计数计数控制控制电路电路DATA锁存锁存译码译码显示显示时钟时钟发令枪发令枪运动员运动员计数计数允许允许计数器计数器清零清零计数值锁存计数值锁存时间阈值、计数值=200ms时间阈值、计数值=200msGUNATHCLRENCPLATCH犯规指示犯规指示FOULLIMEN系统复位系统复位RSTS0(准备)S0(准备)CLRCLRA
46、THATH01S4(犯规)S4(犯规)FOULFOULGUNGUNS1(计数1)S1(计数1)ENENATHATH1100LIMENLIMEN01S2(计数2)S2(计数2)ENENATHATH01S3(锁存)S3(锁存)LATCHLATCHRSTRST10S4/0001S0/1000S1/010000dd1dddddddS2/0100S3/0010ATH/GUN/LIMEN/RST0d0dddd0ddd11ddd01dd0d1d1ddd0dddCLR/EN/LATCH/FOUL输出输出输入输入状态转换图状态转换图状态分配状态分配 时序电路的状态由状态变量(时序电路中记忆电时序电路的状态由状态
47、变量(时序电路中记忆电路的输出)组合确定,将每个状态对应的状态变量组路的输出)组合确定,将每个状态对应的状态变量组合分配一个唯一的二进制码的过程称为进行状态分配。合分配一个唯一的二进制码的过程称为进行状态分配。在时序电路设计中必须进行状态分配。分配之后在时序电路设计中必须进行状态分配。分配之后用以代表状态变量的实际二进制码对于最终实现电路用以代表状态变量的实际二进制码对于最终实现电路的代价有着重要影响。的代价有着重要影响。状态分配问题没有通解。但是根据前人的经验,状态分配问题没有通解。但是根据前人的经验,按照一定的分配规则,可以得到比较好的分配结果。按照一定的分配规则,可以得到比较好的分配结果
48、。!)!2()!12(mnSmm)!2()!2(nSmm用用m个状态变量实现个状态变量实现n个状态时,可能的状态分配数个状态时,可能的状态分配数 将等价的状态分配方案剔除后,以下函数给出了不将等价的状态分配方案剔除后,以下函数给出了不等价的状态分配方案数。等价的状态分配方案数。状态分配规则状态分配规则1对于在相同输入条件下有相同次态的所有对于在相同输入条件下有相同次态的所有状态,在进行状态分配后,应当能形成一个状态,在进行状态分配后,应当能形成一个质蕴含。质蕴含。AEDCBADCBQ2Q1Q301010101状态分配规则状态分配规则2对于一个现态的所有次态,在进行状态分配后,对于一个现态的所有
49、次态,在进行状态分配后,最好能够形成一个质蕴含。最好能够形成一个质蕴含。AEDCBBEDCQ2Q1Q3状态分配规则状态分配规则3 有相同输出的状态最好给予相邻的状态分配。有相同输出的状态最好给予相邻的状态分配。对于状态分配的说明:对于状态分配的说明:1、上述、上述3个规则,是一些经验规律,大部分情况下适用,个规则,是一些经验规律,大部分情况下适用,可能有不适用的例子。可能有不适用的例子。2、对于大部分状态机,不可能全部满足、对于大部分状态机,不可能全部满足3条规则,只能条规则,只能按照实际情况运用。规则按照实际情况运用。规则1比规则比规则2的优先级要高,规则的优先级要高,规则3的优先级最低。除
50、了涉及有大量输出的情况之外,一的优先级最低。除了涉及有大量输出的情况之外,一般很少考虑规则般很少考虑规则3。有些资料根本就忽略规则。有些资料根本就忽略规则3。例子参见讲义例例子参见讲义例413。4.4 时序电路的状态化简时序电路的状态化简一、完全描述状态表的化简一、完全描述状态表的化简“完全描述完全描述”是指在给定的输入条件下,表中所有的次是指在给定的输入条件下,表中所有的次态和输出均有确定值。态和输出均有确定值。完全描述状态表的例:完全描述状态表的例:现态现态次态次态/输出输出X=0X=1S0S0/0S2/0S1S0/0S2/0S2S1/0S3/1S3S1/0S3/0状态的等价状态的等价:设
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。