目录
运算部件结构:
A 代表算术,L 代表逻辑;模型机的 CPU 内部总线是单向内总线。
零、引入
算术运算有:加、减、乘、除,逻辑运算有:与、或、异或。
对于减法,通过引入补码,我们可以化减为加;对于乘法和除法,它们实际上就是错位相加和错位相减,也可以化成加法来实现。 因此,只要我们能做出一个加法器,实际上就能解决所有的算术运算。下面我们来分析一下加法的原始语义。
一、一位加法单元
1. 一位加法单元的逻辑框图
对于第一对 1,因为后面没有数,所以不会有来自上一位的进位位,因此不用考虑进位。
对于后面的组合,因为可能有来自上一位的进位位,所以要考虑进位。
由此,我们得出一般规律:一位加法单元。
2. 加法器的分类
-
全加器:3个输入量 —— 2个加数 + 低位进位
-
半加器:2个输入量 —— 不考虑进位
半加器只是没有上一位进位位的输入,它自己输出时还是会对高位进行进位的(如果需要的话)。
根据前面对加法的分析,理论上,实现一个加法器需要:全全全……全全半。但是,为了方便和统一,实际上,我们全部使用全加器,即:全全全……全全全,设置第一个进位位为 0 即可。
3. 全加器的逻辑表达式
根据加法的原始语义,我们设计以下规则:
- 若有奇数个 1,则本位和必为 1 。
- 若有大于等于两个 1,则必有进位。
由此我们得到一个真值表,并由此推导得到一个逻辑表达式,从而设计出逻辑电路结构:
二、加法器的结构
多位全加器同时实现多位二进制数的加法。
可以看出,Ai 和 Bi 是一开始就被给出来的,但是一直要等到上一位的进位位传过来以后,才能得到正确的结果。期间,电路一直在翻转,直到得到一个稳定的进位位。
影响加法器运算速度的因素:全加器的速度和进位的传递速度。
(考点)影响加法器运算速度的主要因素:进位的传递速度。
三、加法器的进位逻辑
1. 进位信号的基本逻辑
分析。
因为若 Gi = 1,则必有进位。因为 Pi = 1,也不一定有进位,只是起到提供条件的作用。
(选/填题)考察这三个表达式名称。
2. 串行进位
特点:逐级形成各级进位,每一级进位直接依赖于前一级进位。
因此,速度取决于进位传递链。
表达式。
结构。
进位信号采取串联结构,元器件比较少,运算时间比较长。
3. 并行进位
特点:并行地形成各级进位,各进位之间无依赖关系。
各进位只与输入变量和初始进位位有关。
表达式。
Cn 共有 n+1 项。
结构(以 4 位加法器为例)。
输出时取非再取非,纯纯是为达到放大的效果。
4. 分组进位
设加法器字长 16 位,每 4 位 1 组,分 4 组。
两级进位:组内并行进位,组间串行进位/并行进位。
串行进位链结构(组间串行进位)。
(1)第一组进位逻辑
GI 和 PI 只与输入的变量有关。
(2)第二组进位逻辑
(3)第三组进位逻辑 同理
(4)第四组进位逻辑 同理
(5)组间并行进位逻辑
并行进位链结构(组间并行进位)。
- 芯片74182:用于组间并行
- 芯片74181:用于组内并行
进位传递过程。
第 2 步:产生各组间进位;第 3 步:产生第二、三、四组的组内进位。
四、算术逻辑运算部件
ALU集成了多个全加器、并行进位链和输入选择门。
S3~0 —— 是控制信号,即微命令
SN74181
说明:
- 是一位加法器 —— 求和 + 进位
- 控制门:M = 0 进行算术运算;M = 1 进行逻辑运算
- 输入选择器:控制信号S3~0
有进位位参与的运算就是算术运算。
控制信号就是给出一个中间变量,与输入的变量一起参加运算,从而得到想要的输出结果。
根据结构图分析,我们可以得到:
注意Bi上的非,无语子居然显示不全...
S3S2S1S0 = 1001 时
1. M = 0
2. M = 1
SN74181 内部结构
SN74181 外部特征
每一位都一对一地进行异或运算,若结果都为 0,则 A = B。