计算机系统层次结构

计算机系统层次结构

OLENCER. Infinity

计算机硬件


冯·诺依曼机

特点
  • 采用“存储程序”的工作方式。

    “存储程序”的基本思想是: 将事先编制好的程序和原始数据送入主存后才能执行,一旦程序被启动执行,就无须操作人员的干预,计算机会自动逐条执行指令,直至程序执行结束。

  • 计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备5大部件组成。

  • 指令和数据以同等地位存储在存储器中,形式上没有区别,但计算机应能区分它们。

  • 指令和数据均用二进制代码表示。

  • 指令由操作码和地址码组成,操作码指出操作的类型,地址码指出操作数的地址。

  • 以运算器为中心。

现代计算机

  • 现代计算机以存储器为中心,CPU = 存储器 + 控制器。

计算机的功能部件

输入设备
输出设备
存储器
主存储器
  • 存储体
    • 存储单元:每个存储单元放一串二进制代码
    • 存储字:存储单元二进制代码的组合
    • 存储字长:存储单元中二进制位数
    • 存储元:存储二进制的电子元件,每个存储元可存1bit
  • 存储地址寄存器(Memory Address Register, MAR)
    • $ 2^{MAR位数} = 存储单元数 $
  • 存储数据寄存器(Memory Data Register, MDR)
    • MDR位数 = 存储字长
运算器
累加器(Accumulator, ACC)
乘商寄存器(Multiple-Quotient Register, MQ)
操作数寄存器(X)
算数逻辑单元(Arithmetic and Logic Unit, ALU)
控制器
控制单元(Control Unit, CU)
指令寄存器(Instruction Register, IR)
程序计数器(Program Counter, PC)

计算机软件


翻译程序

汇编程序(汇编器)

将汇编语言程序翻译成机器语言程序。

解释程序(解释器)

将源程序中的语句按执行顺序逐条翻译成机器指令并立即执行。

编译程序(编译器)

将高级语言程序翻译成汇编语言或机器语言程序。

软件和硬件的逻辑功能等价性

硬件实现,性能好,成本高。

软件实现,性能差,成本低。

计算机系统的层次结构


计算机系统的多级层次结果

指令集体系结构(Instruction Set Architecture, ISA)

软件和硬件之间的界面就是指令集体系结构,ISA 定义了一台计算机可以执行的所有指令的集合,每条指令规定了计算机执行什么操作,以及所处理的操作数存放的地址空间和操作数类型。

计算机系统的工作原理


从源程序到可执行文件

指令执行过程的描述

取指令
  1. (PC) -> MAR
  2. M(MAR) -> MDR
  3. (MDR) -> IR
  4. (PC) + 1 -> PC
分析指令
  1. OP(MDA) -> CU
执行指令
  1. AD(MDR) -> MAR
  2. M(MAR) -> MDR
  3. (MDR) -> ACC
运算结果
  • 加法指令第一个操作数放在ACC。
  • 加法指令第一个操作数放在X。
  • 乘法指令第一个操作数放在ACC。
  • 乘法指令第一个操作数放在MQ。
  • 结果放入ACC, 当结果ACC存不下, 需要MQ辅助存储, 存低位。

补充


冯·诺依曼机的基本工作方式

控制流驱动方式。

早期的冯·诺依曼机以运算器为中心,且是单处理机,多指令多数据流是多处理机。冯·诺依曼机最根本的特征是采用“存储程序”原理,基本工作方式是控制流驱动方式。

相联存储器的特点

相联存储器既可以按地址寻址又可以按内容(通常是某些字段)寻址,为与传统存储器区别,又称按内容寻址的存储器。

CPU可能有地址寄存器

地址译码器是主存的构成部分,不属于CPU。地址寄存器虽然一般属于主存,但现代计算机中绝大多数CPU内集成了地址寄存器。

存储器层次结构的速度关系

$ 寄存器 \gt Cache \gt 内存$

寄存器在CPU内部,速度最快。Cache采用高速的SRAM制作,而内存常用DRAM制作其速度较Cache慢。

系统软件

操作系统属于大型系统软件;编译程序属于语言处理程序;连接程序属于服务性程序。

数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统、应用系统、数据库管理员构成,其中数据库管理系统是系统程序。

向后兼容

向后兼容指的是时间上向后兼容,即新机器兼容使用以前机器的指令系统。

计算机系统的层次结构

上层实现对下层的功能扩展,而下层是实现上层的基础。

在计算机多层次结构中,上下层是可以分割的,且上层是下层的功能实现。此外,上层在下层的基础上实现了更加丰富的功能,仅有下层而没有上层也是可以的。

CPU区分指令和数据

根据指令周期的不同阶段来区分是指令还是数据

CPU只有在确定取出的是指令后,才会将其操作码送去译码,因此不可能依据译码的结果来区分指令和数据。


COPYRIGHT (c) OLENCER. ALL RIGHTS RESERVED.

  • Title: 计算机系统层次结构
  • Author: OLENCER.
  • Created at : 2023-08-06 10:18:20
  • Updated at : 2023-08-16 23:40:53
  • Link: https://olencer.github.io/考研/408/计算机组成原理/计算机系统层次结构/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments