冯诺依曼结构的瓶颈问题

冯诺依曼的瓶颈问题

电脑有四个主要部分:中央处理器、存储器、接口电路和外部设备,各部分之间的互连总线有:地址总线、控制总线、双向数据线和输入输出线。电脑的信息数据采用二进制进行编码,将数据输入电脑时,是一个一个地按地址对号先后入座,经计算、处理,然后输出结果,而不是将数据同时输入电脑。将数据一个一个地输入和处理的方式被称为串行方式;将数据同时输入和处理的方式,被称为并行方式。串行方式比并行方式所需的各部件之间的互联线数目大大减少,从而简化了电路,使目前超大规模集成电路得以实现。但是,却使电脑丧失了实时处理的能力,因为,串行方式延长了数据输入和处理的时间,从而限制了电脑的计算处理速度,这就是所谓冯诺依曼"瓶颈"问题。如同满瓶之水,只能从瓶颈慢慢地流出,使时间延长了。 思考:冯•诺依曼瓶颈本质的原因是什么?

冯•诺依曼型计算机以存储程序原理为基础,指令与数据混合存储,程序执行时,CPU在程序计数器的指引下,线性顺序地读取下一条指令和数据,以运算器为中心,这就注定了其本质特点是线性或是串行性,表现在两个方面:

1.指令执行的串行性。CPU的运算依赖于寄存器。每一个指令的运算或多或少依赖于其前序指

令的执行结果,尽管后来有些技术,比如将以运算器为中心通过运用DMA等技术变为以存储器为中心、超标量、智能预测执行、寄存器改名技术以达到多条管道并行进行,这已经或多或少地改变了冯•诺依曼的原型,但是本质还是串行执行指令。使得我们在设计程序时,基本上是按流水线的方式在思考问题,即使结构化编程,每个结构体本身也还是串行思考方式下实现的。而时下时兴的面向对象技术只是实现了封装,每个对象成员在设计时也是以串行的思考方式实现的,使得软件的实现效率比较低。

2.存储器读取的串行性。存储器是现代冯•诺依曼体系的核心。一切数据都要在存储器里打转,

但是研究计算机原理,注意到,所有对内存的读取都是独占性的,每一个瞬间,内存实体只能被一个操作对象通过片选信号占据。这就决定了内存的串行读取特性,尽管后来出现了许多新的技术,比如双端内存读取技术(可以从两个读取口同时互不影响地操作内存,初期为了解决显存的显示瓶劲)及双通道甚至多通道技术(可以将待写入的数据分块同时写入不同的存储区块,可以将内存存取速度成倍地提高,这种技术我认为源于RAID技术),这些技术或多或少增强了系统的性能,但都没有改变每一个单体串行工作的特点。

综上所述,我认为冯•诺依曼瓶劲的本质是串性。改善的出路是使用并行技术,在指令运算处理及数据存储上都巧妙地运用并行技术。比如:存储器的访问不再用片选控制,而是可以任意地访问单元,在读写数据时用原子操作或事务处理的思想保证数据的一致性。

1

.冯?诺依曼结构的特点

把冯?诺依曼计算机(Von Neumann computer)的特点归纳如下:

(1)使用单一处理部件来完成计算、存储及通信工作。

(2)使用线性组织的定长存储单元来存储程序,存储时对指令和数据不加区别。

(3)存储空间的单元是直接寻址的。

(4)使用二进制机器语言,其指令完成基本操作码的简单操作。

(5)对计算进行集中的顺序的控制。

4.普林斯顿结构与哈佛结构

有人就把冯?诺依曼结构称为普林斯顿体系结构(Princetion architecture)。与此相对的一种结构则称为哈佛体系结构(Harvard architecture)。哈佛体系结构的主要特点是把指令和数据分开进行存储。今天,我们所说的哈佛结构主要是指在单一的主存储器情况下,带有两个分离的指令高速缓存(instruction cache)和数据高速缓存(data cache)。 5.非冯?诺依曼结构的发展

冯结构既为计算机的发展铺平了道路,又因“集中的、顺序的控制”而成为性能提高的瓶颈。因此,计算机科学家仍在不断地探索各种非冯?诺依曼结构的计算机。例如,函数式编程语言计算机、数据流计算机就是著名的非冯?诺依曼结构。

(三) 体系结构的分类

1.宏观上按处理机数量的分类

(1)单处理系统单处理系统(uniprocessing system)是利用一个处理单元与其它外部设备 2

结合起来,实现存储、计算、通信、输入与输出等功能的系统。

