冯诺依曼结构与哈佛结构

合集下载

为什么个人电脑还沿用冯·诺伊曼结构而不使用哈佛结构?

为什么个人电脑还沿用冯·诺伊曼结构而不使用哈佛结构?

为什么个人电脑还沿用冯·诺伊曼结构而不使用哈佛结构?【Cascade的回答(60票)】:在现实世界中很少有非常纯粹的概念,特别是在实际的应用里。

教科书里的大多是理想化的模型,便于掌握某个概念的重点和本质,但实际中很难达到这种理想化的状态。

哈佛结构和冯诺依曼结构主要区别在是否区分指令与数据。

在教科书里这是两种截然不同的做法。

实际上在内存里,指令和数据是在一起的。

而在CPU内的缓存中,还是会区分指令缓存和数据缓存,最终执行的时候,指令和数据是从两个不同的地方出来的。

你可以理解为在CPU外部,采用的是冯诺依曼模型,而在CPU内部用的是哈佛结构。

大部分的DSP都没有缓存,因而直接就是哈佛结构。

哈佛结构设计复杂,但效率高。

冯诺依曼结构则比较简单,但也比较慢。

CPU厂商为了提高处理速度,在CPU内增加了高速缓存。

也基于同样的目的,区分了指令缓存和数据缓存。

有时为了解决现实问题,究竟是什么主义真的没那么重要。

因而个人认为争论到底是哪种结构意义不大。

【加菲猫的回答(7票)】:因为 PC 市场已经被微软和 IBM-PC 架构垄断了。

但是,实际上哈佛结构只不过是“程序”和“存储”分离,然而内存就那个样子,好比你就插了一条内存条,怎么实现指令和数据分开“同时”读取呢?cache。

现在 intel 的处理器虽说是“CISC”但是也应用了大量的RISC思想。

当今的处理器速度已经如此高,intel有很长的流水线,如果指令和数据还不分开同时读取这会极大的影响流水线的效率。

所以在流水线设计中有多个cache,而数据和指令一般会同时缓存进Cache,这样在处理器流水线作业时其实也有哈佛结构的影子。

界限我说不好是什么样子,就像RISC 和 CISC 应该没有一道绝对的墙把它们区别开。

参考 intel 处理器体系结构的发展。

【ZhuJingsi的回答(6票)】:实际上,绝大多数现代计算机使用的是所谓的“Modified Harvard Architecture”,指令和数据共享同一个 address space,但缓存是分开的。

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

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

冯·诺依曼、哈佛、改进型哈佛体系结构解析在如今的CPU中,由于Catch的存在,这些概念已经被模糊了。

个人认为去区分他们并没有什么意义,仅作为知识点。

哈佛结构设计复杂,但效率高。

冯诺依曼结构则比较简单,但也比较慢。

CPU厂商为了提高处理速度,在CPU内增加了高速缓存。

也基于同样的目的,区分了指令缓存和数据缓存。

在内存里,指令和数据是在一起的。

而在CPU内的缓存中,还是会区分指令缓存和数据缓存,最终执行的时候,指令和数据是从两个不同的地方出来的。

你可以理解为在CPU外部,采用的是冯诺依曼模型,而在CPU内部用的是哈佛结构。

就像ARM9内核的S3C2440就是如上述所说一样,硬要区分的话,更加贴近改进型哈佛结构。

参考文章:冯·诺依曼、哈佛、改进型哈佛体系结构解析1. 冯·诺依曼结构冯·诺依曼结构,又称为普林斯顿体系结构。

主要特点:将程序指令存储器和数据存储器合并在一起。

本质上就是把指令也看作数据。

优点:结构简单、易实现、成本低缺点:在高速运行时,不能达到同时取指令和取数据,从而形成了传输过程的瓶颈。

由于程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。

2.哈佛结构主要特点:将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址(意味着有两个0地址:指令0和数据0)、独立访问,目的是为了减轻程序运行时的访存瓶颈。

哈佛结构的中央处理器首先到程序指令储存器中读取程序指令内容,解码后得到数据地址,再到相应的数据储存器中读取数据,并进行下一步的操作(通常是执行)。

优点:1.程序指令储存和数据储存分开,数据和指令的储存可以同时进行,效率高。

2.一般情况下程序难以修改自身,安全性高。

3.可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

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

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

