计算机组成原理

计算机组成原理(哈尔滨工业大学 — 刘宏伟老师)

目录

第一章 计算机系统概述

1.1 计算机系统简介

  • 计算机系统:硬件、软件
  • 软件:系统软件、应用软件
  • 计算机系统的层次结构(由高到低):高级语言、汇编语言、操作系统、机器语言、微指令语言

1.2 计算机的基本组成

  • 冯·诺依曼计算机的特定:由五大部件组成;指令和数据以同等地位存于存储器,可按地址寻访;指令和数据用二进制表示;指令由操作码和地址码组成;存储程序;以运算器为中心
  • 现代计算机硬件:主机和I/O设备。主机包括CPU和主存。I/O设备包括输入设备和输出设备。CPU包括ALU(运算器)和CU(控制器)。
    现代计算机硬件组成
  • 存储器的结构:存储体;MAR(memory address register)(存储器地址寄存器);MDR(memory data register)(存储器数据寄存器)。MAR反映存储单元的个数;MDR反映存储字长
  • 运算器的组成:算术逻辑单元ALU;累加器;状态寄存器;通用寄存器
  • 控制器的组成:CU执行指令;IR分析指令;PC取指令
  • 主机完成一个取数指令的过程:PC将指令的地址给MAR,MAR送给存储体,将指令取到MDR中,再取到IR中,至此完成了取指令,CU进行执行,将IR中取数的地址传给MAR,传给存储体,将数据传给MDR,将MDR中的数据传给ACC。

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

  • 机器字长:与CPU中的寄存器位数有关
  • 运算速度:主频、核数、线程数、CPI(Clock cycle Per Instruction)、MIPS(Million Instructions Per Second)、FLOPS(floating-point operations per second)
  • 存储容量:主存容量;辅存容量

第二章 计算机的发展及应用

2.1 计算机的发展史

  • 摩尔定律:微芯片上集成的晶体管数目每三年翻两番(变为4倍)

2.2 计算机的应用

2.3 计算机的展望

第三章 系统总线

3.1 总线的基本概念

  • 总线是连接各个部分的信息传输线,是各个部件共享的传输介质
    总线的三种结构框图

3.2 总线的分类

第一种分类方式:
  • 片内总线:芯片内部的总线
  • 系统总线:计算机各部件之间的信息传输线(数据总线;地址总线;控制总线)
  • 通信总线:用于计算机系统之间或计算机系统与其它系统之间的通信
第二种分类方式:
  • 串行通信总线
  • 并行通信总线

3.3 总线特性及性能指标

  • 总线物理实现
    总线物理实现
  • 总线特性:机械特性;电气特性;功能特性;时间特性
  • 总线 的性能指标:总线的宽度(数据线的根数);标准传输率;时钟同步/异步;总线复用;信号线数;总线控制方式;其他指标
  • 总线标准:ISA; EISA; VESA(LV-BUS); PCI; AGP; RS-232; USB

3.4 总线结构

3.5 总线控制

  • 总线判优控制(链式查询、计数器定时查询、独立请求方式)
  • 总线通信控制(同步通信、异步通信、半同步通信、分离式通信)

第四章 储存器

4.1 概述

  • 按存储介质分类(半导体存储器、磁表面存储器、磁芯存储器、光盘存储器)
  • 按存取方式分类(随机访问、穿行访问)
  • 按在计算机中的作用分类
    存储器按在计算机中的作用分类
  • 存储器的层次结构
    存储器的结构层次

4.2 主存储器

4.2.1 概述
  • 主存的基本组成
    主存的基本组成
  • 主存和CPU的联系
    主存和CPU的联系
  • 主存的技术指标:存储容量、存储速度(存取时间;存取周期)、存储器的带宽
4.2.2 半导体存储芯片简介
  • 半导体芯片的基本结构
    半导体芯片的基本结构
  • 半导体存储芯片的译码驱动方式(线选法、重合法)
    第一个图,地址译码器有4位,说明有16个单元,读写控制电路有8位,说明一个单元里有8位。半导体存储芯片的译码驱动方式(线选法、重合法)
