哈佛结构和普林斯顿结构的区别_普林斯顿大学和哈佛大学哪个更厉害

哈佛结构和普林斯顿结构的区别_普林斯顿大学和哈佛大学哪个更厉害哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。      哈佛结构的微处理器通常具有较高的执行效

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的 PIC16芯片的程序指令是14位宽度,而数据是8位宽度。

      哈佛结构的微处理器通常具有较高的执行效率。其程序指令和数据指令分开组织和存储的,执行时可以预先读取下一条指令。目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列、ATMEL公司的 AVR系列和安谋公司的ARM9、ARM10和ARM11,51单片机也属于哈佛结构

      冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

      目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。

在 DSP算法中,最大量的工作之一是与存储器交换信息,这其中包括作为输入信号的采样数据、滤波器系数和程序指令。例如,如果将保存在存储器中的2个数相乘,就需要从存储器中取3个二进制数,即2个要乘的数和1个描述如何去做的程序指令。图〔a)显示了一个传统的微处理器是如何做这项工作的。这被称为冯? 诺依曼结构,是以一位数学家的名字命名的。冯?诺依曼结构中,只有一个存储器,通过一条总线来传送数据。乘两个数至少需要3个指令周期,即通过总线将这3 个数从存储器中送到CPU。所以这种结构在面对高速、实时处理时,不可避免地造成总线拥挤。为此,哈佛大学提出了与冯?诺依曼结构完全不同的另一种计算机结构,人们习惯称之为哈佛结构,如图(b)所示。它根据数据和数据指令将存储器和总线分开。因此,总线操作是独立的,能同时取指令和数据,提高了速度。目前DSP内部一般采用的是哈佛结构,它在片内至少有4套总线:程序的数据总线,程序的地址总线,数据的数据总线和数据的地址总线。这种分离的程序总线和数据总线,可允许同时获取指令字(来自程序存储器)和操作数(来自数据存储器),而互不干扰。这意味着在一个机器周期内可以同时准备好指令和操作数。有的 DSP芯片内部还包含有其他总线,如DMA总线等,可实现单周期内完成更多的工作。这种多总线结构就好像在DSP内部架起了四通八达的高速公路,保障运算单元及时地取到需要的数据,提高运算速度。因此,对DSP来说,内部总线是个资源,总线越多,可以完成的功能就越复杂。超级哈佛结构(super Harvard architecture,缩写为SHARC)如图(c)所示,它在哈佛结构上增加了指令cache(缓存)和专用的I/O控制器。

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/185726.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • setfacl解释「建议收藏」

    setfacl解释「建议收藏」setfacl:设置文件访问控制列表,针对单独文件,设置单独用户权限用法:setfacl-参数用户权限文件参数:-m,–modify=acl更改文件的访问控制列表-M,–modify-file=file从文件读取访问控制列表条目更改-x,–remove=acl根据文件中访问控制列表移除条目-X,–remove-file=file从文件读取访问控制列表条目…

  • 微信公众平台开发教程Java版(二) 接口配置

    微信公众平台开发教程Java版(二) 接口配置微信公众账号申请完成后,默认开启的是编辑模式。我们需要修改为开发模式。登陆微信公众平台》功能》高级功能先关闭编辑模式,再开启开发模式。申请成为开发者,如果是服务号,需要则会有开发者凭证信息如图如果是订阅号,则只显示服务器配置。下一步就是配置接口服务器了。在公众平台网站的高级功能–开发模式页,点击“成为开发者”按钮,填写U…

  • tomcat能正常启动,但是不能访问http://localhost:8080

    tomcat能正常启动,但是不能访问http://localhost:8080

  • 深度学习之GoogLeNet解读

    深度学习之GoogLeNet解读提出背景相关工作基本思想及过程提出背景 始于LeNet-5,一个有着标准的堆叠式卷积层冰带有一个或多个全连接层的结构的卷积神经网络。通常使用dropout来针对过拟合问题。 为了提出一个更深的网络,GoogLeNet做到了22层,利用inception结构,这个结构很好地利用了网络中的计算资源,并且在不增加计算负载的情况下,增加网络的宽度和深度。同时,为了优化网络质量,采用了Hebbian原

  • springboot实战第四章-服务端推送技术

    springboot实战第四章-服务端推送技术

  • 算法学习–整型转字符串

    算法学习–整型转字符串字符串转整型的逆过程代码思路:1、输入一个整型数,判断整型数是否<0;2、不断地对整型数做取余,得出余数与‘0’相加,然后整型除去10,就是说,把整型个十百千每一位都取出来,变成ASCII码的数字,存起来;3、最后把正负号补上。代码如下:#include#include#include#includeusingnamespacestd;

    2022年10月19日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号