微型计算机之哈佛架构是什么?

article/2025/8/30 4:51:20

“哈佛体系结构”指的是什么?

微型计算机处理命令和数据,但是在很久以前的微型计算机中,用命令和数据共享了一条总线。在这种情况下,CPU在读取指令时使用总线,因此无法访问数据,并且在读取指令结束后访问数据。使用这种方法的总线配置的计算机体系结构被称为“诺伊曼体系结构(Von Neumann Architecture)”。

另一方面,有将总线用命令和数据分开,使之独立的总线构成方式。使用这种方法,即使CPU读取指令,您也可以使用数据总线访问数据。因此,微型计算机的性能可以比诺伊曼型更高(见图1)。使用这种总线配置的计算机架构是“哈佛架构(Harvard Architecture)”。
在这里插入图片描述

但是,哈佛型号内置两条总线,因此有一个缺点:微型计算机的硬件规模比诺伊曼型大,成本更高。

诺依曼型

简单地说,它是一种架构,可以同时使用指令和数据总线,有效地配置微型计算机的硬件。由于总线布满了微型计算机的内部,所以尽可能少的数量有利于抑制微型计算机的成本。但是,因为只有一个总线,所以不能同时处理命令和数据,影响微型计算机的运算性能。这被称为“诺伊曼瓶颈”,由于这个瓶颈,在追求高性能的微型计算机中没有被采用。另一方面,比起性能更重视成本的微型计算机更方便,在重视成本的微型计算机中被广泛采用。以ARM Cortex-M处理器为例,Cortex-M0和Cortex-M0+适用于此。因为它是针对低价位市场开发的处理器,所以它优先考虑成本。

哈佛型

为了消除诺伊曼瓶颈,把总线按命令和数据分开,使之独立的方式就是哈佛型。以这种方式,即使在CPU读取指令的时间段,您也可以使用数据总线访问数据。因此,微型计算机的性能可以比诺伊曼类型更高。但是,由于需要独立的指令总线和数据总线,微型计算机的硬件会变大,成本也会变高。因此,比起成本,更重视性能的微型计算机被广泛采用。以ARM Cortex-M处理器为例,Cortex-M3、Cortex-M4和Cortex-M7属于此类处理器。高性能处理器是针对高性能应用市场而开发的。
在这里插入图片描述

它由三个步骤组成:“指令读取(F)”、“指令解码(解码/翻译)(D)”、“运算并写入结果(E)”。每个处理执行一个周期一次的处理。读取指令是步骤“F”。访问数据是“E”步骤。在图2-a的情况下,在第三个周期之后,“F”和“E”总是同时进行。如果是诺伊曼类型,则不能同时执行指令提取和数据访问,因此任何一方都必须等待总线的使用。如果采用轮转方式(交替)调停总线权,则“F”和“E”将交替进行,因此如图2-b所示,命令的执行效率会非常差。如果是哈佛类型,管道处理可以执行一个周期1个指令。

哈佛的缺点是,总线的硬件规模需要诺依曼型号的两倍,从而提高了微型计算机的成本。对于32位微型计算机,指令和数据都是32位,因此需要相当于64位总线的程度。不仅仅是总线的程度。CPU内部需要控制两种总线的电路,因此CPU内部的硬件也会变大。

真正的哈佛架构

在此,我们将以STM32F1系列的STM32F103为例。
在这里插入图片描述

图左侧的Cortex-M3和DMA(直接存储器访问)是总线主机。Cortex-M3的命令总线是ICode总线。而且作为数据总线有DCode总线和系统接口总线两种。STM32F103的数据总线具有总线矩阵配置,因此总线主站连接Cortex-M3的Dcode总线、系统接口总线和DMA数据总线。总线从属端的所有数据总线都与总线矩阵相连。由于数据可能存储在闪存中,因此闪存也连接到总线矩阵。Cortex-M3的ICode总线通过闪存接口电路连接到内置闪存,而不连接到总线矩阵。

如果只看这个图,指令看起来只能从闪存运行,但是对于Cortex-M3,也可以从数据总线运行,所以您也可以从RAM或通过外围功能连接的外部内存执行它。


http://chatgpt.dhexx.cn/article/O5VUfoWb.shtml

相关文章

冯诺依曼结构、哈佛结构、改进型哈佛结构

冯诺依曼结构 冯诺依曼结构,又称为普林斯顿体系结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。取指令和取操作数都在同一总线上,通过分时复用的方式进行;缺点是在高速运行时,不能达到同时取指令和…

高级数据结构之赫夫曼树

思考两个问题 电报发送:二战的时候大家都知道那时候普遍会应用电报,如果让你来设计一个电报的发送编码你该如何设计呢? 电报加密后越短越好,发送快。破解难解码容易换加密树也要快可逆的 压缩算法:给你10000个字符&am…

ARM到底是冯诺依曼结构还是哈佛结构?

