计算机组成原理—概论(1)


课程目标:掌握计算机各大部件的【组成原理,逻辑实现,设计方法,其互连构成整机系统的技术】

1.电子计算机类别:

1.电子模拟计算机:处理的信息是连续的物理量,运算过程连续
2.电子数字计算机:处理的信息是离散的数字量,运算过程不连续

2.存储程序的概念:

1.计算机硬件由:控制器+运算器(CPU,中央处理器)、存储器⭐(重点)、输入设备、输出设备,五部分组成

2.计算机内部采用二进制来表示指令和数据

3.**将编写好的程序和原始数据事先存入存储器中,然后再启动计算机工作,**就是存储程序的基本含义

注意:
1.冯诺依曼结构的特点是:存储程序
2.冯诺依曼计算机工作特点:按地址访问并顺序执行指令
3.存储程序的目的是:程序控制

3.内容回顾:

中央处理器(CPU)=运算器+存储器

主机=中央处理器+主存储器

外部设备=除去主机以外的硬件装置(如:输入设备、输出设备、辅助存储器)

在这里插入图片描述
上图表明的知识:
1.控制器对硬件的其他设备起到控制作用,反之则不行
2.输入设备可以传递给主存储器数据,主存储器可以传递给输出设备数据,反之则不行
3.运算器只能与主存储器进行交互,而不能直接与辅存储器交互
4.冯诺依曼计算机工作的特点体现在,控制器与主存储器之间进行按地址访问,并顺序执行指令

4.主要部件及介绍:

(1)输入设备:

