嵌入式扩展1

CPU体系结构的种类、特点及应用场景

参考地址https://www.cnblogs.com/crazyValen/archive/2016/04/13/5389316.html

现代的CPU基本上归为冯·诺依曼结构(也成普林斯顿结构)和哈佛结构

一、冯·诺依曼结构(也成普林斯顿结构)
冯·诺依曼结构
特点
1.必须有一个存储器;
2.必须有一个控制器;
3.必须有一个运算器,用于完成算术运算和逻辑运算;
4.必须有输入设备和输出设备,用于进行人机通信;
5.程序和数据统一存储并在程序控制下自动工作

根据冯·诺依曼体系结构构成的计算机,必须具有如下功能:
把需要的程序和数据送至计算机中。
必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。
能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。
能够按照要求将处理结果输出给用户。

为了完成上述的功能,计算机必须具备五大基本组成部件:
输入数据和程序的输入设备;
记忆程序和数据的存储器;
完成数据加工处理的运算器;
控制程序执行的控制器;
输出处理结果的输出设备。

应用场景
广泛用于台式、笔记本、服务器、工作站等桌面端。

二、哈佛结构
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
哈佛结构
特点:
哈佛结构是一种并行体系结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址、独立访问。

应用场景:
多用于移动领域,例如我们常用的手持设备平板、手机等。

三、两者区别
冯·诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。人们把冯诺依曼的这个理论称为冯诺依曼体系结构。从ENIAC到当前最先进的计算机都采用的是冯诺依曼体系结构。所以冯诺依曼是当之无愧的数字计算机之父。
根据冯·诺依曼体系结构构成的计算机,必须具有如下功能:把需要的程序和数据送至计算机中;必须具有长期记忆程序、数据、中间结果及最终运算结果的能力;能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力;能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作;能够按照要求将处理结果输出给用户。
哈佛结构是为了高速数据处理而采用的,因为可以同时读取指令和数据(分开存储的)。大大提高了数据吞吐率,缺点是结构复杂。通用微机指令和数据是混合存储的,结构上简单,成本低。假设是哈佛结构:你就得在电脑安装两块硬盘,一块装程序,一块装数据,内存装两根,一根储存指令,一根存储数据……
是什么结构要看总线结构的。51单片机虽然数据指令存储区是分开的,但总线是分时复用的,所以顶多算改进型的哈佛结构。ARM9虽然是哈佛结构,但是之前的版本也还是冯·诺依曼结构。早期的X86能迅速占有市场,一条很重要的原因,正是靠了冯·诺依曼这种实现简单,成本低的总线结构。处理器虽然外部总线上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经算是改进型哈佛结构的了。至于优缺点,哈佛结构就是复杂,对外围设备的连接与处理要求高,十分不适合外围存储器的扩展。所以早期通用CPU难以采用这种结构。而单片机,由于内部集成了所需的存储器,所以采用哈佛结构也未尝不可。处理器,依托CACHE的存在,已经很好的将二者统一起来了。

CPU大致工作如下:取指令、指令译码和执行指令。

指令1至指令3均为存、取数指令,对冯诺伊曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。如下图所示:
 冯·诺依曼
再来看看哈佛架构的CPU:
哈佛结构
采用哈佛结构,由于取指令和存取数据分别经由不同的存储空间和不同的总线,使得各条指令可以重叠执行,这样,也就克服了数据流传输的瓶颈,提高了运算速度。 哈佛结构强调了总的系统速度以及通讯和处理器配置方面的灵活性。

发布了4 篇原创文章 · 获赞 0 · 访问量 203

猜你喜欢

转载自blog.csdn.net/weixin_43688481/article/details/104617535