4.2.3 随机存取存储器(RAM)(Random Access Memory)
  • 静态RAM(SRAM)
  • 动态RAM(DRAM)
  • 动态RAM和静态RAM的比较
    (一般用DRAM做主存,用SRAM做缓存)
DRAMSRAM
储存原理电容触发器
集成度
芯片引脚
功耗
价格
速度
刷新
4.2.4 只读存储器(ROM)(Read-Only Memory)
  • 掩模ROM(MROM)
  • PROM(一次性编程)
  • EPROM(多次性编程)
  • EEPROM(多次性编程)
  • Flash Memory(闪存型存储器)
4.2.5 存储器与CPU的连接
  • 存储器容量的扩展(位扩展、字扩展、字和位同时扩展)
  • 存储器与CPU的连接:地址线的连接、数据线的连接、读/写命令线的连接、片选线的连接、合理选择存储芯片、其他(时序、负载)
4.2.6 存储器的校验

汉明码

4.2.7 提高访存速度的措施
  • 单体多字系统
  • 多体并行系统
  • 高性能存储

4.3 高速缓冲存储器

4.3.1 概述
  • 问题的提出:避免CPU“空等”现象(CPU和主存DRAM的速度差异)
    高速缓冲存储器SRAM
  • Cache的工作原理:主存和缓存按块存储;命中和未命中;命中率;效率
  • Cache的基本结构
  • Cache的读写操作
  • Cache的改进
4.3.2 Cache-主存的地址映射
  • 直接映射:某一主存块只能固定映射到某一缓存块
  • 全相联映射:某一主存块能映射到任一缓存块
  • 组相联映射:某一主存块只能映射到某一缓存组的任一块
4.3.3 替换算法
  • 先进先出(FIFO)算法
  • 近期最少使用(LRU)算法

4.4 辅助存储器

  • 不直接与CPU交换信息
  • 磁表面存储器的技术指标:记录密度;存储容量;平均寻址时间;数据传输率;误码率
  • 磁记录原理
  • 硬磁盘存储器
  • 软磁盘存储器(淘汰了)
  • 光盘存储器

第五章 输入输出系统

5.1 概述

I/O设备与主机信息传送的控制方式:程序查询方式;程序中断方式;DMA方式
I/O设备与主机信息传送的三种控制方式

5.2 外部设备

5.3 I/O接口

  • 接口的功能和组成
功能组成
选址功能设备选择电路
传送命令的功能命令寄存器、命令译码器
传送数据的功能数据缓冲寄存器
反映设备状态的功能设备状态标记
  • I/O接口的基本组成
    I/O接口的基本组成
  • 接口的分类:数据传送方式分类(并行接口、串行接口);按功能选择的灵活性分类(可编程接口、不可编程接口);按通用性分类(通用接口、专用接口);按数据传送的控制方式分类(中断接口、DMA接口)

5.4 程序查询方式

5.5 程序中断方式

5.6 DMA方式

第六章 计算机的运算方法

6.1 无符号数和有符号数

有符号数:真值(带符号的数);机器数(符号数字化的数);原码;反码;补码
对于正数:原码 = 补码 = 反码
对于负数:符号位为1,反码:除符号位每位取反,补码:反码+1
补码与移码只差一个符号位

6.2 数的定点表示和浮点表示

为什么要引入浮点数:

  • 编程困难,程序员要调节小数点的位置
  • 数的表示范围小,为了能表示两个大小相差很大的数据,需要很长的机器字长
  • 数据存储单元的利用率往往很低
    IEEE 754 标准

6.3 定点运算

在计算机中,移位与加减配合,能够实现乘除运算

  • 移位运算
  • 加减法运算
  • 乘法运算
  • 除法运算

6.4 浮点四则运算