冯诺依曼型‎计算机与哈‎佛结构计算‎机的区别说到计算机‎的发展,就不能不提‎到德国科学‎家冯诺依曼‎。

从20世纪‎初,物理学和电‎子学科学家‎们就在争论‎制造可以进‎行数值计算‎的机器应该‎采用什么样‎的结构。

人们被十进‎制这个人类‎习惯的计数‎方法所困扰‎。

所以,那时以研制‎模拟计算机‎的呼声更为‎响亮和有力‎。

20世纪3‎0年代中期‎,德国科学家‎冯诺依曼大‎胆的提出,抛弃十进制‎,采用二进制‎作为数字计‎算机的数制‎基础。

同时,他还说预先‎编制计算程‎序,然后由计算‎机来按照人‎们事前制定‎的计算顺序‎来执行数值‎计算工作。

(一)冯·诺依曼结构‎1945年‎,冯·诺依曼首先提出了‎“存储程序”的概念和二‎进制原理,后来,人们把利用‎这种概念和‎原理设计的‎电子计算机系统统称为‎“冯.诺曼型结构‎”计算机。

冯.诺曼结构的‎处理器使用‎同一个存储‎器,经由同一个‎总线传输。

传统计算机‎采用冯·诺依曼(Von Neuma‎n n)结构,也称普林斯‎顿结构,是一种将程‎序指令存储‎器和数据存‎储器并在一‎起的存储器‎结构。

冯·诺依曼结构‎的计算机其‎程序和数据‎公用一个存‎储空间,程序指令存‎储地址和数‎据存储地址‎指向同一个‎存储器的不‎同物理位置‎;采用单一的‎地址及数据‎总线,程序指令和‎数据的宽度‎相同。

处理器执行‎指令时,先从储存器‎中取出指令‎解码,再取操作数‎执行运算,即使单条指‎令也要耗费‎几个甚至几‎十个周期,在高速运算‎时,在传输通道‎上会出现瓶‎颈效应。

如图 1-3 所示,冯·诺依曼结构‎的计算机由‎CPU 和存储器构‎成,程序计算器‎(PC)是CPU 内部指示指‎令和数据的‎存储位置的‎寄存器。

CPU 通过程序计‎数器提供的‎地址信息,对存储器进‎行寻址,找到所需要‎的指令或数‎据,然后对指令‎进行译码,最后执行指‎令规定的操‎作。

冯诺依曼体系 哈佛结构

冯诺依曼体系 哈佛结构

冯诺依曼体系哈佛结构
冯诺依曼体系(Von Neumann architecture)是一种计算机体系
结构,它由冯诺依曼于1945年提出。

冯诺依曼体系的关键概
念是将计算机的硬件和软件分离开来,使得它们可以独立进行设计和开发。

冯诺依曼体系的核心特点包括:
1. 存储程序:计算机可以将程序以二进制形式存储在存储器中,并按照存储程序的顺序依次执行。

2. 运算器和控制器分离:计算机的运算器负责执行算术和逻辑运算,控制器负责控制程序的流程和数据的传输。

3. 存储器分为数据存储器和指令存储器:数据存储器用来存储数据,指令存储器用来存储程序指令。

4. 单一总线系统:计算机内部的各个组件通过一个总线进行数据的传输和控制信号的传递。

5. 指令的顺序执行:计算机按照存储程序的顺序依次执行指令,每条指令都会完成一个基本的操作。

相较于冯诺依曼体系,哈佛结构(Harvard architecture)在指
令存储器和数据存储器方面进行了分离,它们使用独立的存储器单元,并且分别由不同的总线连接到运算器。

这样做的优点是能够同时进行指令和数据的取得操作,提高了指令执行的效率。

同时,哈佛结构也有一些缺点,例如增加了成本和设计的复杂性。

总结来说,冯诺依曼体系和哈佛结构是两种计算机体系结构的
命名方式,它们在指令和数据存储的方式上有所不同,各有优缺点。

冯.诺依曼型计算机与哈佛型计算机的比较

冯.诺依曼型计算机与哈佛型计算机的比较

冯.诺依曼型计算机与哈佛型计算机一、关于冯.诺依曼型计算机1945年,冯.诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯.诺曼型结构”计算机。

冯诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照程序顺序执行。

迄今为止所有进入实用的电子计算机都是按冯·诺依曼的提出的结构体系和工作原理设计制造的。

