我接触单片子的日子加起来也有三年了,三年里我只学了数量有限的几款的单片机。51作为我的起步,我承认这个起步还是不错的,并且一直在起步,对51的热爱缘自于它的寄存器操作的简单。简单即为美。51的存储结构为哈佛结构。据说外国的金融危机导致学生能上名校如哈佛,却不上,去了一些低档次的学校。因为学费,外国同学也有宁做鸡头,不做凤尾的人生格调。最近在学430,感觉这两年没有白学电子知识,学起来也不那么累了。一次做好几个模块的实验,也能拿得下来。当然,现在也只是起步阶段,学得也只是寄存器的操作。430是冯诺伊谩结构的。冯这个人是匈牙利人,匈牙利首都即为布达佩斯,据说陈佩斯的父亲给孩子起了两个名字,叫陈布达,陈佩斯。布达佩斯因为一条多瑙河而美得一塌糊涂。冯这个人是个数学家,计算机之父,晚年的妻子很年轻,热爱数学,跟他学习编写计算机早期的程序,并小有成就。师生恋能出来成果,大家还是能接受的。比之诺贝尔奖得主杨振宁,我们对他的期待是再生个小杨振宁了。扯远了。大家对冯诺伊谩结构与哈佛结构有什么高见,谈谈出来,看看熟识的东西,大家的看法是否一致,求同存异,取其精华,取其糟粕。
说一定吧
复杂性与可实现性,性能的关系,
我所理解的逻辑处理组合成系统的方法中有:
1,流水级处理, 把逻辑分成前后相关的模块.
2,并行结构,逻辑分成同进处理的模块.
CPU中用到了这两种方法,但又有一层提升,提出了体系结构的东东.
模块之间的逻辑联系也就并行与顺序两种,CPU所处理的逻辑,多样花,因此逻辑联系不是固定的,也不会存在一种通过优化流水与并行结构而得到一种高效的处理结构.
但人总是聪明的,体系结构中的互联结构就是解决这一问题的关键.在CPU体系中,功能模块在实际运行时可以是并行的也是顺序的,这些一关系可以在软体中加以控制.
首先,软体中对并行的控制是不能随意的,它在很大程度上受限与体系结构(模块互连结构).
再有,高并行度的CPU结构中,处理这些模块的协同更复杂,实现的难度也加大了,与此同时带来的是处理并行逻辑的高速性能.高成本高性能.
最后,也就是我认识的三种CPU互连结构,总线(冯诺伊谩结构),双总线(哈佛结构).SOC互连中的交换网络结构.
本人的一点点认识可能不对,请指正.
哈佛结构的处理器怎么运行linux和文件系统?
指令和数据分开编址,除非在硬件上做手脚,否则代码段都改不了。
回复 沙发 qushaobo 的帖子
长知识了,接触一下SOC,对顺序与并行又有更深的认识了。
回复 板凳 richiefang 的帖子
哇,我不懂LINUX,是不是此系统中数据与程序不能同址,就是到A中寻址指令,那么就不能去对应的哈佛结构的数据RAM的地址A处寻数据了。我表达的不清楚,只是对你的话语有这些理解。
所谓冯.诺依曼结构,就是数据存储器和程序存储器统一编址,有专门的I/O指令。哈佛结构则是程序存储器和数据存储器分别编址,不需要专门的指令。