第6章运算数据流动控制逻辑.doc

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

第六章 运算和数据流动控制逻辑 6. 前言: 6.1 数字逻辑电路的种类: 组合逻辑:输出只是当前输入逻辑电平的函数(有延时),与电路的原始状态无关的逻辑电路。也就是说,当输入信号中的任何一个发生变化时,输出都有可能会根据其变化而变化,但与电路目前所处的状态没有任何关系。 时序逻辑:输出不只是当前输入的逻辑电平的函数,还与电路目前所处的状态有关的逻辑电路。 同步有限状态机是同步时序逻辑的基础。所谓同步有限状态机是电路状态的变化只可能在在同一时钟跳变沿时发生的逻辑电路。但状态是否发生变化还要看输入条件,如输入条件满足,则进入下一状态,否则即使时钟不断跳变,电路系统仍停留在原来的状态。利用同步有限状态机可以设计出极其复杂灵活的数字逻辑电路系统,产生各种有严格时序和条件要求的控制信号波形,有序地控制计算逻辑中数据的流动。 6.2 数字逻辑电路的构成 组合逻辑:由与、或、非门组成的网络。常用的组合电路有:多路器、数据通路开关、加法器、乘法器…. 时序逻辑: 由多个触发器和多个组合逻辑块组成的网络。常用的有:计数器、复杂的数据流动控制逻辑、运算控制逻辑、指令分析和操作控制逻辑。同步时序逻辑是设计复杂的数字逻辑系统的核心。时序逻辑借助于状态寄存器记住它目前所处的状态。在不同的状态下,即使所有的输入都相同,其输出也不一定相同。 组合逻辑举例之一:一个八位数据通路控制器 它的Verilog HDL描述如下: `define ON 1 ‘b 1 `define OFF 1 ‘b 0 wire ControlSwitch; wire [7:0] Out, In; assign Out = (ControlSwith = = `ON) ? In : 8 ‘h00; 它的逻辑电路结构如下: 它对数据通路所起的作用如下: 组合逻辑举例之二:一个八位三态数据通路控制器 它的Verilog HDL描述如下: `define ON 1 ‘b 1 `define OFF 1 ‘b 0 wire LinkBusSwitch; wire [7:0] outbuf; inout [7:0] bus; assign bus = (LinkBusSwitch== `ON) ? outbuf : 8 ‘hzz 它的逻辑电路结构和对数据通路的作用如下: 它与组合逻辑举例之一的差别只在前者在开关断开时输出为零,而后者在开关断开时输出为高阻,即与总线脱离连接。 数据流动的控制: 我们知道,诸如加、减、乘、除、比较等运算都可以用组合逻辑来实现,但运算的输入必须稳定一段时间,才可能得到稳定的输出,而输出要被下一阶段的运算作为输入,也必须要有一段时间的稳定,因而输出结果必须保存在寄存器组中。在计算电路中设有许多寄存器组,它们是用来暂存运算的中间数据。对寄存器组之间数据流动进行精确的控制,在算法的实现的过程中有着极其重要的作用。这种控制是由同步状态机实现的。 开关逻辑应用举例: 设想下面的组合逻辑是一个乘法器,把输入的数乘3,然后输出。因为乘法器是由门组成的,所以会有延迟,从图上看,为了取得稳定的输出需要10ns的延迟。如果能有效地控制Sn的开关时间就可以取得稳定的输出,把运算结果存入寄存器。 设想下图中由开关S1和开关S2控制的两个组合逻辑都是运算逻辑,例如乘法器或加法器等,而寄存器A,B,C是用来寄存运算的输入、中间和输出数据的。如果能与时钟配合来精确地控制开关的闭合和断开,在寄存器中暂存的中间或输出数据都会是上一步运算的稳定结果,而不会出现冒险和竞争的现象。 设想下图中由开关S1、S3、S5控制的三个组合逻辑都是运算逻辑,例如乘法器或加法器等,而寄存器组A,B,C是用来寄存运算的输入、中间和输出数据的。开关S2、S4、S6是三态门,能控制寄存器组A,B,C的输出到总线上还是与总线隔离。 如果能与时钟配合来精确地控制S1到S6开关的闭合和断开,在寄存器中暂存的中间或输出数据都会是上一步运算的稳定结果,而不会出现冒险和竞争的现象。运算的过程可以在这几个寄存器组内反复地执行,直到通过开关的控制使其停止。下面让我们通过简单的描述来说明一个极其重要的概念:生成与时钟精确配合的开关时序是计算逻辑的核心。 我们在“数字电子技术基础”中已经知道当时钟正跳变沿到来时,在D触发器数据端口的数据才能存入触发器中。我们也知道当组合逻辑的输入变化时,输出必须经过一段时间后才能稳定,这是由于门级电路和布线的延迟造成的。只有稳定的输出对运算才是有意义的。如果我们想把寄存器组C中的数据经过组合逻辑的运算存入寄存器组A中,我们应该如何来控制这几个开

文档评论(0)

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

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

1亿VIP精品文档

相关文档