杂七杂八程序员开源工具技巧

计算机组成原理学习(一)

2017-01-05  本文已影响742人  虾笑勇

前言
本次计算机组成原理学习主要分为两块

通过计算机编程语言的基本数据类型设计的知识学习,如果你还想深度了解一下编程语言如何通过编译器在计算机中运行,那么请接着看下面的内容:

一、冯诺依曼结构

冯诺依曼结构
运算器、控制器、存储器(一个)、输入设备和输出设备
1、以运算单元为中心
2、采用存储程序原理
3、存储器是按地址访问、线性编址的空间
4、控制流由指令流产生
5、指令由操作码和地址码组成
6、数据以二进制编码

冯·诺依曼结构提出后的贡献就是存储程序概念的提出,并且得到了实现,因为指令和数据都是二进制码,指令和操作数的地址又密切关联,所以基于当时的电子电路结构水平,选择这种结构是必然的。
缺点就是这种指令和数据共享同一总线的结构,而且必须按照顺序执行,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。

冯诺依曼指令运行

目前大多数的计算机运行都遵守冯诺依曼结构。

二、哈佛结构

哈佛结构
运算器、控制器、指令存储器(一个)、数据存储器(一个)、输入设备和输出设备

个人认为哈佛结构特点继承了冯诺依曼结构的特点。

哈佛结构是将程序指令存储和数据存储分开的处理器结构,两条总线数据宽度可以不一致。

哈佛指令运行

注意
1、一些51单片机,还有部分DSP芯片是哈佛结构模式,所以它们只能执行较少的任务。
2、随着科技的发展,目前的计算机基本上混用两种结构模式,多核心多处理器高级处理芯片大多外围采用冯诺依曼结构,局部采用哈佛结构.
3、哈佛结构与冯诺依曼最大的区别在于存储器分切割应用上,因为哈佛结构将存储器分为指令和数据两种,从而CPU与存储器之间有两条总线。

二、CPU

在上面中,我们已经简单的了解了CPU与存储器之间的通信,接下来我尽可能把自己的一些认知加进去,一起共同深度学习CPU的工作原理

1、CPU功能

现在市面上的CPU都有下图的四大功能

CPU功能

注意:
现在新的CPU都有多个核心以及多级内部复杂的缓存设计,这样的设计可以同时取到多条指令执行,从而体现并行处理的目的,即便是这样程序指令的顺序执行一直是一条严谨的规则。

2、CPU的组成

为了实现上面的功能,CPU一般有运算器,控制器,寄存器三大组成部分,其内部可以分的更细,如下图所示:

CPU的组成

他们之间的逻辑处理如下图所示:


CPU主要组成部分逻辑结构图

尽管我们熟悉了CPU的运作流程,但是必须要对以下几个概念要熟悉掌握

注意:
1、一条指令分为两部分:操作码+地址码。
2、执行一条指令的顺序是:CPU先把该指令从主存读取到数据寄存器中,然后再传送至指令寄存器。
3、执行任何给定的指令:首先必须对操作码进行测试,目的是识别所要求的操作,而指令译码器(Instruction Decoder,ID)就是完成这项工作的。
4、执行指令时:CPU能自动递增PC的内容,使其始终保持将要执行的下一条指令的主存地址,为取下一条指令做好准备。
5、一个CPU至少要有一个累加寄存器
6、这里的数据缓冲寄存器就是数据寄存器
7、微操作:控制器在实现一条指令的功能时,总是把每一条指令分解成一系列时间上先后有序的最基本、最简单、不可再分的操作控制动作,这种最基本、最简单、不可再分的操作称为微操作
8、数据通路:通常把许多寄存器之间传输信息的通路称为数据通路(Data Path),它控制信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器。

上一篇下一篇

猜你喜欢

热点阅读