冯·诺依曼型计算机的特点有以下几个:1. 计算机完成任务是由事先编号的程序完成的;2. 计算机的程序被事先输入到存储器中,程序运算的结果,也被存放在存储器中。

3. 计算机能自动连续地完成程序。

4. 程序运行的所需要的信息和结果可以通输入\输出设备完成。

5. 计算机由运算器、控制器、存储器、输入设备、输出设备所组成。

根据冯诺依曼体系结构构成的计算机,必须具有如下功能:1. 把需要的程序和数据送至计算机中。

2. 必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。

3. 能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。

4. 能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作。

5. 能够按照要求将处理结果输出给用户。

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

二、关于哈佛型计算机数字信号处理一般需要较大的运算量和较高的运算速度,为了提高数据吞吐量,在数字信号处理器中大多采用哈佛结构。

哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度。

哈佛型计算机的特点有以下几个:1. 使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存,以便实现并存处理。

哈佛体系与冯诺依曼的差别

哈佛体系与冯诺依曼的差别

冯诺依曼体系结构、哈佛体系结构与改进型哈佛结构之间的区别分类:X.硬件知识P.OS-操作系统 & 内核2009-09-12 12:064315人阅读评论(2)收藏举报1、冯·诺依曼结构冯·诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。

1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。

冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。

冯·诺依曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。

冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。

由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。

但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。

在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。

从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。

举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。

arm7系列的CPU有很多款,其中部分CPU没有内部cache的,比如arm7TDMI,就是纯粹的冯·诺依曼结构,其他有内部cache且数据和指令的cache分离的cpu则使用了哈弗结构。

2、哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,如图1所示。

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

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

哈佛结构与冯·诺伊曼结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

哈佛结构的微处理器通常具有较高的执行效率。

其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。

目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、ATMEL公司的A VR系列和安谋公司的ARM9、ARM10和ARM11。

冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。

除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

哈佛结构和常见的冯诺依曼结构区别在于地址空间和数据空间分开与否。

冯诺依曼结构数据空间和地址空间不分开,哈佛结构数据空间和地址空间是分开的。

一般DSP都是采用改进型哈佛结构,就是分开的数据空间和地址空间都不只是一条,而是有多条,这根据不同的生产厂商的DSP芯片有所不同。

在对外寻址方面从逻辑上来说也是一样,因为外部引脚的原因,一般来说都是通过相应的空间选取来实现的。

本质上是同样的道理。

MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就是哈佛结构。

哈佛结构和冯若一曼结构区别

哈佛结构和冯若一曼结构区别

关于这个问题,有人说51地址线复用,就是冯诺依曼结构。

很多入门的书上基本上都说:由运算器、控制器、存储器、输入设备、输出设备组成的系统都叫冯氏结构。

也有的说:“程序存储器的数据线地址线”与“数据存储器的数据线地址线”共用的话,就是冯氏结构,所以51是该结构。

(我认为说得太绝对了)我认为冯氏结构与哈佛结构的区别应该在存储器的空间分别上,哈佛结构的数据区和代码区是分开的,它们即使地址相同,但空间也是不同的,主要表现在数据不能够当作代码来运行。

口线复用,就将它认为成冯氏结构,我认为这样不足取,应该是按照空间是否完全重合来辨别。

比如PC机的代码空间和数据空间是同一空间,所以是冯氏结构;51由于IO口不够,但代码空间和数据空间是分开的,所以还是哈佛结构。

另外,还有的把CISC RISC 和地址是否复用,是哪种结构这3这都混到一起。

我认为这三者都没有必然的关系。

只不过RISC因为精简了指令集,没有了执行复杂功能的指令,为了提高性能,常采用哈佛结构,并且不复用地址线。

补充:有本书:嵌入式微处理器系统设计实例,英文版embedded microprocessor systems:real world design third edition 上有这样一个提法: 大多数采用哈佛结构的微处理器实际上使用的是一种经过改进的哈佛结构体系,在改进结构下,虽然代码和数据还是分开的,但该体系支持从代码区载入有限的数据,这但允许数据表和其他信和与代码一起被编译,并可在运行时使用这些数据。

摘抄一段:哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

冯诺依曼结构和哈佛结构

冯诺依曼结构和哈佛结构

计算机基本知识计算机体系结构分类两种典型的结构:冯·诺依曼结构哈佛体系结构冯·诺依曼结构冯·诺依曼机:将数据和指令都存储在存储器中的计算机。