6.5 算术逻辑单元

  • ALU电路
  • 快速进位链:并行加法器;串行进位链;并行进位链(先行仅为,跳跃进位)

第七章 指令系统

7.1 机器指令

  • 指令的格式:操作码 地址码 寻址方式
  • 指令的字长 :固定字长、可变字长
  • 指令的一般格式:操作码(反映机器做什么操作)和地址码字段
  • 扩展操作码技术
  • 地址码:四地址、三地址、二地址、一地址、零地址
  • 指令字长取决于:操作码的长度、操作数地址的长度、操作数地址的个数
  • 指定字长:固定(=存储字长);可变(按字节的倍数变化)

7.2 操作数类型和操作类型

  • 操作数类型:地址、数字、字符、逻辑数
  • 数据在存储器中的存放方式:从任意位置开始存储、从一个存储字的起始位置开始访问、边界对准位置
  • 操作类型:数据传送、算术逻辑操作、移位操作、转移、输入输出

7.3 寻址方式

  • 寻址方式的定义:确定本条指令的操作数地址;下一条要执行指令的指令地址
  • 寻址方式的分类:指令寻址;数据寻址
  • 指令地址:顺序、跳跃
  • 数据寻址:立即寻址、直接寻址、隐含寻址、 间接寻址、寄存器寻址、寄存器的间接寻址、 基址寻址、变址寻址、相对寻址、堆栈寻址

7.4 指令格式举例

  • IBM 360
  • Intel 8086

7.5 RISC技术

  • RISC(Reduced Instruction Set Computer)
  • CISC(Complex Instruction Set Computer)

第八章 CPU的结构和功能

8.1 CPU的结构

8.1.1 CPU的功能
  • 控制器:取指令、分析指令、执行指令、程序输入结果输出、总线管理、处理异常情况
  • 运算器:算术运算和逻辑运算
  • CPU的功能:指令控制、操作控制、时间控制、数据加工、处理中断
8.1.2 CPU结构框图

CPU的结构框图

8.1.3 CPU的寄存器
  • 用户可见寄存器:通用寄存器、数据寄存器、地址寄存器、条件码寄存器
  • 控制和状态寄存器:控制寄存器、状态寄存器
8.1.4 控制单元CU和中断系统
8.1.5 ALU

8.2 指令周期

8.2.1 指令周期的基本概念
  • 指令周期:取出并执行一条指令所需的全部时间
  • 每条指令的指令周期不同
  • 具有间接寻址的指令周期
  • 带有中断周期的指令周期
  • 指令周期流程
  • CPU工作周期的标志
8.2.2 指令周期的数据流
  • 取指周期数据流
  • 间址周期数据流
  • 执行周期数据流
  • 中断周期数据流

8.3 指令流水

8.3.1 如何提高机器速度
  • 提高访存速度
  • 提高I/O和主机之间的传送速度
  • 提高运算器速度
8.3.2 系统的并行性
  • 并行的概念
  • 并行性的等级
8.3.3 指令流水原理

指令的二级流水

8.3.4 影响指令流水线性能的因素
  • 结构相关
  • 数据相关
  • 控制相关
8.3.5 流水线性能
  • 吞吐率:单位时间流水线完成指令或输出结果的数量
  • 加速比:流水线的速度与等功能的非流水线的速度之比
  • 效率:流水线各功能段的利用率
8.3.6 流水线的多发技术
  • 超标量技术
  • 超流水技术
  • 超长指令字技术
8.3.7 流水线结构
  • 指令流水线结构
  • 运算流水线

8.4 中断系统

8.4.1 概述
8.4.2 中断请求标记和中断判优逻辑
8.4.3 中断服务程序入口地址的寻找
8.4.4 中断响应
8.4.5 保护现场和恢复现场
8.4.6 多重中断

第九章 控制单元的功能(控制单元即控制器)

9.1 微操作命令分析

  • 取指周期
  • 间址周期
  • 执行周期:非访存指令、访存指令、转移指令
  • 中断周期

