真是怎样,他们一时想不出,但他们隐约觉得,在当前复杂架构和精简指令激烈冲突的时候,这种混合架构或许确实才是最佳解决办法。这种解决方法看似是在和稀泥,但实际仔细分析下来,才可以看出,它确实做到了采两家之长的设计意图,将处理器硬件性能发挥到了极致!
复杂架构和精简指令争执的核心,在于指令长短。
早期核心指令功能不复杂,所以指令本身也很简短精炼,就例如一个加法指令,再长也有限。但随着半导体发展,各领域又热衷于开发自己的专用指令,将一个个原本精炼的指令组合起来,形成了一个庞大的复杂函数体系。
复杂指令,为它设计的名称代号同样简单,但这只是为了编写程序的人方便识别,其本身运算内容却极其浩大繁杂。
现行的处理器,都是处理完一条指令,才能处理第二条,后面待处理指令只能排队等待。如果每一条指令都超长,那后面等待的时间就会很久。等久点也没关系,关键是每条指令调用的电路并不一致,有些运算同时调用不同功能电路,这很好,不占用时间。但有些复杂指令反复调用某一热点电路,热点电路超负荷运转,其他电路却空自等待,不能做其他事情,白白浪费了处理器硬件架构。
打个比方。
全校集合,一个班级的同学从大门出去,如果班上的人越多,出门所花的时间自然也就越多。如果在出门时大家还打打闹闹,有几个人争抢着要先出去,这几个争抢的人长时间堵在门口,后面的人想走也走不了,全班赶到操场集合的时间便会拖延更久。
复杂指令效率低,就低在这里。
在郭逸铭的协调下,大家采用了双处理器,并行运算的设计思路。
核心处理器采用精简指令方式运算,那些调用效率最高的电路集成在这块芯片上,基本满足了80%的运算要求。核心处理器处理的数据指令短、无堵塞,效率自然就高,速度也就更快。而另一块协处理器却集成了另外17%,调用率较低的电路,如果恰逢用户这方面的需求,也可借用协处理器辅助运算。
协处理器的运算,不影响核心处理器,双方各算各的。如果恰好同时运用到两个部分,两部分处理器各自运算完毕,经由并行处理电路综合汇总,得出最后结论,速度也快于单纯的复杂架构处理器。
最后3%的功能电路,则被做成了程序形式,保存在磁盘中。
程序按照处理器运算效率,将这些复杂的运算转换为一个个长长短短的指令,分别交由主处理和协处理器同时运算,集中得出结果。这类特殊指令需求量稀少,大多数用户都用不上,有没有对他们而言无足轻重。对于那些有需求的用户,少了这些指令也不会特别难受,实在要用,程序软件处理虽然稍慢一点,但本身调用次数也不是很多,基本可以忍耐。
处理器设计的重心,就在于并行处理。
彭之旭等人对微处理器有些陌生,但对并行计算那是太熟悉不过了。国内的大型计算机、超计算机,哪个不是并行计算。
并行计算,说穿了就是将计算机宝贵的硬件资源充分利用起来,将一个复杂的科学计算分成一个个小片断,经由计算机不同电路,同时进行运算,最终汇总得到结果的处理方式。
国内的计算机很少,为了让这些珍贵的计算机发挥出最大效率,基本上所有的计算机都采用了并行式设计,以满足各科研单位的最大需要。
正是因为这个思路是如此巧妙,却又如此简单,算是满足了两方的意见,而并行处理恰好是彭之旭等国内工程师们的长项。所以当郭逸铭提出这个解决办法,众人当即一拍而合,迅速接受了这个框架,以此来设计公司的第一款微处理器。
郭逸铭的构思并不出奇,他只是利用现成的技术,将运用于大型计算机的并行处理技术,移植到微处理芯片上,以发挥硬件更高处理效率而已。但这个思路,却给如何处理复杂指令与精简指令之间的冲突,提供了一个巧妙的解决办法,将两者水火不相容的对抗,各采所长,融为一体。
在提供技术支持的DEC工程师看来,这可能就是东方式思维的结果。
西方思考问题非此即彼,复杂架构和精简指令吵了这么久,大家都没想过,是否可以将两者的长处结合起来,走第三条路。
也只有中国人,才想到将两者融为一体。
但DEC方面对这个思路并不看好,奥尔森在得知了西部计算机公司的设计思路后,对此大加嘲讽,认为这等于抛弃了两者的优势,属于一种极其愚蠢的设计,必然不会被市场所接受。由此,他也放下了对西部计算机公司试图插足个人计算机领域的担心,放心大胆搞他那三款个人计算机研发,对郭逸铭他们不再关注。
郭逸铭对奥尔森、DEC方面的看法不为所动。
这种思路并不是他凭空想象出来的,而是后世发展的必然,他只是将这个过程提前了而已。
英特尔公司研发的X86架构处理器,是一种复杂指令处理器。它的性能其实并不是最好的,但能在后来大行其道,几乎统一个人计算机市场,除了有抱上了IBM这根粗大腿的原因,其芯片集成的指令,基本满足了市场各层级客户需求,也有很大关系。
在这个时代,半导体已经开始爆炸式发展,但还没达到量变产生质变的效果。
芯片集成度还有限,价格还很高。如果不用复杂指令的通用芯片,采用精简指令芯片,运算交换数据时所需的大容量高速存储器,也就是半导体存储器,是绝大多数小型公司、普通个人所无法承受的。
也因如此,甚啸尘上的精简指令在八十年代,和英特尔等坚持复杂指令架构的计算机公司争锋一场后,最终还是被淘汰,不得不黯然退出廉价个人计算机市场,转战服务器这个高端客户群体。
英特尔公司虽然最终战胜了对手,却也不是傻子,他们之所以要对精简指令处理器赶尽杀绝,无非还是为了争夺市场份额。他们对于精简指令的优点同样看在眼里,并组织了技术力量持续不懈地予以研究。