(2)并行处理与多处理系统并行处理与多处理系统(parallel processing and multiprocessing system)是为了充分发挥问题求解过程中处理的并行性,利用两个以上的处理机互连起来,彼此进行通信协调,以便共同求解一个大问题的计算机系统。

(3)分布式处理系统分布式处理系统(distributed processing system)是指物理上远距离而松耦合的多计算机系统。其中,物理上的远距离意味着通信时间与处理时间相比已不可忽略,在通信线路上的数据传输速率要比在处理机内部总线上传输慢得多,这也正是松耦合的含义。

2.微观上按并行程度的分类

(1)Flynn的分类法1966年M.J.Flynn提出按指令流和数据流的多少进行分类的方法。他首先定义了:指令流是机器执行的指令序列;数据流是由指令调用的数据序列。然后,他把计算机系统分为四类

3

冯诺依曼的瓶颈问题

电脑有四个主要部分:中央处理器、存储器、接口电路和外部设备,各部分之间的互连总线有:地址总线、控制总线、双向数据线和输入输出线。电脑的信息数据采用二进制进行编码,将数据输入电脑时,是一个一个地按地址对号先后入座,经计算、处理,然后输出结果,而不是将数据同时输入电脑。将数据一个一个地输入和处理的方式被称为串行方式;将数据同时输入和处理的方式,被称为并行方式。串行方式比并行方式所需的各部件之间的互联线数目大大减少,从而简化了电路,使目前超大规模集成电路得以实现。但是,却使电脑丧失了实时处理的能力,因为,串行方式延长了数据输入和处理的时间,从而限制了电脑的计算处理速度,这就是所谓冯诺依曼"瓶颈"问题。如同满瓶之水,只能从瓶颈慢慢地流出,使时间延长了。 思考:冯•诺依曼瓶颈本质的原因是什么?

冯•诺依曼型计算机以存储程序原理为基础,指令与数据混合存储,程序执行时,CPU在程序计数器的指引下,线性顺序地读取下一条指令和数据,以运算器为中心,这就注定了其本质特点是线性或是串行性,表现在两个方面:

1.指令执行的串行性。CPU的运算依赖于寄存器。每一个指令的运算或多或少依赖于其前序指

令的执行结果,尽管后来有些技术,比如将以运算器为中心通过运用DMA等技术变为以存储器为中心、超标量、智能预测执行、寄存器改名技术以达到多条管道并行进行,这已经或多或少地改变了冯•诺依曼的原型,但是本质还是串行执行指令。使得我们在设计程序时,基本上是按流水线的方式在思考问题,即使结构化编程,每个结构体本身也还是串行思考方式下实现的。而时下时兴的面向对象技术只是实现了封装,每个对象成员在设计时也是以串行的思考方式实现的,使得软件的实现效率比较低。

2.存储器读取的串行性。存储器是现代冯•诺依曼体系的核心。一切数据都要在存储器里打转,

但是研究计算机原理,注意到,所有对内存的读取都是独占性的,每一个瞬间,内存实体只能被一个操作对象通过片选信号占据。这就决定了内存的串行读取特性,尽管后来出现了许多新的技术,比如双端内存读取技术(可以从两个读取口同时互不影响地操作内存,初期为了解决显存的显示瓶劲)及双通道甚至多通道技术(可以将待写入的数据分块同时写入不同的存储区块,可以将内存存取速度成倍地提高,这种技术我认为源于RAID技术),这些技术或多或少增强了系统的性能,但都没有改变每一个单体串行工作的特点。

综上所述,我认为冯•诺依曼瓶劲的本质是串性。改善的出路是使用并行技术,在指令运算处理及数据存储上都巧妙地运用并行技术。比如:存储器的访问不再用片选控制,而是可以任意地访问单元,在读写数据时用原子操作或事务处理的思想保证数据的一致性。

1

.冯?诺依曼结构的特点

把冯?诺依曼计算机(Von Neumann computer)的特点归纳如下:

(1)使用单一处理部件来完成计算、存储及通信工作。

(2)使用线性组织的定长存储单元来存储程序,存储时对指令和数据不加区别。

(3)存储空间的单元是直接寻址的。

(4)使用二进制机器语言,其指令完成基本操作码的简单操作。

(5)对计算进行集中的顺序的控制。

4.普林斯顿结构与哈佛结构

有人就把冯?诺依曼结构称为普林斯顿体系结构(Princetion architecture)。与此相对的一种结构则称为哈佛体系结构(Harvard architecture)。哈佛体系结构的主要特点是把指令和数据分开进行存储。今天,我们所说的哈佛结构主要是指在单一的主存储器情况下,带有两个分离的指令高速缓存(instruction cache)和数据高速缓存(data cache)。 5.非冯?诺依曼结构的发展

