说MCS-51是冯-诺依曼型,大多在PIC相关的**中

[复制链接]
8406|54
 楼主| quguoli81 发表于 2007-10-30 11:33 | 显示全部楼层 |阅读模式
什么是冯诺依曼结构,什么是哈佛结构?<br />51属于那种结构?
awey 发表于 2007-10-30 21:41 | 显示全部楼层

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

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。<br />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度,如Microchip公司的PIC16芯片的程序指令是14位宽度,而数据是8位宽度。&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;目前使用哈佛结构的中央处理器和微控制器有很多,除了上面提到的Microchip公司的PIC系列芯片,还有摩托罗拉公司的MC68系列、Zilog公司的Z8系列和安谋公司的ARM9、ARM10和ARM11。&nbsp;<br /><br />MCS-51单片机的总线结构是冯-诺依曼型,而存储器结构则是哈佛型的。<br />
HWM 发表于 2007-10-30 11:34 | 显示全部楼层

拿本书看看!!!

  
zhong_hua 发表于 2007-10-30 11:34 | 显示全部楼层

一个是数据指令总线共用,一个是分离。

  
 楼主| quguoli81 发表于 2007-10-30 11:38 | 显示全部楼层

请问2楼 51属于那种结构

  
 楼主| quguoli81 发表于 2007-10-30 11:40 | 显示全部楼层

下面的理解是否正确?

MCS-51的总线结构是冯-诺依曼型,计算机在同一个存储空间取指令和数据,两者不能同时进行;而PIC的总线结构是哈佛结构,指令和数据空间是完全分开的,一个用于指令,一个用于数据,由于可以对程序和数据同时进行访问,所以提高了数据吞吐率。正因为在PIC系列单片机中采用了哈佛双总线结构,所以与常见的微控制器不同的一点是:程序和数据总线可以采用不同的宽度。数据总线都是8位的,但指令总线位数分别位12、14、16位。
HWM 发表于 2007-10-30 11:43 | 显示全部楼层

LZ:最好是认认真真地找本(或几本)正规的书好好的看看。

不要人云亦云。
maychang 发表于 2007-10-30 11:44 | 显示全部楼层

楼主刚好说反了

51单片机是哈佛结构。
 楼主| quguoli81 发表于 2007-10-30 11:51 | 显示全部楼层

to HWM

我就是在两本不同的书上看见了不同的说法:有的说51属于哈佛结构,有的说属于冯-诺依曼型!才有此一问!<br />同一个存储空间取指令和数据是否=存储器统一编址?<br />两种结构体系的优劣?
HWM 发表于 2007-10-30 11:52 | 显示全部楼层

那就是其中有一本不是正规的啦。

  
 楼主| quguoli81 发表于 2007-10-30 11:58 | 显示全部楼层

什么样的是正规?

现在好多书的内容都是雷同,你让我看书,书上说的不也是别人说的(人云亦云),书上说的都是正确的?不敢苟同
maychang 发表于 2007-10-30 12:03 | 显示全部楼层

回楼主

51单片机的指令和数据空间是分开的,所以属于哈佛结构,这一点你根据两种结构的定义就应该能够判断。
HWM 发表于 2007-10-30 12:03 | 显示全部楼层

LZ:那就不谈书的问题。

至少这两种体系结构的差异和特点你是知道的,若你对MCS-51的结构也有所了解的话,也应该得出一个正确的结论。<br />
 楼主| quguoli81 发表于 2007-10-30 12:32 | 显示全部楼层

统一编制实说代码和数据 都存放在同一个寻址空间内

  
HWM 发表于 2007-10-30 12:46 | 显示全部楼层

那只能说明...

楼主你连什么是冯诺依曼结构,什么是哈佛结构?还未搞清。<br />
 楼主| quguoli81 发表于 2007-10-30 12:49 | 显示全部楼层

你搞清了可以解释一下

别光说不做,光说看书不给解释
xwj 发表于 2007-10-30 12:57 | 显示全部楼层

14楼正解,LZ自己去多想想

懂就是懂,不懂就是不懂,要靠自己去领悟
 楼主| quguoli81 发表于 2007-10-30 12:58 | 显示全部楼层

to maychang

51单片机的指令和数据空间是分开的,所以属于哈佛结构,这一点你根据两种结构的定义就应该能够判断。<br />你说51单片机的指令和数据空间是分开的,那么只有1套总线怎么同时访问?<br /><br /><br />
 楼主| quguoli81 发表于 2007-10-30 13:05 | 显示全部楼层

to xwj 我下面的描述有问题吗?

冯-诺依曼型,计算机在同一个存储空间取指令和数据,两者不能同时进行;<br />而哈佛结构,指令和数据空间是完全分开的,一个用于指令,一个用于数据,由于可以对程序和数据同时进行访问,所以提高了数据吞吐率<br />单指令流水线结构,即取一条指令,执行完后再取下一条指令;如果取指和执行采用双指令流水线结构,当一条指令被执行时,允许下一条指令同时被取出,这样就实现了单周期指令。
HWM 发表于 2007-10-30 13:14 | 显示全部楼层

LZ:哈佛结构并没要求能进行并行访问。

如果楼主真的要了解原委的话,建议去了解一下计算机史。正因为在“哈佛”的年代,由于内存硬件的昂贵,才会孕育出所谓的“哈佛结构”。至于后来重新启用哈佛体系结构,是由于现代单片机的发展和特殊应用。<br />
dld2 发表于 2007-10-30 13:33 | 显示全部楼层

建议HWM单独开贴讲一讲

这个问题可能是很多人都关心的。<br />另外:貌似有人说ARM9是哈佛结构的,但是用起来感觉和ARM7没有什么不同,搞不清楚。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

258

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部