看过多篇关于发展我国CPU的专家文章后,我再三考虑之后决定写这篇文章发表一点(我也思考多年的CPU方案)谬论——软硬结合的CPU思路。
CPU发展到现在已经是即将从32位转向64位的关键时期,我们豪杰公司是纯正的软件公司,一直从事与CPU十分有关的软件优化的开发,所以对CPU的理解也是从软件的出发点为出发点来看待国产CPU的问题。CPU有两个重点:(1)性能问题。(2)兼容性问题。这两个问题是互相关联的,兼容性问题往往会增加CPU的复杂度,从而下降CPU的性能。有没有两全其美的方法呢?
本人的看法是:有。那就是“软硬结合的CPU”,这种CPU被一分为二。一部分为真实硬件CPU,另一部分是软CPU技术。硬CPU部分专攻高性能、高速度的问题,软CPU部分专攻体系的兼容性的复杂的问题。
一个有市场潜力的CPU是有高性能的计算能力,也有对“X86兼容”性的“包袱”问题,不过这个“包袱”是一个巨大的“钱包”,为什么不背呢?我认为专用的CPU不会长久的,越有“包袱”越有市场,越能长久,这一点没有必要进行证明了。
过去CPU有RISC和CISC之争,争论的焦点在“指令集”上,而真正的赢家是高性的、兼容的X86系列。目前Intel已经把技术的重点放于IA—64之上,在64位的计算上市场的竞争也是才开始,众多的CPU厂商还在逐鹿之中,还未知胜于谁手。在这一点上我国是有机会的,32位、16位或8位巳成残羹剩饭。64位的体系结构及指令集都会是全新的,没有多少市场的惯性,这是重要的机会。另外,在64位中可以直接使用最新的技术成果,如VLIW、动态执行、铜芯技术、纳米技术等等最新技术,在这些方面也容易产生自己的新专利,32位的CPU上巳没有什么可以挖的地方了,在32位以下的CPU上投下赌注是注定要失败的,而在64位上投下力量却有巨大的机会获胜。
如何兼容?
在IA—64中是用嵌入IA—64中的“微软件”来解决对X86的兼容问题的。在国外使用“软件技术”的CPU还不止Intel一家,有一家叫“Transmedia”的公司也在用这种技术来做兼容X86的CPU,而且是低功耗的。
如果在64位的计算上能做到2G以上的计算速度,用高性能的“软件技术”就可以达到1.5G以上的兼容的64位体系,用在兼容X86之上可以有3G以上的计算性能。
软件技术如何能达到这样的性能呢?
软件技术与CPU技术一样,在CPU的技术方向已经从第一代的单指令的边续处理到第二代的流水线技术,再到第三代的并行流水线技术,又到动态执行的多流水线技术。今天的CPU内部更象是一个庞大的软件系统。实际上当今的CPU设计几乎就是软件的设计过程。
软件CPU技术在目前还处在第一代单指令连续处理的阶段,即一条一条地处理指令,这是低效率、低性能的,所以第一代的软件CPU也仅仅称为“虚拟机”而巳,如Java虚拟,PC虚拟机等等;效率为真实机器性能的1%以下,这样的技术不可能用于CPU之上。
软件CPU技术的最新方法就是与第四代CPU技术差不多的“动态执行”技术,它可以取得与硬件CPU性能的80%左右,好的算法可以达到90%以上,这样的“软件CPU”技术用高速的硬件CPU上就会带来巨大的变化。
变化之一:
CPU的硬件不必为软件的兼容总问题而花费心机,也不必太在意CPU的具体应用的软件环境问题,专心提高性能,降低功耗即可。
变化之二:
CPU的硬件不必再设计复杂的指令体系,而把精力集中在高速的硬指令之上,进一步减小电路元件的单元,有利于大幅提高CPU的工作频率和降低功耗。
变化之三:
直接使用最先进的CPU特殊技术,如铜芯技术、纳米技术,使CPU有很高的工作能力,在设计和制造上可以大幅创造专利,而不必太费精力于过去的专利问题。
变化之四:
CPU的具体实现时不再需要考虑到软件体系的问题,从而可以不断地依“代”的需要而改变设计,甚至改变基本的硬指令方式,有利于快速升级换代。
变化之五:
CPU上不再有巨大的技术壁垒,有利于竞争、多种物理体系并存,在中国才会有机会产生可以与Intel相比的技术巨子。
等等;总之把CPU一分为二之后许多过去的难题将会迎刃而解。
软硬结合的CPU体系:
可以如图,在硬件CPU之上执行着“软件CPU”系统,“软件CPU”可以运行在主机内存或专用的Cache之中,在主机内存中的程序及数据都会被“软CPU”来处理,即“硬CPU”的指令执行不会超出“软CPU”的空间,这也十分有利于物理的设计,即“硬CPU”的Cache的方法不必与目前的X86那样来进行,它甚至可以由“软CPU”来处理,这样就减少了Cache的设计专利的涉及问题,同时又会产生许多新的专利。
border=1>
“软CPU”除了可以做到与X86兼容外,也可以兼容其他的指令集,甚至扩充成专门定义新指令集也不困难。
“软CPU”是由软件来设计的,它被对象化之后,就可以同时处理“多个软CPU”的功能,即有如现在最新的奔腾4多线程CPU技术一样,一个CPU在软件的应用上看上去象两个CPU在运行。这些技术用物理电路来做是太难了,所以“软件CPU”的优势就体现出来了。国际上的最新CPU技术就可以轻易地达到,这是软件的优势。
另一方面“硬CPU”部分只专心于CPU的速度及性能、功耗等等物理问题,阻碍我国CPU发展的指令集及专利将大为减少,我国的许多专用的特殊的技术也会应用起来。
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 谷歌眼镜拆解详细图
最新文章
Intel 12代酷睿低功耗AMD RX 6500显卡价格多
Intel ARC A380性能规格曝光 显卡ARC A380最小米12发布会在哪看 小米12新品发布会直播地小米9 Pro 5G手机价格 小米9 Pro 5G手机什么iPhone 11发布会直播地址 iPhone 11发布会中
人气排行 SSHD固态混合硬盘详细介绍三星Galaxy Alpha S7拆解图文教程 三星Gala软超频卷土重来——ClockGen全攻略cpu天梯图2013最新(7月)桌面超频人人都行 升技AI7主板之终极测试小米路由器3怎么样 小米路由器3配置评测小米笔记本Air玩游戏怎么样 小米笔记本Air玩一起来看世界上最昂贵的电脑机箱吧
查看所有0条评论>>