就目前单片机存储器组织结构来分有两种,即哈佛机构与冯诺蔓结构。我所熟悉的是哈佛机构。所以目前仅仅认识到在单片机中哈佛结构优于冯诺蔓结构。 一, 从单片机特性考虑。单片机主要面向测控对象,这就决定了单片机有大量的程序代码,而只有少量的数据代码。而哈佛结构把程序和数据分开,使用容量较大的ROM来固化代码(程序在ROM中运行,不易受到外界的干扰可靠性高)使用较小的RAM放数据 二, 可靠性高,如果程序当机,由于rom,ram,分开,只要不掉电,ram中的数据有可能不丢失,这样就有可能恢复程序 三, 从指令执行速度考虑,如果是冯诺蔓结构则取指令和存储数据占用同一总线,数据流受到限制。如果哈佛结构由于ROM ,RAM分开所以取指令与数据可以同时进行,这样就可以实现指令的流水线机制,指令执行速度大大提高 四, 从代码编译效率考虑,由于ROM,RAM 分开,所以取数据总线与取程序总线宽度可以不一样,PIC是一个典型的例子,加大取程序总线的宽度做到一个指令占一个字节,这样在本质上还能做到指令运行抗干扰能力强
以上是我感觉哈佛结构优越的地方,但是现在ARM和PC都是冯诺蔓结构,为什么用这种结构还请各位高手补充!!! |