计算系统由一个中央处理单元(CPU)和一个存储器组成。

存储器拥有数据和指令,并且可以根据所给的地址对它进行读或写。

因此程序指令和数据的宽度相同;如:Intel 8086、ARM7、MIPS处理器等哈佛体系结构哈佛机:为数据和程序提供了各自独立的存储器。

程序计数器只指向程序存储器而不指向数据存储器,这样做的后果是很难在哈佛机上编写出一个自修改的程序。

独立的程序存储器和数据存储器为数字信号处理提供了较高的性能。

指令和数据可以有不同的数据宽度;具有较高的效率;如摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、ARM10系列等ARM 7使用冯·诺依曼体系结构。

ARM 9使用哈佛体系结构。

ARM公司简介ARM是Advanced RISC Machines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。

1985年第一个ARM 原型在英国剑桥诞生。

公司的特点是只设计芯片,而不生产。

它提供ARM技术知识产权(IP)核,将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务。

有ARM7/ARM9等多个版本。

除了一些Unix图形工作站外,大多数ARM核心的处理器都使用在嵌入领域。

ARM,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。

ARM处理器的应用到目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器75%以上的市场份额。

全球80%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器。

“掌上计算”相关的所有领域皆为其所主宰。

主要应用:消费类电子,无线、图像应用开放平台、存储、自动化、智能卡、SIM卡等。

普林斯顿结构和哈佛结构

普林斯顿结构和哈佛结构

普林斯顿结构和哈佛结构普林斯顿结构普林斯顿结构,也称冯·诺伊曼结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。

除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、ARM的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺曼型结构”计算机。

冯·诺曼结构的处理器使用同一个存储器,经由同一个总线传输。

冯·诺曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。

冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。

由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。

但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。

在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。

从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。

举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。

哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

RISC、CISC冯·诺依曼结构和哈佛结构

RISC、CISC冯·诺依曼结构和哈佛结构

1、关于RISC与CISC与哈佛结构冯诺依曼结构区别关于这个问题,有人说51地址线复用,就是冯诺依曼结构。

很多入门的书上基本上都说:由运算器、控制器、存储器、输入设备、输出设备组成的系统都叫冯氏结构。

也有的说:“程序存储器的数据线地址线”与“数据存储器的数据线地址线”共用的话,就是冯氏结构,所以51是该结构。

(我认为说得太绝对了)我认为冯氏结构与哈佛结构的区别应该在存储器的空间分别上,哈佛结构的数据区和代码区是分开的,它们即使地址相同,但空间也是不同的,主要表现在数据不能够当作代码来运行。

(比如51---注)地址线复用,就将它认为成冯氏结构,我认为这样不足取,应该是按照空间是否完全重合来辨别。

比如PC机的代空间和数据空间是同一空间,所以是冯氏结构;51由于IO口不够,但代码空间和数据空间是分开的,所以还是哈佛构.(此种观点才是正确的--注)另外,还有的把CISC RISC 和地址是否复用与是哪种结构这3这都混到一起。

我认为这三者都没有必然的关系。

只不过RISC因为精简了指令集,没有了执行复杂功能的指令,为了提高性能,常采用哈佛结构,并且不复用地址线。

(这种说法不具体,有待补充---注)材料二:哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC 16芯片的程序指令是14位宽度,而数据是8位宽度。

目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Micro chip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

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

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

哈佛结构与冯·诺伊曼结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

哈佛结构的微处理器通常具有较高的执行效率。

其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。

目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、A TMEL公司的A VR系列和安谋公司的ARM9、ARM10和ARM11。

冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。

除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

哈佛结构和常见的冯诺依曼结构区别在于地址空间和数据空间分开与否。

冯诺依曼结构数据空间和地址空间不分开,哈佛结构数据空间和地址空间是分开的。

一般DSP都是采用改进型哈佛结构,就是分开的数据空间和地址空间都不只是一条,而是有多条,这根据不同的生产厂商的DSP芯片有所不同。

在对外寻址方面从逻辑上来说也是一样,因为外部引脚的原因,一般来说都是通过相应的空间选取来实现的。

本质上是同样的道理。

MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就是哈佛结构。

CPU中哈弗结构和冯若依曼结构的区别

CPU中哈弗结构和冯若依曼结构的区别

