【计算机组成原理】算数逻辑单元

本文深入探讨了计算机组成原理中的算数逻辑单元(ALU),阐述了ALU在CPU中的作用,详细介绍了其物理构造,包括门电路和晶体管的构成。进一步解释了逻辑和加法运算的实现,如全加器和行波进位加法器的工作原理,并提出了超前进位加法器以降低计算延迟。此外,文章还简述了减法运算的实现以及溢出的判断方法,最后提及了乘法和除法运算在二进制计算中的挑战与实现策略。

前言

算数逻辑单元(ALU),是CPU中用来进行算数运算和逻辑运算的部分,程序的生命诞生于这,毕竟程序的本质就是这些简单的加减。

ALU的物理构造

如果要讨论更原始的本质,就得从物理层面来展开。

从外面看ALU,是这样子的:

深入ALU内部,我们会发现它是一个由很多门电路组成的集成电路。

每个门电路又是由一个个晶体管组成的,而现在的电子计算机都是采用的MOS管(MOSFET)。

举例,用MOS管实现的非门:(Vdd代表高电压,Vss代表接地或者低电压)

逻辑、加法运算的实现

逻辑运算就是把那些基本的门都串联起来就行了。加法运算复杂一点,就是用那些基础的门电路实现一个全加器。

然后把全加器串联起来,而这种串联的全加器叫行波进位加法器,这个名字看上去这么高大上,其实很简单,就是说前一个全加器的进位值输出作为后一个全加器的进位值输入。(下图是个4位的RCA)

实验一 算术逻辑单元 1. 实验目的 (1) 掌握运算器的工作原理。 (2) 验证运算器的功能 2. 实验要求 (1)基本要求 设计一个4位的算术逻辑单元,满足以下要求。 ①4位算术逻辑单元能够进行下列运算:加法、减法、加1、减1、与、或、非和传递。用3位操作码进行运算,控制方式如下表所示。 运算操作码     运   算 对标识位Z和C的影响 000 result ←A+B 影响标志位Z和C 001 result ←A+1 影响标志位Z和C 010 result ←A-B 影响标志位Z和C 011 result ←A-1 影响标志位Z和C 100 result←A and B 影响标志位Z 101 result←A or B 影响标志位Z 110 result← not B 影响标志位Z 111 result←B 不影响标志位Z和C ②设立两个标志触发器Z和C。当复位信号reset为低电平时,将这两个标志触发器清零。当运算结束后,在时钟clk的上升沿改变标志触发器Z和C的值。运算结果改变标志触发器C、Z的情况如下:加法、减法、加1、减1运算改变Z、C;与、或、非运算改变Z,C保持不变;传送操作保持Z、C不变。因此在运算结束时Z、C需要两个D触发器保持。 ③为了保存操作数A和B,设计两个4位寄存器A和B。当寄存器选择信号sel=0时,如果允许写信号write=1,则在时钟clk的上升沿将数据输入dinput送入A寄存器;当sel=1时,如果允许写信号write=1,则在时钟clk的上升沿将数据输入dinput送入B。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值