笔记-计算机组成原理

第一章 计算机概论

1. 冯诺依曼计算机特点及其框架图

  1. 计算机由运算器、存储器、控制器和输入输出设备五部分构成。
  2. 指令与数据以同等地位存放在存储器内,并可按地址寻访。
  3. 指令与数据均以二进制数表示。
  4. 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
  5. 指令在存储器中按顺序存放。通常,指令是按顺序执行,在特定条件下,可以根据运算结果或根据设定的条件改变执行顺序。
  6. 机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成。

2.现代计算机的组成框图

笔记-计算机组成原理_第1张图片
CU(control unit)是控制单元,解释存储器中的指令,并发出各种操作命令来执行指令;
ALU(arithmetic logic unit)是算术逻辑单元简称算逻部件,用来完成算术逻辑运算。

笔记-计算机组成原理_第2张图片
计算机有条不紊地自动工作都是在控制器的统一指挥下完成。

3.细化的计算机组成框图

1. 主存储器

笔记-计算机组成原理_第3张图片

  1. 主存储器(主存):存放数据和程序
    存储体M、各种逻辑部件(MAR是memory address register-存储器地址寄存器、MDR是memory data register-存储器数据寄存器)及控制电路。

  2. MAR反映存储单元个数,MDR反映存储字长。设MAR=4,MDR=8,可知:存储单元的数量有16,每一个存储单元的存储字长为8。

  3. 存储器M里面有很多存储单元,一个存储单元又包含很多存储元件,一个存储元件能寄存一位二进制代码‘0’/‘1’。

  4. 其中一个存储单元可存储一串二进制代码,这一串代码称作一个 存储字,其位数成为 存储字长,一个存储字可以代表一个二进制数、一串字符或者一条指令。为每一个存储单元赋予一个编号,作为其地址号

  5. 主存工作就是按存储单元的地址号来实现对存储字各位的存(写入)、取(读入),即按地址存取方式
    优势:
    1. 可以按顺序自动完成实现编好的程序的操作。
    2. 当反复使用某个数据或某条指令时,可以指出其地址号,而不用重复存放该数据或指令,提高存储空间。
    3. 由于指令和数据都是用地址号来反映,所以取指令和取数据操作可视为完全相同,这样可以用一套控制线路完成两种操作。

2. 运算器

笔记-计算机组成原理_第4张图片

  1. 运算器至少包括3个寄存器(ACC:累加器,MQ:乘商寄存器,X:操作数寄存器)和一个算术逻辑单元ALU(不是寄存器)。
  2. 加减法(M为存储器任一地址号)
    ACC存放的是被加数(被减数),M存放的数被送至X寄存器中。两数通过算术逻辑单元ALU中,完成计算。
    [M] -> X
    [ACC] +(-) [X] -> ACC
    
  3. 乘法
    M存放的数被送至乘商寄存器MQ中,ACC存放的数被送至操作数寄存器X中,两数通过算术逻辑单元ALU中,完成计算,将乘积的高位放置在ACC中,低位放在MQ中。注意ACC中的数送至X后,要置0,因为不清0,结果的高位会累加可能会造成溢出导致结果的不准确。
		[M] -> MQ
		[ACC] -> X
		0 -> ACC
		[X]*[MQ] -> ACC//MQ
  1. 除法
    ACC存放的是被除数,M存放的数被送至X寄存器中。两数通过算术逻辑单元ALU中,完成计算。商放置在MQ中,余数放在ACC中。
		[M] -> X
		[ACC] / [X] -> MQ
		[ACC] % [X] ->ACC

3. 控制器

由程序计数器PC(存放当前欲执行指令的地址,具有自动加1的功能,可自动形成下一条指令的地址),指令寄存器IR(存放当前指令)以及控制单元CU组成。

4. 计算机工作的全过程

笔记-计算机组成原理_第5张图片
笔记-计算机组成原理_第6张图片

  1. 首先要知道,要把一个问题它的运算步骤写成计算机一一对应的机器指令,完成运算程序的编写。即把有序的指令和数据输入到主存的第0至第N号单元中,并置pc=0。
  2. 启动机器后,计算机自动按顺序完成指令。
  3. 首先PC=0,其内容0送至MAR,命令存储器做读操作,将读出的内容(第一条指令)存入MDR。由MDR送至IR,完成第一条指令(由操作码和地址码构成)的取指过程。
  4. OP(IR)(指令的操作码)送至CU,经分析得出操作码为取数指令,于是CU将IR中存放的AD(IR)(指令的地址码)传给MAR,命令存储器读出对应地址中的数据放入MDR,MDR再将数据传至ACC,至此 第一次取数操作完成。
  5. 此时PC完成自动加一的操作,开始下一条指令的处理,直至执行完停机指令后,机器自动停机。

