计算机组成原理笔记


第一章

  1. 冯诺依曼体系:

  • 由五大部件(储存器,运算器,控制器,输入设备和输出设备)组成;

  • 采用二进制表示信息;

  • 采用存储程序的工作方式。

  1. 所有计算机都是冯诺依曼体系? ×

  2. 硬件系统基本组成:

    • CPU由运算部件、寄存器组和控制器组成,通过CPU内部总线相互交换信息;控制器提供整个系统工作所需的各种微命令,这些微命令可用组合逻辑电路或执行微程序产生。

    • 储存器包括主存,外存和高速缓存等。

    • 输入输出设备、总线和接口。

  3. 北桥:内存控制,视频控制,与CPU的交互;南桥:控制外部设备和BIOS

  4. 性能的评价指标:

    • 字长:定点运算的操作数的位数;

    • CPU主频f:CPU内核的工作频率,CPU时钟频率。时钟周期T = 1/f。

    • 平均每条指令的时钟周期数CPI,每条指令的平均用时 = CPI / f

第二章

  1. 十六进制的一种标注方法是以H为后缀,最大数码为F;

  2. 原码:第一位符号位,0正1负;范围是 (12n1)12n1-(1-2^{n-1}) 到 1-2^{n-1}

  3. 补码:- (X) = (X变反 + 1);范围是112n1-1 到 1-2^{n-1}

  4. 浮点数: N=(1)s×1.M×2E127N = (-1)^s ×1.M × 2 ^{E-127}

  5. IEEE754:一位符号位,8位指数位,23位尾数位,共32位

  6. 十进制转IEEE754:先转换成二进制,规格化二进制(1.xx * 2^x),阶码真值+偏置值得阶码,再拼上尾数和符号位。

  7. 大端法:高字节存放在低地址,就是人的阅读习惯;小端法:高字节放在高地址,使得数据位的权值和地址的高低联系起来。

  8. 补码加法:符号位参与运算直接相加;补码减法:转换为与减数的负数(变反+1)相加;

  9. 原码加减法:先对数值位进行加减,再处理符号位

第三章

  1. CPU硬件结构模型:

    • 运算部件:ALU,输入逻辑,输出逻辑

    • 缓存部件

    • 寄存器组:通用寄存器、暂存器、指令寄存器IR、程序计数器PC、程序状态字寄存器PSW、地址寄存器MAR、数据缓冲寄存器MBR(模型的MDR)、栈指针寄存器SP。

    • 可被编程访问:R0-R3,PSW,PC,SP 不可访问:IR、MAR、MDR、C、D

    • PSW中有些位可以被编程修改 √

    • 控制部件

    • 时序系统

    • 数据通路和控制通路

  2. 寻址方式:

    • 立即寻址:直接在指令里读操作数

    • 直接寻址:给出内存地址或寄存器号,以读取操作数

    • 间接寻址:从某寄存器或主存中读取一个地址,然后再到这个地址读取操作数

    • 变址寻址:如X(R0),表示 取PC指向的地址里的值 加上R0里的值 得到操作数的有效地址 然后在这个地址里就可以找到操作数。实质是将形式地址作为基址地址,寄存器里的内容为偏移量。

    • 基址寻址:将寄存器的内容作为基址地址,形式地址作为偏移量。

  3. 模型机的一些寻址方式:

    • R: 寄存器的内容作为操作数

    • (R):寄存器的内容作为有效地址

    • -(R):寄存器的内容-1后作为有效地址

    • (R)+:寄存器的内容作为有效地址,访问完成后寄存器的内容+1

    • @(R)+:寄存器的内容为间接地址,访问完成后寄存器的内容+1

    • X(R):见14

  4. 模型机的控制系统结构:微命令发生器、时序系统,以及对IR、PSW、PC的信息输入。

  5. 控制系统的输入信号:IR、PSW、PC、时序系统、IO请求、复位信号

  6. 时序系统:一条指令的完成(指令周期),分为若干个工作周期,每个工作周期又分为若干个时钟周期(节拍)

  7. 并行加法器的运算速度取决于传递进位信号的逻辑电路(进位链)

  8. 串行进位链:$C_i = G_i + P_iC_{i-1}$;并行进位链:$C_i = G_i + P_iG_{i-1} + P_iP_{i-1}G_{i-2}+...+P_i...P_1C_0$

  9. 四大基本工作周期:

    • 取址周期FT:完成将指令从M取出送进IR,以及修改PC

    • 源周期ST:读取操作数,暂存于C

    • 目的周期DT:读取目的地址放入MAR,或读取目的操作数,暂存于D

    • 执行周期ET:执行数据传输、运算等

  10. 指令流程:重点一张图

  1. 常见模型机指令流程(微指令):

    • E开头:Enable,将寄存器内容打到总线上,如EMAR

    • R:从主存读内容到总线

    • W:写内容到主存

    • S开头:将(外)总线上的内容读入寄存器,如SIR,SMDR

    • 直接传递,如PC->A,用于将寄存器的值打入A或B,或简单的对寄存器的值传

    • 直通A/B:直接让A/B穿过ALU

    • A加B:让ALU算A+B,然后输出

    • DM:直接送出移位器

    • CP开头:过ALU送出的值复制到寄存器

  2. 处理X(R0):X是一个地址,存在当前指令的下一个地址。处理时应取PC指向的地址(因为取值的时候PC已经+1,这时候就指向X)的值与R0的内容相加,得到操作数地址。处理完后PC要+1(略过X)。

