《计算机组成原理》简洁笔记(备考用,更新中……)

目录

第一章、概述

1.1 计算机的硬件组成及功能

1.2 计算机的基本工作原理,程序执行原理

1.3 冯·诺依曼计算机结构的特点

1.4 计算机系统的多级层次结构

1.5、计算机的性能评价指标

第二章、数据表示

2.1机器数及特点

2.2  定点与浮点数据表示

2.3 数据校验的基本原理

2.4 奇偶校验

2.6 海明校验及其实现 

第三章、运算方法与运算器

3.1 定点补码加、减法运算

3.2 原码的一位乘法

3.3 补码的一位乘法

3.4 定点数除法

3.5  浮点数加减运算

第四章、存储系统

4.1、存储系统层次结构

4.2 静态存储器工作原理

4.3 存储扩展



第一章、概述

教学目标及基本要求:

  1. 简单了解计算机的发展历程,掌握冯·诺依曼计算机结构的特点计算机硬件的基本组成与功能
  2. 计算机系统的组成(硬件+软件)及其层次结构和相互关系,计算机的基本工作原理,程序执行原理
  3. 掌握计算机的性能评价,具体指标包括CPU执行时间、指令的CPI及计算机系统中平均CPI、时钟周期、指令执行性能的MIPS指标、MFLOPS、GFLOPS、TFLOPS等。

重点:计算机的硬件组成,冯•诺依曼型计算机的工作原理,计算机系统的多级层次结构。CPI、MIPS指标

1.1 计算机的硬件组成及功能

计算机系统→硬件系统→输入什么→输入设备的功能→存放在哪内容要深化)→怎么存→数据去哪里→运算器的功能→程序去哪里→控制器的功能→结果去哪里→输出设备的功能→两种信息流

 

1.2 计算机的基本工作原理,程序执行原理

  计算机为什么能自动执行→pc(程序计数器)→pc里装什么→PC功能(pc+1→pc) →顺序执行→跳跃如何实现→计算机的基本工作原理,程序执行原理→取指→执行

第一条指令的取指:

(1)PC的内容10000H送地址缓冲器

(2)PC自动加1,变为10001H

(3)把地址缓冲器中的10000H送到外部地址总线上至存储器,经地址译码后,选中10000H单元

(4)CPU发读控制命令

(5)存储器把10000H单元中的内容送到数据总线上

(6)CPU从数据总线上取数据送到数据缓冲器

(7)因为取出的是操作码,所以数据缓冲器的内容被送到IR中,经ID译码后发出相应命令

第一条指令的执行:

(1)把PC的内容10001H送入到地址缓冲器

(2)PC的内容自动加1

(3)把地址缓冲器的内容送外部地址总线,经地址译码后选中10001H单元

(4)CPU发读控制命令

(5)在读控制命令下,存储器把10001H单元中的内容12H送到数据缓冲器

(6)取出的是操作数,按指令将其送到累加器……

1.3 冯·诺依曼计算机结构的特点

(1)存储程序,程序控制原理

程序设计者事先按一定要求编好程序,把它和数据一起存入存储器内,而机器能自动地按照程序执行一条条指令,这样就可以使全部运算成为真正的自动过程。

(2)使用二进制数(3)程序自动执行(4)跳跃执行(5)硬件五部分及功能

1.4 计算机系统的多级层次结构

软硬件的接口即分界线在2级,即在一般机器级。

1.5、计算机的性能评价指标

1、非时间指标

1)机器字长:  指机器一次能处理的二进制位数

2)总线宽度:数据总线一次能并行传送的最大信息的位数

3)主存容量与存储带宽

2、时间指标

1) 主频f/时钟周期T , 外频、倍频

2) CPI (Clock cycles Per Instruction)

实际上频率 和IPC 在真正影响 CPU 性能

3)    MIPS (Million Instructions Per Second)\每秒钟CPU能执行的指令总条数 (单位:百万条/秒)

4)    CPU时间:执行一段程序所需的时间( CPU时间+ I/O时间 + 存储访问时间+ 各类排队时延等)。
       CPU时间 = 程序中所有指令的时钟周期数之和  x T=程序中所有指令的时钟周期数之和 / f


第二章、数据表示

