了解了清楚了各款处理器的优点和缺点,李怡炫对于开发什么样的CPU心里有了个谱。
以70年代中后期的CPU发展现状和未来CPU的发展方向上来看,CISC首先被他排除了,CISC除了运行效率低下外,更关键的是市面有已经有好几种CISC处理器,除了INTEL的C8008外,还有Zilog公司Z80,摩托罗拉的6500,以及MOS的6502处理器,除此之外,还有众多的第三方授权厂商也在生产兼容性的CISC处理器。
加入CISC阵营的厂商已经很多了,李怡炫认为自己没有必要去凑这个热闹,就算你加入了,作为CISC的新丁,你的处理器也很难卖得过那些老牌的CISC厂商,因此要想在未来的CPU市场上有自己的一席之地,就只能开辟第二战场。
RISC就是李怡炫的机会,在ARM、MIPS、SPARC和AIPHA之间,李怡炫首先淘汰了SPARC,因为它的结构太过于复杂了,生产成本也高,特别是在未来会进入一个发展瓶颈,李怡炫自认就算拥有时空门这个作弊器,在未来的某一天也不能解决好性能和成本之间的矛盾,更何况SUN公司就是被SPARC给拖垮的,因此SPARC只能借鉴,不能把它作为发展的核心。
AIPHA是第二个被放弃的,虽然AIPHA也是RISC,但它主攻方向是桌面CPU,与李怡炫现在的市场主攻方向不符,就算日后他要进军个人桌面市场,也只能把AIPHA作为一个参考,不会照搬它的内核。
最后只剩下ARM和MIPS了,面对这两款处理器,李怡炫不知道选哪种好,两者各有各的优点,ARM胜在它的运行模式,特别是ARM提出的一种内核多种构架非常适合未来的CPU发展模式,但ARM只适合作为移动终端和一般应用程序机的CPU,虽然后来ARM又发展出了一种工控CPU,但它只能作为低端,与日德的高端工控不是一个档次。
MIPS的优势胜在结构简单,它比ARM更加省电,运行速度也更快、计算也更准确,但它上面充满了学院派风格,性能虽好,但很多时候与市场都格格不入。
最后李怡炫想来想去,决定还是采用MIPS,因为MIPS结构更加简单,它的耗电量比ARM更低,性能更可靠,运算速度也比ARM高很多,无论是作为未来的手机CPU,还是高性能的超级计算机CPU,甚至是工控和桌面CPU,MIPS显然比ARM更加有优势。
不过在用之前,李怡炫会先对MIPS做一番手术,以适应未来的CPU发展。
首先,MIPS的内存起始地址被修改了,原来的那套寻址方法会导致MIPS在内存和CACHE的支持方面都有限制,也就是MIPS的内核无法面对高容量内存配置,这作为超级计算机的CPU来说非常的不利,采用SPARC的内存地址起始,就能很好的解决超级计算机内存拓展问题。
第二,MIPS的并行线程也被修改了,这个并行线程与INTEL的超线程技术超不多,只适合运用在桌面CPU上,也就是所谓的PC机,对于移动终端和嵌入式以及高端服务器的CPU来说,物理多核反而更加适合,如果未来要发展桌面CPU,再把并行线程换回来就是。
对于运行指令发射这一块也做了修改,把原来的顺序单/双发射改为乱序双/三发射,指令集也做了很大的修改,流水线周期比原先提高了一倍。
同时,还大量借鉴了ARM的构架发展思路,也就是一种内核,多种构架的核心思想。
ARM公司在经典处理器ARM11以后的产品改用Cortex命名,并分成A、R和M三类,旨在为各种不同的市场提供服务。
Cortex-A系列属于应用型处理器,专门针对手机、平板电脑、数字电视和机顶盒到企业网络、打印机和低端服务器的CPU解决方案。
Cortex-R是实时处理器,要求可靠性、高可用性、容错功能、可维护性和实时响应的嵌入式系统提供高性能计算解决方案。比如说,ATM取款机、电子心电图仪就是这种类型。
Cortex-M系列针对成本和功耗敏感的MCU和终端应用。像智能测量、人机接口设备、汽车的ECU和工业控制系统、大型家用电器、消费性产品和大中型医疗器械的混合信号设备就属于Cortex-M应用范围。
这三种处理器的构架都不相同,但他们使用的切是同一种内核,就大大的增加了ARM的应用范围。
这个思路非常好,李怡炫决定照搬,按照ARM的设计思路,把MIPS分别对应成D、M、G三种构架,D、M、G三个字母合起来正好是德玛吉的英文商标。