示例:键盘、鼠标、扫描仪……
作用:将编好的程序和原始数据送到计算机(内存),且将他们转换成计算机内部所能识别和接受的信息方式(二进制形式

(2)输出设备:

示例:显示器、打印机、绘图仪……

(3)存储器 :

作用:用来存放程序和数据的,相当于记忆装置,是计算机能够实现“程序存储程序控制”的基础

存储器分类:

在这里插入图片描述

cache:

高速存储器,
CPU可以直接访问,用来存放当前正在执行的程序中活跃部分,以便快速的向CPU提供指令和数据

主存储器:

内存,
可由CPU直接访问,用来存放当前正在执行的程序和数据

辅助存储器:

外存,
设置在主机外部,CPU不能直接访问,用来存放暂时不参与运行的程序和数据,需要时再传到主存

补充:

(1)在断电情况下,Cache、主存储器的数据会丢失,而辅助存储器内的不会丢失

(2)Cache的诞生:CPU仅能和主存进行交互,但是主存的速率又相较于CPU较慢,因此引出了Cache,即Cache的速度和CPU相当

(3)在不考虑成本、时间的情况下,能不能把Cache做的很大?
答:不能!
这三种存储系统,可打比方,辅助存储器好比地下仓库,主存储器好比柜台,Cache好比最近的手边,在这三种情况下找东西,显然最近的手边更快的能够找到东西,而当你把它扩大容积后反而速率会变慢。所以在存储系统中速度和容量是成反比的。

(4)缓存和局部性原理

一个优秀的程序通常具有良好的局部性,通常会重复使用已使用的数据,或者使用已用过数据的临近数据,即程序常常会使用集中在一起的局部数据。

局部性分为:时间局部性空间局部性
如果一个内存位置被重复的引用,那就是有了时间局部性,如果一个内存位置被引用了,很快这个位置的附近位置也被引用了,这就有了空间局部性。

由于缓存中的数据是一个个数据块,每个数据块包含几十到几千字节不等,如果某个程序要访问数组a,第一次缓存没命中,cpu会从主存中取出包含数组a的一个数据块,复制到缓存中来,下次访问a[1],a[2],a[3]的数据时每次都缓存命中,极大的提高了效率,实现了空间的局部性。
在这里插入图片描述

(4)运算器:

作用:对信息进行处理和运算,(逻辑运算、算术运算)
运算器的核心部位是:算术逻辑运算部件ALU
中间结果的部位是:寄存器ACC(可确保ALU运算速度较快)

(5)控制器:

程序计数器:PC(了解即可)

是:存放指令的地址
当执行一条指令时,首先需要根据PC中存放的指令地址,将指令由内存取到指令寄存器中,此过程称为“取指令”。与此同时,PC中的地址或自动加1或由转移指针给出下一条指令的地址。此后经过分析指令,执行指令。完成第一条指令的执行,而后根据PC取出第二条指令的地址,如此循环,执行每一条指令。

指令寄存器:IR(了解即可)

是:用来保存当前正在执行的一条指令
是临时放置从内存里面取得的程序指令的寄存器,用于存放当前从主存储器读出的正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器(DR,Data Register)中,然后再传送至IR。
指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。

5.计算机各大部件之间的连接:

在这里插入图片描述

(1)小微型机:

总线结构,是一组能为多个部件服务的公共信息传送线路,能分时的发送与接收各部件信息。(形如:给菜田浇水的沟渠)

特点:【共享,分时】

在这里插入图片描述

(2)大中型机:

在这里插入图片描述
通道:相当于一个处理机,它替CPU分管一些内容,减轻CPU的管理压力

6.冯诺依曼结构

在这里插入图片描述
固件:是指那些存储在能永久保存信息的器件(如ROM)中的程序,是具有软件功能的硬件,其执行速度快于软件,灵活性优于硬件

7.计算机的工作过程简单分析(重难点)

(1)问题提出:将编写好的程序放在主存中,由控制器控制逐条取出指令执行,计算y=a+b-c为例来说明。
(2)设a、b、c为已知的3个数,分别存放在主存的5~7号单元,结果将存放在8号单元

(3)程序:
在这里插入图片描述
(4)分析:

1 2

1.图1、图2:
最左侧是高级语言;
中间是汇编语言,Load、ADD、SUB、STORE、HALT(停止的指令)是汇编语言的指令,后面的数字是数据的存储单元;
右侧的机器语言需要在下一步中进行设计

2.设计根据:
(1)数据、指令分配给多少字节:

  • 本题中数据是5、3、2,数值较小所以分给1B
  • 指令的组成是:op(操作码)+地址,共5钟指令,若想区分开来,则需要3位二进制即可,所以分给1B
    在这里插入图片描述

3.在内存中写入二进制数
(1)数据5、2、3分别写入对应的单元5、6、7,以二进制形式
(2)指令写到对应内存的二进制:机器码即是由操作码+去往的地址(数据前往的地址)
,以0号单元为例,操作码二进制为000,将要去往5号单元,二进制为00101,所以写入内存为000 00101,以此类推

3 4

(4)CPU中各项如何写入及操作:

ALU:算数运算单元
ACC:寄存器
IR:指令寄存器
PC:程序计数器

冯诺依曼中,指令和数据在一块内存中,所以要区分开哪里放数据哪里放指令,约定PC初始位置在0号位置,进而将0号单元的指令放入IR(指令寄存器中);
接下来是IR的操作:进行分析,前3位表示操作符,便可读出其操作符,后5位表示存放数据的地址,找到将=5号单元,将其数据放进ACC
一条指令完成,进而PC记录下一条指令的位置,进行顺序跳转,以此类推……
在这里插入图片描述

8.例题:

(1)冯诺依曼计算机的程序和数据是靠输入设备送入计算机的(寄存器)保存的。【内存】

(2)冯诺依曼计算机工作是(由数据流驱动控制流工作的)【由控制流驱动数据流工作的】

(3)冯诺依曼结构的特点是:(存储程序),冯诺依曼计算机工作特点:(按地址访问并顺序执行指令)

(4)把数据从内存传输到硬盘叫写盘

(5)个人计算机属于(微机)

9.计算机的主要性能指标

机器字长

是指参与运算的数的基本位数,由加法器、寄存器、数据总线的位数决定

数据通路宽度

数据总线一次所能并行传送信息的位数,称为数据通路宽度

主存容量⭐

是指:一个主存储器所能存储的全部信息
1.按字节编址以字节数来表示存储容量
2.以字为单位编址用字数乘以字长来表示存储容量


详细讲解:
地址线是用来传输地址信息用的。举个简单的例子:cpu在内存或硬盘里面寻找一个数据时,先通过地址线找到地址,然后再通过数据线将数据取出来。 如果有32根.就可以访问2的32次方的空间,也就是4GB。也就是说,地址线一次确定一个存储单元,地址线上值可能取的所有组合确定了存储单元的个数。所以,存储单元的个数=2^地址线的条数。我们常说的存储容量就是指存储单元的个数。

存储容量=4GB 这里是因为存储单元与字节存在一个一对一的关系,一个存储单元占一个字节。 1b等于1字节,b的意思就是字节的意思。字节的符号代表就是“b”。在电脑类数值单位的最小单位,就是字节(b) 存储器中所包含存储单元的数量称为存储容量,其计量基本单位是字节(Byte。简称B)

数据线确定存储字长 数据线有多少条,字长就是多少位。字长是32位 则1字=32bit=4B 则表明处理器一次可以处理4个存储单元 指令长度为4个存储单元。

转发自:地址线和数据线


总结:

  1. 按字节编址:存储单元为1B
    按字编址:存储单元为1bit
  2. 地址线:有多少个存储单元(2^x),就有多少个地址(2 ^x),寻址范围(2 ^x),地址线就为(x)条
  3. 数据线:存储单元有多少位,则数据线有多少位
  4. 涉及到存储问题时,k:2 ^10; M:2 ^20; G:2 ^30

小问题:
1.【按字节编址类型】
问:主存容量8GB,则地址线(),数据线()?
答:地址线:33条,数据线:8条

2.【按字编址类型】
问:4096*16,地址线(),数据线()?
答:地址线:12条,数据线16条

3.【混合类型】
问:主存KB,按字编址为16位,则地址线(),数据线()
答:地址线12条,数据线16条

运算速度

吞吐量:是指系统单位时间内处理请求的数量
响应时间:是指系统对请求做出响应的时间

主频和CPU时钟周期
CPU的主频:称为时钟频率,表示在CPU内数字脉冲振荡的速度

主频的倒数就是CPU时钟周期数

CPI:是指每条指令执行执行所用的(时钟周期数)

MIPS:表示每秒执行多少百万条指令
MIPS=指令条数/指令时间*10 ^6
推导:已知主频 f 和CPI,设指令条数为1,时钟周期数为 1/f ,执行时间为1/f *CPI *10 ^6,所以整理可得,MIPS= f /CPI

MFLOPS:表示每秒执行多少百万次浮点运算
MFLOPS=浮点操作数/执行时间*10 ^6

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值