[信息与通信]第 4 章 时序逻辑电路.ppt

  1. 1、本文档共157页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[信息与通信]第 4 章 时序逻辑电路

值得指出的是,在化简不完全确定状态表时,构成最小闭合覆盖的相容类并不一定是最大相容类。例如,例4-8中选择最大相容类{A,B,D}和{C,E}作为最小闭合覆盖,可得到相同的结果。在某些情况下,如果仅仅从最大相容类中选择最小闭合覆盖,则合并后的状态表不一定是最简的。在满足最小覆盖的前提下,在最大相容类和非最大相容类之间作出恰当的选择,以得到小化状态表 4.4.3状态编码 对最小化状态表中用字母或数字表示的状态指定一个二进制代码,称状态编码或称状态分配。状态编码后的最小化状态表称为二进制状态表。 实践表明,状态编码采用的方案不同,所得到的输出函数和激励函数的表达式也不相同,从而使设计出来的时序逻辑电路其复杂程度也不相同。 状态编码的目的之一是确定状态编码的长度,即二进制代码的位数,也就是触发器的个数。另一个目的是寻找一种最佳的或者接近最佳的状态分配方案,以便使所设计的同步时序逻辑电路的输出函数和激励函数最简单。 状态编码的长度是由最小化状态表中的状态个数确定的。设最小化状态表的状态数为N,状态编码的长度为m,状态数N与状态编码长度m的关系为 2m-1 < N ≤2m。如果已知状态数,就可求出状态编码所需的二进制代码m的位数。例如,若某状态表的状态数N = 4,状态编码二进制代码的位数应为m = 2。 二进制代码的位数确定后,要寻找一种最佳的或接近最佳的状态编码方案。究竟哪个状态用哪种二进制代码,可以有多种状态分配方案供选择。一般说来,假如状态表的状态数为N,每个状态所需的二进制代码的位数为m,则m个变量有2m种组合,用2m种组合对N个状态进行编码时,可能出现的状态编码方案数KS为 KS = ANm = 2n!/(2n - N)! 随着状态数目增大,分配方案的数目急剧增大。状态数目与状态编码方案总数的关系如表4-26所示。 表4-26 状态数与状态编码方案总数的关系 由表4-26可知,当状态数目较少时,可以研究各种可能的状态编码方案,从中选出一种最佳的方案。但是,当状态数目增大时,编码方案数急剧增多,要在众多的状态编码方案中找出一种最佳编码方案是困难的。 实践表明,状态编码方案的好坏还与所采用的触发器类型有关。也就是,某种状态编码方案,对某种触发器是最佳的编码方案,然而换成另一种触发器就不一定是最佳的状态编码方案。由此可见,一种最佳状态编码方案涉及的因素很多。工程上采用的方法是依据一定的状态分配原则来获得最佳或者接近最佳的状态编码方案。 状态编码是在一种称为二进制状态分配表进行的。二进制状态分配表与卡诺图的结构相同,二进制状态分配表中使用的变量是yr…y1 y0。在二进制状态分配表中,有公共边的两个小方块称为相邻。 状态编码一般遵循如下的基本原则: (1) 状态表中的两个现态,如果在相同外部输入条件下,这两个现态的次态相同,则尽可能给这两个现态分配相邻的代码。 (2) 状态表中的一个现态,如果在不同外部输入条件下,这个现态的两个次态不相同,则尽可能给这两个次态分配相邻的代码。 (3) 状态表中两个现态,如果在不同外部输入条件下,这个次态有相同的外部输出,则尽可能给两个现态分配相邻的代码。 (4) 状态表中出现次数最多的状态在状态编码上为逻辑0。 下面通过例子说明状态编码原则的应用。 例4-9 对表4-27 所示状态表进行状态编码。 表4-27 状态表 解:表4-27中有4个状态A、B、C和D。状态A在状态表中出现次数最多。 首先使用原则( 1 )进行状态编码。在状态表中,现态B和C,在x = 0时,它们的次态相同,都是A状态。因此,现态B和C在二进制状态分配表中应当相邻分配,如图4-40 a所示。状态编码为,B = 01,C = 11,A = 00,D =10。现态B和C也可以分配在二进制状态分配表的其他小方格中,只要B和C相邻即可。 其次,使用原则( 2 )进行状态编码。状态表中现态A, 在x = 0且x = 1时,现态A的次态不相同,是C和B。状态表中现态C, 在x = 0且x =1时,现态C的次态不相同,是A和D。状态表中现态D,在x = 0且x =1时,现态D的次态不相同,是D和C。因此,状态C和B、A和D、D和C在二进制状态分配表应当相邻分配,如图4-40 b所。状态编码为,A = 00,B = 01,D =10,C = 11。 最后,使用原则( 3 )进行状态编码。状态表中现态A和D,在x = 0且x =1时,它们的输出相同都是0。因此,现态A和D在二进制状态分配表应当相邻分配,如图4-40 c所示。 对以上3种分配方案可以进行比较,图4-4

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档