现在芯片的提升都依靠前端解解码单元和后端执行单元的升级,当然这些升级也是十分考验设计的(困难) 一 比如龙芯la464到la664,解码单元从4发射到6发射,rob从128到256,芯片性能在同频情况下,单核性能整数强了46%,浮点性能强的64%,可以说是十分强大。 二 苹果m2到m3再到m4,前端解码单元从8到9再到10,rob也逐步增加,后端执行单元规模也逐渐增大,每一代同频性能提在5%~10%,规模的增加也意味着功耗的增加,这就十分考验设计能力了和优化能力了,M3(4.01G)到m4(4.47G)单咳如果都跑满频的情况下,整数性能提升20%,但功耗增加了60%。 三 arm阵营,x3到x4解码宽度从6发射(x3的这个六发射好像是一种变相的八发射。)提升到10发射,rob从320提升到384,在频率相差0.1g的情况下,整数性能提升了18%,但功耗却提升了39%。 四 华为的泰山大核从9000s到9010,前端解码单元从六发射到八发射,Rob增加多少不晓得,但后端执行单元确实增加了,单核整数性能提升了25%,浮点则提升了20%,可以说是很牛逼了。但是由于后端执行单元的增加,功耗也可以说是不可避免的提升。 五 英特尔的新核心,lunar lake和14代酷睿相比前端解码单元从六发射提升到八发射(龙芯的IPC跟14代差不多,龙芯的新芯片也是从la664到la864,但龙芯没有英特尔这么大的rob,如果下一代rob也翻倍,我都不敢想象提升会有多大),而rob则是由512增加到了576,据说ipc提升了14%。(不知道可信度有多少)
.每一款芯片性能的提升也不只是依靠前端解码宽度和rob数量的增加,(比如说指令分配和重命名单元,执行端口,alu,L1l2l3缓存的增加,和内存频率的增加),这些东西的增加对于一个自主架构自主指令也算是比较困难的,这些东西的提成就意味着需要更多的晶体管,更复杂的设计,更合理的分配,更好的优化,才能更好的发挥出芯片的性能。 就更不用说那些非自主的芯片了,那些芯片只能更改外围设计,终究是动不了内部核心部位,这就导致芯片性能的提升十分有限。 . 对比上面的例子,不难发现在前端发射宽度一样的时,后端的宽度和一些单元同样影响的芯片的ipc,有的设计有较多的影响,也有的影响不大。华为的泰山大核在同样是八发射的情况下ipc介于x2到x3之间,像苹果这种10发射和600到700的rob的芯片架构简直一骑绝尘。 .胡老师曾经也说过提升ipc的方法。更深更宽(还有一个是我忘了)也就是更宽的发射更深的rob,看苹果,英特尔,arm,华为都是同时提升
.每一款芯片性能的提升也不只是依靠前端解码宽度和rob数量的增加,(比如说指令分配和重命名单元,执行端口,alu,L1l2l3缓存的增加,和内存频率的增加),这些东西的增加对于一个自主架构自主指令也算是比较困难的,这些东西的提成就意味着需要更多的晶体管,更复杂的设计,更合理的分配,更好的优化,才能更好的发挥出芯片的性能。 就更不用说那些非自主的芯片了,那些芯片只能更改外围设计,终究是动不了内部核心部位,这就导致芯片性能的提升十分有限。 . 对比上面的例子,不难发现在前端发射宽度一样的时,后端的宽度和一些单元同样影响的芯片的ipc,有的设计有较多的影响,也有的影响不大。华为的泰山大核在同样是八发射的情况下ipc介于x2到x3之间,像苹果这种10发射和600到700的rob的芯片架构简直一骑绝尘。 .胡老师曾经也说过提升ipc的方法。更深更宽(还有一个是我忘了)也就是更宽的发射更深的rob,看苹果,英特尔,arm,华为都是同时提升


熊
