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


发新话题
打印

[其他] 求技术达人指点,为什么本世代主机CPU用的是RISC构架的?

在CISC发展的70年代,存储器的成本很高,于是CPU设计的复杂以减少代码量,让更多的事情由CPU硬件来完成
RISC是在80年代开始流行的,当时存储体的成本已经大幅下跌,但是存储器速度的增加去远远慢于CPU速度的增加,所以代码量已经不是问题,可以将CPU设计的简单而快速来提高时钟频率来增强性能
RISC的思想:
1.寄存器——寄存器。所有的计算都是在CPU内部的寄存器之前进行,因为寄存器速度比存储器快很多,CISC有大量的存储器相关的指令
2.硬件设计简单,这样可以细化流水线,提高时钟频率,让更多的事情由软件来完成
3.指令长度一致,这样指令解码的速度更快,CISC的指令长度从几位到几十位不等
INTEL为什么要坚持CISC的X86?这个可以在安迪格鲁夫(INTEL第三任CEO)有名的书“只有偏执狂才能生存”中得到解答
intel在90年代初也很犹豫,到底是不是要转投RISC,公司内部也分成了2派,他们也做出了自己的RISC I960,但是格鲁夫后来决定继续走CISC的原因就是因为软件的向前兼容问题,这个他在书中说的很清楚,自己不信可以去看,起决定性力量的就是软件兼容问题
到了奔腾开始,X86基本就是披着CISC外皮的RISC了,INTEL CPU现在解码的方式都是微指令,也就是先把一条X86指令解码成为几条更小的类RISC的微指令,再放到RISC流水线中去跑,所以现在再争论RISC与CISC早就没有意义了
你所谓的SSE,MMX等所谓的SIMD指令在RISC架构的CPU中都有,比如MIPS有自己的DSP指令集和多媒体指令,POWER PC也有类似的指令集,你不知道并不代表没有,所谓任务管理指令也都有
INTEL自己前几年推的安腾处理器也是非X86结构超长指令字的处理器
所以,现在PC继续坚持X86完全是因为软件历史原因,跟硬件没有太大联系
游戏机不需要这一点,当然没必要多此一举

[ 本帖最后由 bing 于 2009-9-26 13:25 编辑 ]


TOP

自己去补计算机基础知识
查查Instruction Set Architecture到底啥意思
指令设计和架构实现密不可分,当年为啥CISC要弄那么多条各种各样的指令?就是因为存储空间太珍贵,所以CISC一条指令可以完成RISC几条指令的功能,虽跑一条CISC指令下来花的时间比RISC几条还要长,但是省去了存储器的空间(实现同样功能的程序,CISC生成的二进制代码比RISC要小,这是70年代搞CISC的主要原因),千年虫问题也是当年为了省存储空间而省去了日期的最高2位造成的
CISC和复杂广泛的软件环境一点关系没有,MIPS上跑LINUX和POWER PC上跑MAC OS照样跑的很好,当年WIN NT 4.0都有各种RISC CPU的版本,后来只支持X86不是因为RISC不适合复杂广泛的软件环境,只是微软的商业考虑罢了

[ 本帖最后由 bing 于 2009-9-26 16:58 编辑 ]



TOP

喔,原来人家用了个COMPUTING你就不懂了啊
自己去补基础吧
http://zh.wikipedia.org/zh-cn/%E ... 6%E6%9E%B6%E6%A7%8B
微处理器的指令集架构(Instruction Set Architecture)常见的有三种:
复杂指令集运算(Complex Instruction Set Computing,CISC)
精简指令集运算(Reduced Instruction Set Computing,RISC)
显式并行指令集运算(Explicitly Parallel Instruction Computing,EPIC)

RISC和CISC属于ISA,明白?


TOP

引用:
原帖由 马拉多纳 于 2009-9-27 09:17 发表

