北大慕课陆俊林计算机组成原理第四章知识点
4.1
运算指令
R型:可能会造成溢出,最后会检查结果是否溢出
add rd,rs ,rt
addu rd,rs,rt
sub rd,rs,rt
sub rd,rs,rt
I型:
算数运算使用signExtImm对16立即数进行符号拓展,逻辑运算进行零拓展,从而与32位源操作数和目的寄存器进行运算
addi rt,rs,imm
addiu rt,ts,imm
4.2
MOS晶体管全称:Metal-Oxide-Semiconductor
MOS管分为N型和P型
N型:高电平有效
P型:低电平有效
实际上用与非门和非门实现与门——也说明与非门比与门更容易构造
4.3 4.4
略
4.5
半加器:和输出由异或门构成,进位输出端由与门构成
全加器由两个半加器构成
有溢出不一定有进位,有进位不一定有溢出
溢出的检查方法是最高位的进位输入不等于最高位的进位输出,所以使用一个异或门来检查
溢出处理方式:
MIPS:使用两类指令来处理
X86:使用 标志寄存器的OF符号位来判断是否发生溢出
减法运算可转化为加法运算 具体参照机组补码部分知识
计算机通过设置sub-mode来提供减法运算模式,当处在减法运算模式的时候将输入通过非门取反并自动设置初始进位为1来完成A-B=A+(~B+1)
4.6
两种进位加法器
1.行波进位加法器
顾名思义,高位运算需要等待低位运算完成,一步一步向前推进运算,延迟时间很长,为(2n+1)个门延迟
2.优化方案:超前进位加法器
分析进位输出信号,发现每一位进位输出信号Ci=(AixBi)+(AixCi)+(BixCi),整理得Ci=(AixBi)+(Ai+Bi)xCi
将AixBi称为生成信号G,生成取自这一个寄存器给予的信息之意,将Ai+Bi称为传播信号P,传播取自前一个寄存器传播来的信息之意,得到通式Ci+1=Gi+PiCi
发现通过三级门即可提前计算进位,加上最后一级全加器门延迟一共四级门延迟即可完成计算,大大降低了延迟
但是存在缺点:完全的超前进位电路过于复杂
解决方案:采用小规模超强进位加法器拼接完成大规模的运算
----个人自用整理分享 仍在学习之中 有错误与不足欢迎指正交流----