计算机组织与结构Ch.ppt_第1页
计算机组织与结构Ch.ppt_第2页
计算机组织与结构Ch.ppt_第3页
计算机组织与结构Ch.ppt_第4页
计算机组织与结构Ch.ppt_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,第3章,布尔代数和数字逻辑,2,第3章 目标,理解布尔逻辑和数字计算机电路之间的关系。 学会设计简单的逻辑电路。 理解数字电路是如何协调工作以形成复杂的计算机系统的。,3,3.1 介绍,在19世纪后期,当乔治布尔提出逻辑思想可以通过数学等式来表达时,他激怒了哲学家和数学家。 怎么会有人敢提出人的想法可以像数学公式一样被压缩或控制? 正如我们今天了解到的那样,计算机是布尔思想的应用。 John Atanasoff和Claude Shannon是最早认识到这种关系的人当中的两个。,4,3.1介绍,20世纪中叶,计算机被普遍认为是“思考机器” 和“电脑”。 许多人害怕它们。 今天,我们很少考虑电子数字计算机和人类逻辑学之间的关系。计算机已经成为我们生活中的一部分。 然而,许多人仍然害怕它们。 在这一章中,你将学到计算机的组成实际上很简单。,5,3.2 布尔代数,布尔代数是对变量控制的一种数学体系,变量只能取两个值,如对与错,真与假。 在形式逻辑当中,这些值是 “对”和“错”。 在数字系统中,这些值是“开”和 “关”、1和 0、或 “高”和 “低”。 布尔表达是在对布尔变量的操作过程中而产生的。 一般布尔操作包括与、或、非。,6,3.2 布尔代数,通过使用真值表,可以完全的来描述布尔运算。 布尔运算中的“与”和“或”运算的真值表见右图。 与运算被认为是一种布尔积,或运算是一种布尔和。,7,3.2 布尔代数,“非”运算的真值表见右图。 非运算通常被表示成上划线的形式,有时也用一个单引号( )或()来表示。,8,3.2布尔代数,布尔函数: 包含至少一个布尔变量。 包含至少一个布尔运算符,和来自于集合0,1当中的至少一个输入。 它产生的输出也是集合0,1当中的一个元素。,现在你应该知道为什么在数字系统当中,二进制计数系统是如此的方便了。,9,3.2 布尔代数,布尔函数的真值表: 如右图。 为了便于布尔函数的计算,真指表中还用额外的一栏记录中间步骤的部分结果。,10,3.2布尔代数,像一般的算术运算一样,布尔运算也有优先权规则。 非运算的优先权最高,其次是与,最后是或。,11,3.2布尔代数,数字计算机含有执行布尔运算的电路。 我们完成的布尔函数越简单,需要的电路也就越小。 简单的电路构造起来较便宜,功耗也低,运行的速度也比复杂电路快。 因此,我们总是想把布尔函数化简到它的最简单的形式。 应用布尔恒等式可以进行布尔表达式的化简。,12,3.2布尔代数,布尔恒等式既有与(乘积)的形式,也有或(和)的形式,这种规律成为对偶原理。我们用两种形式给出恒等式。 第一组非常直观:,一致律: 零律: 密等律: 互补律:,13,3.2布尔代数,第二组布尔证明和我们学习的代数很相似:,交换律: 结合律: 分配律:,14,3.2布尔代数,最后一组布尔证明也许是最有用的. 如果你学习过标准逻辑集合理论, 那么这些规律你也应该很熟悉.,吸收律: 德摩根律: 还原律:,15,3.2布尔代数,我们可以使用布尔恒等式去简化布尔函数: 如下:,16,3.2布尔代数,有时,从电路上实现一个函数的反码要比实现函数本身更简单和经济。 德摩根律提供了一种布尔函数求补的简单方法。 以下是德摩根律的说明:,17,3.2布尔代数,德摩根律可以扩展到多个变量。 用变量的反码来替代每一种变量,并且把所有的“与”变成“或”,把所有的“或”变成“与”。 这样我们得出的补的形式是:,18,3.2布尔代数,通过前面的化简布尔表达式的练习可以发现,对于相同的布尔表达式可以有多种方法来表示。 这些 “同义” 的形式在逻辑上是等价的。 逻辑上的等价表示具有相同的真值表。 为了消除混乱,设计者使用一种规范形式来描述布尔函数。,19,3.2布尔代数,有两种标准化形式来表示布尔函数:积之和形式、和之积形式。 回忆一下,布尔积是与操作,布尔和是或操作。 在积之和形式中,与变量被或起来。 例如: 在和之积形式中,或变量被与起来: 例如:,20,3.2布尔代数,积之和形式利用真值表是很容易转化的。 我们所感兴趣的是使函数值为真(=1)的变量的值。 使用真值表,我们列出了使函数值为真的各种变量值。 每组变量最终被或起来。,21,3.2布尔代数,函数的积之和形式是:,这个表达式不是最简化的形式,但它是一个标准化的积之和形式。,22,我们已经用抽象的术语描述了布尔函数。 在这一部分中,我们学习在数字计算机电路中执行布尔函数的部件是门电路。 门是一种基于两个或更多输入值,而产生一个输出结果的一种电子设备。 物理上构成一个门电路需用1到6个晶体管,但是数字电路设计者把他们看成是一个基本的逻辑单元。 集成电路是含有适合特殊目的的门电路的集合。,3.3逻辑门,23,三种最简单的门电路是与、或、非门。 正如你在它们的真值表中看到的那样,它们符合对应的布尔运算。,3.3 逻辑门,24,另一种非常有用的门电路是异或 (XOR)门。 仅仅当输入的值不同时,异或操作的输出才为真。,3.3逻辑门,异或操作用特殊的标志 来表示。,25,“与非门”和“或非门”是两种非常重要的门电路。 它们的符号和真值表如右图所示。,3.3 逻辑门,26,3.3 逻辑门,“与非门”和“或非门”是非常通用的门电路,因为它们制造起来不贵,并且任何布尔功能都可以仅使用它们来实现。,27,3.3 逻辑门,门电路可以有多个输入和多个输出。 第二个输出可以用于求反操作。 后面我们将接触到更多。,28,3.4 数字元件,任何布尔函数都可以表示为门电路的组合形式。 下面的电路实现的布尔函数为:,通过简化布尔表达式,我们可以设计出更简单的电路。,29,3.5 组合逻辑电路,我们已经设计了一个执行布尔函数的电路: 这是一个组合逻辑电路的例子。 几乎在输入起作用的一瞬间,组合逻辑电路产生了一个特定的输出。 在后面的部分当中,我们研究的电路不是这种情况。,30,3.5组合逻辑电路,许多有用的设备都是通过组合逻辑电路实现的。 最简单的一种是半加器,它可以求出两位的和。 通过看右图的真值表,我们可以获得半加器结构的一些启发。,31,3.5 组合逻辑电路,正如我们看到的那样,和可以使用异或操作来实现,进位使用与操作来实现。,32,3.5组合逻辑电路,通过增加用于进位操作的门电路,我们可以把半加器变成全加器。 全加器的真值表如右图所示。,33,3.5 组合逻辑电路,如何能把下面的半加器变成一个全加器呢?,34,3.5 组合逻辑电路,这就是我们设计的完整的全加器。,35,3.5 组合逻辑电路,正如我们用半加器来组合成全加器一样,全加器也可以进行串联。 将一个加法器的进位输出连接到相邻左边的加法器的进位输入端,这种结构被称为是逐位进位加法器。,今天的系统使用更有效的加法器.,36,3.5 组合逻辑电路,译码器是另一种重要的组合逻辑电路。 根据存储总线上的地址线上二进制数值来选择存储位置,可以通过译码器实现。 带有 n位输入的地址译码可以选择 2n 个地址。,这是一个译码器的框图,37,3.5 组合逻辑电路,这是一个2输入4输出译码器的内部电路。,如果x = 0 并且y = 1,那么将输出哪一结果?,38,3.5 组合逻辑电路,多路复用器与译码器相反。 它从几个输入当中选择一路输入。 输出所需要的特殊的输入选择是由多路转接器的控制线的值来决定的。 为了能够在n路输入中进行选择,需要log2n条控制线。,这是一个多路复用器的框图,39,3.5 组合逻辑电路,这是4路输入、1路输出的多路复用器的内部逻辑电路图。,如果S0 = 1 并且S1 = 0, 那么哪一路的输入会产生输出结果?,40,3.6 时序电路,当我们需要对布尔函数的一组输入立即产生响应时,使用组合逻辑电路是很适合的。 然而,有时候需要根据它当前的状态和输入来改变它的输出。 这些电路应该 “记住”它的们当前状态。 时序逻辑电路为我们提供了这种功能。,41,3.6时序电路,正如名字当中隐含的那样,时序逻辑电路需要一种方法,通过这种方法事件可以顺序执行。 状态的改变是用时钟来控制的。 “时钟” 是一种通过电路来发送电脉冲的特殊电路。 时钟产生如下的一种电波。,42,3.6时序电路,在时序电路中,只有当时钟触发的时候状态才发生改变。 在上升沿、下降沿或是时钟脉冲抵达电压的最高值时,电路才改变状态。,43,3.6时序电路,在时钟脉冲的上升沿或是下降沿改变状态的电路称为“边缘触发”(通常所说的触发器flip-flop)。 当时钟电压达到最高值或是最低值时改变状态,成为“水平触发电路”(通常所说的锁存器latch)。,44,3.6 时序电路,时序电路凭借反馈的方式来保留它们的状态值。 当一个输出通过回路返回到输入时,数字电路中就会有反馈发生。 这种思想的一个简单例子如下。 如果Q是0它将总是0,如果Q是1,它将永远是1。为什么?,45,3.6时序电路,SR触发器是最基本的时序逻辑部件,通过对它的学习来了解反馈的工作原理。 “SR”代表置位/复位。 SR触发器的内部逻辑电路和它的表示符号如下所示。,46,3.6 时序电路,SR触发器的行为用一个特征表来描述。 Q(t) 的意思是在t时刻的输出值。 Q(t+1)是下一个时钟脉冲的输出值。,47,3.6 时序电路,SR触发器实际上有3个输入:S、R和它的当前输出Q。 这样,我们可以为该电路构造一个如右图的真值表。 注意两个未定义的值。当S和R为1时,SR触发器是不稳定的。,48,3.6 时序电路,如果我们能够确保SR触发器的输入永远都不会是两个1,那么我们就不会有一个不稳定的电路。 对SR触发器进行修改,当两个输入都是1时拥有一个稳定的输出状态。, 经过修改的触发器称为JK触发器,如右图所示。 - “JK”是以Jack Kilby的名字命名的。,49,3.6 时序电路,如右图,SR触发器被修改成JK触发器。 特征表表明,对于所有的输入JK触发器都是稳定的。,50,3.6 时序电路,SR触发器的另一种修改是D触发器,如下面的特征表。 你将注意到,在随后的时钟脉冲之间,D触发器的输出保持不变,仅当D的值改变时,输出才改变。,51,3.6 时序电路,D触发器是计算机存储器的基础电路。 D触发器常常用下面的表示符号来表示。 下一张幻灯片将展示这些电路是如何组合成寄存器的。,52,3.6 时序电路,这里阐述了由D触发器组成的4位寄存器。你常常会看到它的替代表示符号(如下)。,53,3.7 设计电路,数字逻辑电路的设计需要精通数字分析和数字综合。 数字分析:分析电路输入和输出之间的关系。 数字综合:使用真值表中特殊化的值来实现逻辑图。 数字系统的设计者也必须考虑到电路的物理特性,如最小化传播延迟-电路输入时刻与输出达到稳态时刻之间的间隔。,54,3.7 设计电路,数字电路设计者依靠特殊的软件来创建高效的电路。 这样,软件是构造较好的硬件的使动者。 当然,实际上软件是一个能够在硬件上执行的算法的集合。 回想一下软硬件等效原理。,55,3.7 设计电路,当我们需要执行一个简单的、特殊化的算法,并且要求执行的速度尽可能快时,硬件方法通常是较完美的。 这就是嵌入式思想,它是在日常生活中我们可以发现的很小的具有特殊目的的计算机。 嵌入式系统要求特殊的编程能力,既要熟悉数字逻辑电路,又要了解波尔函数的行为法则,在这一章中已经学过了。,56,计算机是布尔

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论