51单片机是冯诺依曼还是哈佛结构
一些不常见的特 殊情况下,但是看看哈佛结构德计算机在这些情况下是怎样的:基于哈佛结构的处理器入MCS-51,不需要可以对代码段进行写操作的指令,所以不会有代码区 被改写的问题;程序只能在封闭的代码区中运行,不可能跑到数据区,这也是跑飞的几率减少并且跑飞后的行为有规律(数据区的数据是不断变化的而代码区是不变 的)。
所以,相对于冯·诺依曼结构,哈佛结构更加适合于那些程序固化、任务相对简单的控制系统。
总结::::::::::
冯.诺依曼(Von Neumann)指出:程序只是一种(特殊)的数据,它可以像数据一样被处理,因此可以和数据一起被存储在同一个存储器中——这就是著名的冯.诺依曼原理。注意:数据总线和地址总线共用。--注
哈佛结构:
哈佛结构是一种并行体系结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址、独 立访问。与两个存储器相对应的是系统的4条总线:程序的数据总线与地址总线,数据的数据总线与地址总线。这种分离的程序总线和数据总线允许在一个机器周期 内同时获得指令字(来自程序存储器)和操作数(来自数据存储器),从而提高了执行速度,使数据的吞吐率提高了1倍。又由于程序和数据存储器在两个分开的物 理空间中,因此取指和执行能完全重叠。CPU首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一 步的操作(通常是执行)。
哈佛结构采用数据存储器与程序代码存储器分开,各自有自己的数据总线与地址总线。但这是需要CPU提供大量的数据线,因而很少使用哈佛结构作为CPU外部 构架来使用。但是对于 CPU内部,通过使用不同的数据和指令cache,可以有效的提高指令执行的效率,因而目前大部分计算机体系都是CPU内部的哈佛结构+CPU外部的冯· 诺伊曼的结构
###############################################
呵呵,当我们还在研究啥佛与冯诺依曼的区别的时候
你却发现现实世界已经模糊了他们的概念,半导体厂商已经将他们揉在了一起, 差不多就行了...
- 基于单片机通用引脚的软件UART设计(10-16)
- 嵌入式实时操作系统μC/OS-II 在P89V51RD2中的移植(04-09)
- 关于RTX51 TINY的分析与探讨(05-30)
- 双CPU在多I/O口系统中的应用(07-05)
- 一种嵌入式时钟管理器的设计与实现(08-01)
- 基于RTOS的嵌入式系统在Nexar中的实现(01-20)