其他分享
首页 > 其他分享> > 计算机组成原理 第一章 计算机系统概述

计算机组成原理 第一章 计算机系统概述

作者:互联网

第一章 计算机系统概述

1.1 计算机发展历程

1.1.1 什么是计算机系统

信息化世界信息化世界

CPU

内存

硬盘

通过电信号传递数据

硬件

CPU或者内存的金属针脚,是这些硬件用来发送或者接受数据的。

那么这些数据是如何进行交换的?主板上面的印刷电路,可以理解是电线,用来导电,释放低电平或者是高电平这种电信号,也就是0或者1。

在这里插入图片描述

1.1.2 计算机硬件的发展

在这里插入图片描述

第一台电子数字计算机:ENIAC,1946年,第二次世界大战快结束时期,美国军方用来计算武器的射程等,军方提出的。请的顾问是 冯诺依曼,采用电子管作为逻辑元件。什么是逻辑元件?计算机在进行数字计算时候,本质是处理一些电信号,所谓逻辑元件就是用来处理这些电信号的最小基本单元,这台计算机就是把很多很多的逻辑元件用线路连接起来,从而实现用电路来运算的功能,每个电子管的体积是比较大的,总共使用了1.8万个电子管

发展阶段时间逻辑元件速度(次/秒)内存外存
第一代1946-1957电子管几千-几万贡延迟线、磁鼓穿孔卡片、纸带
第二代1958-1964晶体管几万-几十万磁芯存储器磁带
第三代1964-1971中小规模集成电路几十万-几百万半导体存储器磁带、磁盘
第四代1972-现在大规模、超大规模集成电路上千万-万亿半导体存储器磁带、磁盘、光盘、半导体存储器

第一代:电子管时代
电子管时代

以ENIAC为代表的电子管时代,体积超大,耗电量超大,程序员直接使用机器语言编程,在纸带上编程,打孔,有孔的表示二进制0,没有孔的地方表示二进制1,这个阶段如果有只小虫子在纸带上死掉了,会导致纸带机读取二进制0和1出现错误,影响程序的运行,这也是 bug的由来。

第二代:晶体管时代
晶体管时代

贝尔实验室发明了晶体管,晶体管体积比电子管小很多,计算机的体积也变小了,开始出现面向过程的高级语言:FORTRAN。为了让计算机有自我管理的功能,出现了操作系统的雏形。这个阶段制造一台计算机需要几万到几十万个晶体管,那手动把他们焊接到电路板上,那可能就有几百万个焊接点,这个阶段计算机硬件不是很可靠的,如果有一个焊接点出现问题可能导致计算机无法工作。后来就有人发明了集成电路。

第三代:中小规模集成电路时代
中小规模集成电路

把逻辑元件集成到基片上, 采用集成电路制造工艺,计算机变得小,功耗也降低,可靠性也比焊接电路高得多。这个阶段计算机也没有推向个人生活。

第四代:大规模、超大规模集成电路
大规模集成电路

随着集成电路制作工艺的提升,进入到这个阶段,芯片技术进步。

英特尔的CPU发展情况:
微处理器发展

个人使用微型计算机的发展是以微处理器技术为标志,随着微处理器的发展而发展。

摩尔定律

1.1.3 计算机软件的发展

软件的发展

1.1.4 目前的发展趋势

计算机目前的发展趋势

1.2 计算机硬件的基本组成

1.2.1 早期的冯诺依曼结构

ENIAC这台计算机的问题是每一步的操作需要执行什么指令,每一步都是需要程序员手动去连接线缆告诉计算机,虽然这台计算机的操作速度快,但是程序员每一次都要手动接线告诉计算机怎么做,因此ENIAC的速度就被手动操作耗时给抵消了,所以为了解决这个问题,冯诺依曼第一次提出了存储程序。

ENIAC这台计算机,是程序员说一句,它做一句,而冯诺依曼提出的带存储程序的计算机,把所有要执行的指令一口气告诉计算机,全部放到主存里,然后计算机一条一条执行指令,程序员不需要手动接线。大幅提升计算速度

早期的冯诺依曼结构

冯诺依曼第一台

冯诺依曼早期

冯诺依曼计算机的特点:

  1. 计算机有五大部件组成
  2. 指令和数据以同等地位存放在存储器,可按地址寻访
  3. 指令和数据用二进制表示
  4. 指令由操作码(加、减)和地址码(数据的地址)组成
  5. 存储程序
  6. 已运算器为中心(输入和输出设备与存储器之间的数据传送通过运算器完成)

冯诺依曼早期2

1.2.2 现代的计算机结构

也是冯诺依曼结构的优化

现代计算机结构
现代计算机结构
计算机组成

1.2.3 各个硬件部件的细节

1.2.3.1 主存储器

主存储器

主存储器2Cpu写数据

存储元

存储元2

存储器2
存储器3

1.2.3.2 运算器

运算器1

1.2.3.3 控制器

控制器1

控制器2

1.2.3.4 计算机执行过程

计算机的工作过程分为以下几个步骤:

  1. 把程序和数据装入到主存储器中。

  2. 从程序的起始地址运行程序。

  3. 用程序的首地址从存储器中取出第一条指令,经过译码、执行步骤等控制计算机各功能部件协同运行,完成这条指令功能,并计算下一条指令的地址。

  4. 用新得到的指令地址继续读出第二条指令并执行,直到程序结束为止:每一条指令都是在取指、译码和执行的循环过程中完成的。

下面以取数指令(即将指令地址码指示的存储单元中的操作数取出后送至运算器的ACC中)为例,其信息流程如下:

  1. 取指令:PC→MAR→M→MDR→IR

  2. 分析指令:OP(IR)→CU

  3. 执行指令:Ad(IR)→MAR→M→MDR→ACC

    此外,每取完一条指令,还必须为取下条指令作准备,形成下一条指令的地址,即(PC)+1。

    注意:PC指程序计数器PC中存放的内容。PC→MAR应理解为(PC)→MAR,即程序计数器中的值经数据通路送到MAR,也即表示数据通路时括号可省略(因为只是表示数据流经的途径,而不强调数据本身的流动)。但是运算时括号不能省略,即(PC)+1→PC不能写为PC+1→PC。

计算机执行指令工作过程

存储器运算器控制器总结

1.3 计算机系统层次结构

计算机系统层次结构

三种语言

层次机构总结
体系结构对组成原理

1.4 计算机性能指标

1.4.1 存储器的性能指标

存储器的性能指标
n个二进制代表多少状态
进制

1.4.2 CPU性能指标

CPU性能指标

CPI:Clook cyclc Per Instruction,执行一条指令所需的时钟周期数。

同一个CPU,执行不同的指令,CPI不同,甚至是相同的指令,同一个CPU执行多次,CPI也会不同。比如CPU 执行取数指令,跟主存的状态也有关,如果主存负荷较大,那取数时间也会变长,也就是需要更多的时钟周期。所以执行一条执行需要花多少个时钟周期,这个问题我们放在微观视角来看,是毫无意义的,因为影响CPU指标的因素太多,我们一般讨论执行一条执行需要花多少个时钟周期的时候,讨论的是平均值,执行一条指令的耗时=CPI * CPU时钟周期

CPU性能指标2

IPS:Instructions Per Second ,每秒执行多少条指令。
IPS

IPS2

1.4.3 其他性能指标

数据通路带宽

其他指标

动态测试

CPU主频

CPU主频2
CPU主频3

性能指标总结

标签:计算机系统,MAR,计算机,存储器,第一章,PC,指令,概述,CPU
来源: https://blog.csdn.net/java123h/article/details/117933366