教学目标及基本要求:

  1. 掌握定点数、浮点数、字符、十进制数的表示方法及表示范围 ;
  2. 掌握原码、补码、反码、移码等码制之间的关系以及各码制之间真值数的转换
  3. 掌握纠错、检错码的构造

2.1机器数及特点

(1)为什么研究机器内的数据表示: 组织数据 ,方便计算机硬件直接

(2)机器内的数据表示:

 (3)常见机器的特点

原码:表示简单、运算复杂、0的表示不唯一

反码:表示相对原码复杂、运算相对原码简单、符号位参加运算, 只需要设置加法器,但符号位的进位位需要加到最低位、0的表示不唯一

补码:运算简单,只需设置加法器、相对原码复杂、0表示唯一

移码:

2.2  定点与浮点数据表示

(1)定点数据

(2)浮点数据表示:把数的范围和精度分别表示的一种数据表示方法。浮点数的使用场合
当数的表示范围超出了定点数能表示的范围时。

一般格式:

IEEE 754格式:

根据上图求解题目(也要会反过来推):  

2.3 数据校验的基本原理

(1)数据校验的必要性:

1 受元器件的质量、电路故障或噪音干扰等因素的影响,数据01 在被处理、传输、存储的过程中可能出现错误;
2 若能设计硬件层面的错误检测机制,可以减少基于软件检错02 的代价(系统观)。

(2)校验的基本原理:

(3)码距的概念:同一编码中,任意两个合法编码之间不同二进数位数的最小值;
例如:0
011与0001 的码距为1,一位错误时无法识别;0000、0011、0101、0110、1001、1010、1100、1111等编码码距为2。任何一位发生改变,如0000变成1000就从有效编码变成了无效编码,容易检测到这种错误。
校验码中增加冗余项的目的就是为了增大码距。

(4)码距与检错或纠错能力的关系:(会给图的)

(5)选择码距要考虑的因素

码距越大,抗干扰能力越强,纠错能力越强,数据冗余越大,编码效率低,编码电路也相对复杂;选择码距必须考虑信息发生差错的概率和系统能容许的最小差错率。

2.4 奇偶校验

(1)奇偶校验的基本原理 

                                                         3)检错方法与电路

(2)奇偶校验的特点

 编码与检错简单、编码效率高、不能检测偶数位错误, 无错结论不可靠,是一种错误检测码、不能定位错误,因此不具备纠错能力

(3)奇偶校验的码距 

2.5 CRC校验及其实现

(1)CRC校验的基本原理 

(2)模2除运算

(3)CRC 编码方法 

(1)    根据待校验信息的长度k,按照 k+r ≤ 2r-1  确定校验位r的位数
如对4位信息 1100 进行CRC编码,根据  4+r ≤ 2r-1得 rmin = 3
(2)    根据r 和生成多项式的选择原则,选择位数为 r +1 的生成多项式G(X)= 1011
(3)    进行下列变化

(4)对Q(X)’按模2运算法则除G(x),求CRC编码中的r位校验信息

300

(5)用得到的余数替换Q(X)’的最后r位即可得到对应的CRC编码

(4)CRC的检错与纠错 

2.6 海明校验及其实现 

(1)海明校验的基本原理 

(2)海明校验编码举例

(3)海明校验特点分析

1)指错字G4G3G2G1= 0000 不一定无错(利用偶校验的特点去判断)

如P1、b1、P2三位同时出错,则G2和G1依然为0。

2)指错字能区别一位错和两位错码
如b1、b2同时出错,与仅b3出错时的指错字均为G4G3G2G1=0110 。因此:不一定能区别一位错与两位错!


第三章、运算方法与运算器

3.1 定点补码加、减法运算

3.1.1 定点补码加、减法与溢出

在计算机中,常将数值转换成 补码 后再进行加减运算。
其优点是,可将减法运算转化为加法运算,这样可以简化机器内部硬件电路的结构。
补码运算的特点是, 符号位和数值位一起参加运算
(1)补码的 加法运算: 其公式为: [x] +[y] =[x+y]
(2)补码的 减法运算:
          其公式为:

[x] - [y] 补   = [ x - y ]

            = [ x +(- y)]

       = [x] + [-y]

           [y ]的求法:是将[ y]的各位(包括符号位)全部取反,末位加“1”。

