鱼冒泡:罪过,昨天喝了一天的酒!
RISC宗师奉行简单就是美,,所有一⼲功能相似、特<img src="in/xing.jpg">重复的指令一概不要,而且所有长短不一的指令全部删除,指令定长,按使用率⾼低划分CPU处理优先级。
如果说RISC但指令是正规军,精悍而有效率,那么CISC的指令就只能算是山寨了。
Cisc的指令不分重要与否,一概取相同的CPU使用权限,也就是说cpu无论什么时候接受到请求,都得听下来处理,大大降低了效率。
等长的RISC指令大大降低了硬件的复杂度,而且可以实现一项非常重要的技术…流⽔线。
普通的计算机处理数据的时候,就像工厂只有一个工人,来一个任务做一个任务,直到这件事完成,否则就得等待,浪费大量的cpu时间。
流⽔线技术则是将一件事情分为至少两个以上的步骤,RISC一般则分为4到5个,如取指令、执行、输出等等,流⽔线是现代RISC核心的一个重要设计,它极大地提⾼了<img src="in/xing.jpg">能。
对于一条具体的指令执行过程,通常可以分为五个部分:取指令,指令译码,取<img src="in/cao.jpg">作数,运算(ALU),写结果。其中前三步一般由指令控制器完成,后两步则由运算器完成。
按照传统的方式,所有指令顺序执行,那么先是指令控制器工作,完成第一条指令的前三步,然后运算器工作,完成后两步,在指令控制器工作,完成第二条指令的前三步,在是运算器,完成第二条指令的后两部…很明显,当指令控制器工作时运算器基本上在休息,而当运算器在工作时指令控制器却在休息,造成了相当大的资源浪费。
解决方法很容易想到,当指令控制器完成了第一条指令的前三步后,直接开始第二条指令的<img src="in/cao.jpg">作,运算单元也是。这样就形成了流⽔线系统,这是一条2级流⽔线。
这样cpu永远处于繁忙的状态,这就是流⽔线的原理,虽然执行一条指令的时间没有减少,但是输出结果的时间减少了很多,理论速度是不用流⽔线的2倍。
只要流⽔线不断,cpu就可以不停的输出结果。
计算所制造的757样机就是基于这个原理设计的,它排除了通常的两级微码控制方式,取而代之的是在硬件中直接执行一组精选的简单指令和优化的编译程序.这种特殊的编译程序通过对程序详细执行步骤进行重新安排,以便更有救地利用CPU资源来提⾼程序的运行速度,因为它放弃了对复杂指令系统执行微码的方式,这就有利于用硬连线控制系统来执行为数不多的简单指令。
虽然依然没有使用精简指令,但是流⽔的思想已经体现,貌似已经有了现代计算机的雏形。
曹长久一直试图影响王所,让他接受Risc的思想,可惜王所总是用许多现实的问题难倒长久,让他哑口无言。
明明事先想好的先进的思想、充分地理由,却每每被王所轻易的驳倒,长久别提多郁闷了,索<img src="in/xing.jpg">不再参加757的硬件设计工作,只作编译器,落得个清闲,可以做自己的事情。
如果说CISC技术的复杂<img src="in/xing.jpg">在于硬件,在于处理单元控制器部分的设计与实现。RISC技术的复杂<img src="in/xing.jpg">就在于软件,在于编译程序的编写与优化。
曹长久的编译程序就有效的弥补了757样机的缺点,将笨拙的程序组成了流⽔线能够识别的指令流,使得757样机从普通千万次每秒的计算速度稳定在了两千五百万次每秒。而且限于机器的速度极限,无法再提⾼,只能寄希望于757完全体了。
由此曹长久有了一个较长的无任务时间,大概也就是三个月这样子,长久完成了自己梦想中的cpu大部分的逻辑设计工作。
而且由于样机的试制成功,长久以它为平台,写了一个模拟器,模拟自己设计的cpu实际运行状态,以此进行排错、改进。
结果是令人开心的,等到整个cpu的逻辑结构通过排错、纠正之后,已经可以达到每秒千万次的理论运行速度了。
当然,只是理论上而已,如果制成<img src="in/rui.jpg">片成品,无法达到这种状态。况且长久设计的只是一个8位实验型cpu,在华夏现有的<img src="in/rui.jpg">片制造工艺下,成品能达到每秒百万次就了不得了,要知道英特尔最新的16位cpu8086也不过才达到80万次每秒。
至于为什么曹长久对自己的cpu这么有信心是有原因的,制造工艺达不到要求只能是在系统架构上做文章了。
很不巧,曹长久所知道的系统架构可是很成<img src="in/shu.jpg">的,在梦中的年代,长久做的最多的就是ARM处理器。
提起英特尔、AMD可能大家都很<img src="in/shu.jpg">悉,因为我们接触的很多,桌面市场的霸主嘛。但是要知道X86系列在世界上整个处理器的市场上更不算不上最大。
世界上出货量最多的处理器还是ARM,几乎与电脑有关的设备,无处不存在ARM的⾝影。比如你用的机手,比如你用的路由器,比如你用的所有用电脑控制的电器,数量至少是英特尔的十几倍。
ARM处理器最大的有点就是便宜,但是<img src="in/xing.jpg">能…怎么说呢,如果我们电脑用的是ARM处理器的话,程序运行只会比英特尔快,而且便宜。
这个没有办法,是系统架构决定的,ARM处理器几乎是最早的RISC处理器了,其最初的32位核心只有三万个晶体管。
读者可能不知道,要实现32位的微处理器需要多少晶体管,比较一下就知道了,七、八十年代最拉风的32位cisc微处理器是摩托罗拉的68000,用了当时最先进的技术集成了六万八千个晶体管,由此可见先进的架构能取得多大的优势。
第一代的ARM处理器只用了近三万个晶体管,<img src="in/rui.jpg">片面积很小,但是其效能却比英特尔的286更強劲,而且由于使用的晶体管减少,其消耗的电能也很少,可以说是物美价廉。
只是可惜Risc但概念提出的太晚了,又或者IBM个人电脑太早了,总之现在的个人电脑市场被CISC所霸占,人们为了大量的应用软件而不得不使用垃圾的X86架构的cisc处理器。
曹长久现在就是这个想法,使用更先进的架构设计制作处理器,至少可以在华夏现有的工艺条件下能够达到与国外微处理器相比更⾼的<img src="in/xing.jpg">能,翻转这片天空。
可是这又谈何容易,技术并不是一切,没有出货量的保证,如何能够成为主流,不能成为主流,谈什么翻天覆地。
曹长久可不管这些,于梦中那近乎于偏执的信念支持他无原则的反对X86,在这个空⽩的时代书写自己的画卷。
虽然逻辑设计近乎完美,可是曹长久毕竟是一个软件工程师,他不<img src="in/shu.jpg">悉布图工作,这么大规模的布图工作量,要让他一个人完成,只能是一个悲剧,所以他有打起了主意。