QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

冯•诺依曼计算机将渐行渐远?

  • 2015-06-25
  • 本文字数:2144 字

    阅读完需:约 7 分钟

如果说图灵(Alan Turing)奠定的是计算机的理论基础,那么冯·诺依曼(John Von Neumann)则是将图灵的理论物化成为实际的物理实体,成为了计算机体系结构的奠基者。从第一台冯·诺依曼计算机诞生到今天已经过去了将近 70 年,计算机的技术与性能也都发生了巨大的变化,但整个主流体系结构依然是冯·诺依曼结构。

冯·诺依曼体系结构的特点:采用二进制,硬件由 5 个部分组成(运算器、控制器、存储器、输入设备和输出设备),提出了“存储程序”原理,使用同一个存储器,经由同一个总线传输,程序和数据统一存储同时在程序控制下自动工作。特别要指出,它的程序指令存储器和数据存储器是合并在一起的,程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置。因为程序指令和数据都是用二进制码表示,且程序指令和被操作数据的地址又密切相关,所以早先选择这样的结构是合理的。

但是,随着对计算机处理速度要求的提高和对需要处理数据的种类、量级的增大,这种指令和数据共用一个总线的结构,使得信息流的传输成为限制计算机性能的一个瓶颈,制约了数据处理速度的提高。由此,体现出了冯·诺依曼体系结构的局限性:

  1. 目前 CPU 的处理速度和内存容量的成长速率要远大于两者之间的流量,将大量数值从内存搬入搬出的操作占用了 CPU 大部分的执行时间,也造成了总线的瓶颈。
  2. 程序指令的执行是串行的,由程序计数器控制,这样使得即使有关数据已经准备好,也必须遵循逐条执行指令序列,影响了系统运行的速度;
  3. 存储器是线性编址,按顺序排列的地址访问,这是有利于存储和执行机器语言,适用于数值计算。但高级语言的存储采用的是一组有名字的变量,是按名字调用变量而非按地址访问,且高级语言中的每个操作对于任何数据类型都是通用的,不管采用何种数据结构,多维数组、二叉树还是图,最终在存储器上都必须转换成一维的线性存储模型进行存储。这些因素都导致了机器语言和高级语言之间存在很大的语义差距,这些语义差距之间的映射大部分都要由编译程序来完成,在很大程度上增加了编译程序的工作量。
  4. 冯·诺依曼体系结构计算机是为逻辑和数值运算而诞生的,它以 CPU 为中心,I/O 设备与存储器间的数据传送都要经过运算器,在数值处理方面已经达到很高的速度和精度,但对非数值数据的处理效率比较低,需要在体系结构方面有革命性突破。

科学家们一直在努力突破传统的冯·诺依曼体系结构框架,对冯·诺依曼计算机进行改良,主要体现在:

  1. 将传统计算机只有一个处理器串行执行改成多个处理器并行执行,依靠时间上的重叠来提高处理效率,形成支持多指令流、多数据流的并行算法结构。
  2. 改变传统计算机控制流驱动的工作方式,设计数据流驱动的工作方式,只要数据准备好,就可以并行执行相关指令。
  3. 跳出采用电信号二进制范畴,选取其他物质作为执行部件和信息载体,如光子、量子或生物分子等。

近几年,在计算机体系结构研究方面也已经有了重大进展,越来越多的非冯计算机相继出现,如光子计算机、量子计算机、神经计算机以及 DNA 计算机等等。

光子计算机(Photonic computer)是一种采用光信号作为物质介质和信息载体,依靠激光束进入反射镜和透镜组成的阵列进行数值运算、逻辑操作和信息的存储和处理。它可以实现对复杂度高、计算量大、实时性强的任务的高效、并行处理,比普通电子计算机快1000 倍,在图像处理、模式识别和人工智能方面有着非常巨大的应用前景。

神经计算机(Neural computer)是一种可以并行处理多种数据功能的神经网络计算机,它以神经元为处理信息的基本单元,将模仿大脑神经记忆的信息存放在神经元上。神经网络具有自组织、自学习、自适应及自修复功能,可以模仿人脑的判断能力和适应能力。美国科学家研究出的神经计算机可以模拟人的左脑和右脑,能识别语言文字和图形图像,能控制机器人行为,进行智能决策。它的左脑由100 万个神经元组成,用于存储文字和语法规则,右脑由1 万多个神经元组成,适用于图形图像识别。这将有可能成为人工智能硬件发展的主攻方向。