CPU中哈弗结构和冯若依曼结构的区别转载 2015-08-21 17:18:04标签:哈弗冯若依曼计算机体系结构料一:哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如 Microchip 公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。

除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

评论:哈佛结构和冯.诺依曼结构都是一种存储器结构。

哈佛结构是将指令存储器和数据存储器分开的一种存储器结构;而冯.诺依曼结构将指令存储器和数据存储器合在一起的存储器结构。

材料二:MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就是哈佛结构。

相对于大名鼎鼎的冯·诺依曼结构,哈佛结构的知名度显然逊色许多,但在嵌入式应用领域,哈佛结构却拥有着绝对的优势。

哈佛结构与冯·诺依曼结构的最大区别在于冯·诺依曼结构的计算机采用代码与数据的统一编址,而哈佛结构是独立编址的,代码空间与数据空间完全分开。

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

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

哈佛结构与冯·诺伊曼结构哈佛结构就是一种将程序指令存储与数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常就是执行)。

程序指令存储与数据存储分开,可以使指令与数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令就是14位宽度,而数据就是8位宽度。

哈佛结构的微处理器通常具有较高的执行效率。

其程序指令与数据指令分开组织与存储的,执行时可以预先读取下一条指令。

目前使用哈佛结构的中央处理器与微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的A VR系列与安谋公司的ARM9、ARM10与ARM11。

冯·诺伊曼结构,也称普林斯顿结构,就是一种将程序指令存储器与数据存储器合并在一起的存储器结构。

程序指令存储地址与数据存储地址指向同一个存储器的不同物理位置,因此程序指令与数据的宽度相同,如英特尔公司的8086中央处理器的程序指令与数据都就是16位宽。

目前使用冯·诺伊曼结构的中央处理器与微控制器有很多。

除了上面提到的英特尔公司的8086,英特尔公司的其她中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

哈佛结构与常见的冯诺依曼结构区别在于地址空间与数据空间分开与否。

冯诺依曼结构数据空间与地址空间不分开,哈佛结构数据空间与地址空间就是分开的。

一般DSP都就是采用改进型哈佛结构,就就是分开的数据空间与地址空间都不只就是一条,而就是有多条,这根据不同的生产厂商的DSP芯片有所不同。

在对外寻址方面从逻辑上来说也就是一样,因为外部引脚的原因,一般来说都就是通过相应的空间选取来实现的。

本质上就是同样的道理。

MCS-51单片机有着嵌入式处理器经典的体系结构,这种体系结构在当前嵌入式处理器的高端ARM系列上仍然在延续,这就就是哈佛结构。

冯诺依曼结构和哈佛结构

冯诺依曼结构和哈佛结构

计算机基本知识计算机体系结构分类两种典型的结构:冯·诺依曼结构哈佛体系结构冯·诺依曼结构冯·诺依曼机:将数据和指令都存储在存储器中的计算机。

计算系统由一个中央处理单元(CPU)和一个存储器组成。

存储器拥有数据和指令,并且可以根据所给的地址对它进行读或写。

因此程序指令和数据的宽度相同;如:Intel 8086、ARM7、MIPS处理器等哈佛体系结构哈佛机:为数据和程序提供了各自独立的存储器。

程序计数器只指向程序存储器而不指向数据存储器,这样做的后果是很难在哈佛机上编写出一个自修改的程序。

独立的程序存储器和数据存储器为数字信号处理提供了较高的性能。

指令和数据可以有不同的数据宽度;具有较高的效率;如摩托罗拉公司的MC68系列、Zilog 公司的Z8系列、ARM10系列等ARM 7使用冯·诺依曼体系结构。

ARM 9使用哈佛体系结构。

ARM公司简介ARM是Advanced RISC Machines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC (精简指令集)处理器。

1985年第一个ARM 原型在英国剑桥诞生。

公司的特点是只设计芯片,而不生产。

它提供ARM技术知识产权(IP)核,将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务。

有ARM7/ARM9等多个版本。

除了一些Unix图形工作站外,大多数ARM核心的处理器都使用在嵌入领域。

ARM,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。

ARM处理器的应用到目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器75%以上的市场份额。

全球80%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器。

“掌上计算”相关的所有领域皆为其所主宰。

主要应用:消费类电子,无线、图像应用开放平台、存储、自动化、智能卡、SIM卡等。

冯诺伊曼结构与哈怫结构

冯诺伊曼结构与哈怫结构

