基于这个原理,各家宗师就提出了精简指令集电脑(risc)的概念
……公告:网文联赛本赛季海选阶段最后三周!未参加的小伙伴抓紧了!重磅奖金、成神机会等你来拿!点此参与……》
二十九
鱼冒泡:罪过,昨天喝了一天的酒!
risc宗师奉行简单就是美,,所有一干功能相似、特性重复的指令一概不要,而且所有长短不一的指令全部删除,指令定长,按使用率高低划分cpu处理优先级。
如果说risc但指令是正规军,精悍而有效率,那么cisc的指令就只能算是山寨了。
cisc的指令不分重要与否,一概取相同的cpu使用权限,也就是说cpu无论什么时候接受到请求,都得听下来处理,大大降低了效率。
等长的risc指令大大降低了硬件的复杂度,而且可以实现一项非常重要的技术——流水线。
普通的计算机处理数据的时候,就像工厂只有一个工人,来一个任务做一个任务,直到这件事完成,否则就得等待,浪费大量的cpu时间。
流水线技术则是将一件事情分为至少两个以上的步骤,risc一般则分为4到5个,如取指令、执行、输出等等,流水线是现代risc核心的一个重要设计,它极大地提高了性能。
对于一条具体的指令执行过程,通常可以分为五个部分:取指令,指令译码,取操作数,运算(alu),写结果。其中前三步一般由指令控制器完成,后两步则由运算器完成。
按照传统的方式,所有指令顺序执行,那么先是指令控制器工作,完成第一条指令的前三步,然后运算器工作,完成后两步,在指令控制器工作,完成第二条指令的前三步,在是运算器,完成第二条指令的后两部……很明显,当指令控制器工作时运算器基本上在休息,而当运算器在工作时指令控制器却在休息,造成了相当大的资源浪费。
解决方法很容易想到,当指令控制器完成了第一条指令的前三步后,直接开始第二条指令的操作,运算单元也是。这样就形成了流水线系统,这是一条2级流水线。
这样cpu永远处于繁忙的状态,这就是流水线的原理,虽然执行一条指令的时间没有减少,但是输出结果的时间减少了很多,理论速度是不用流水线的2倍。
只要流水线不断,cpu就可以不停的输出结果。
计算所制造的757样机就是基于这个原理设计的,它排除了通常的两级微码控制方式,取而代之的是在硬件中直接执行一组精选的简单指令和优化的编译程序。这种特殊的编译程序通过对程序详细执行步骤进行重新安排,以便更有救地利用cpu资源来提高程序的运行速度,因为它放弃了对复杂指令系统执行微码的方式,这就有利于用硬连线控制系统来执行为数不多的简单指令。
虽然依然没有使用精简指令,但是流水的思想已经体现,貌似已经有了现代计算机的雏形。
曹长久一直试图影响王所,让他接受risc的思想,可惜王所总是用许多现实的问题难倒长久,让他哑口无言。
明明事先想好的先进的思想、充分地理由,却每每被王所轻易的驳倒,长久别提多郁闷了,索性不再参加757的硬件设计工作,只作编译器,落得个清闲,可以做自己的事情。
如果说cisc技术的复杂性在于硬件,在于处理单元控制器部分的设计与实现。risc技术的复杂性就在于软件,在于编译程序的编写与优化。
曹长久的编译程序就有效的弥补了757样机的缺点,将笨拙的程序组成了流水线能够识别的指令流,使得757样机从普通千万次每秒的计算速度稳定在了两千五百万次每秒。而且限于机器的速度极限,无法再提高,只能寄希望于757完全体了。
由此曹长久有了一个较长的无任务时间,大概也就是三个月这样子,长久完成了自己梦想中的cpu大部分的逻辑设计工作。
而且由于样机的试制成功,长久以它为平台,写了一个模拟器,模拟自己设计的cpu实际运行状态,以此进行排错、改进。
结果是令人开心的,等到整个cpu的逻辑结构通过排错、纠正之后,已经可以达到每秒千万次的理论运行速度了。
当然,只是理论上而已,如果制成芯片成品,无法达到这种状态。况且长久设计的只是一个8位实验型cpu,在华夏现有的芯片制造工艺下,成品能达到每秒百万次就了不得了,要知道英特尔最新的16位cpu8086也不过才达到80万次每秒。
至于为什么曹长久对自己的cpu这么有信心是有原因的,制造工艺达不到要求只能是在系统架构上做文章了。
很不巧,曹长久所知道的系统架构可是很成熟的,在梦中的年代,长久做的最多的就是arm处理器。
提起英特尔、amd可能大家都很熟悉,因为我们接触的很多,桌面市场的霸主嘛。但是要知道x86系列在世界上整个处理器的市场上更不算不上最大。
世界上出货量最多的处理器还是arm,几乎与电脑有关的设备,无处不存在arm的身影。比如你用的手机,比如你用的路由器,比如你用的所有用电脑控制的电器,数量至少是英特尔的十几倍。
arm处理器最大的有点就是便宜,但是性能……怎么说呢,如果我们电脑用的是arm处理器的话,程序运行只会比英特尔快,而且便宜。
这个没有办法,是系统架构决定的,arm处理器几乎是最早的risc处理器了,其最初的32位核心只有三万个晶体管。
读者可能不知道,要实现32位的微处理器需要多少晶体管,比较一下就知道了,七、八十年代最拉风的32位cisc微处理器是摩托罗拉的68000,用了当时最先进的技术集成了六万八千个晶体管,由此可见先进的架构能取得多大的优势。
第一代的arm处理器只用了近三万个晶体管,芯片面积很小,但是其效能却比英特尔的286更强劲,而且由于使用的晶体管减少,其消耗的电能也很少,可以说是物美价廉。
只是可惜risc但概念提出的太晚了,又或者ibm发布个人电脑太早了,总之现在的个人电脑市场被cisc所霸占,人们为了大量的应用软件而不得不使用垃圾的x86架构的cisc处理器。
曹长久现在就是这个想法,使用更先进的架构设计制作处理器,至少可以在华夏现有的工艺条件下能够达到与国外微处理器相比更高的性能,翻转这片天空。
可是这又谈何容易,技术并不是一切,没有出货量的保证,如何能够成为主流,不能成为主流,谈什么翻天覆地。
曹长久可不管这些,来自于梦中那近乎于偏执的信念支持他无原则的反对x86,在这个空白的时代书写自己的画卷。
虽然逻辑设计近乎完美,可是曹长久毕竟是一个软件工程师,他不熟悉布图工作,这么大规模的布图工作量,要让他一个人完成,只能是一个悲剧,所以他有打起了主意。
……公告:网文联赛本赛季海选阶段最后三周!未参加的小伙伴抓紧了!重磅奖金、成神机会等你来拿!点此参与……》
三十
于冒泡:前面写的有点不满意,出不了采,全是枯燥的解释。下午还有。
~~~~~~~~
最近有点奇怪,按理说757样机的试制成功就可以进入计划的下一步了,可是新出现的问题却困扰着研制组的所有人。
样机自从成功运行过了整个测试之后就不太稳定,呈间歇发疯状,没事的时候运行平稳,可是总会在某个时刻随机性的出现错误数据,严重时还导致死机。
王所他们几乎将整个机器拆开了重新组装都没有用,怪就怪在这种错误是随机性的,可能一个星期没动静,发作了就一天没法工作,伤透了脑筋。
硬件排查已经接近尾声,组员们几乎是重新制作了一部新机器,这种状况依然出现。
很自然的,人们的目光就聚焦到了软件上,毕竟这种编译器是曹长久一人搞得,目前还属于国际领先状态,其他人还不太明白。
王所也怀疑,询问曹长久的意见。
长久耸耸肩:“这我哪知道,源代码都在这里,你们也都签了字同意的,您老是专家,你看这东西能有问题吗?所有测试都是运行同一个程序,不可能今天运行一遍没问题,第二天再运行就接二连三的出错。说软件编译有问题,恕我直言,这是不负责任的说法。”
王所也不是不明白这个道理,只是关心则乱,任谁遇到这种没头脑的事情也抓瞎。没办法,只好继续排查,死马当活马医吧。
曹长久也觉得奇怪,这种随机性出错的感觉好熟悉啊,当年梦中的pc机老化之后就会出现这种情况,一般是由于cpu或内存等集成电路老化失效不稳定造成的。
但是大型机会是这个原因吗?曹长久对这个不太懂,没不准情况,只是向王所说了自己的想法。
王所想了想,摇摇头:“如果是处理单元和内存的问题,为什么我们都重新组装了一部机器,问题依然存在?况且我们所用的集成电路,都是上海方面特供的,不敢说千里挑一,也是测试极其严格的军用品,每个元件都是单独包装编过号的,它们出问题的可能性几乎为零。”
“那能是哪出问题啊,时好时坏的,难不成这也跟女人似的一个月来一回?”长久笑道。
“粗俗!小小年纪怎么这样,去干活去。”王所没好气的斥责道。
长久吐吐舌头,临走还不忘说一句:“您老还是检查检查集成电路吧,我们国家制造工艺不过关,什么情况都有可能发生,我再去看看编译程序有什么问题。”
事情就这样拖了下来,直到曹长久都将cpu的逻辑设计完成了,这个问题都没有解
小提示:按 回车 [Enter] 键 返回书目,按 ← 键 返回上一页, 按 → 键 进入下一页。
赞一下
添加书签加入书架