这是为什么?
很多服务器用的CPU的特性游戏机用不上,所以可以省去节省成本,而且还可以为游戏机加入专门定制的功能
比如PS1的CPU就是在MIPS R3000的基础上加了个处理图形的部分,所以当年PS1的3D性能在当时算是很强的

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 09:23 发表
为什么苹果会倒戈投入到intel旗下???
这个不是因为POWER PC的性能,而是当时POWER PC的功耗实在太高了,INTEL CORE2又凉又快
其实现在CPU现在多核的趋势当初也主要是因为解决功耗的原因造成的

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 11:46 发表
另外听说amd现在在搞多核一线程。
这个我不是太乐观。。。。。
多核的优化是个大问题,多核上跑一线程我觉得不是那么容易的

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 11:46 发表
另外听说amd现在在搞多核一线程。
搞成功了,是不是对游戏机有很大用处?
多核把多个线程分开跑好了都很不容易了,现在的研究焦点也在这里
游戏的程序不可能是一个线程的,如果能充分协调好各个线程到不同的核上跑我觉得都挺不容易了,所以我觉得这个对游戏机没啥用处

TOP

引用:
原帖由 村上春樹 于 2009-9-27 01:30 发表


ff神的見證是要告誡大家,在這個知識爆炸的時代,光靠著片面理解是不能成氣候的。

反過來說,這年頭網路資訊管道四通八達,想裝大師要被踢爆的危機也是大幅上升。

Patterson這位史丹佛大學校長,寫了兩本C ...
那两本书真是经典啊,反复的看了又看
我开始还想叫FF大神看软硬件接口去补补基础了
后来想他这种人怎么可能去看

TOP

引用:
原帖由 jackieronan 于 2009-9-27 11:58 发表
cell不是也八核心么????????
CELL那叫异构多核,就是中间的PPU和7个SPU的结构是不同的
CORE2等是同构多核,就是每个核都一样
INTEL现在也开始搞异构了

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 11:46 发表
另外听说amd现在在搞多核一线程。
搞成功了,是不是对游戏机有很大用处?
另外在回答你首页的一个问题
单从浮点运算性能来看,PS2的EE是比XBOX的P3要强的
问题是在显卡上,PS2的GS还是DX6时代的东西,而XBOX是DX8的了,NV给XBOX定制的GPU浮点运算就比PS2强多了
很多3D处理比如T&L在XBOX是用GPU跑的,而在PS2上只能用CPU来跑,所以造成了XB的性能比PS2的要强

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 12:03 发表
那种更好?
没有那种更好的定论,要看你的应用
同构的问题是因为软件编程的原因,核增加的很多后,核之间协调很困难,带来的性能增长会越来越低
比如从单到双,可以增加80%,但是16核再往上,性能增加就微乎其微了
异构的那些非标准的核就是为了特定应用设计的,相当于做专用的处理比较快,你可以把异构多核看做是CPU+GPU放到一个DIE上(虽然这么比喻不太好,不过容易理解)

TOP

引用:
原帖由 ffcactus 于 2009-9-27 12:08 发表

原来异构多核就不是核, 好吧, CELL是一核的, 你的概念又完胜了。
我说了异构多核不是核?我真惊叹你的理解力
你继续行为艺术吧,不送

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 12:13 发表

p3应该在Ai计算方面比ee要强很多吧?
这个从数值上就不清楚了,反正XB上CPU的负担比PS2小多了,所以算AI应该比PS2要强,毕竟PS2的CPU既要算AI,还要参与3D运算的一大部分,累都类死了

TOP

引用:
原帖由 ffcactus 于 2009-9-27 12:06 发表

什么是CPU指令、什么是CPU内部结构,这些概念你都分不清,还要别人去补基础,真是半桶水荡得比谁都高。
我就算只有半桶水,也比某些连ISA都不知道的人要高很多的

TOP

引用:
原帖由 马拉多纳 于 2009-9-27 12:26 发表

ngc与wii的显卡是不是只是d7显卡?
ngc的确是算是在DX7和DX8之间,WII的不清楚,没研究过

TOP

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