冯·诺伊曼结构和哈佛结构冯·诺伊曼结构冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。

程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。

除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、ARM的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺曼型结构”计算机。

冯·诺曼结构的处理器使用同一个存储器,经由同一个总线传输。

冯·诺曼结构处理器具有以下几个特点:必须有一个存储器;必须有一个控制器;必须有一个运算器,用于完成算术运算和逻辑运算;必须有输入和输出设备,用于进行人机通信。

冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。

由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。

但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。

在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。

从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。

举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。

哈佛结构哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

主存 冯诺依曼 缓存 哈佛结构

主存 冯诺依曼 缓存 哈佛结构

主存冯诺依曼缓存哈佛结构一、主存1. 主存,也称为内存,是计算机中用于临时存储数据和指令的地方,是计算机系统中最重要的组成部分之一。

2. 主存存储的数据及指令是可以被CPU直接访问的,是CPU进行运算和控制的重要载体。

3. 主存采用随机访问存储器(RAM)技术,能够随机访问任意存储单元,具有读写速度快、易于扩展等特点。

二、冯诺依曼结构1. 冯诺依曼结构是现代计算机体系结构的基础,是由物理学家冯·诺依曼于1945年提出的计算机设计理念。

2. 冯诺依曼结构的核心理念是将数据和指令存储在同一存储器中,由统一的数据总线传输到CPU中进行处理。

3. 冯诺依曼结构的优点是简单、灵活,易于设计和扩展,直接影响了计算机系统的发展和演进。

三、缓存1. 缓存是计算机系统中用于优化数据访问速度的一种高速存储器,它位于主存和CPU之间,用于暂时存储经常被访问的数据和指令。

2. 缓存采用了局部性原理和置换算法,能够提高计算机系统的运行效率和性能。

3. 缓存分为一级缓存和二级缓存,一级缓存通常集成在CPU中,而二级缓存通常位于CPU和主存之间,层次结构更加清晰。

四、哈佛结构1. 哈佛结构是一种用于计算机体系结构中的改进结构,于20世纪初由哈佛大学提出并广泛应用于现代计算机系统中。

2. 哈佛结构的核心特点是将数据存储和指令存储分开,分别使用不同的数据总线传输到CPU中,避免了冯诺依曼结构中的数据和指令共用总线的瓶颈问题。

3. 哈佛结构的优点是能够提高数据和指令的并行传输效率,可以进一步提高计算机系统的运行速度和性能。

五、结论主存、冯诺依曼结构、缓存和哈佛结构是现代计算机体系结构中非常重要的概念和技术,它们共同构成了计算机系统的基础。

在未来的计算机科学和技术发展中,这些概念和技术将继续发挥重要的作用,助力计算机系统的不断进步和演进。

主存冯诺依曼缓存哈佛结构在计算机系统中,主存扮演着至关重要的角色。

它是CPU的数据源,存储了当前正在运行的程序以及相关的数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、冯·诺依曼结构
冯·诺依曼结构又称作普林斯顿体系结构(Princetionarchitecture)。

1945年,冯·诺依曼首先提出了“存储程序”的概念和二进制原理,后来,人们把利用这种概念和原理设计的电子计算机系统统称为“冯·诺依曼型结构”计算机。

冯·诺依曼结构的处理器使用同一个存储器,经由同一个总线传输。

冯·诺依曼结构处理器具有以下几个特点:
必须有一个存储器;
必须有一个控制器;
必须有一个运算器,用于完成算术运算和逻辑运算;
必须有输入和输出设备,用于进行人机通信。

冯·诺依曼的主要贡献就是提出并实现了“存储程序”的概念。

由于指令和数据都是二进制码,指令和操作数的地址又密切相关,因此,当初选择这种结构是自然的。

但是,这种指令和数据共享同一总线的结构,使得信息流的传输成为限制计算机性能的瓶颈,影响了数据处理速度的提高。

在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。

从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。

举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。

arm7系列的CPU有很多款,其中部分CPU没有内部cache的,比如arm7TDMI,就是纯粹的冯·诺依曼结构,其他有内部cache且数据和指令的cache分离的cpu则使用了哈弗结构。

2、哈佛结构
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,如图1所示。

中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。

程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

图1 哈佛体系结构框图
哈佛结构的微处理器通常具有较高的执行效率。

其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。

