台式机
定点运算器的基本结构(图解篇)
运算器包括ALU\阵列乘除器\寄存器\多路开关\三态缓冲器\数据总线等逻辑部件。
运算器的设计,主要是围绕ALU和寄存器同数据总线之间如何传送操作数和运算结果进行的。
在决定方案时,需要考虑数据传送的方便性和操作速度,在微型机和单片机中还要考虑在硅片上制作总线的工艺。 计算机的运算器大体有如下三种结构形式:
1.单总线结构的运算器
单总线结构的运算器如(a)所示。由于所有部件都接到同一总线上,所以数据可以在任何两个寄存器之间,或者在任一个寄存器和ALU之间传送。如果具有阵列乘法器或除法器,那么它们所处的位置应与ALU相当。对这种结构的运算器来说,在同一时间内,只能有一个操作数放在单总线上。为了把两个操作数输入到ALU,需要分两次来做,而且还需要A,B两个缓冲寄存器。这种结构的主要缺点是操作速度较慢。虽然在这种结构中输入数据和操作结果需要三次串行的选通操作,但它并不会对每种指令都增加很多执行时间。只有在对全都是CPU寄存器中的两个操作数进行操作时,单总线结构的运算器才会造成一定的时间损失。但是由于它只控制一条总线,故控制电路比较简单。
2.双总线结构的运算器
双总线结构的运算器如(b)所示。在这种结构中,两个操作数同时加到ALU进行运算,只需一次操作控制,而且马上就可以得到运算结果。图中,两条总线各自把其数据送至ALU的输入端。特殊寄存器分为两组,它们分别与一条总线交换数据。这样,通用寄存器中的数就可进入到任一组特殊寄存器中去,从而使数据传送更为灵活。ALU的输出不能直接加到总线上去。这是因为,当形成操作结果的输出时,两条总线都被输入数占据,因而必须在ALU输出端设置缓冲寄存器。为此,操作的控制要分两步完成:
(1)在ALU的两个输入端输入操作数,形成结果并送入缓冲寄存器;
(2)把结果送入目的寄存器。假如在总线1,2和ALU输入端之间再各加一个输入缓冲寄存器,并把两个输入数先放至这两个缓冲寄存器,那么,ALU输出端就可以直接把操作结果送至总线1或总线2上去。
3.三总线结构的运算器
三总线结构的运算器如演示(C)所示。在三总线结构中,ALU的两个输入端分别由两条总线供给,而ALU的输出则与第三条总线相连。这样,算术逻辑操作就可以在一步的控制之内完成。由于ALU本身有时间延迟,所以打入输出结果的选通脉冲必须考虑到包括这个延迟。另外,设置了一个总线旁路器。如果一个操作数不需要修改,而直接从总线2传送到总线3,那么可以通过控制总线旁路器把数据传出;如果一个操作数传送时需要修改,那么就借助于ALU。很显然,三总线结构的运算器的特点是操作时间快。
全部0条评论
快来发表一下你的评论吧 !