» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


 29 12
发新话题
打印

[电脑] 简单给二十一世纪新晋电脑爱好者扫个盲,关于cpu

所谓CPU,在冯诺依曼结构里,指的就是单纯的控制单元和数学逻辑单元,是不包含任何存储功能的。

比如FC用的6502,包括Z80,包括i80286,都不包含片上缓存。

但是:

将CPU与内存分开并非十全十美,反而会导致所谓的冯·诺伊曼瓶颈(von Neumann bottleneck):在CPU与内存之间的流量(资料传输率)与内存的容量相比起来相当小,在现代电脑中,流量与CPU的工作效率相比之下非常小,在某些情况下(当CPU需要在巨大的资料上执行一些简单指令时),资料流量就成了整体效率非常严重的限制。CPU将会在资料输入或输出内存时闲置。由于CPU速度远大于内存读写速率,因此瓶颈问题越来越严重。
而冯·诺伊曼瓶颈是约翰·巴科斯在1977年ACM图灵奖得奖致词时第一次出现,根据巴科斯所言:
       
……确实有一个变更储存装置的方法,比借由冯·诺伊曼瓶颈流通大量资料更为先进。瓶颈这词不仅是对于问题本身资料流量的叙述,更重要地,也是个使我们的思考方法局限在‘一次一字符’模式的智能瓶颈。它使我们怯于思考更广泛的概念。因此编程成为一种计划与详述通过冯·诺伊曼瓶颈的字符资料流,且大部分的问题不在于资料的特征,而是如何找出资料。

在CPU与内存间的快取内存抒解了冯·诺伊曼瓶颈的效能问题。另外,分支预测(branch prediction)算法的建立也帮助缓和了此问题。巴科斯在1977年论述的“智能瓶颈”已改变甚多。且巴科斯对于此问题的解决方案并没有造成明显影响。现代的函数式编程以及面向对象编程已较少执行如早期Fortran一般会“将大量数值从内存搬入搬出的操作”,但平心而论,这些操作的确占用电脑大部分的执行时间。


从i486开始,pc处理器集成了一级缓存,从pentium pro开始,cpu集成了二级缓存。

在i8086一直到i386时代,x86的CPU都要依靠外置的8087到80387协处理器来支持硬件浮点运算,到i486以后,数字协处理器的指令集也被纳入x86体系,外置的8087协处理器消失。

后来的例子大家大概都明白了,SIMD指令被引入CPU,有了MMX,3DNOW!,SSE。

再后来,X86领域,AMD率先将内存控制器也集成进CPU,再后来,GPU也被集成进CPU(大概没有人认为集成了GPU的I5就不是CPU吧)

另外,其他的CPU,比如IBM CELL,还给每个SPE集成了单独的片上内存(不是缓存),大概比较CPU性能的时候,也不会有人要求把CELL的片上内存禁用再来比较。


TOP

引用:
原帖由 沙漠之鹰 于 2012-4-26 09:49 发表
这也叫扫盲?233 max
引用:
原帖由 mirokuneal 于 2012-4-26 02:02 发表

哪根筋告诉你缓存不算cpu了?
你给我找个缓存跟cpu分开的系统出来看看?



TOP

我觉得如果上小学时没有玩过苹果II,上中学时没有玩过486-pentium pro的,都有必要学习学习


TOP

引用:
原帖由 mting 于 2012-4-26 10:00 发表
现在cpu 变成soc了 对家用来说
确实是在往这个方向走

intel说自己最大的对手是高通,高通的优势是什么?

全集成嘛

TOP

这里牵扯的是CPU的定义的问题,而不是冯诺依曼机的问题

毫无疑问,早期的“CPU”里面,是不包含任何MEMORY的
附件: 您所在的用户组无法下载或查看附件

TOP

不管是手机呼机商务通,还是电脑平板笔记本,都是冯诺依曼结构的图灵机,冯诺依曼结构根本就不过时,过时的是一些名词的定义

TOP

引用:
原帖由 zcomic 于 2012-4-26 10:46 发表
是啊,所以呢:

