龙芯CPU是否能与Intel、AMD以及ARM的产品齐头并进呢?

从2001年龙芯项目组成立,到2008年龙芯公司诞生,20多年来,龙芯cpu从未像今年这样扬眉吐气。最近刚发布的龙芯3a6000处理器总体性能与intel公司2020年上市的第10代酷睿四核处理器相当,形象地诠释了厚积薄发的含义。龙芯3a6000是4核8线程的规格,对标的是酷睿i3-10100,至于第10代酷睿那些核心更多的型号,龙芯也很快会推出后续产品去与它们对应。
在酷睿14代已经推出的当下,第10代酷睿i3已经不怎么起眼,不过我们不能只盯着差距而忽略龙芯的进取。以往的龙芯看似前路茫茫,现在的它已能拽住市场主流cpu的尾巴,那么未来有朝一日,龙芯cpu是否能与intel、amd以及arm的产品齐头并进呢?
龙芯cpu从零开始的追逐
从1971年到2001年,这30年间是集成电路和cpu技术高速发展的阶段,cpu的集成度和运算速度呈指数级增长,平均18个月翻一番,30年间cpu性能提高了百万倍。不过因为cpu性能越来越高,所以性能翻倍的时间间隔也越来越长。从2001年到2010年这10年,intel cpu的单核性能上涨了十多倍,但从2011年至2020年这10年,同级别intel cpu的单核性能只翻了一倍。
然而,intel在这20年之所以能保持着单核性能近乎线性增长,说明它其实是游刃有余的。果然,在amd给予intel“惊吓”之后,intel第12代酷睿的性能突飞猛进。虽然从第12代酷睿到酷睿14代,intel又恢复了以往的节奏,但谁也不知道它是否留有余力。
2001年国内的cpu设计技术已经与世界脱节20~30年,龙芯cpu在这一年才开始孕育,准备挑战已经成长了30年的x86 cpu产品。
由于科技水平的整体提升,龙芯不需要从intel 4004的水平做起,但第一款龙芯cpu——龙芯一号的性能极低,只与pentium(586)同级别,这些古老的cpu甚至运行不了spec_cpu_2006。龙芯一号的性能不到同年intel pentium4的1/20,假如用spec_cpu_2006对它进行测试,按比例算成绩就只有0.2分左右。因此,纵然开始几年龙芯cpu性能每年都翻倍,但增长的绝对性能却不到intel的零头。测试成绩从0.2翻倍到0.4,再翻倍到0.8……还要再翻两次才能抵消intel每年上涨的两三分。如此推断,在接下来的十来年里,龙芯与intel的绝对性能差距会越来越远,这令最有信心的人也逐渐迷茫。
2006年之后,因为某些原因,所有与“芯”有关的项目都备受质疑,在各种压力下,龙芯项目组开始急于求成。单核性能不足那就做多核,提升通用处理性能太难那就去提升专用性能,于是接连诞生几款看似强大的产品:4核的龙芯3a1000、浮点运算速度达到192gflops的8核龙芯3b1500。龙芯3b1500的浮点性能甚至超过了inte酷睿i7-980e,可是绝大多数应用软件需要的是单核通用处理性能,再强大的浮点性能也无法让各种软件都流畅运行。从2006年到2015年的10年间,龙芯cpu的单核通用处理性能提升缓慢,哪怕是特定行业的客户也视如敝屣,龙芯的发展境况雪上加霜。
2011年龙芯重整旗鼓,确立了桌面cpu的研究重心——提高cpu单核通用性能,并决定在每ghz的性能达到主流水平之前,最多只做4核cpu,放弃当时的众核路线。因为资金不足,龙芯开始“减员增效”,又分散了大量的精力设计能赚钱的嵌入式cpu,以维持桌面cpu的研发,新核心的研发进度被拖慢。龙芯3a2000仿真测试完成后还要等着筹集流片的钱,直到2015年才正式降生。在间断等待期间,龙芯的研发者也没有闲着,比如同步多线程、二进制翻译、动态调压调频等都诞生于这个阶段,只是要经济状况好转、技术条件成熟之后才能把科研成果变成商用产品。
龙芯3a2000改用国内40nm工艺,主频从龙芯3b1500的1.5ghz降回1.0ghz。但因为每ghz的性能提高到了2.5倍,所以单核性能达到intel pentium 4的水平。4核的龙芯3a2000整体性能是pentium 4的3倍以上,应对普通的办公已经没有问题。
龙芯3a2000帮助龙芯实现了扭亏为盈,2017年发布的龙芯3a3000则是更换工艺提高频率的版本,龙芯已经启用了tick-tock的策略:一代升级工艺,一代升级核心。2019年发布的龙芯3a4000使用了新设计的核心,每ghz的性能接近amd的zen核心。龙芯3a4000成为龙芯与intel性能差距的转折点,它们的距离不再是越来越远。接下来,龙芯3a5000升级工艺,龙芯3a6000再次升级核心,通过提升单核心性能,低频打高频,一举把与intel的差距缩短到了3年。从龙芯cpu的进步趋势,我们看到了龙芯追赶intel产品性能的希望。
龙芯敢与群雄逐鹿的底气
如果只看cpu性能是否接近,前段时间有家公司找intel做的oem产品当然更加接近intel cpu的性能,但是它不可能用intel的产品去战胜intel。同样,依赖国外授权的架构和ip核也不可能战胜规则的制定者。
只要cpu中使用的标准、专利、关键技术等都由国外掌握,或者依附国外的软硬件生态,就随时可能失去竞争的资格。如果不想前进的路上突然出现深渊,就必须提升自主的层次。龙芯是极少数主动提升自主层次的国产cpu企业之一,少有cpu企业像龙芯这样不但自己设计指令集、建立自主软硬件生态,还力求所有ip核都自主设计。
龙芯二十多年时间累积了上百个ip核,覆盖了cpu功能的方方面面。这里我们列出了龙芯自主设计的重要ip核,不含已经淘汰的版本。其中用在龙芯3a6000中的全部ip核全都是自主设计。自主的loongarch指令集和自主设计的ip核,使龙芯设计cpu时完全不必依赖外部授权,有底气面对一切封锁和制裁。
很多人认为,因为龙芯不能安装windows,就注定会让用户望而却步。这只是一种弱者思维,任何强大的生态都有弱小的时候,并且龙芯loongarch指令集的软件生态已经越过了拐点,正在从“能用”向“好用”转变。对于linux桌面和服务器用户来说,使用龙芯电脑与其他电脑几乎没有区别,各种开发工具、开源软件、国产常用软件等都有龙芯版本,linux软件生态的成熟度已经与x86和arm是同等水平。
很多linux用户会用wine运行windows软件以弥补linux的不足,在基于龙芯loongarch架构的电脑上也同样可以这么做。尽管wine和windows软件都只支持x86架构,但龙芯凭借自己的二进制翻译技术能把它们一并翻译。龙芯的目标是基于龙芯的基础软硬件发展自己的应用,但作为过渡手段,还要通过二进制翻译技术兼容部分x86和arm的应用。龙芯还用二进制翻译彻底解决了困扰linux几十年的打印机兼容性问题,在龙芯电脑上可以直接使用windows版的打印机驱动,即使x86版的linux也没有这样的能力。龙芯这种一边发展自主软件生态,一边“收割”windows应用软件的策略,使龙芯电脑可用的软件迅速丰富,基本扫清了桌面和服务器的应用障碍。
而在嵌入式行业,龙芯的策略是把cpu架构及核心授权出去。龙芯是国内唯一向其他组织授权通用cpu指令集和ip核的公司。放眼当世,这样的企业不外乎intel、amd和arm,现在还加上龙芯。而依赖intel、amd和arm授权的cpu厂商,则不具有二次授权的资格,甚至不能对指令集和ip核自主升级。
loongarch指令集授权正在筹划,龙芯设计的cpu核心已经向10家公司和组织开放授权,其中雄立科技已经完成了产品化,成为第二家设计和销售loongarch架构cpu的企业。
优秀的cpu一定有优秀的核心
我们知道cpu是由很多功能模块组成的,大到cpu核心,小到温度传感器,各种功能模块都统称为ip核。大多数cpu企业都是购买cpu核心、内存控制器、pcie控制器等各种ip核再集成为cpu。国内只有龙芯因为积累了完备的ip库,可以不依赖外来ip核。
cpu核心是cpu最重要的组成部分,龙芯二十多年来大约设计了14款cpu核心。龙芯的cpu分为三个大系列,命名为1、2、3系列或小、中、大系列。龙芯cpu核心的型号也极其直白,比如la132的第一个数字“1”表示单发射,后来的“32”表示32位,la664就是6发射64位。
1号系列cpu核心用于低功耗嵌入式设备,其中la132的用途及每ghz的性能对标arm cortex-m4。龙芯的合作企业有用它做ssd主控的、做智能门锁的、做机器人玩具的,还有做跑步机的……
2号系列cpu核心面向的是中高端工控、网络设备、轻薄笔记本等。其中la264对标的是arm cortex-a55,la364对标arm cortex-a75(实际上la364每ghz的性能与cortex-a76更接近)。cortex-a76工艺下限是tsmc的16nm,推荐7nm,而la364仅要求28nm工艺即可,使用12nm工艺时就能达到与使用7nm工艺的a76相近的频率,更符合国内实际情况,也更有性价比。
3号系列cpu核心用于桌面和服务器cpu,龙芯3a6000的核心就是la664,上一代龙芯3a5000的核心是la464。龙芯3号系列的核心经过了4次大版本迭代,la664架构的龙芯3a6000的总体性能已经演进到了第10代酷睿的水平,在一些测试软件下,单核心同频性能甚至能达到挑战14代酷睿的水平。
4个代次的cpu核心不只是规格的变化,更重要的是每一个大版本都进行过多次改进,通过优化微结构实现性能提升。设计cpu微结构的细节是cpu企业的秘密,除了微结构本身,还有设计思路、优缺点、多种方案的抉择过程……只有高质量的设计锻炼,才能融会贯通。如果以为买到一套cpu核心源码就能具有同等的能力,那就像学渣以为拿到学霸的试卷就能并列第一那样滑稽。
因为loongarch的设计比mips优秀得多,所以在gs464v被la464替换之后,每ghz的性能提高了10%左右,这是人们始料未及的。不过la464毕竟不是专为loongarch设计,很多指令是通过微操作进行兼容处理,因此基于la664的龙芯3a6000这款cpu才是loongarch更合适的载体。la664的规格提高了很多,微结构也有重大突破,每ghz的性能提高了60%以上。特别是增加了超线程支持后,多核性能提高一倍以上。
每ghz性能挑战14代酷睿还不是la664的极限,据说以la664为基础优化出的后续版本预计每ghz的性能还能提高20%~30%。如果能实现,这将是超过intel处理器,挑战苹果处理器的水平。苹果也是走的高ipc路线,擅长低频打高频,只不过龙芯受限于工艺,主频比苹果的cpu更低。在工艺落后,也没有充足的资金多次流片改进物理设计的现状下,提高每ghz的性能是最具性价比的路线,也是难度最高的路线。
龙芯cpu未来的产品规划
龙芯除了升级cpu核心,其他ip核也在持续改进和增加。比如3a6000中的内存控制器虽然和3a5000的规格一样,都是ddr4 3200,但实际访存性能提高了一倍,比第10代酷睿访问相同规格内存的速度还快,和第13代酷睿差不多,还突破了片间高速互联技术。龙芯第二代自研图形处理器核lg200支持图形加速、科学计算加速、ai加速,并支持opengl 4.0和opencl 3.0的api。龙芯的这些年进步所形成的技术储备,使它能更加自由、快速地组合产品,比如最下面一张图片中没有实物照片的就是规划中的新款cpu。
桌面cpu已经有了3a6000,服务器cpu 3c6000就成了龙芯的当务之急。3c6000集成16个la664核心,因为单核性能及多核效率提高,通用处理器性能将达到上一代3c5000的两倍,访存性能也是3c5000的两倍。有了3c6000之后,就能使用龙链技术(loongson coherent link)把多颗龙芯3c6000整合成核心更多的产品,如32核的3d6000、64核的3e6000。
同样比较迫切的是2k3000,它集成了8个la364核心以及gpgpu。2k3000的单核性能与上一代桌面cpu 3a5000相当,8核并行性能应该非常接近4核8线程的3a6000。2k3000的低功耗、全集成设计使它比3a5000和3a6000更适合轻薄型笔记本电脑。
最后的7000系列是升级工艺、提高频率的一代。龙芯7000系列能把频率提到多少尚未可知,但以龙芯低频战高频的能力,料想能与intel酷睿14代以及同代的服务器cpu匹敌吧!
intel、amd和arm都是技术强大、积累深厚的cpu企业,又是各个领域的先行者,龙芯的市场竞争能力远不如它们。虽然龙芯无论在多么拮据的时候都在坚持研发更好的产品,但市场对龙芯cpu的接受程度又有谁说得准呢?不过市场归市场,技术归技术,只要龙芯cpu性能可与intel这些巨头齐头并进,就是自主cpu的大胜利。