5. 计算机硬件的主要技术指标

1. 机器字长

CPU一次能处理数据的位数,与CPU中的寄存器位数有关。字长越长,数的表示范围越大,精度越高。若字长较短,那么运算位数比较多的数据时,就要多次运算才能完成,会影响机器的运算速度。但一味追求字长,造价会很昂贵。

2. 存储容量:主存容量+辅存容量

  1. 主存容量: 存储容量=存储单元个数*存储字长。如MAR=16,MDR=2,那么存储容量为64k*2
  2. 辅存容量一般用字节数(Bite)表示。

3. 运算速度

  1. 主频(并不能说明问题,存在空转问题)
  2. 吉普森法,会考虑每条指令的执行时间以及他们在全部操作中所占的百分比。即
    在这里插入图片描述
  3. 现在的运算速度普遍采用单位时间内执行指令的平均条数来衡量。用MIPS(百万条指令)为单位,或者CPI(执行一条指令所需的时钟周期),或者FLOPS(浮点运算次数每秒)来衡量运算速度。

6. 思考题

1. 计算机如何区分指令和数据

答:1.可以按照不同时间段来区分,在取指令阶段取出的肯定是指令,在执行指令阶段取出的就是数据;2. 通过地址来源区分,由PC提供的存储单元地址取出的是指令,由AD(IR)指令地址码提供的存储单元地址取出的就是操作数。



第二章

1.一些常识

  1. 第一台机械计算机是由法国的帕斯卡发明,有一系列齿轮组成,用发条作为动力,只能做6位加法和减法。为纪念他,一门高级语言命名为PASCAL
  2. 世界上第一台计算机ENIAC,于1946年在美国宾夕法尼亚大学诞生,标志计算机时代的到来。
  3. 1958年,中国第一台电子管计算机诞生。
  4. 2002年8月,“龙芯1号”问世,中国第一个CPU。
  5. 图灵:计算机科学之父、人工智能之父,是计算机逻辑的奠基者。
  6. 冯诺依曼:现在电子计算机之父
  7. 目前我国运算最快的计算机是:神威-太湖之光

2. 计算机发展阶段

是如何断代的?
答:主要以组成计算机基本电路的元器件为依据,如电子管、晶体管、集成电路等。

1. 第一代电子管计算机(1946-1957)

  1. 运算速度:5千~4万 次/秒。
  2. 内存容量:数KB
  3. 使用机器语言或汇编语言编写程序

2. 第二代晶体管计算机(1958-1964)

  1. 运算速度:每秒几十万次
  2. 内存容量:几十KB
  3. 出现了FORTRAN等高级语言。
  4. 与第一代计算机相比,其体积小,成本低,功能强。

3. 第三代集成电路计算机(1965-1971)

  1. 运算速度:每秒几十万次到几百万次
  2. 体积越来越小,价格越来越低,软件越来越完善。

4.第四代超大规模集成电路计算机(1972-至今)

  1. 运算速度:每秒几百万次~几亿 次/秒

3.摩尔定律

  1. 定义:集成电路上可以容纳的晶体管数目在大约每经过18个月便会增加一倍。

  2. 是否一直有效?
    答:不会一直有效。
    1. 首先,集成电路的容量是有限的,无法容纳大数目的晶体管。并且晶体管自身也不会无止境的缩小其体积。
    2. 由于集成度的不断提高,它的制作成本也不断提高。
    3. 其次,晶体管分布过于密集的话,当进行数据处理时,电流之间的干扰会很大,影响计算机运行效率;晶体管分布过多的话发热量也比较大,容易产生爆炸。

第三章 系统总线

1. 总线定义

连接多个部件的信息传输线,是各个部件共享的传输介质。在某一时刻,只允许有一个部件向总线发送信息,而多个部件可以同时从总线上接受相同的信息。
总线由许多传输线或通路组成,每条线可以一位一位地传输二进制代码,若干位传输线可以同时传输若干位二进制代码。

2. 总线结构框图

1. 单总线结构框图

笔记-计算机组成原理_第7张图片

  1. 优点:在I/O设备和主存交换信息时理论上不占用CPU;结构简单。
  2. 缺点:但是在I/O设备和主存交换信息时,由于速度差异过大,CPU只能等待总线空闲,效率很低;设置总线判优逻辑,也会影响整机的工作速度。

2. 面向CPU的双总线结构框图