9.2 控制单元的功能

9.2.1 控制单元的外特性

控制单元的外特性

  • 输入信号:时钟、指令寄存器、标志、外来信号
  • 输出信号:CPU内的各种控制信号、送至控制总线的信号
9.2.2 控制信号举例
9.2.3 多级时序系统
  • 机器周期
  • 时钟周期:控制计算机操作的最小单位时间
  • 一个指令周期包含若干个机器周期 一个机器周期包含若干个时钟周期
    多级时序系统举例
  • 机器速度 不仅与 主频有关 ,还与机器周期中所含 时钟周期(主频的倒数)数 以及指令周期中所含 的 机器周期数有关
9.2.4 控制方式

产生不同微操作命令序列所用的时序控制方式

  • 同步控制方式:任一微操作均由 统一基准时标 的时序信号控制
  • 异步控制方式:无基准时标信号,采用应答方式
  • 联合控制方式:同步与异步相结合
  • 人工控制方式

第十章 控制单元的设计

10.1 组合逻辑设计

10.1.1 组合逻辑控制单元框图

组合逻辑控制单元框图

10.1.2 微操作的节拍安排
  • 原则一:微操作的 先后顺序不得 随意 更改
  • 原则二:被控对象不同的微操作,尽量安排在 一个节拍 内完成
  • 原则三:占用 时间较短 的微操作尽量安排在 一个节拍内完成,并允许有先后顺序
10.1.3 组合逻辑设计步骤
  • 列出操作时间表
  • 写出微操作命令的最简表达式
  • 画出逻辑图

10.2 微程序设计

10.2.1 微程序设计思想的产生
10.2.2 微程序控制单元框图及工作原理
10.2.3 微指令的编码方式(控制方式)
  • 直接编码:在微指令的操作控制字段中,每一位代表一个微操作命令
  • 字段直接编码方式:将微指令的控制字段分成若干“段”,每段经译码后发出控制信号
  • 字段间接编码方式
  • 混合编码
10.2.4 微指令序列地址的形成
10.2.5 微指令格式
  • 水平型微指令
  • 垂直型微指令
10.2.6 静态微程序设计和动态微程序设计
  • 静态:微程序无须改变,采用ROM
  • 动态:通过改变微指令和微程序改变机器指令,有利于仿真,采用EPROM
10.2.7 毫微程序设计
10.2.8 串行微程序控制和并行微程序控制
10.2.9 微程序设计举例
  • 15
    点赞
  • 108
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
计算机组成原理是研究计算机硬件和软件之间相互关系的学科。它涉及到计算机的各个组成部分,包括中央处理器(CPU)、存储器、输入输出设备等。计算机组成原理的实际应用非常广泛,以下是一些实际应用的例子: 1. CPU设计:计算机组成原理的研究可以帮助设计和优化CPU的结构和功能。通过了解CPU的工作原理,可以提高CPU的性能和效率。 2. 存储器管理:计算机组成原理的研究可以帮助设计和管理计算机的存储器系统。了解存储器的层次结构和访问方式可以提高存储器的速度和容量。 3. 输入输出设备:计算机组成原理的研究可以帮助设计和开发各种输入输出设备。了解输入输出设备的工作原理可以提高设备的性能和可靠性。 4. 操作系统:计算机组成原理的研究可以帮助理解操作系统的工作原理。了解操作系统如何管理和调度计算机的资源可以提高系统的性能和稳定性。 5. 网络通信:计算机组成原理的研究可以帮助理解计算机网络的工作原理。了解网络通信的协议和技术可以提高网络的性能和安全性。 6. 并行计算:计算机组成原理的研究可以帮助设计和开发并行计算系统。了解并行计算的原理和技术可以提高计算的速度和效率。 以上是计算机组成原理的一些实际应用。通过深入研究计算机组成原理,可以更好地理解计算机系统的工作原理,并应用于实际的计算机系统设计和开发中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值