华润与腾讯联手,三菱电机搭载AI,京东与重庆市携手建立四中心
触摸屏接口容易遇到的干扰问题
digilent蓝牙通信模块介绍
5G的方法论和对行业即将引发的媒体变革
利用电流环同RS-232解决长距离串行通信系统的方案介绍
龙芯CPU是否能与Intel、AMD以及ARM的产品齐头并进呢?
华为Mate10什么时候上市?华为Mate10最新消息汇总:华为Mate10麒麟970+3G感测+AR技术加持,10月发布
美国制定新禁令 对大疆无人机技术又一次攻击
对飚高通骁龙660,三星Exynos 7872处理器哪来的自信
水流传感器工作原理_水流传感器的作用_水流传感器的常见故障
利用单片机实现嵌入式摄像机二进制命令配置系统的设计
小米积极拥抱人工智能:人工智能成核心战略
人工智能三起三落,60年登上围棋之巅
实例分享丨真双极性输入、全差分输出ADC驱动器设计
小米MIX再牛也是猴机?普通人买不到有什么用!
中国人最有信心的新科技包括无人驾驶汽车、人工智能等
看中量子点材料核心技术 三星拟收购美国企业QDVision
TPU-MLIR量化敏感层分析,提升模型推理精度
助焊剂在波峰焊接过程中的作用、原理及工作模式
KTS-442R8LCN全站仪