笔记-计算机组成原理_第8张图片

  1. 优点:I/O设备通过I/O接口挂到I/O总线上,更便于增删设备;能够按运行速度将设备分离。
  2. 缺点:在I/O设备和主存交换信息时仍然要占用cpu,会影响cpu的工作效率。

3. 以存储器为中心的双总线结构框图

笔记-计算机组成原理_第9张图片

优点:在单总线基础上又开辟一条CPU与主存之间的总线,称作存储总线,其速度高,提高传输效率,又减轻系统总线的负担;保证在I/O设备和主存交换信息时不占用cpu。

3.总线分类

1. 片内总线(芯片内部)

  1. 长度短
  2. 并行运输
  3. 制造材料昂贵且不能更改

2. 系统总线

1. 数据总线(双向)

数据总线用来传输各功能部件之间的数据信息。其位数与机器字长、存储字长有关,称作数据总线宽度,是衡量系统性能一个重要参数。

2. 地址总线(单向)

由CPU输出。
主要用来指出数据总线上的原数据或目的数据在主存单位的地址或I/O设备的地址。
有多少根地址总线,对应的存储单元个数就是2^n根。

3. 控制总线(可双可单)

如何使各部件能在不同时刻占有总线使用权,要靠控制总线来完成。
(入CPU):设备提出中断请求
(出CPU):存储器读写命令

3.通信总线

用于计算机系统之间或计算机系统与其他系统之间的通信。
并行适合短距离通信,串行适合长距离通信。

4.总线性能指标

  1. 总线宽度:数据线的根数(一位是一根)
  2. 总线宽带:总线的数据传输速率,每秒传输的最大字节数(MBps)
  3. 时钟同步/异步
  4. 总线复用:一条信号线上分时传送两种信号。如地址总线与数据总线。
  5. 信号线数

5.总线标准(可能小题)

  1. ISA总线
    优:独立于CPU的总线时钟,因此CPU可以采用比总线频率更高时钟,有利于CPU性能的提高。
    劣:没有支持总线仲裁的硬件逻辑,不能支持多台主设备系统;所有数据传送必须通过CPU或DMA接口来管理。
  2. EISA总线
    在ISA基础上,分离出了总线控制权,能够支持多个总线主控器。
  3. VESA总线:基于CPU总线演化而来。
  4. PCI总线
    1. 高性能:提供了一个高速数据传输通道,与CPU时钟频率无关
    2. 良好的兼容性
    3. 支持即插即用、多主设备能力
    4. 具有与处理机和存储器子系统完全并行操作能力
  5. RS-232C总线(网线制作标准)
  6. USB总线
    1. 真正即插即用,可以在不关机情况下地对外设实行安装和拆卸。
    2. 有很强的连接能力
    3. 标准统一,实现了接口的统一
    4. 生命力强,不存在专利版权问题。

6.总线结构

举例:PCI总线支持更多高速运行设备,具有即插即用特性,低速设备则依旧挂在ISA、EISA总线上。
笔记-计算机组成原理_第10张图片

  1. 双总线结构(适用于大、中型计算机系统)
    CPU把一部分权利下放给通道,可对I/O设备进行统一管理,实现外部设备与存储器的数据传送,吞吐量会很大。
    笔记-计算机组成原理_第11张图片
  2. 三总线结构(注意DMA总线)
    任一时刻只能使用一种总线,主存总线与DMA总线不能同时对主存进行存取,I/O总线只有在CPU执行I/O指令时才使用。
    笔记-计算机组成原理_第12张图片
    另一形式:Cache可以与CPU和主存进行传输信息;I/O设备与主存传输信息不用经过CPU;利用扩展总线可支持很多i/o设备,工作效率明显提高。
    笔记-计算机组成原理_第13张图片
  3. 四总线结构
    多了一条高速总线,将高速i/o设备与系统总线和局部总线相连,使设备与CPU联系更密切。
    笔记-计算机组成原理_第14张图片

7.总线判优控制

当多个主设备要使用总线时,就要判优和仲裁,确定哪个主设备能使用总线。
集中控制优先权仲裁方式:

1.链式查询(2)

优点:结构简单;容易扩充设备
缺点:对电路很敏感,只要有线路断开,之后的设备就无法通信;离总控制部件远(优先级别低)的设备很难受到相应。

2.计数器定时查询(log2 n)

优点:预先知道有多少台设备n;计数从上一次计数终止点开始,可以实现循环。
缺点:电路敏感不如链式查询;增加控制线(设备地址)数,控制比较复杂。

3. 独立请求方式(2n)

优点:响应速度快;优先次序控制灵活
缺点:控制线数量多,控制比较复杂

你可能感兴趣的:(笔记,经验分享)