再谈冯·诺伊曼结构

姜咏江

为了说明问题简单,我引用一段百度百科当中的文字和图:

冯.诺依曼体系结构是现代计算机的基础,现在大多计算机仍是冯.诺依曼计算机的组织结构,只是作了一些改进而已,并没有从根本上突破冯体系结构的束缚。冯.诺依曼也因此被人们称为“计算机之父”。然而由于传统冯.诺依曼计算机体系结构天然所具有的局限性,从根本上限制了计算机的发展。

根据冯·诺依曼体系结构构成的计算机,必须具有如下功能:把需要的程序和数据送至计算机中。必须具有长期记忆程序、数据、中间结果及最终运算结果的能力。能够完成各种算术、逻辑运算和数据传送等数据加工处理的能力。能够根据需要控制程序走向,并能根据指令控制机器的各部件协调操作。能够按照要求将处理结果输出给用户。

将指令和数据同时存放在存储器中,是冯·诺依曼方案的特点之一 计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成 冯·诺依曼提出的计算机体系结构,奠定了现代计算机的结构理念。

图1冯·诺依曼计算机逻辑结构

百度百科上的这段叙述,已经从逻辑上道出了什么是冯·诺伊曼体系结构。图1的逻辑结构已经在计算机业界得到了普遍的承认,然而如何具体深入地将冯氏结构运用到实践当中去,却是多有不同。

我们现在讨论“颠覆冯·诺伊曼结构”的焦点是什么?是将这五大部分各认定是一个设备?显然不能够这样认为。为了详细一点,这里我给出一张计算机微体系结构教学中的一张结构图(见图2)。这张图中不仅将程序存储器(iram)和数据存储器(dram)分开,而且将堆栈存储器(stack)也分开了设计,所有的器件都连接在一条内部总线bus上。这也许应该叫“超哈佛结构”了吧(开玩笑)。根据这张图就可以让学生设计一个计算机的指令系统,去构造一台真实的计算机。这个图的指令设计可以是复杂指令系统,也可以设计成精简指令系统。不论是何种计算机体系结构设计,超出了冯·诺伊曼的体系结构了吗?大家可以看得出完全没有。

图2  计算机cpu结构

计算机科学的研究不是去探讨历史,更重要的是理论和实践的内涵研究。计算机冯·诺伊曼结构奠定了机器计算替代人脑力劳动基石,这是计算机及数学业界普遍承认了的,因而有人才会用“颠覆了冯·诺伊曼结构”来夸大自己的成就。

认真地分析科学概念的本质,应该是科学家终身要遵循的原则,只有这样才能够有所发明创造。表面上去理解将程序和数据分开存储,而不去理解它的本质,多数情况会迷失自己。“哈佛结构”也可能先于程序数据一起存储的结构出现,但这一点就说哈佛结构先进,未免过于牵强。哈佛结构的真正被重视,并不在当初,不然就不是今天人们尊崇的冯·诺伊曼结构了。哈佛结构的被重视,是在指令级并行的流水线程序执行方式设计当中,哈佛结构设计可以回避由于存储器的独占性引起的设备相关。有一利,必然有一弊。采用哈佛结构之后的访存指令必然要分成两部分,控制矩阵的设计必然会增添逻辑复杂度。不过这些东西都属于在冯·诺伊曼结构下的改造,不应该认定为取代了冯·诺伊曼结构。

当今的计算机逻辑结构就是图1所解释的那样,在这种框架下,每一个部分都可以发生数量和结构的变化,这是计算机深入发展的必然。外设变化不必说,就CPU内部的变化已经极其复杂了,多运算器、多层次控制器、多存储器结构已经屡见不鲜。将处理器与高速缓存捆绑在一起制成的多核处理器已经成为了现代计算机的主流产品。不过许多设计都仍然是围绕着处理器为中心的多核设计,将网络的方法引进了多核设计。就是本人提出的动态计算机核心设计,将固态的运算器、存储器和控制器的连接,变成了一种以存储单位为中心的动态连接处理单位的结构,也没有脱离冯·诺伊曼的基本结构。顺便我将这种结构的文附上,供有心人批评指正。

最后说一句,“然而由于传统冯.诺依曼计算机体系结构天然所具有的局限性,从根本上限制了计算机的发展。”这句话着实欠妥,不管这句话是谁说的。

2015-1-17

转载本文请联系原作者获取授权,同时请注明本文来自姜咏江科学网博客。

链接地址:http://blog.sciencenet.cn/blog-340399-860191.html

上一篇:到底什么是冯·诺伊曼结构?

下一篇:图灵与冯·诺伊曼的区别