问题 嵌入式的学习中ARM处理器是主题,这些年产业界除了PC和服务器市场外,以手机、pad、家电控制等为代表的嵌入式领域都被ARM几乎垄断了。所以学习嵌入式处理器,其实等同于学习ARM。(当然了,近两年RISC-V架构横空出世在…

冯诺依曼结构和哈佛结构的区别

冯诺依曼结构和哈佛结构的区别 1. 冯诺依曼结构: 说明: 一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。 冯诺依曼的计算机必须…

冯诺依曼与哈佛结构的区别

cortex M3,M4主要采用哈弗结构 个人理解:最主要的区别在于程序空间和数据空间是否是一体的,冯诺依曼结构数据空间和地址空间是不分开的,而哈佛结构数据空间和地址空间是分开的 哈弗结构的优势:如果采用流水线设计&#xff0…

冯氏结构、哈佛结构、超级哈佛结构之间的异同

冯.诺伊曼结构 1945年,冯.诺伊曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯.诺伊曼型结构”计算机。冯.诺伊曼结构的处理器使用同一个存储器,经由同一个总线传输…

哈佛结构

数字信号处理一般需要较大的运算量和较高的运算速度,为了提高数据吞吐量,在数字信号处理器中大多采用哈佛结构,如下图所示 图 哈佛结构 与冯.诺曼结构处理器比较,哈佛结构处理器有两个明显的特点: 使用两个独立的存储…

冯诺依曼体系结构、哈佛体系结构与改进型哈佛结构之间的区别

1、冯诺依曼结构  冯诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。  1945年,冯诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯诺依…

哈佛结构与冯诺依曼结构(含STM32系统结构解析)

存储器是微控制器的重要组成部分,不同类型的微控制器其采用的存储结构与容量不尽相同,但存储器的用途是相同的,用于存放程序和数据。微控制器中的存储结构有两种基本构成形式。 冯诺依曼结构 冯诺依曼结构也称普林斯顿结构,是一…

STM32属于哈佛结构还是冯诺依曼结构?

目录 01、冯诺依曼体系 02、哈佛体系 03、arm和哈佛、冯诺依曼的关系 04、实际芯片制造 现代的CPU基本上归为冯诺伊曼结构(也成普林斯顿结构)和哈佛结构。 冯洛伊曼结构就是我们所说的X86架构,而哈佛结构就是ARM架构。一个广泛用于桌面端…

哈佛体系结构

哈佛机:为数据和程序提供了格子独立的存储器。 程序计数器只指向程序存储器,而不指向数据存储器,这样的的后果是很难再哈佛机上编写出一个自修改的程序。独立的程序存储器和数据存储器为数字信号处理提供了较高的性能。结构如下图所示&#x…

哈佛结构和冯诺依曼结构?STM32属于哈佛结构还是冯诺依曼结构?

现代的CPU基本上归为冯诺伊曼结构(也成普林斯顿结构)和哈佛结构。 冯诺依曼体系 冯诺依曼体系结构图如下 冯诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。数据与指令都存储在同一存储区中&…

什么是冯诺依曼结构、哈佛结构、改进型哈佛结构?

冯诺依曼结构 冯诺依曼结构,又称为普林斯顿体系结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。取指令和取操作数都在同一总线上,通过分时复用的方式进行;缺点是在高速运行时,不能达到同时取指令和取…

哈佛结构和冯诺依曼结构

已剪辑自: https://zhuanlan.zhihu.com/p/136748306 1946年,第一台计算机ENIAC诞生,人类进入计算机时代,后来,美籍匈牙利数学家:冯.诺依曼提出了计算机“存储程序”的计算机设计理念,即将计算机指令进行编码…

冯·诺依曼、哈佛、改进型哈佛体系结构解析

在如今的CPU中,由于Catch的存在,这些概念已经被模糊了。个人认为去区分他们并没有什么意义,仅作为知识点。 哈佛结构设计复杂,但效率高。冯诺依曼结构则比较简单,但也比较慢。CPU厂商为了提高处理速度,在C…

哈佛结构和冯·诺依曼结构

目录 一、哈佛结构 二、冯诺伊曼结构 三、哈佛结构和冯诺伊曼结构对比 一、哈佛结构 哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。哈佛结构是一种并行体系结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存…

哈佛架构和冯诺依曼架构

一、两种架构的介绍 1.哈佛结构是一种将程序指令的存储与数据的存储分开的存储器结构。首先,CPU在程序指令存储器中读取程序指令内容,解码后获得数据地址,然后在相应的数据存储器中读取数据,并进行下一步操作。指令存储和数据存储…

2021-05-28

嵌入式--深入理解单片机(一)单片机程序是如何运行起来的以及单片机的ROM和RAM 目录 一、两种处理器的结构体系 1、哈佛结构体系(Harvard architecture)2、冯诺依曼结构体系3、两种结构的总结 哈佛结构的优势冯诺依曼结构的优势当前…

冯诺依曼结构和哈佛结构

参考资料: 全面理解冯诺依曼结构和哈佛结构 CPU采用的是哈佛结构还是冯诺依曼结构? 0. 前言 哈佛结构和冯诺依曼结构都是针对于CPU来说的。 1. 冯诺依曼结构 冯诺伊曼结构又称为普林斯顿体系结构,是一种将程序存储器和数据存储器合并在一起…

哈佛结构和冯·诺依曼结构的区别

哈佛结构 (英语:Harvard architecture)是一种将程序指令储存和数据储存分开的存储器结构。中央处理器首先到程序指令储存器中读取程序指令内容,解码后得到数据地址,再到相应的数据储存器中读取数据,并进行下一步的操作&#xff08…