《数字电路与系统设计 》课件第4章.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《数字电路与系统设计 》课件第4章.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字电路与系统设计 数字电路与系统设计 课件第4章 数字电路 系统 设计 课件
- 资源描述:
-
1、第4章 时序逻辑电路分析与设计4.1 同步时序电路分析同步时序电路分析4.2 触发器级同步时序电路设计触发器级同步时序电路设计4.3 模块级同步时序电路设计模块级同步时序电路设计*4.4 异步计数器分析与设计异步计数器分析与设计4.1 同步时序电路分析同步时序电路分析4.1.1 触发器级电路分析触发器级电路分析 要确定一个用触发器构成的同步时序电路的功能,通常需要经过以下几个分析步骤:根据给定电路写出输出方程组、激励方程组和次态方程组;根据上述三个方程组列出电路的状态表;根据状态表画出电路的状态图,必要时还可画出电路的工作波形;根据状态图(或状态表、工作波形)确定电路的逻辑功。【例4-1】分析
2、图4-1所示同步时序电路的功能,并画出电路的工作波形。图 4-1 例4-1的电路解解 输出方程组输出方程组nnnnQQXZ01激励方程组nnnnnnQXKQXJ0101nnnnXKXJ00 将激励函数代入JK触发器的次态方程 ,得次态方程组:nnnnnQKQJQ1nnnnnnnQXQQQXQ0101011)(表表4-1 例例4-1状态表状态表图 4-2 例4-1的状态图图 4-3 例4-3的电路工作波形 由状态图可见,当输入X=0时,电路始终处于保持状态;当输入X=1时,电路呈现出来一个CP脉冲状态加1的特点,且当电路处于状态11(3)时,下一个CP 脉冲到来后状态变为00且产生Z=1输出,为
3、四进制加法计数。因此,本电路为一个可控同步四进制加法计数器,X为控制端,Z为进位输出。当控制端X=0时,维持原态;X=1时,进行四进制加法计数。【例4-2】分析图4-4所示同步时序电路的功能,并画出电路的工作波形。图 4-4 例4-2的电路解解 输出方程组nnnnnnnQLQQEQG0011激励方程组:nnnnnnnnnnQYXQDQYXQD100011次态方程组:nnnnnnnnnnQYXQQQYXQQ10100111表表4-2 例例4-2状态表状态表图 4-5 例4-2的状态图 从状态图可见,状态“11”是一个死循环,因此,图4-4所示电路是一个非自启动电路,加电工作时必须先清0。清0后,
4、电路处于状态“00”。如果X=Y(即XY=00或11),维持状态“00”,输出GEL=010;如果XY(即XY=10),电路进入状态“10”,输出GEL=100;如果XY(即XY=01),电路进入状态“01”,输出GEL=001。一旦电路进入状态“10”或“01”,将不再进行状态转换,而是停止在这些状态上。由此可以判断,该电路是一个高位先入的串行二进制数比较器,X和Y是比较器的两个串行数据输入端,G、E、L是 XY、X=Y、XY等三种比较结果的输出端。图 4-6 例4-2的电路工作波形4.1.2 模块级电路分析模块级电路分析 【例例4-3】图4-7电路由两片4位二进制同步可预置加法计数器741
5、61和少量逻辑门组成,试分析其功能。图 4-7 例4-3的电路 解解 两片74161的连接电路极为相似,如果不考虑级联问题,二者完全相同。当QDQCQBQA=0100时,下一个CP脉冲将QDQCQBQA置为1000;当QDQCQBQA=1100时,下一个CP脉冲将QDQCQBQA置为0000。可见,每一片74161都是一个5421BCD码计数器。现在来看两片74161的级联关系。虽然二者的CP端都与时钟脉冲CP相连,但右侧74161的计数控制端P受与门输出控制,而与门输入接左侧74161的QD、QC。只有当左侧74161处于“1100”状态即“9”状态时,下一个CP脉冲到来时右侧74161才能
6、计数,同时左侧74161回到“0000”状态。也就是说,每来10个CP脉冲,左侧74161构成的5421BCD计数器向右侧74161构成的5421BCD计数器输出一个进位脉冲,使右侧5421BCD码计数器状态加1。因此,该电路是一个两位5421BCD码计数器,其中左侧74161构成个位计数器,右侧74161构成十位计数器。【例例4-4】分析图4-8所示电路的功能。图 4-8 例4-4的电路 解解 本题电路的存储器件只有1片74194,从连接情况看,它构成模8扭环形计数器。其它器件都是围绕74194来发挥作用的。画出电路的全状态图,有助于电路功能的分析。根据移位寄存器74194和译码器74154
7、的功能特点,容易画出电路的全状态图,如图4-9所示。从状态图可见,这是一个自启动的值发生器,周期性地在输出端Z3Z2Z1Z0依次产生3、1、4、1、5、9、2、6等8位值的8421BCD码输出。图 4-9 例4-4电路的全状态图4.2 触发器级同步时序电路设计触发器级同步时序电路设计 4.2.1 设计步骤设计步骤 (1)导出原始状态图或状态表。(2)状态化简。(3)状态分配。(4)触发器选型。(5)导出输出和激励函数表达式。(6)检查多余状态,打破无效循环。(7)画电路图。4.2.2 导出原始状态图或状态表导出原始状态图或状态表 1.状态定义法状态定义法 状态定义法的基本思路是,认真分析电路要
8、实现的功能,定义输入、输出变量和用来记忆输入历史的若干状态,然后分别以这些状态为现态,在不同的输入条件下确定电路的次态和输出,由此得到电路的原始状态图或状态表。本书将这种设计方法称为状态定义法,定义状态的原则是“宁多勿缺”,使原始状态图或状态表全面、准确地体现设计要求的逻辑功能。多余的状态可以在状态化简时消除。【例例4-5】导出“1111”序列检测器的原始状态图和状态表。当连续输入四个或四个以上的1时,电路输出为1;其它情况下电路输出为0。解解 上一章介绍移位寄存器的应用时,已经介绍过序列检测器。此处“1111”序列检测器的功能是:对输入X逐位进行检测,若输入序列中出现“1111”,则最后一个
9、1输入时,输出Z为1;若随后的输入仍为1,输出继续为1。其它情况下,输出Z为0。显然,该序列检测器应该记住收到X中连续的1的个数,因此可以定义以下状态:状态S0:表示未收到1,已收到的输入码是0。状态S1:表示已收到一个1。状态S2:表示已收到两个连续的1,即已收到11。状态S3:表示已收到三个连续的1,即已收到111。状态S4:表示已连续收到四个或四个以上的1。分别以S0S4为现态,按照功能要求确定在不同输入条件下的输出和次态,即可得到完整的原始状态图,如图4-10所示。图 4-10 例4-5的原始状态图 当电路处于状态S0时,表明电路未收到1。若此时输入X=0,则电路的输出为0,次态仍为S
10、0;若此时输入X=1,则电路收到第一个1,进入收到一个1的状态,输出为0,次态为S1。当电路处于S1时,表明电路已收到一个1。若此时输入X=0,接收1111的过程被打断,前面刚收到的1作废,电路返回到未收到有效1的状态,输出为0,次态为S0;若此时输入X=1,则电路连续收到两个1,进入连续收到两个1的状态,输出为0,次态为S2。当电路处于S2时,表明电路已连续收到两个1。若此时输入X=0,则接收1111的过程被打断,前面刚连续收到的11作废,电路返回到未收到有效1的状态,输出为0,次态为S0;若此时输入X=1,则电路连续收到三个1,进入连续收到三个1的状态,输出为0,次态为S3。当电路处于S3
11、时,表明电路已收到三个连续的1。若此时输入X=0,则接收1111的过程被打断,前面刚连续收到的111作废,电路返回到未收到有效1的状态,输出为0,次态为S0;若此时输入X=1,则电路连续收到四个1,进入连续收到四个1的状态,输出为1,次态为S4。当电路处于S4时,表明电路已收到四个或四个以上连续的1。若输入X=0,则接收1111的过程被打断,前面连续收到的多个1作废,电路返回到未收到有效1的状态,输出为0,次态为S0;若此时输入X=1,则电路已连续收到四个以上的1,根据题意,输出为1,次态仍为S4,电路停留在状态S4。由原始状态图得到原始状态表,如表4-3所示。从原始状态表可以清楚地看出,S3
12、和S4状态在相同的输入下有相同的次态和输出,说明二者的作用是等价的,因此S3和S4是等价状态,可以合并为一个状态。合并等价状态前,电路有5个状态,需要3个触发器才能实现;合并等价状态后,电路只有4个状态,用两个触发器就可以实现。由此可见状态化简对于简化电路、降低成本是非常重要的。表表4 3 表表4-5的原始状态表的原始状态表 2.列表法列表法 列表法的基本思路是:n位序列检测器需要记忆前面收到的n-1位,即需要2n-1个状态来记忆输入的历史,分别表示收到全0到全1的2n-1种情况,再根据收到的第n位,决定电路的输出和次态,从而得到电路的原始状态表和状态图。列表法本质上也属于状态定义法,只不过它
13、是先导出原始状态表,后导出原始状态图。这种方法特别适合序列长度较短的重叠型多序列检测。对于不允许输入序列码重叠的序列检测器,不能采用列表法,因为它不能区分前面的0或1是否已经被用过。此外,如果输入序列属于分组输入,也不能采用列表法,因为它也无法区分输入0、1的分组。【例例4-6】某序列检测器有一个输入X和一个输出Z,当收到的输入序列为“101”或“0110”时,在上述序列的最后一位到来时,输出Z=1,其它情况下Z=0,允许输入序列码重叠。试列出其原始状态表。解解 本题中是指,序列“101”中的最后一位1可以作为下一组“101”序列的第一个1,后两位“01”也可以作为下一组“0110”序列的前两
14、位;同理,序列“0110”的最后一位0可以作为下一组“0110”序列的第一个0,后两位的“10”也可以作为下一组“101”序列的前两位。本例也可以采用上例的状态定义法,先画出原始状态图,再列出原始状态表。此处采用列表法直接得到原始状态表。由于要检测的最长序列是0110,即n=4,所以电路要记住已收到的前3位数码。前3位数码共有000111等8种不同的取值,为此,设置S0S7 8个状态来分别记忆这8种不同取值。以S0S7为现态,结合当前第4位的输入值X就可以确定输出Z的取值和电路的次态,从而得到电路的原始状态表,如表4-4所示。表表4 4 例例4-6原始状态表原始状态表 表4-4中状态S0S7左
15、边的数码是各状态记忆的已收到的前面三位数码。当电路的现态是S0时,表示已收到000。若此时的输入是X=0,则收到的4位数码为0000、3位数码为000,均不是要检测的序列,所以输出Z=0;电路需要记住的后3位数码是000,所以次态是S0。若X=1,则收到的4位数码是0001、3位数码是001,也不是要检测的序列,所以输出Z=0;电路需要记住的后3位数码是001,所以次态是S1。由此构成了表4-4中的第000行。当电路的现态是S1时,表示已收到001。若输入X=0,则收到的4位数码是0010、3位数码是010,仍不是要检测的序列,所以输出Z=0;电路需要记住的后三位数码是010,所以次态是S2。
16、若X=1,则收到的4位数码是0011、3位数码是011,也不是要检测的序列,所以输出Z=0;电路需要记住的后三位数码是011,所以次态是S3。由此构成了表4-4中的第001行。当电路的现态是S2时,表示已收到010。若输入X=0,则收到的4位数码是0100、3位数码是100,都不是要检测的序列,所以输出Z=0;电路需要记住的后三位数码是100,所以次态是S4。若X=1,则收到的4位数码是0101,不是要检测的序列,但3位数码是101,是要检测的序列,所以输出Z=1;电路需要记住的后三位数码是101,所以次态是S5。由此构成了表4-4中的第010行。3 树干分支法树干分支法 状态定义法和列表法中
17、,状态的含义非常清楚,但在实际设计过程中,人们有时候并不需要预先将各个状态的含义定义得一清二楚,只要整个状态图或状态表能满足设计功能要求即可。此时可采用树干分支法直接画出原始状态图,省却逐个定义状态的麻烦。树干分支法的基本思路是:将要检测的序列作为树干,其余输入组合作为分支,先一厢情愿画树干,然后再画分支,由此得到电路的原始状态图和状态表。树干分支法和状态定义法一样,适合所有的序列检测。但对于多序列检测,因需要多个树干而使得原始状态数较多,这是树干分支法的不足之处。【例4-7】用树干分支法画出重叠型和非重叠型“1010”序列检测器的原始状态图。解:解:无论是否允许重叠,序列检测器的树干都是“1
18、010”,因此可以先画出“1010”这条树干,如图4-11所示。实际上,采用树干分支法画好原始状态图的树干后,各个状态的含义就已经清楚了,只不过一开始未定义而已。例如本例中,状态A作为初始状态表示未收到有效的“1”,状态B表示收到1个有效的“1”,状态C表示收到“10”,状态D表示收到“101”,状态E表示收到“1010”。图 4-11“1010”序列检测器的树干A1/0B0/0CDE1/00/1Xn/Zn图 4-12“1010”序列检测器的原始状态图 重叠型和非重叠型“1010”序列检测器的原始状态图仅在电路处于状态E时有所不同。状态E表示电路已经检测到“1010”序列,如果是重叠型序列检测
19、器,则后面的两位“10”可以作为下一组“1010”的前面两位“10”,因此再收到1时应转向收到“101”的状态D;如果是非重叠型序列检测器,因已经检测到了“1010”,所以后面的两位“10”不可再用,应从下一位开始重新检测“1010”,因此再收到1时应转向收到第一个“1”的状态B。【例4-8】画出重叠型“101”和“010”双序列检测器的原始状态图。解解 该序列检测器有两条树干,一条是“101”,另一条是“010”,其树干和完整的原始状态图如图4-13所示。图 4-13 重叠型“101”、“010”双序列检测器的原始状态图(a)树干;(b)完整状态图 【例例4-9】某同步时序电路有两个输入X1
20、、X0和一个输出Z,当连续两个或两个以上的时钟脉冲作用期间X1、X0都保持不变且取值相同时,电路输出Z=1,否则Z=0。画出其原始状态图。解解 在连续两个或两个以上的时钟脉冲作用期间X1、X0都保持不变且取值相同,即指X1X0连续输入序列为00 00 00或11 11 11,因此,可得原始状态图如图4-14所示。图 4-14 例4-9的原始状态图 【例4-10】某同步时序电路对高位先入的串行5421BCD码进行误码检测,每当检测到一个错误码组时,在输入码组的最后一位到来时输出Z=1,其它情况下Z=0。检测完一组代码后回到初始状态,准备检测下一个码组。试画出其原始状态图。解解 这是一种分组码检测
21、器,需要检测的错误码组有6个:0101、0110、0111、1101、1110和1111。由于需要记忆位数,所以可以按照细胞分裂的结构将各种输入情况全部记忆下来,这样状态数虽然多一些,但每个状态的含义特别清楚,画状态图时不易出错。图 4-15 例4-10的原始状态图4.2.3 状态化简状态化简 一般情况下原始状态图或原始状态表都存在多余状态,因此必须进行状态化简,消除多余状态。状态化简是建立在状态等价概念的基础上的。设Si 和Sj是原始状态图或状态表的两个状态,如果在任意一个输入序列作用下以Si为初始状态产生的输出序列,与同一个输入序列作用下以Sj为初始状态产生的输出序列完全相同,那么就称状态
22、Si和状态Sj相互等价,记作SiSj。相互等价的两个或多个状态可以合并为一个状态。对于完全确定的状态表,有观察法和隐含表法两种状态化简方法。1.观察化简法观察化简法 将原始状态表中的状态与等价状态的定义进行比较,从中找出等价状态的化简方法称为观察化简法,也称为合并条件化简法。但前面的状态等价定义不便使用,通常是按照下面的变通条件来判断两个状态是否等价的。如果在所有输入条件下,两个状态对应的输出相同,且对应的次态满足下列条件之一,则这两个状态相互等价:次态相同;维持现态或次态交错变化;次态互为隐含条件。次态交错是指状态Si的次态是Sj,状态Sj的次态是Si。次态互为隐含条件是指状态S1和S2等价
23、的前提条件是状态S3和S4等价,而S3和S4等价的前提条件又是状态S1和S2等价,此时,S1和S2等价,S3和S4也等价。相互等价的状态的集合称为等价类,全体等价状态的集合称为最大等价类。等价类可以用括号表示,例如S1和S2是等价状态,即S1S2,等价类记为(S1,S2)。一个等价类中的所有状态可以合并为1个状态,记为(S1,S2)=(S1)。等价状态具有传递性,即如果S1S2、S2S3,则有S1S2S3,即S1、S2、S3相互等价,最大等价类记为(S1,S2,S3)。观察化简法就是要找出原始状态表中所有的最大等价类,将每个最大等价类合并为1个状态,就可得到最简状态表。使用观察化简法化简原始状
24、态表时要注意,一些有去无回的状态可能并不符合上述等价条件,但也应该将其删除,因为它们并无实质意义,一般属于多余状态。例例4 11 化简表4-5所示的原始状态表。表表4-5 例例4-11的原始状态表的原始状态表 解解 仔细观察表4-5,可见:状态B和状态H在各种输入条件下对应的输出相同,次态也相同,符合条件,所以状态B和状态H是等价状态,即BH,等价类为(B,H)。状态D与状态E有相同的输出,次态或相同,或维持现态不变,符合条件和条件,所以状态D和状态E是等价状态,即DE,等价类为(D,E)。状态A和状态F在各种输入条件下对应的输出相同,X=0时次态交错变化,只要C、G等价,则A、F就等价;而状
25、态C和状态G在各种输入条件下对应的输出也相同,由于状态B和H等价,因此只要A、F等价C、G就等价,即A、F与C、G互为隐含条件,满足条件,所以A、F等价,C、G也等价,即AF,CG,等价类分别记为(C,D)和(E,F)。状态I与状态G在各种输入条件下对应的输出相同,X=0时次态相同,X=1时次态分别为A和D,必须A、D等价才有I、G等价,而A、D输出不同,不可能等价,所以I与G不等价,I单独构成1个等价类(I)。尽管从合并条件看状态I无等价状态而不能合并,但该状态属于有去无回的状态,应该将其删除。因此,删除有去无回的状态I后,本例中的原始状态表共有4个等价类,它们是(A,F)、B,H)、C,G
展开阅读全文