量子计算机(Quantum computer)是遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。量子计算机本身的特性,扩充了逻辑和数学理论,通过核自旋、光子、束缚离子和原子等制成的量子位,创造出经典条件下不可能存在的新的逻辑门。与经典的比特位不同,对量子位操作1 次等同于对经典位操作2 次,因为量子不像半导体只能记录0 和1,它可以同时表示多种状态。这些都为新的算法实现提供了条件,也为人工智能的发展提供了可能的硬件条件。

冯·诺依曼计算机以其技术成熟、价格低廉、软件丰富和大众的使用习惯,可能在今后很长的一段时期里还将为人类的工作和生活发挥着重要作用。当然,为了满足人们对计算机更快速、更高效、更方便的使用要求,为了让计算机能够模拟人脑神经元和脑电信号脉冲这样复杂的结构,就需要突破现有的体系结构框架并寻求新的物质介质作为计算机的信息载体,才能使计算机有质的飞跃。随着非冯计算机的商品化问世,我们将会迎来一个崭新的信息时代


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-06-25 06:217798
用户头像

发布了 268 篇内容, 共 124.5 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

软件测试 | 测试开发 | 测试人生 | 入行3年,年薪36W+,从外包到知名互联网公司,疫情之下薪资不止翻倍~

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试工程师如何突破职场瓶颈?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 接口测试项目实战与经典面试题解析,挑战 BAT 大厂必会!

测吧(北京)科技有限公司

测试

从0到一开发微信小程序(1)——申请账号并安装开发环境

微信小程序专栏

快速入门JavaScript

楠羽

JavaScript 笔记 9月月更

SpringCloud Gateway 服务网关的快速入门

Gateway SpringCould 9月月更

软件测试 | 测试开发 | 测试面试真题|工作2年,从小厂到大厂,薪资翻倍是怎样的体验?

测吧(北京)科技有限公司

测试

StarRocks 社区一周年:极速统一,感谢遇见!

StarRocks

数据库

软件测试 | 测试开发 | 测试人生 | 40+的年龄50W+的年薪,2线城市入职名企,他曾想放弃测试?

测吧(北京)科技有限公司

测试

2022年区块链金融场景化应用专题分析

易观分析

区块链 金融

从0到1开发微信小程序(3)—小程序框架配置

微信小程序专栏

关于运维监控系统实践中的一些tips

穿过生命散发芬芳

监控系统 9月月更

物联网平台在AIoT领域8大场景应用

AIRIOT

低代码 物联网 低代码平台 低代码,项目开发

【React】从0到1搭建你的React18项目

海底烧烤店ai

前端 React Hooks 9月月更

跟着卷卷龙一起学Camera--AF

卷卷龙

ISP 9月月更

面试突击83:什么情况会导致@Transactional事务失效?

王磊

Java 面试题

新思科技发布《一往无前:GitOps与安全左移》报告

InfoQ_434670063458

新思科技 开源软件 Synopsys 供应链安全

从华为数字机器人秋季发布会,看智慧政务领域的“政务新视界”

王吉伟频道

RPA 自动化优先 智慧政务 华为数字机器人 数字机器人

软件测试 | 测试开发 | 文未有福利 | BAT 名企大厂做接口自动化如何高效使用 Requests ?

测吧(北京)科技有限公司

测试

Solo博客静态部署到码云gitee —— 全网最详细系列

海底烧烤店ai

部署 博客系统 博客搭建 9月月更

从0到1开发微信小程序(2)——开发第一个小程序

微信小程序专栏

C++学习---cstdbool和cstddef源码学习分析

桑榆

c++ 源码阅读 9月月更

软件测试 | 测试开发 | 测试开发基础|一文搞定计算机网络(一)

测吧(北京)科技有限公司

测试

2022-09-14:以下go语言代码输出什么?A:0 0;B:0 1;C:1 1;D:1 0。 package main func main() { println(f(1)) } func

福大大架构师每日一题

golang 福大大 选择题

vue2数据响应式原理——数据劫持(对象篇)

海底烧烤店ai

前端 JavaScrip vue源码解读 9月月更

AntDB基于Oracle兼容下的DECODE函数适配

亚信AntDB数据库

数据库 AntDB 国产数据库 AntDB数据库

什么是接入点 Access point?

wljslmz

网络技术 无线技术 9月月更 无线接入点

内核实战教程第五期 _ SQL 执行引擎的设计与实现

OceanBase 数据库

渡过“寒冬”,看云原生数据库如何助力企业降本增效与持续创新

亚马逊云科技 (Amazon Web Services)

数据库 云原生

关于数据仓库的特点及组成的概述

阿泽🧸

数据仓库 9月月更

Java知识点锦集1

喜羊羊

9月月更

冯•诺依曼计算机将渐行渐远?_语言 & 开发_张天雷_InfoQ精选文章