计算机组成原理第3章运算方法和运算部件(3-6-7)课件.ppt
《计算机组成原理第3章运算方法和运算部件(3-6-7)课件.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理第3章运算方法和运算部件(3-6-7)课件.ppt(87页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机组成与结构计算机组成与结构本科生课程教学本科生课程教学计算机学院计算机组成与结构q本课程主要讲授计算机系统的硬件和软件构成方法,包括硬件系统中运算器、控制器、存储器、输入设备和输出设备和总线系统的构成原理等;并与当代先进的计算机技术相结合。是计算机科学与技术本科专业核心课程。q本课程着重计算机系统组成与结构方面的教学和研究。本课程着重计算机系统组成与结构方面的教学和研究。计算机结构定义为系统程序员所能见到的计算机硬件特性;计算机组成是指计算机硬件的具体实现。计算机学院第三章 运算方法和运算部件 q数据的表示方法和转换q带符号数的表示方法及加减运算q二进制乘法运算q二进制除法运算q浮点数的
2、运算方法q运算部件运算部件q数据校验码数据校验码计算机学院3.6 运算部件一、运算部件一、运算部件q定点运算部件定点运算部件由算术逻辑运算部件由算术逻辑运算部件ALUALU、若干个寄存器、若干个寄存器、移位电路、计数器、门电路等组成。移位电路、计数器、门电路等组成。q运算器部件是计算机中进行数据加工的部件,其主要功能运算器部件是计算机中进行数据加工的部件,其主要功能包括:包括:q1.1.执行数值数据的算术加减乘除等运算,执行逻辑数据执行数值数据的算术加减乘除等运算,执行逻辑数据的与或非等逻辑运算,由一个被称为的与或非等逻辑运算,由一个被称为 ALU ALU 的线路完成。的线路完成。q2.2.暂
3、时存放参加运算的数据和中间结果,由多个通用寄暂时存放参加运算的数据和中间结果,由多个通用寄存器来承担。存器来承担。q3.3.运算器通常也是数据传输的通路运算器通常也是数据传输的通路计算机学院3.6 运算部件q书书P95P95,图图3.93.9所所示示是是一一个个能能实实现现定定点点加加、减减、乘乘、除除运运算算的运算部件。的运算部件。q1 1在在进进行行加加法法运运算算时时,应应送送来来AALUAALU、BALUBALU、ALUSALUS、SASA信信号号(高高电电位位),另另外外还还应应向向ALUALU发发出出加加法法运运算算命命令令(图中未画出图中未画出)。q2 2在在进进行行减减法法运运
4、算算时时,应应送送来来AALUAALU、B BALUALU、1 1、ALUSALUS、SASA信信号号(高高电电位位),同同样样还还应应向向ALUALU发发出出减减法法运运算命令。算命令。q3 3乘法运算的实现见前面的流程图。乘法运算的实现见前面的流程图。q4 4除法运算的实现见前面的流程图。除法运算的实现见前面的流程图。计算机学院计算机学院3.6 运算部件q浮点运算部件浮点运算部件q通通常常由由阶阶码码运运算算部部件件和和尾尾数数运运算算部部件件组组成成,其其各各自自的的结结构构与与定定点点运运算算部部件件相相似似。但但阶阶码码部部分分仅仅执执行行加加减减法法运运算算。其其尾尾数数部部分分则
5、则执执行行加加减减乘乘除除运运算算,左左规规时时有有时时需需要要左左移移多多位位。为加速移位过程,有的机器设置了可移动多位的电路。为加速移位过程,有的机器设置了可移动多位的电路。qP103 P103 习题习题 3.253.25、3.273.27计算机学院3.6 运算部件二、运算部件二、运算部件AM2901A1、AM2901A逻辑结构及原理图逻辑结构及原理图计算机学院3.6 运算部件q基本组成部件有:q八功能的ALU:完成算术与逻辑运算;q164位寄存器组:寄存加减运算的操作数;q4位Q寄存器:用于接收ALU的输出数据,具有左、右移功能;q3选1和2选1多路开关:用于多路地址、数据的选择。q下图
6、是AM2901A的逻辑原理图。计算机学院3.6 运算部件计算机学院3.6 运算部件2、AM2901A主要特点主要特点q位片式结构,即每片内仅有四位线路,要实现不同位数的运算器,需将几片同样的器件串接起来使用。例如用四片可实现个16位字长的运算器。q该运算器的ALU能实现八种运算功能,它每一位上的两个输入端数据分别用R和S表示,则这八种功能是:三种算术运算功能:五种逻辑运算功能:计算机学院3.6 运算部件q这八种功能的选择控制,是用外部送入的三位编码值I5I4I3实现的,其具体规定如下表所示。ALU的功能选择 ALU的输入选择计算机学院3.6 运算部件qALU的R输入端可以接收外部送入运算器的数
7、据D,寄存器组的组输出A,或接收逻辑0值。ALU的S输入端可以接收寄存器组的一组输出A和另组输出B,还可以接收Q寄存器的输出。这样,R和S接收的数据可以有如下12种组合情况:q R 0000 AAAA DDDDq S ABQ0 ABQ0 ABQ0q 考虑到R和S同时接收0无实用价值,OA与AO组合、AA和AB组合、DA和DB组合可以相互替代,故只需留下八种组合情况即可、此时可用外部送来的三位控制码来决定ALU的输入数据,即区分可用的八种组合。对应关系如上表所示。计算机学院3.6 运算部件q运算器中有1个16X4位的通用寄存器组和一个4位的Q寄存器。寄存器组被设计成能双端口输出的部件。每一个寄存
8、器都可以用A地址或B地址选择,将寄存器中的内容分别送到输出端口A或B)。当A和B地址不同时,在输出端口A和B将得到两个不同寄存器中的内容。该寄存器组的写入控制,只能用B地址实现,写入的数据是ALU的输出经过移位器送到寄存器组的输入端的。移位器可执行直送、左移一位操作,或右移一位的操作,使加减运算和移位操作可在同一个操作步骤中完成。qQ寄存器本身具有移位功能,即它可以接收自己左移一位或右移一位的值。Q寄存器 还可以接收ALU的输出F的值。Q的输出可在经ALU的S输入端送入ALU。计算机学院3.6 运算部件qALU还给出了Cn+4、F3(可用作符号位)、OVR和F=0000四个状态信息,它们分别是
9、本四位运算器产生的向更高位的进位、本片最高位的取值、结果溢出和结果为零的状态。ALU的最低位还接收从更低位片送来的进位信号Cn,ALU还给出了超前进位信号G和P。q移位器还有接收与送出移位数值的引线,它们分别是RAM3、RAM0、Q3和Q0,它们都是用三态门给出的具有双向传送功能的线路实现的。计算机学院3.6 运算部件q运算器的四位输出为Y3一Y0,它可以是ALU的运算结果,也可以是寄存器组A输出端口上的内容。这里用的是三态门电路,仅当OE#信号为低电平时,y的值才是可用的,否则Y输出处于高阻状态。q控制数据传送的方式(移不移位)和数据发送的去向,是用另外三位编码(I8I7I6)来控制的,具体
10、规定如下表所示。计算机学院3.6 运算部件数据传输控制计算机学院3.6 运算部件3、16位字长定点运算器位字长定点运算器q可以用四片Am2901A组成一个16位字长的定点运算器,其连接关系如下图所示。计算机学院3.6 运算部件线路工作原理:线路工作原理:q每片器件上的Q0和Q3端,RAM0与RAM3端都能用于输入和输出,因此,它们用三态门电路实现,在ALU的移位控制信号(由数据传送控制的三位编码I8I7I6给出)控制下,把高位片的Q0、RAM0输出信号送入低位邻片的Q3、RAM3输入端,或把低位片的Q3、RAM3输出信号送入高位片的Q0、RAM0输入端。q四片的数据输入端D3-D0一起作为16
11、位运算器的16个数据输入端D15D0,四片的数据输出端Y3-Y0一起作为16位运算器的16个数据输出端Y15-Y0。计算机学院3.6 运算部件q四片的三组输入信号I2 I1-I0,I5 I4 I3,I8 I7 I6,分别用外部送来的三组信号提供给每片,使四片总使用相同的控制信号,保证它们的并行工作关系(片间有串行数据信号传送)。q 通用寄存器组RAM的两个地址控制端“A”(读)和“B”(读写)、Q寄存器移位用的CP时钟脉冲信号,分别送入每片Am2901A的“A”、“B”和CP输入端。计算机学院3.6 运算部件指令控制过程:指令控制过程:q下述几条指令在运算器部件中的控制方法:q(1)把主存数据
12、寄存器中读得的数据写入通用寄存器组中的某个寄存器中;q(2)把通用寄存器组中某个寄存器的内容写进主存数据寄存器中;q(3)通用寄存器组中的两个寄存器的内容相加。结果写回其中的一个寄存器中。计算机学院3.6 运算部件q按Am2901A的功能规定,可以给出如下表所示的一张信号分配表。计算机学院3.6 运算部件q第一条指令,把主存数据寄存器的输出接到Am2901A的D输入端:用I2I1I0 111作为ALU的输入数据选择(D,0组合),用I5I4I3 000作为ALU的功能选择(加,即实现D十0),用I8I7I6011作为ALU的数据传送控制,即把ALU的输出送到通用寄存器组的输入,再写入由“B”地
13、址选择的寄存器中。在此操作过程中,最低位进位输入值给0。计算机学院3.6 运算部件q第二条指令,把通用寄存器中的内容写入主存数据寄存器中:用I2I1I0 011作为ALU的输入选择(0,B组合),用I5I4I3 000作为ALU的功能选择(加,即实现0+B号寄存器的内容),用I8I7I6 001作为Am2901A的输出选择并同时给出面信号,Y输出即为B寄存器的内容,可以把Y接到主存数据寄存器的输入端,从而完成向该寄存器的写入操作。计算机学院3.6 运算部件q第三条指令,把A寄存器的内容加上B寄存器的内容,结果写入B寄存器中:用I2I1I0 001作为ALU的输入数据选择,用I5I4I3 000
14、作为ALU的功能选择,用I8I7I6 010作为ALU的数据传送选择,从而完成A寄存器的内容加B寄存器的内容,并把结果写入B寄存器中的操作过程。此时要使OE#取高电平,使输出Y处于高阻状态,而不是输出A寄存器的内容。计算机学院3.6 运算部件q这三条指令的运行结果,应按某种规定设置运算器的状态标志触发器C、y、Z、N,这些触发器要在Am2901A芯片之外实现,将Am2901A的最高位芯片的输出Cn+4、OVR、F0000和F3的值写入这四个标志触发器中。图上省略了这一部分逻辑电路。计算机学院3.6 运算部件计算机学院q提高数据传送的正确性:提高数据传送的正确性:q(1 1)提高计算机硬件的可靠
15、性;)提高计算机硬件的可靠性;q(2 2)在数据编码上找出路,即采用某种编码法,)在数据编码上找出路,即采用某种编码法,通过少量的附加电路,使之能发现某些错误,甚通过少量的附加电路,使之能发现某些错误,甚至能确定出错位置,进而实现自动改错的能力。至能确定出错位置,进而实现自动改错的能力。3.7 数据校验码计算机学院3.7 数据校验码q码距是根据任意两个合法码之间至少有几个二进制位不相同而确定的,仅有一位不同,称其码距为1。例如,用四位二进制表示16种状态,则16种编码都用到了,此时码距为1,就是说,任何一个状态的四位码中的一位或几位出错,就变成另一个合法码,此时无查错能力。若用四个二进制位表示
16、8个状态,就可以只用其中的8种编码,而把另8种编码作为非法编码,此时码距为2。计算机学院3.7 数据校验码一、奇偶校验码一、奇偶校验码q奇偶校验码的原理是在每组代码中增加一个冗余位,使合法编码的最小码距由1增加到2。1、校验码的构成规则校验码的构成规则q偶校验:每个码字(包括校验位)中1的数目为偶数。q奇校验:每个码字(包括校验位)中1的数目为奇数。计算机学院3.7 数据校验码2、校验位的形成校验位的形成q 设有效信息位为:q偶校验,在发送端求校验位:q奇校验,在发送端求校验位:计算机学院3.7 数据校验码(3)校验原理校验原理q偶校验在接收端求:q奇校验在接收端求:q若P=0,则无错;P=1
17、,则有错。计算机学院3.7 数据校验码计算机学院3.7 数据校验码4、局限性、局限性q奇奇偶偶校校验验码码能能发发现现数数据据代代码码中中奇奇数数个个位位出出错错情情况况,并并且且不不能能纠纠正错误,常用于对存储器数据的检查或者传输数据的检查。正错误,常用于对存储器数据的检查或者传输数据的检查。q下面给出对几个字节值的奇偶校验的编码结果:下面给出对几个字节值的奇偶校验的编码结果:q 数据数据 奇校验的编码奇校验的编码 偶校码的编码偶校码的编码q 00000000 l00000000 00000000000000000 l00000000 000000000q 010l0l00 0010l010
18、0 l01010l00 010l0l00 0010l0100 l01010l00q 01ll1lll 0011l1111 10l111l1l 01ll1lll 0011l1111 10l111l1lq其中,最高一位为校验位,其余低八位为数据位。从中可以看其中,最高一位为校验位,其余低八位为数据位。从中可以看到,校验位的值取。还是到,校验位的值取。还是1 1,是由数据位中,是由数据位中1 1的个数决定的。的个数决定的。计算机学院3.7 数据校验码二、海明校验码二、海明校验码q海明校验的基本思想是将有效信息按某种规律分成若干组,每组安排一个校验位进行奇偶测试。在一个数据位组中加入几个校验位,增加数
19、据代码间的码距,当某一位发生变化时会引起校验结果发生变化,不同代码位上的错误会得出不同的校验结果。因此,海明码能检测出2位错误,并能纠正1位错误。q海明校验实质上是一种多重奇偶校验。海明校验实质上是一种多重奇偶校验。计算机学院3.7 数据校验码(1)求海明校验码的步骤。q 确定海明校验位的位数 设K为有效信息的位数,设r为校验位的位数,则整个码字 的位数N应满足不等式:N=Kr2r1若要求海明码能检测出2位错误,则再增加一位校验位。q 确定校验位的位置:位号(1N)为2的权值的那些位,即:20、21、22、2r1 的位置作为校验位,记作P1、P2、Pr,余下的为有效信息位。q 分组:将N位分r
20、组,第i位由校验位号之和等于i的那些校验位所校验。即即被被校校验验的的每每一一位位位位号号要要等等于于校校验验它它的的各各校校验验位位的的位位号号之之和和。这这样样安安排排的的目目的的,是是希希望望校校验验的的结果能正确反映出出错位的位号。结果能正确反映出出错位的位号。计算机学院3.7 3.7 数据校验码数据校验码q例:按上述规律讨论一个字节的海明码。例:按上述规律讨论一个字节的海明码。q每个字节由每个字节由8 8个二进制位组成,此处的个二进制位组成,此处的k k为为8 8,求出校验位的位数,求出校验位的位数r r应为应为5 5(可发现两位错),故海明码的总位数为(可发现两位错),故海明码的总
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 运算 方法 部件 课件
限制150内