为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 计算机组成原理AM290

计算机组成原理AM290

2021-12-26 35页 ppt 975KB 11阅读

用户头像 个人认证

宋先生

暂无简介

举报
计算机组成原理AM290计算机组成原理AM2901由表可得全加和Fn和进位输出Cn的表达式为:Fn=Xn⊕Yn⊕Cn-1Cn=XnYn+(Xn⊕Yn)Cn-1由8个全加器组成的8位加法器(串行进位)由8个全加器组成的8位加法器大家注意的是:加法器无存储功能全加器的位数与操作数的位数相等的加法器称并行加法器。进位信号的产生与传递的逻辑结构称为进位链。当Xi与Yi都为1时,Ci=1,即有进位信号产生,所以将XiYi称为进位产生函数或本地进位,并以Gi=XiYi表示。当Xi⊕Yi=1且Ci-1=1时,则Ci=1。这种情况可看作是当Xi⊕Yi=1时,第i-1...
计算机组成原理AM290
计算机组成原理AM2901由表可得全加和Fn和进位输出Cn的表达式为:Fn=Xn⊕Yn⊕Cn-1Cn=XnYn+(Xn⊕Yn)Cn-1由8个全加器组成的8位加法器(串行进位)由8个全加器组成的8位加法器大家注意的是:加法器无存储功能全加器的位数与操作数的位数相等的加法器称并行加法器。进位信号的产生与传递的逻辑结构称为进位链。当Xi与Yi都为1时,Ci=1,即有进位信号产生,所以将XiYi称为进位产生函数或本地进位,并以Gi=XiYi表示。当Xi⊕Yi=1且Ci-1=1时,则Ci=1。这种情况可看作是当Xi⊕Yi=1时,第i-1位的进位信号Ci-1可以通过本位向高位传送。因此,把Xi⊕Yi称为进位传递函数或进位传递条件,并以Pi=Xi⊕Yi表示。组内并行、组间串行的进位链这种进位链每小组4位,组内采用并行进位结构,组间采用串行进位传递结构,进位表达式为:C1=G1+P1C0C2=G2+P2G1+P2P1C0C3=G3+P3G2+P3P2G1+P3P2P1C0C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C016位组内并行组间串行进位链框图如下图所示。16位组内并行、组间串行进位链框图组内并行、组间并行的进位链G1*=G4+P4G3+P4P3G2+P4P3P2G1(小组的进位产生函数)P1*=P4P3P2P1(小组的进位传递函数)因此:C4=G1*+P1*C0同理:C8=G2*+P2*C4C12=G3*+P3*C8C16=G4*+P4*C12这是一组递推表达式,可将其展开为:C4=G1*+P1*C0C8=G2*+P2*G1*+P2*P1*C0C12=G3*+P3*G2*+P3*P2*G1*+P3*P2*P1*C0C16=G4*+P4*G3*+P4*P3*G2*+P4*P3*P2*G1*+P4*P3*P2*P1*C0其中:G1*=G4+P4G3+P4P3G2+P4P3P2G1G2*=G8+P8G7+P8P7G6+P8P7P6G5G3*=G12+P12G11+P12P11G10+P12P11P10G9G4*=G16+P16G15+P16P15G14+P16P15P14G13P1*=P4P3P2P1    P2*=P8P7P6P5P3*=P12P11P10P9  P4*=P16P15P14P1316位组内并行、组间并行进位链框图进位产生次序:①产生第一小组的C1、C2、C3及所有G*、P*②产生组间的进位信号C4、C8、C12、C16③产生第二、三、四小组的C5~C15至此,进位信号全部形成,和数也随之产生。二、AM2901A简介在此,我们将以Am2901A四位双极型位片式结构的运算器为实例,看一个已经商品化的运算器的实际组成。图4.7给出的是该运算器的逻辑简框图。图4.8给出了Am2901A较为具体的逻辑原理图AM2901给出这个实例的目的是帮助了解运算器本身的总体结构,建立起运算器的控制与运行过程的概念。事实上现在已有更高集成度的运算器芯片,但工作原理是类似的。其内部组成讲解如下:第一个组成部分是算逻运算部件ALU,能完成3种算术运算和5种逻辑运算功能。其输出为F,两路输入为S、R,最低位进位Cn,四个状态输出信号如图所示。F3、F=0000、OVR、Cn+4第二个组成部分是通用寄存器组由16个寄存器构成,并通过A口与B口地址选择被读的寄存器,B口地址还用于指定写入寄存器。通过B口地址、A口地址读出的数据将送到B、A锁存器,要写入寄存器的数据由一个多路选择器送来。第三个组成部分是乘商寄存器Q,它能对自己的内容完成左右移位功能,其输出可以送往ALU,并可接收ALU的输出结果。该芯片的第四个组成部分是五组多路选通门,包括如下内容:一组二选一门,选择把A口数据或ALU结果送出芯片,以给出输出Y的数据。Y输出的有无还受输出使能OE信号的控制,仅当OE为低时才有Y输出,OE为高,Y输出为高阻态。一组三选一门和另一组二选一门用来选择送向ALU的S、R输入端的数据来源,包括Q寄存器、A口、B口、外部输入D数据的8种不同组合。一组三选一门完成把ALU的输出、或左移一位、或右移一位的值送往通用寄存器组,最高、最低位移位信号有双向入/出问题。一组三选一门完成Q寄存器的左移一位、或右移一位、或接收ALU输出值的功能,最高、最低位移位信号有双向入/出问题。AM2901A运算器有以下主要特点:①它是位片式结构,即每片内仅有四位线路,要实现不同位数的运算器,需将几片同样的器件串接起来使用。例如用四片可实现—个16位字长的运算器。②该运算器的ALU能实现八种运算功能,它每一位上的两个输入端数据分别用R和S表示,则这八种功能是:R+S,S-R和R-S三种算术运算功能, 五种逻辑运算功能。这八种功能的选择控制,是用外部送入的三位编码值I5I4I3扎实现的,其具体规定如表4.1所示。③ALU的R输入端可以接收外部送入运算器的数据D,寄存器组的—组输出A,或接收逻辑0值。ALU的S输入端可以接收寄存器组的一组输出A和另—组输出B,还可以接收Q寄存器的输出。这样,R和S接收的数据可以有如下12种组合情况:R0000AAAADDDDSABQ0ABQ0ABQ0考虑到R和S同时接收0无实用价值,OA与AO组合、AA和AB组合、DA和DB组合可以相互替代,故只需留下八种组合情况即可、此时可用外部送来的三位控制码来决定ALU的输入数据,即区分可用的八种组合,具体对应关系如表4.2所示。④运算器中有1个16X4位的通用寄存器组和一个4位的Q寄存器。寄存器组被成能双端口输出的部件。每一个寄存器都可以用A地址或B地址选择,将寄存器中的内容分别送到输出端口A或B。当A和B地址不同时,在输出端口A和B将得到两个不同寄存器中的内容。该寄存器组的写入控制,只能用B地址实现,写入的数据是ALU的输出经过移位器送到寄存器组的输入端的。移位器可执行直送、左移一位操作,或右移一位的操作,使加减运算和移位操作可在同一个操作步骤中完成。⑤Q寄存器本身具有移位功能,即它可以接收自己左移一位或右移一位的值。Q寄存器还可以接收ALU的输出F的值。Q的输出可在经ALU的S输入端送入ALU。⑥ALU还给出了Cn+4、F3(可用作符号位)、OVR和F=0000四个状态信息,它们分别是本四位运算器产生的向更高位的进位、本片最高位的取值、结果溢出和结果为零的状态。ALU的最低位还接收从更低位片送来的进位信号Cn,ALU还给出了超前进位信号G和P。⑦移位器还有接收与送出移位数值的引线,它们分别是RAM3、RAM0、Q3和Q0,它们都是用三态门给出的具有双向传送功能的线路实现的。⑧运算器的四位输出为Y3一Y0,它可以是ALU的运算结果,也可以是寄存器组A输出端口上的内容。这里用的是三态门电路,仅当OE#信号为低电平时,y的值才是可用的,否则Y输出处于高阻状态。⑨控制数据传送的方式(移不移位)和数据发送的去向,是用另外三位编码不I8I7I6来控制的,具体规定如表4.3所示。我们可以用四片Am2901A组成一个16位字长的定点运算器,其连接关系如图4.9所示。四片Am2901A是串接起来的,即低位一片的Q3端与相邻高位一片的Q0端相接,对应的RAM3端与RAM0端相连接,低位片的进位输出CN+4与高位邻片的进位输入Cn相连接,以保证四片片间的左右移位功能和进位关系的正确执行。最低位一片的移位输入/输出信号Q0端和RAM0端、以及进位输入信号Cn在图中空着,要用另外的电路控制其输入/输出数据。例如当实现左右循环移位功能时,就要连接相应的信号。入出信号及引脚Y3~Y0D3~D0RAM3Q3RAM0Q0CPOECnCyF=0OverF3Am2901A3~A0B3~B0I8~I6I5~I3I2~I0Am2901Y11~8Y3~0D11~8D7~4D3~0CinRAM0Q0Y7~4高位Am2901Y15~12D15~12OVERF=0F15CyCPRAM15Q15A口B口I8~6I5~3I2~04片Am2901之间的连接Am2901Am2901VccR通用寄存器组RAM的两个地址控制端“A”(读)和“B”(读/写)、Q寄存器移位用的CP时钟脉冲信号,分别送入每—片Am2901A的“A”、“B”和CP输入端;有了上述说明,就比较容易看懂下述几条指令在运算器部件中的控制方法:(1)把主存数据寄存器中读得的数据写入通用寄存器组中的某个寄存器中;(2)把通用寄存器组中某个寄存器的内容写进主存数据寄存器中;(3)通用寄存器组中的两个寄存器的内容相加。结果写回其中的一个寄存器中。按Am2901A的功能规定,可以给出如表4.4所示的一张信号分配表。对第一条指令,把主存数据寄存器的输出接到Am2901A的D输入端,用111作为ALU的输入数据选择(D,0组合),用000作为ALU的功能选择(加,即实现D十0),用011作为ALU的数据传送控制,即把ALU的输出送到通用寄存器组的输入,再写入由“B”地址选择的寄存器中。在此操作过程中,最低位进位输入值给0。对第二条指令,用011作为ALU的输入选择(0,B组合),用000作为ALU的功能选择(加,即实现0+B号寄存器的内容),用001作为Am2901A的输出选择并同时给出OE信号,Y输出即为B寄存器的内容,可以把Y接到主存数据寄存器的输入端,从而完成向该寄存器的写入操作。对第三条指令,用001作为ALU的输入数据选择(A,B组合),000作为ALU的功能选择,用010作为ALU的数据传送选择,从而完成A寄存器的内容加B寄存器的内容,并把结果写入B寄存器中的操作过程。此时要使OE取高电平,使输出Y处于高阻状态,而不是输出A寄存器的内容。这三条指令的运行结果,应按某种规定设置运算器的状态标志触发器C、y、Z、N,这些触发器要在Am2901A芯片之外实现,将Am2901A的最高位芯片的输出Cn+4、OVR、F=0000和F3的值写入这四个标志触发器中。图上省略了这一部分逻辑电路。如果用该16位的运算器完成乘除法运算,Q寄存器应被用作乘商寄存器,此时,要特别注意通用寄存器和Q寄存器的共同移位问题。对乘法,对每次求得的部分积要用100码接收,即在把F/2B的同时,还完成Q/2Q的操作,101码只用于通用寄存器的右移位控制,不影响Q寄存器的内容,对除法,要用110码接收除后的余数,即把2FB的同时,还实现2QQ的移位操作,而111码只用于通用寄存器的左移位控制,不影响Q寄存器中的内容。实现原码乘除的符号运算,即求二个数符号的半加和,以及处理上商,判求部分积是用被乘数还是0,与前一次部分积相加等逻辑电路,也应在Am2901A之外另行给出,图中省略了这部分电路。
/
本文档为【计算机组成原理AM290】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索