本章学习目标:

  1. 理解冯诺依曼结构计算机的工作原理及基本构成
    2.了解基本的性能评价指标及其计算
    3. 了解计算机性能的基本测试工具及其局限性
    4.了解本课程的实验环境

    1.0 课程导学

    计算机组成原理_导学.pdf

    计算机组成原理 地位

    image.png

    重要性

    image.png

    学习重点

    理论、实践、工程、技术
    构造观+系统观+工程观的学习视角和学习方法
    多实践、多练习、多交流、多思考
    学习系统中各个硬件的设计方法、软/硬件协同
    image.pngimage.png
    image.png

    1.1 冯 诺伊曼结构原理及层次结构分析

    1.1 冯诺依曼结构原理及层次结构分析.pdf

    冯·诺依曼

    离散变量自动电子计算机方案(EDVAC:Electronic Discrete Variable Automatic Computer)提出70年仍被遵循。
    计算机之父、数学家、美国科学院院士
    现代计算机、博弈论领域贡献重大

    冯诺依曼计算机的两大工作原理

    存储程序【本课的存储系统设计相关课程】

  • 指令和数据以二进制形式存放在存储器中
  • 指令顺序存放,存储器按地址访问(就是将解决问题的程序送入到主存后才能供CPU访问)

    程序控制【本课的控制器设计相关课程】

  • 程序运行时,控制器逐条从主存中取出指令,控制全机相关部件执行相应操作,完成指令的功能直至完成程序的功能。

  • 由指令控制计算机的运行
  • 由控制器来控制数据的存取及程序的执行
    • 程序顺序执行,遇到分支指令可能改变顺序

image.png

围绕 存储系统、控制器的设计,是本节课学习的重点、难点

冯诺依曼计算机的组成(硬件+软件)

硬件分三大类:主机、外设、总线

  1. 主机:运算器、控制器、存储器(内存)
  2. 外设:输入、输出、存储器(外存)
  3. 总线:连接主机和外设的地址线、数据线、控制线

image.png

运算器

功能:用于算术运算和逻辑运算
基本结构由三部分组成:

  1. ALU(算术逻辑单元)
  2. 寄存器(参加运算的数据和保存计算结果)
  3. 连接通路

具体结构跟其支持的功能有关,受指令条数、数据类型、性能等不同而结构不同。
image.png

控制器

功能:产生指令执行过程中所需要的所有控制信号
表现形式:

  1. 电平信号
  2. 脉冲信号

信号产生依据:

  1. 指令-指令不同,产生的信号不同
  2. 状态-指令运行时所在寄存器的状态不同,产生的信号不同(比如条件转移指令,要检测条件状态寄存器的相关状态是否满足
  3. 时序-(主要是脉冲信号)对控制信号进行时间控制

产生控制信号的控制器有哪几种类型:

  1. 微程序控制器
  2. 硬布线控制器
  3. 微程序与硬布线控制器的组合

image.png

存储器

功能:存储~原程序、原数据、运算中间结果等
存储程序就是在存储器中完成的。
工作方式:读、写
工作原理:依地址访问(地址译码后选中相关单元,读出或者写入相关数据)
基本容量和基本地址线之间的对应关系:1k容量的数据,需要10根地址线;1M需要20根;1G需要30根地址线;2G需要31根(30+1)地址线,因为21=2

1k需要10根; 1M=1024k,1024=210,所以需要10+10根 1G=1024M,又是210,所以等于1M的基础上再加10,也就是20+10根 21=2G……编不下去了 28=256,所以256G需要38根地址线 210=1024所以1024G也就是1T需要40根地址线。

下图左侧为基于地址访问的存储器的基本结构图
image.png

输入/输出设备

image.png

软件系统

定义

image.png

分类

image.png

软硬件系统之间的关系

计算机发展的历史就是硬件和软件协同发展的历史。
image.png

计算机的层次结构

image.png

多个维度理解层次

  1. 不同用户处在不同的层次
  2. 不同的层次具有不同的属性(决定了学习的难度)越到下层难度越大
  3. 不同层次使用不同的编辑工具
    • image.png
  4. 不同层次的代码效率不同(层次越高效率越低)

    关于层次结构学习的几个概念

    image.png
    软硬件协同系统观
    image.png
    image.png

    1.2 计算机系统性能评价

    1.2 计算机系统性能评价.pdf

    可用于评价计算机系统性能的非时间指标是:

  • A.机器字长
  • B.主存容量(主存扩容受CPU地址总线的限制)
  • C.存储带宽(影响存储带宽的指标除了数据总线的位数以外、还与总线的传输速率有关。)
  • D.总线宽度

    用于评价计算机系统性能的时间指标是:

    时钟周期:又叫倒数周期
    CPI:可变范围的平均值
    image.png
    总结:主要由硬件系统性能决定,不同的软件系统对最终的计算结果有不同的影响。

    讨论:计算机系统的性能能被准确测量吗?

    请大家就计算机系统的性能能否被准确测量的问题展开讨论,分析并给出支持你的结论的理由
    不能,计算机系统性能主要由硬件系统性能起根本决定性作用,主要由机器字长、主存容量、存储带宽和总线宽度这几个特性决定。而不同的软件系统或不同应用程序,将对计算机系统性能的时间指标的计算结果有不同的影响,主要是影响CPI、MIPS、CPU时间等指标。

    1.3 计算机性能测试

    根据测试目的,有目标的选择计算机性能测试工具
    超频:主频、外频、倍频得到,太高烧了CPU
    iometer是测试I/O的主要工具
    1.3 计算机性能测试.pdf

    附录1.1 实验环境介绍- LOGISIM 主要界面

    附录1.2 实验环境介绍- LOGISIM零基础

    附录1.3 实验环境介绍-LOGISIM功能菜单

    附录1.4 实验环境介绍-LOGISIM自动生成逻辑电路

    第一章 单元测验

  • 计算机的字长与下列哪项指标密切相关:运算精确度

  • CPU地址线数量与下列哪项指标密切相关:内存容量
  • 下列关于计算机字长的描述中正确的是:字长一般与运算器的数据位相同、字长一般与通用寄存器的位数相同
  • 256KB的存储空间,需要的地址线数最少为( 18 )根?
  • 程序必须存放在「主存」才能被CPU访问并执行
  • 若某程序编译后生成的目标代码由A、B、C、D四类指令组成,它们在程序中所占比例分别为20%、40%、20%、20%。已知A、B、C、D四类指令的CPI分别为1、2、2、2。现需要对程序进行编译优化,优化后的程序中B类指令条数减少了一半,而其它指令数量未发生变化。假设运行该程序的计算机CPU主频为500MHZ。优化后程序的CPI为 (保留到小数点后2位)