众所周知,von neumann和哈佛架构是计算机系统所基于的两个基本模型。Von Neumann和哈佛架构之间的显着差异根据CPU与内存分离的方式出现。在这两个架构中,CPU访问了两种不同的方式。
冯·诺伊曼架构也被称为普林斯顿建筑是由约翰·冯·诺伊曼提出的1945年并且它是一种架构,其中数据和程序受到共享存储器等。,存储在同一内存块中。与哈佛架构一样,哈佛架构是这样的方法,其中数据和指令不共享相同的存储器I.,存在于不同的存储块中。
一般认为,哈佛的提出是为了解决冯·诺伊曼架构的局限性。
内容:von neumann与哈佛架构
比较图表
比较的基础 | 冯Neumann建筑 | 哈佛体系结构 |
---|---|---|
基本的 | 数据和指令驻留在单个存储器单元中。 | 数据和指令提供2个不同的存储单元。 |
基于 | 存储程序计算机概念 | 哈佛Mark I中继模型 |
记忆系统 | 单身的 | 双 |
需要空间 | 较少的 | 相对更 |
地址/数据总线集 | 一个 | 两个 |
开发成本 | 低 | 相对更 |
效率 | 较少的 | 更多的 |
执行速度 | 慢 | 比较快 |
手术 | 简单的 | 复杂的 |
绩效提供 | 低 | 相对较高 |
时钟周期 | 单个指令在最小两个时钟周期中执行。 | 单个指令在一个时钟周期内执行。 |
功能 | 数据传输和指令提取不会同时发生。 | 数据传输和指令获取同时进行。 |
空间利用率 | 好的 | 不太好 |
应用程序 | 个人电脑、工作站、笔记本等。 | 微控制器、数字信号处理等。 |
Von Neumann建筑的定义
使用一个存储数据和指令的存储单元的计算机体系结构被称为冯·诺伊曼体系结构。下图是冯·诺伊曼模型的建筑表现:
有三个主要组成部分构成了这种架构:
- 中央处理器
- 内存
- I / O接口
中央处理单元由控制单元、运算逻辑单元和寄存器组成。控制单元负责根据执行指令的顺序产生控制信号。这意味着将控制信号提供给体系结构中的各个组件,以实现正确的信息流。ALU负责执行数学运算。而寄存器则负责临时存储数据和指令。
存储器单元还用作整个系统的关键部分,因为它存储两个数据以及代码。计算机的内存主要被归类为RAM和ROM。RAM是临时存储单元,其存储数据以及通用说明。虽然ROM是一个永久性的内存,但持有负责启动系统的指令。
与我们已经表示,在这种架构中,数据和指令都驻留在单个存储器单元中,因此CPU使用单组总线来访问存储器。
程序执行后,数据被存储在内存中,从那里它被提供给输出设备。
哈佛建筑的定义
计算机架构,其中存储器单元被分成两个部分,用于单独存储数据和指令被称为哈佛架构。与von neumann架构不同,这里的数据存储器和指令存储器与von neumann架构不同。下图显示了哈佛模型:
在此架构中,CPU以von neumann架构中的方式以某种方式操作。但是,在这里使用两个单独的存储单元,因此分隔总线用于数据传输和指令提取。因此,执行速度比von neumann架构更快。
在这种方法中,由于指令位有时比数据位多,因此允许不同的单元大小,因此可以有效地利用资源。另外,对数据和指令使用单独的内存有助于最小化执行时间。然而,在哈佛模型中,目前的中央处理单元必须更高效,以便它能够处理两组总线,并允许同时进行数据传输和指令提取。
冯·诺伊曼和哈佛建筑的主要区别
- 的关键因素冯·诺伊曼体系结构和哈佛体系结构的区别在于,在冯·诺伊曼体系结构中,CPU访问一个包含数据和指令的单一内存。相反,在哈佛体系结构中,单个内存单元用于处理器访问的数据和指令。
- 单个存储器单元的存在使得系统由von neumann架构组成袖珍的与哈佛体系结构的系统相比,它有一个以上的内存,因此是笨重的。
- 在普林斯顿架构中,公共总线用于数据和说明。虽然在哈佛架构中,单独的一组总线用于将数据和指令传输,在此处存在两个单独的存储器单元。
- 的开发成本具有von Neumann架构的系统比具有哈佛架构的系统的开发成本相对较低。
- 一个重要的特征哈佛架构是它在同时提供从存储器中获取的数据传输和指令,因为它包括两组用于操作的总线。与普林斯顿架构一样,由于单个总线用于数据传输和指令提取,因此这是不同时进行的,因此不能同时进行两项任务。
- von neumann架构需要更少空间因为它只有一个存储单元,而哈佛架构由于有多个存储单元,占用的空间比较大。
- von neumann架构展示较慢执行速度因为它不允许同时处理,而哈佛架构提供的执行速度更快。
- 虽然冯·诺伊曼执行任务的速度较慢,但在这里执行然而,非常简单,但哈佛架构的操作相对复杂。
- 两种架构的硬件需求也不同。在冯·诺伊曼体系结构中,单存储器是这样被访问的硬件要求很低。相反,在哈佛,访问两个内存单元,因此对硬件的要求显然会很高。
- 的利用空间在哈佛模型中,内存是一个主要问题,因为在这里,数据和指令是分开存储的,因此,即使数据内存中留有一些空间,没有指令可以利用这些空间。而在Von Neumann模型中,由于数据和指令都存储在同一个存储单元中,因此空间利用率相对较好。
- 在冯·诺伊曼体系结构中,一条指令的执行使用两个时钟周期.但是通过适当的流水线操作,在一个时钟周期内,一条指令可以在哈佛体系结构中执行。
结论
因此,从上面的讨论中,可以得出结论,哈佛架构通过提供相对更好的设计,从而提供了同时执行的von Neumann架构的即兴。然而,各种现代系统在数据和程序存储器之间不提供物理分离,因此这些是基于von neumann架构。