第四章

  1. 存储器的主要性能:速度(T,用存储周期表示)、容量(S,用MB GB表示)、价格(C,用每位的价格表示)

  2. 命中率:H = N1 / (N1 + N2),N1:对M1储存器的访问次数;N2:对M2储存器的访问次数

  3. 存取方式分类:

    • RAM:随机访问存储器,如主存和高速缓存;

    • SAM:顺序访问存储器,按顺序遍历查找,如磁带

    • DAM:直接访问存储器,可以先直接确定一块区域,然后再顺序查找,如磁盘

  4. 存储器的技术指标:

    • 存取时间TA:进行一次读写的时间

    • 存取周期TM:本次存取到下次存取开始的时间 TM = TA + 传输、复原等时间

    • 数据传输率DTR,也叫传输带宽

  5. 主存的逻辑设计:

    • 总容量 = 编制单元数*位数,位数指每个编制单元的数据宽度。设计时用小容量芯片拼,例如4M * 2 可以由 4个1M * 2 或 2个4M * 1 拼成。

    • 设计过程:

    低位分配给芯片,高位用于片选逻辑。剩下的位留空。

    片选逻辑用来选择芯片。这里的片选实际上只用到了两个地质线A11-A12(能表示2^2个芯片).

    注意上面R/W那一条是控制总线

    补充连线图:

  6. 奇偶校验:约定校验码中1的个数为奇数/偶数,码距=1。例:偶校验:1011001 0 ; 1911911 1.

  7. 海明校验:可以找出错误的位。m+k<=2^k-1,m表示数据位数,k表示校验码位数。海明校验的校验码分部于第2^0,2^1,2^2...位。其他位都是数据位。将其他位的位置转换为二进制,其对应位为1的位数2^a = 1,2^b = 0,2^c = 1 ,就说明这个位由2^a、2^c两个校验位负责校验。每个校验位都对其负责的位进行奇偶校验(异或)。接收方重新按检测位进行检验,如果发现不一致,综合所有检测位的结果,排除一致的检测位,算出有错的位。

第五章

  1. 总线定义:一组能为多个部件分时共享的信息传送线路;总线分类:CPU内总线、部件内总线、系统总线、外总线;

  2. 接口定义:主机与外设间的连接逻辑,控制外设I/O操作;接口分类:并行接口(接口与系统)、串行接口(接口与外设)。

  3. 中断定义:CPU暂停执行现行程序,转去执行为某个随机事态服务的中断处理程序。处理完毕后自动恢复原程序的执行。典型应用:管道中、低速I/O操作;处理故障。

  4. 中断的流程:保护现场-中断服务处理-恢复现场-开中断-返回

  5. DMA定义:直接存储器访问,是依靠硬件而不需要CPU的直接在主存与外围设备之间进行数据传送的方式,如磁盘IO。·

最后更新于