手机的定义是通讯器材,所以短信和电话功能才是真正的
纯手机功能。
所以我们现在谈手机的时候,什么娱乐性,大屏幕,拍照,
应用软件,其实都不算真正的手机功能,谈这些都是不懂手机的,
都 ...
cache,或者说缓存,本质上还是存储器,存的内容是主内存里的部分常用数据,与冯诺依曼结构不矛盾。

TOP

引用:
原帖由 zcomic 于 2012-4-26 10:57 发表


你也可以说苹果那套依然采用的是诺基亚套路,只不过个别配件做成稍微不同的了,
比如屏幕稍微大了点,应用软件稍微多了点,系统名称改了个不一样的词……

所以苹果手机归根到底就是诺基亚手机。

你要是把 ...
是的,就是这样子

冯诺依曼结构在计算机领域的定义,类似生物学上“动物”这种定义

假如苹果是狗,安卓是猴,那么它们都是动物,也都是冯诺依曼结构的图灵机

TOP

引用:
原帖由 约翰法雷尔 于 2012-4-26 11:00 发表
posted by wap, platform: UC

猴认真起来,还是一副猴样
233
附件: 您所在的用户组无法下载或查看附件

TOP

引用:
原帖由 zcomic 于 2012-4-26 11:03 发表


不要把什么定义看得那么神圣而牢不可破,人之所以僵化就是僵化在这里,
觉得一个事情有了某人的所谓定义以后,就一定都遵循这个定义,所有的
后续理论都要在这个定义之下讨论,都硬要往这上面扯。

世界上的 ...
233,这不是什么牢不可破的问题

事实上你我用的计算机全部都是冯诺依曼结构,这个是事实,不需要也没有人往上面硬扯

TOP

引用:
原帖由 zcomic 于 2012-4-26 11:05 发表
诺基亚就是抱着-----手机就应该是一部“手机”----
这个定义渐渐衰败下来的,你的思维和诺基亚的如出一辙。
手机只不过是冯诺依曼机里的一个子类

非冯结构计算机,想必你我都没什么机会接触

TOP

引用:
原帖由 zcomic 于 2012-4-26 11:10 发表


就像我上面说的,你也可以说现在的苹果手机就是诺基亚手机,本质上没两样,
看上去好像是这样,诺基亚也是这么认为的。
这是两个概念

存在非冯结构的计算机,比如量子计算机,生物计算机(其实人脑未尝不能算作一种非冯结构的计算机)

但是现在你我用的所有计算机几乎全部都是冯诺依曼机

你可是试试看把老鼠的大脑移植到IPHONE里当处理器

TOP

引用:
原帖由 zcomic 于 2012-4-26 11:15 发表


按冯诺依曼的结构来说,哪怕是量子计算机,生物计算机,只要是给人用的,
都可以套进冯诺依曼架构来说事的。
那你就搞错了,严格的非冯结构,比如量子计算机,现在还在实验阶段。

不严格的,打擦边球的非冯结构早有了,ARM就可以算打擦边球的非冯结构。

TOP

引用:
原帖由 黑暗骑士巫妖王 于 2012-4-26 11:20 发表
hudihutian 你的概念就错了。

你以为CPU是运算器,其实你说的现代的CPU已经包括了运算器、控制器和存储器了。

这么理解,你就没疑问了
那就是需要给CPU重新下定义,我的意见也是这样

The central processing unit (CPU) is the portion of a computer system that carries out the instructions of a computer program, to perform the basic arithmetical, logical, and input/output operations of the system.

这种传统定义确实已经落后了

TOP

引用:
原帖由 黑暗骑士巫妖王 于 2012-4-26 11:22 发表




看这图你就明白了,CPU并不是运算器,而是运算器、存储器、控制器三合一了,你把CPU当作运算器就是一个错误
这个图是经典的冯诺依曼结构图

Two typical components of a CPU are the arithmetic logic unit (ALU), which performs arithmetic and logical operations, and the control unit (CU), which extracts instructions from memory and decodes and executes them, calling on the ALU when necessary.

这个是经典定义

只要这个定义一天没改,很遗憾存储器就不能算作CPU的一部分

包含各种缓存和SIMD单元的"CPU",只能是商品名,而不是科学上的命名。

TOP

 29 12
发新话题
     
官方公众号及微博