冯结构既为计算机的发展铺平了道路,又因“集中的、顺序的控制”而成为性能提高的瓶颈。因此,计算机科学家仍在不断地探索各种非冯?诺依曼结构的计算机。例如,函数式编程语言计算机、数据流计算机就是著名的非冯?诺依曼结构。

(三) 体系结构的分类

1.宏观上按处理机数量的分类

(1)单处理系统单处理系统(uniprocessing system)是利用一个处理单元与其它外部设备 2

结合起来,实现存储、计算、通信、输入与输出等功能的系统。

(2)并行处理与多处理系统并行处理与多处理系统(parallel processing and multiprocessing system)是为了充分发挥问题求解过程中处理的并行性,利用两个以上的处理机互连起来,彼此进行通信协调,以便共同求解一个大问题的计算机系统。

(3)分布式处理系统分布式处理系统(distributed processing system)是指物理上远距离而松耦合的多计算机系统。其中,物理上的远距离意味着通信时间与处理时间相比已不可忽略,在通信线路上的数据传输速率要比在处理机内部总线上传输慢得多,这也正是松耦合的含义。

2.微观上按并行程度的分类

(1)Flynn的分类法1966年M.J.Flynn提出按指令流和数据流的多少进行分类的方法。他首先定义了:指令流是机器执行的指令序列;数据流是由指令调用的数据序列。然后,他把计算机系统分为四类

3


相关文章

  • 冯诺依曼结构和哈佛结构
  • 冯诺依曼结构和哈佛结构 一.冯诺依曼结构: 1冯诺依曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据指令存储 器合并在一起并经由同一个总线传输的存储器结构.其结构如下图所示: 2.冯诺依曼结构处理器具有以下几个特点: ①必须有一个存储 ...查看


  • 冯诺依曼在计算机领域中的贡献
  • 冯诺依曼在计算机领域中的贡献 1944年夏的一天,正在火车站候车的诺伊曼巧遇戈尔斯坦,并同他进行了短暂的交谈.当时,戈尔斯坦是美国弹道实验室的军方负责人,他正参与ENIAC 计算机的研制工作.在交谈中,戈尔斯坦告诉了诺伊曼有关ENIAC 的 ...查看


  • 计算机科学导论重点(第三版)
  • 1. 冯诺依曼创立了电子计算机的系统设计思想. 2. 冯诺依曼的主要贡献是提出了储存程序的概念. 3. 计算机的5个基本硬件是:运算器,储存器,控制器,输入设备,输出设备. 4. 冯诺依曼体系结构思想可以归结为:采用存储程序的思想. 5. ...查看


  • 阿里巴巴2014秋季校园招聘-软件研发工程师笔试题
  • 1. 单选题 1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数 A: h(K)=K/N; B: h(K)=1; C: h(K)=K mod N; D: h(K)=(K+rand(N)) mod N, rand(N)返 ...查看


  • 歌尔声学2016笔试题目
  • 写一个语句实现X 是否为2的若干次幂的判断, 如何判断一个数是不是unsigned , TCP 和UDP 之间的区别是什么 X86体系架构的处理器和ARM 架构的处理器最大的区别是什么 列举四种嵌入式操作系统, 网卡为什么有mac 地址, ...查看


  • 计算机的概念
  • 计算机的概念 嵩天 北京理工大学 理解"计算机" Computer 原指专门负责计算的人,后来演变成特指计算设备,译为"计算机" 理解"计算机" 计算设备,不都是计算机 理解&qu ...查看


  • 物理真随机数发生器的设计
  • 第20卷第2期 2013年2月 doi:10.3969/j.issn.1671-637X.2013.02.023 电光与控制 ElectronicsOptics&Control V01.20No.2 Feb.2013 物理真随机数发 ...查看


  • 嵌入式系统习题
  • 第一题:判断题 1. 在ARM 处理器中,快速中断(FIQ )的优先级高于外部中断(IRQ ).T 2.ROM能够永久或半永久地保存数据,ROM 内的数据永远不会丢失.F 3. 嵌入式ARM 架构的嵌入式处理器同时支持大端.小端(Big/L ...查看


  • [认知心理学]阅读报告
  • 大类通识课程读书报告 课 程 人工智能与认知科学 姓 名 西木小卒 学 号 -------- 教师 日 期 2016年10月22日 认知心理学阅读报告 姓名 西木小卒 学号-------- 阅读书目:<心理学导读系列--认知心理学&g ...查看


热门内容