由于单篇文章字数限制,关于单片机的存储器结构的相关知识这里我只能分3篇文章来给大家分享,希望大家理解,大家可以关注我查看相关文章内容以便大家深入的学习。废话不多说,干货直接上。
单片机的存储器的结构是什么样子,是冯诺依曼结构还是哈佛结构?大家知道我们计算机系统有两种基本的存储器的结构,一个叫做冯诺依曼结构,也叫做普雷斯顿结构,另外一种叫做哈佛结构,51单片机到底是哪一种体系结构?不同的书上有的写的是不对,到底是哪一种结构,我们首先来了解一下到底什么是冯诺依曼结构,什么又是哈佛结构。
存储器的划分一般分成两种结构,就是我给大家讲的,一个叫做啊冯诺依曼结构,一个叫做哈佛结构,哈佛大学的一个教授提出的计算机的体系结构一般称之为叫哈佛结构,普雷斯顿结构也叫做阿冯诺依曼结构,冯诺依曼大家都比较熟悉,我们叫做计算机之父,它提出了一种存储器的一个结构呢,叫做普莱森结构,它的特点是程序存储器和数据存储器是统一编制的方式,它的结构是RAM和ROM是在一个存储器上,也就是说是一种将程序指令存储器和数据存储器合并在一起的一种存储器的结构,是指令存储器的地址和数据存储器的地址是指向同一个存储器的不同的物理位置,所以你可以发现它是同一个存储器,但是RAM,也就是数据存储器和程序存储器,它是在这一个同一个物理结构当中的不同的地方,这种我们叫做冯诺依曼结构。
这是计算机的基础,比如说我们的英特尔的8086系统,也就是8086的CPU它的程序指令和数据是16位的就是采取普雷斯顿的体系结构,这个体系结构也就是大家比较熟悉的在计算机领域著名的数学家冯诺依曼,当然了和其它的专家,比如说戈德斯坦等人在1945年联名发表了一篇比较著名的报告,学计算机的应该都知道,叫101报告,在这个报告当中,它提出了三个最基本的,也就是说计算机制造了三个最基本的原则,第一个原则就是说计算机采用二进制,这是它们在这个报告当中提出来的,当然了,计算机采用二进制不是它们首先提出来的,第二点是报告指出,程序存储执行,也就是说计算机按照程序的顺序,指令执行,就是说这个计算机的执行它是按照程序,顺序存储取址的办法来执行,第三个原则,它指出我们的计算机由五个部分组成,包括运算器、控制器、存储器,输入设备和输出设备,那这套理论我们称之为叫做冯诺依曼体系结构。
到目前为止,我们的计算机的体系结构还是脱离不了冯诺依曼的体系结构,我们计算机的体系结构还是由运算器控制器,存储器,输入设备和输出设备这五大部件构成,所以冯诺依曼也被称之为计算机之父,大家要大概的了解一下什么是普林斯顿结构,或者叫做冯诺依曼存储的结构。
哈佛结构它是一种将程序指令存储和数据存储分开的一种存储结构,大家通过这个图也可以发现,这个RAM和ROM是两个结构,是两个物理存储空间,不是像冯诺依曼结构是在同一个物理空间,分了两个区域,程序存储器和数据存储器是分开的,这样的话,哈佛结构相当于是一种并行的体系结构,它的主要特点就是将程序存储器和数据存储器,在不同的存储空间当中,这样有一个好处,就是程序存储器和数据存储器,它是两个独立的存储器,就是和我们的数据和指令具有不同的数据宽度,并且可以同步的进行访问,这种的结构它使我们的程序总线和数据总线就在一个记忆周期内,可以同时获得指令和数据,从而能够提高我们CPU的执行效率,提高了数据的吞吐率,但是它的结构会比较复杂,我们知道哈佛结构的话,它的程序就是程序存储器和数据存储器,它都要有对应的数据总线和地址总线,所以它是有四种总线,也就是程序存储器有两个总线,叫做数据总线和地址总线。
数据存储器它也有两个总线,也就是数据总线和地址总线,所以它的体系结构会比较复杂,冯诺依曼结构它就比较简单,它的数据总线和地址总线是采取统一编制的办法,就是说对我们的RAM和ROM的寻址都可以通过一套总线来进行,它的结构会比较简单。
有朋友问了,怎么样区分这两种存储器的结构呢?应该看什么呢?主要是看总线,看是一套总线还是两套总线,就是说我指的一套总线就是数据总线和地址总线,两套总线就有两套数据总线和地址总线,就是说冯诺依曼结构它是采取的统一的一个数据总线和地址总线,可以访问RAM和ROM,采取的是分时的办法,哈佛结构的RAM和ROM分别都有地址总线和数据总线,这样的话大家就可以在后面讲完51单片机的时候就可以了解51单片机到底是采用哪一种结构,可以先提一下,实际上51单片机大概了解过,51单片机实际上它是RAM和ROM是占用不同的存储空间,是有不同的物理空间的,就是ROM是一块的,这个大家前面看计算机的硬件系统结构图的时候也发现,有一片RAM,还有有一块ROM。
有同学问,那我们的51单片机是不是就是哈佛结构呢?也不见得,实际上51单片机它是一种改进的哈佛结构,这个很多书上讲的是不对的,很多书上都说我们的单片机是哈佛结构,但实际上它不是真正的哈佛结构,因为我们知道我们51单片机内部的总线实际上就是一套,就是数据总线和地址总线,没有把RAM和ROM分别提供一套数据总线和地址总线,就是一套数据总线和地址总线,但是它分时复用,而且也是采取统一编制的办法,它怎么样区分RAM和ROM呢?学过汇编的同学知道,它是通过指令来进行区分的,所以51单片机的存储空间的结构应该是一种改进型的哈佛结构,但是它也没有脱离冯诺依曼结构,所以大家要理解这个,因为它是一个发展趋势,我们计算机是一个发展的过程,大家应该去把这个东西大概去了解一下,冯诺依曼结构虽然比较出名,但是实际上哈佛结构的提出是早于冯诺依曼结构的,老的这种计算机的就是冯诺依曼体系结构,第一台通用的计算机是1946年的时候提出了一种叫做电子数字积分的一个计算机,也是第一台通用的计算机,它的体积比较庞大,它一共占地的话是170个平方,这是很大的空间放了一个计算机,那目前我们用的计算机,大家知道一台笔记本很小,这个计算机当时发明的原因,大家可以去看计算机的历史,主要是为了二战期间为军方服务的,实际上刚开始都是为了军方计算服务的。
哈佛结构的计算机,它的结构也比较大,这个是刚才提到的是霍德华艾肯在1937年的时候进行设计啊,1944年交付的一台计算机,叫做马克一号,它的体积也比较长也比较大,长有50英尺,高8英尺,看上去像一列火车,它主要全部是由继电器来构成的,它一共用了多少个部件来构成的?它用了大概有75万个零部件构成了这台计算机,可以发现,实际上哈佛结构的计算机是比冯诺依曼要早,但是冯诺依曼,因为它的总线结构比较简单,所以很容易实现,之后冯诺依曼体系结构得到很大的发展,现在我们很多体系结构也都是在冯诺依曼的基础上和哈佛结构的基础上做了很大的一个改进。
具体来看51单片机的体系结构,51单片机的体系结构刚才提到了,它是一种改进的哈佛结构,它内部一共有四个物理的存储空间,一个叫做片内的RAM,一个叫做这个片外的RAM,片内的RAM和片外的RAM它有四个存储空间可以供用户来使用。
这个就是它的硬件结构图,需要大家重点掌握的一张图,这张图是我们的存储器空间的结构图,也需要大家重点掌握,单片机的内部的机器硬件结构图,理解了它的存储器的分布图,对计算机才是或者说对单片机才是真正的理解。
既然分成片内和片外,首先来看存程序存储器,程序存储器的一个主要作用就是存放程序,当然了,除了存放程序之外,我们一般还会把一些常数表格也存放在程序存储器当中,因为程序存储器有一个特点,也就是掉电不丢失,程序存储器不是不可以写,只是在程序运行的过程当中,它是只读不可写,如果它不可以写,我们的程序代码不是要烧写倒入当中去的嘛,所以它也是可以烧写进去的,在我们程序,也就是说CPU运行程序的过程当中,它是不可写的,它是只读,所以我们才叫做只读存储器,只读存储器程序运行的过程当中只读,并且掉电之后程序代码不丢失,这个叫程序存储器,它的一个特点大家要注意。
文章剩余部分会在接下来的2期栏目中继续分享给大家,喜欢的帮忙收藏点个赞哦,以上文章内容仅代表个人观点,不喜勿喷,谢谢大家的支持与鼓励!
想学单片机的朋友,可以私信我,我可以发一些资料给大家作为参考学习的内容,有问题的朋友也可以在评论区评论,或者私信我,尽量帮大家解决朋友们提出的问题,谢谢大家,最后祝看帖的各位朋友身体健康,万事顺利。
审核编辑:汤梓红
评论
查看更多