当前课程知识点:计算思维导论 > 第四单元 > 4.4 冯•诺依曼机及其发展与演化 > Video
大家好
这一节我们介绍
冯·诺依曼机及其发展与演化
冯·诺依曼是二十世纪
最伟大的数学家之一
是在现代计算机
博弈论
和核武器等诸多领域
都有杰出建树的
最伟大的科学全才之一
被称为计算机之父和博弈论之父
冯·诺依曼从实现的角度
提出了计算机的核心模型
由于电子学
以及电子工业的迅速发展
人们早已把控制器
和运算器做在一起了
也就是集成在一块芯片上
通常称之为中央处理器
CPU和存储器之间
通过三大总线
也就是
数据总线
地址总线
和控制总线连接在一起
如果我们暂且不考虑
与人
或者与外界打交道的
输入 输出设备
则冯·诺依曼计算机
可用这么一个图来表示
冯·诺依曼计算机的基本工作原理
可归结为两点
一 存储程序
二 指令驱动
也就是说先要把
原始数据和程序存于主存器之中
然后 按照程序中的指令
驱动CPU
从存储器中读取数据进行计算
并将计算结果
当然也包括中间结果
再存入存储器中
电子计算机就是按照
这种思路研制出来的
那么冯·诺依曼计算机完美无缺了吗
不 它还有一些问题
比如
一 CPU和存储器速度上不匹配
前者快 后者慢
二 总线BUS太繁忙
成了瓶颈问题
三 主存储器容量有限
特别是总线BUS
上面分时跑着
数据
指令
地址信息
控制信息
穿梭不息 特别繁忙
成了性能提升的瓶颈
被人称之为 冯·诺依曼峡道
面对问题
我们有什么对策呢
性能强大的CPU
需要快速轻松地
存取大量数据
才能实现最优性能
如果CPU无法及时
获取所需要的指令和数据
则只能不断地
停下来等待指令和数据
这将浪费宝贵的CPU资源
如何解决这个问题呢
那么提高主存储器的
工作频率可行吗
也不现实
因为设计能够匹配CPU工作频率的
存储器也许并非难事
但价格昂贵
费用方面人们负担不起
聪明的设计者
在CPU和主存储器之间
增设一级高速缓冲存储器
也称之为Cache
较好地解决了这个问题
当然 为进一步
改善存储系统的性能
人们还采取一些办法
一是价格可以承受的情况下
扩大Cache的容量
二是把Cache分成
一级Cache和二级Cache
一级Cache位于CPU内
二级Cache位于CPU外
就像这样
Cache为何能提高性能
这个问题不难理解
比如 过去家里面没有自来水
家家都备有一个水缸
吃喝用水都从水缸里面舀取
如果水缸里没水了
就去村外水井里面挑水
直至把水缸装满为止
下次用水又从水缸里舀取
假设每次用水
哪怕喝一小口
都要去水井里取水
那将是多么不可思议的事情
现在有了水缸
用水就方便
高效多了
在这里
水缸就是家用的Cache
它能明显地提高人们的生活效率
类似的
家家备用的米缸也是同样道理
那么针对第三个问题
解决的办法是增设辅助存储器
也就是外部存储器 简称外存
外存可以永久保存程序和数据
而且容量比主存储器大得多
价格也便宜得多
可以把暂时不用的
程序和数据存放在外存之中
主存储器中只需存储当前
正在运行的程序
和正在处理的数据即可
这样也就解决了
主存储器容量非常有限的问题
如果外存的容量还不够大的话
还可以利用互联网
把数据和程序
存放在容量巨大的网络之中
如网格存储 云存储
这样 就形成了一个
分层次的 完整的存储系统
就像这样
为了进一步提高计算性能
人们提出了从以CPU为中心的
体系结构转化为
以存储器为中心的体系结构
实现 并行计算
现在的高性能计算机大致上
就是按照这种思路研制出来的
这也就是生活中我们常说的
三个臭皮匠 顶个诸葛亮
Cache也罢
多CPU并行计算也罢
理论上涉及许多科学问题
微观上涉及许多技术细节
但从宏观上看
解决问题的思路和方法
大家都不难理解
甚至与生活中的一些思想
和理念是相通的
理解这些思维方法
对提高我们分析问题
解决问题是非常有帮助的
好 这一节就讲到这
谢谢大家
-1.1 计算思维及其教育
--Video
-2.1 计算是什么
--Video
-2.2 计算与自动计算
--Video
-2.3 计算机及其计算本质特征(I)
--Video
-2.4 计算机及计算的本质特征(II)
--Video
-3.1 数的表示与模拟计算
--Video
-3.2 数的表示与数字计算
--Video
-3.3 二进制加法运算的机器化
--Video
-3.4 “九九归一”的加法运算
--Video
-3.5 二进制之优越性及问题与代价
--Video
-4.1 从数学危机到图灵机
--Video
-4.2 图灵机的计算能力
--Video
-4.3 什么问题都能计算吗?
--Video
-4.4 冯•诺依曼机及其发展与演化
--Video
-4.5 从算盘到图灵机——机械计算的本质
--Video
-4.6 电子计算机——透过现象看本质
--Video
-5.1 思维可机械计算吗(I)
--Video
-5.2 思维可机械计算吗(II)
--Video
-6.1 量子理论
--Video
-6.2 量子计算机
--Video
-7.1 人类求解问题之过程
--Video
-7.2 基于计算(机)的问题求解过程
--Video
-7.3 面向过程的结构化设计方法学
--Video
-7.4 面向对象之方法学
--Video
-7.5 面向对象技术
--Video
-7.6 抽象
--Video
-7.7 计算学科中的抽象
--Video
-7.8 时间与空间及其相互转换
--Video
-7.9 技术层面的其他方法学
--Video
-7.10 认知层面的其他方法学
--Video
-8.1 算法与程序
--Video
-8.2 算法设计方法——枚举
--Video
-8.3 算法设计方法——递推
--Video
-8.4 算法设计方法——递归
--Video
-8.5 算法设计方法——分治
--Video
-8.6 算法设计方法——仿生
--Video
-9.1 机器间的通信方式
--Video
-9.2 数据转发方法
--Video
-9.3 网络分层体系结构
--Video
-9.4 有趣的对称加密技术
--Video
-9.5 难解的非对称加密技术
--Video
-9.6 数字签名及其应用
--Video
-9.7 从自然智能到人工智能
--Video
-9.8 符号主义的基本思想
--Video
-9.9 连接主义Ⅰ
--Video
-9.10 连接主义Ⅱ
--Video
-9.11 行为主义的基本思想
--Video
-9.12 机器翻译的愿景与困难
--Video
-9.13 峰回路转的自然语言处理
--Video
-9.14 信息传输中的问题与挑战
--Video
-9.15 重复传输与冗余编码
--Video
-9.16 校验与校验和
--Video
-9.18 自纠错技术及应用
--Video
-9.19 两种简单的数据压缩方法
--Video
-9.20 哈夫曼编码
--Video
-9.21 数据压缩极限与LZ压缩方法
--Video
-9.22 大海捞针的搜索引擎
--Video
-9.23 网页排序方法(PageRank)
--Video
-10.1 计算文化
--Video
-期末考试--作业