目前使用哈佛结构的中央处理器和微控制器有很多,除了Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的A VR系列和ARM公司的ARM9、ARM10和ARM11。

哈佛结构是指程序和数据空间独立的体系结构,目的是为了减轻程序运行时的访存瓶颈。

例如最常见的卷积运算中,一条指令同时取两个操作数,在流水线处理时,同时还有一个取指操作,如果程序和数据通过一条总线访问,取指和取数必会产生冲突,而这
对大运算量的循环的执行效率是很不利的。

哈佛结构能基本上解决取指和取数的冲突问题。

而对另一个操作数的访问,就只能采用Enhanced哈佛结构了,例如像TI那样,数据区再split,并多一组总线。

或向AD那样,采用指令cache,指令区可存放一部分数据。

在典型情况下,完成一条指令需要3个步骤,即:取指令、指令译码和执行指令。

从指令流的定时关系也可看出冯·诺依曼结构与哈佛结构处理方式的差别。

举一个最简单的对存储器进行读写操作的指令,指令1至指令3均为存、取数指令,对冯·诺依曼结构处理器,由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因而它们无法重叠执行,只有一个完成后再进行下一个。

如果采用哈佛结构处理以上同样的3条存取数指令,由于取指令和存取数据分别经由不同的存储空间和不同的总线,使得各条指令可以重叠执行,这样,也就克服了数据流传输的瓶颈,提高了运算速度。

3、冯·诺依曼体系和哈佛总线体系的区别
二者的区别就是程序空间和数据空间是否是一体的。

冯·诺依曼结构数据空间和地址空间不分开,哈佛结构数据空间和地址空间是分开的。

早期的微处理器大多采用冯·诺依曼结构,典型代表是Intel公司的X86微处理器。

取指和取操作数都在同一总线上,通过分时服用的方式进行的。

缺点是在高速运行时,不能达到同时取指令和取操作数,从而形成了传输过程的瓶颈。

哈佛总线技术应用是以DSP和ARM为代表的。

采用哈佛总线体系结构的芯片内部程序空间和数据空间是分开的,这就允许同时取指和取操作数,从而大大提高了运算能力。

DSP芯片硬件结构有冯·诺依曼结构和哈佛结构,两者区别是地址空间和数据空间分开与否。

一般DSP都是采用改进型哈佛结构,就是分开的数据空间和地址空间都不只是一条,而是有多条,这根据不同的生产厂商的DSP芯片有所不同。

在对外寻址方面从逻辑上来说也是一样,因为外部引脚的原因,一般来说都是通过相应的空间选取来实现的。

本质上是同样的道理。

4.改进型的哈佛结构与哈佛体系结构差别
与冯.诺曼结构处理器比较,哈佛结构处理器有两个明显的特点:
(1).使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存;
(2).使用独立的两条总线,分别作为CPU与每个存储器之间的专用通信路径,而这两条总线之间毫无关联。

后来,又提出了改进的哈佛结构,其结构特点为:
(1).使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存;
(2).具有一条独立的地址总线和一条独立的数据总线,利用公用地址总线访问两个存储模块(程序存储模块和数据存储模块),公用数据总线则被用来完成程序存储模块或数据存储模块与CPU之间的数据传输;
(3).两条总线由程序存储器和数据存储器分时共用。

5.总结
体系结构与采用的独立与否的总线无关,与指令空间和数据空间的分开独立与否有关。

51单片机虽然数据指令存储区是分开的,但总线是分时复用得,所以属于改进型的哈佛结构。

ARM9虽然是哈佛结构,但是之前的版本(例如ARM7)也还是冯·诺依曼结构。

早期的X86能迅速占有市场,一条很重要的原因,正是靠了冯·诺依曼这种实现简单,成本低的总线结构。

现在的处理器虽然外部总线上看是诺依曼结构的,但是由于内部CACHE的存在,因此实际上内部来看已经类似改进型哈佛结构的了。

至于优缺点,哈佛结构就是复杂,对外围设备的连接与处理要求高,十分不适合外围存储器的扩展。

所以早期通用CPU难以采用这种结构。

而单片机,由于内部集成了所需的存储器,所以采用哈佛结构也未尝不可。

现在的处理器,依托CACHE的存在,已经很好的将二者统一起来了。

本文来自CSDN博客,转载请标明出处:/do2jiang/archive/2009/09/13/4545690.aspx。

相关文档
最新文档