冯诺曼伊体系 计算机五大逻辑,科学网—再谈冯·诺伊曼结构 - 姜咏江的博文相关推荐

  1. 计算机设计核心思想,科学网—计算机设计的两种理念,颠覆os的计算机 - 姜咏江的博文...

    计算机设计的两种理念 姜咏江 关于图灵和冯·诺伊曼计算机,我们是否可以总结为图灵的计算机思想由冯·诺伊曼等人具体实现了?不要让计算机历史上那些说不十分清楚的问题,耽误了我们今天的行程. 在计算机体系结 ...

  2. 计算机内部总线和外部总线,科学网-怎样将计算机内部总线扩展为外部网络?-姜咏江的博文...

    怎样将计算机内部总线扩展为外部网络? 姜咏江 透明计算公示成果的第一条就是"将原来计算机的内部总线扩展为外部网络".现在我们来谈谈能不能将计算机内部总线扩展成外部网络. 1.什么是 ...

  3. 信息与计算机,科学网—信息与计算机(1) - 姜咏江的博文

    信息与计算机(1)信息的概念姜咏江 当今科学研究中使用最多的概念是什么?信息!然而信息却是那样地让人们困惑.有句话说:"把复杂的问题说简单了,那是学问:将简单的问题说复杂了,那是蒙人!&qu ...

  4. 计算机技术狂人叫什么,科学网-计算机科技创新需要狂人思维模式-姜咏江的博文...

    计算机科技创新需要狂人思维模式 "世界级"创新的科技发明,开始总是不被人认同和理解,这是正常的事情.许多大科学家出道之初,周围的人常称其为"狂人",对其&quo ...

  5. 计算机的科技创新,科学网—计算机科技创新需要狂人思维模式 - 姜咏江的博文...

    计算机科技创新需要狂人思维模式 "世界级"创新的科技发明,开始总是不被人认同和理解,这是正常的事情.许多大科学家出道之初,周围的人常称其为"狂人",对其&quo ...

  6. 计算机一个人,科学网—现在一个人能造计算机吗? - 姜咏江的博文

    现在一个人能造计算机吗? 姜咏江 自己一个人造计算机?说梦话吧!其实这已经成为了现实.当一二十年前出现了现场可编程器件FPGA之后,就有了一个人单独设计制造计算机的条件.FPGA器件借助现在已经存在的 ...

  7. 我国计算机科学的发展源头要追溯到几年前,科学网—计算机新技术革命要求必须从源头做起 - 姜咏江的博文...

    在科研界有一句话,叫"站在巨人的肩膀上".在人类知识积累的过程中,这句话是真理.但这句话用的不是地方,也会产生运用不当的谬误,这就叫"具体问题,具体分析".在目 ...

  8. nproc是什么意思_科学网—再谈USPEX - 叶小球的博文

    关注: 1)对缺乏实验数据对比的.有争议的体系,有必要采用不同的预测方法预测,对比结果 2)USPEX工作流程 1. 参数准备: 建立需预测结构目录,拷贝USPEX脚步进入该目录,在USPEX文件夹下 ...

  9. 计算机五大逻辑部件数据流,211计算机基础知识综合篇.ppt

    211计算机基础知识综合篇 无忧PPT整理发布 无忧PPT整理发布 无忧PPT整理发布 考纲要求 计算机硬件系统 冯·诺依曼体系及五大逻辑部件---2 计算机硬件的基本配置---3 计算机软件系统 软 ...

最新文章

  1. Mac OS X 系统自带的截图快捷键有哪些?
  2. ASP.NET获取IP的方法
  3. 为Visual studio 2008 添加汇编工程模板
  4. Linux初学时的一些常用命令(4)
  5. java学习之—链表(3)
  6. 计算机页面高度怎么设置方法,win10系统调节任务栏高度的设置技巧
  7. 2012年1月份第3周51Aspx源码发布详情
  8. 苹果真伪查询_拆解报告:山寨版苹果AirPods Pro
  9. 小学认识计算机评课,小学信息技术评课.doc
  10. Android WebView 下载没反应
  11. 服务器appcrash的问题怎么修复,Win7系统出现APPCRASH错误的修复方法
  12. dk编程真好玩 python_皮皮学编程(1):从Scratch到Python
  13. 冷战——婚姻生活的双刃剑
  14. online-DDL详细原理介绍及gh-ost讲解
  15. Qt 错误提示1: invalid use of incomplete type ‘***‘
  16. 手持式信号综合分析仪 天馈线驻波比频谱分析仪 天馈线+频谱+干扰分析仪 4.4GHZ无线综合测试仪
  17. NIUSHOP wap端广告页面设置
  18. 软件测试较好的学习网站
  19. 信息安全专家李钊博士| 个人信息
  20. UnityGif动态图片的显示

热门文章

  1. 记录centos 7.9 LNMP为网站申请SSL证书详细操作
  2. 怎么把PPT转成EXE格式,详细步骤
  3. [C语言]PTA 念数字
  4. RabbitMQ入门到精通
  5. Java桌面应用程序
  6. ArcGIS导入xyz序列并绘制地形图(含等高线、面体积、点距离的计算)
  7. 每日一犬 · 哈瓦那犬
  8. 为什么游戏流畅需要60帧,而电影流畅只需要24帧?
  9. 魔法师元素平衡(C++解法)
  10. Verilog语言__Verilog简介及设计基础