[例1] 已知1=-0.1110,2=+0.1101,

        求:[1],[-1],[2],[-2]

[解: ]  [1]=1.0010

  [-1]=﹁[1]+2-4=0.1101+0.0001=0.1110

   [2]=0.1101

  [-2]=﹁[2]+2-4=1.0010+0.0001=1.0011

⑶加减法运算规则

参加运算的数都用补码表示。

数据的符号与数据一样参加运算。

求差时将减数求补,用求和代替求差

运算结果补码。如果符号位为0,表明运算结果为正;如果符号位为1,则表明运算结果为负。

符号位的进位为模值,应该丢掉。

(1)溢出判断法:

两个正数相加,结果大于机器所能表示的最大正数,称为上溢

而两个负数相加,结果小于机器所能表示的最小负数,称为下溢

 

为了判断 溢出 是否发生,可采用两种检测的方法。
  • 第一种方法是采用双符号位法变形补码法,模4补码)。
  • 第二种方法是进位判断法单符号位法
双符号位的含义为:
00表示正号;
11表示负号;
01表示产生正向溢出;
10表示产生负向溢出。 

⑵进位判断法:

判断溢出表达式如下:V=Cn⊕Cn-1 (设Cn-1最高数值位向符号位的进位值产生的进位, Cn符号位产生的进位。)

3.1.2 基本的二进制加法/减法器

设字长为n位,两个操作数分别为

     x=x0. x1 x2 xn-1

     y=y0. y1 y2 yn-1

             其中x0 ,y0为符号位。

定点数补码加、减运算器设计和原码一位乘法直接略过…

3.2 原码的一位乘法

移位操作及其意义(逻辑左移和算数左移一样,逻辑右移和算术右移不一样)
 

手工计算和右移计算对比:

  • 符号位单独参加运算,数据位取绝对值参加运算。
  • 运算法则:

  • 运算过程采用改进的乘法运算方法。

典型例题:

3.3 补码的一位乘法

补码一位乘法的基本方法:

补码一位乘法的运算规则如下:

典型例题:

3.4 定点数除法

(1)原码恢复余数除法

典型例题:已知 X=0.1001,Y=- 0.1011,用原码一位除法求X/Y
解:[X]原= 0 .1001    [|X|]补=0.1001
[Y] 原 = 1.1011  [|Y|] 补 =0.1011    [-|Y|] 补  =1.0101
 

(2)原码加/减交替除法运算方法(不恢复余数法)

典型例题: 

(3)原码加/减交替除法实现逻辑

3.5  浮点数加减运算


(1)规格化浮点数的概念
 

(2)浮点数规格化方法

(3)浮点数加减运算方法及步骤
 

典型例题(1); 

典型例题(2); 

第四章、存储系统

4.1、存储系统层次结构

(1)基本存储体系

(2)主存速度慢的原因

  • 主存增速与CPU增速不同步;
  • 指令执行期间多次访问存储器
     

(3)存储体系的层次化结构


•L1 Cache集成在CPU中,分数据Cache(D-Cache)和指令Cache(I-Cache)
•早期L2 Cache在主板上或与CPU集成在同一电路板上。随着工艺的提高L2Cache被集成在CPU内核中,不分D-Cache和I-Cache
(4)存储体系层次化结构的理论基础

4.2 静态存储器工作原理

4.2.1 SRAM存储单元结构

4.2.2 SRAM存储单元工作原理

  原理:依靠上稳态电路内部交叉反馈机制存储信息

            地址选通信号

4.2.3 静态存储器的结构 

 看一下采用双译码结构的存储器的结构:

看一下6116存储结构:

 看一下2114存储的内部结构:

 看一下2114的内部结构就知道了:

4.3 存储扩展

4.3.1 存储扩展的基本概念及类型

4.3.2 位扩展举例

1.位并联法(位扩展法)

1K×4SRAM芯片 ——>1K×8SRAM存储器

2.地址串联法(字扩展法)

仅在字向扩充,而位数不变。需由片选信号来区分各片地址。

        用16KB×8b的芯片组成64KB×8b的存储器连接图。

        64KB×8b16KB×8b4 ×14

发布了21 篇原创文章 · 获赞 21 · 访问量 9417

猜你喜欢

转载自blog.csdn.net/Until_U/article/details/104771560