广州fc吧 关注:4,876,377贴子:77,223,962

15年了!中国自主CPU龙芯如何跟老外竞争

只看楼主收藏回复



IP属地:浙江来自Android客户端1楼2015-09-25 18:04回复
    呵呵呵


    来自Android客户端2楼2015-09-25 18:05
    回复
      也许是龙芯名称中的“龙”字,承载着太多国人的希望,自诞生之初就处于社会舆论的风口浪尖。有人说龙芯是骗经费的项目,也有人说龙芯的科研人员是为理想而奋斗的志士,还有人说龙芯的科研人员“太天真”,是土八路斗美械师,自寻死路。龙芯究竟怎么样?无数篇横看成岭侧成峰的报道给龙芯包裹上了层层迷雾。那么今天,就让我们一起揭开迷雾下的真相,洞察志士的艰辛与心血。


      IP属地:浙江来自Android客户端3楼2015-09-25 18:05
      回复
        国产+u


        IP属地:福建来自Android客户端4楼2015-09-25 18:05
        回复
          慢慢来


          月老
          每对新人结婚成功的那一刻,送礼最多的吧友可以获得本次求婚的“月老”称号和成就,去领取
          活动截止:2100-01-01
          去徽章馆》
          5楼2015-09-25 18:05
          回复
            2、龙芯是国家的“亲儿子”?
            龙芯的“龙”字会给国人一种错觉,认为龙芯是国家的“亲儿子”,是用举国体制输送资金和人才打造的国产芯片。但实际上,龙芯成立之初仅仅是中科院计算机所里的一个芯片研发课题组,国家对龙芯的扶持也非常有限。
            在人才方面,在课题组成立时候才10来个人, 2006年才发展到100余人,2014年才400人,可以说龙芯团队的骨干人才都是自己培养的,不少设计师都是胡伟武亲自带出来的博士生。与之形成鲜明对比的是兆芯和宏芯的亲儿子待遇——2013年4月成立的兆芯,到2015年已有员工已扩充至1000人;而在2014年成立的宏芯,国家则直接从计算机所抽调人才,停薪留职去支援宏芯。
            在资金方面,自2001年成立以来,从国家863计划、核高基专项中累计获得项目经费5亿人民币。龙芯中科公司成立后,获得北京市政府2亿人民币的股权投资。也就是说龙芯成立至今共从国家获得资金7亿元。平均下来,每年获得国家补助为几千万元。对比紫光、兆芯和宏芯获得的补助可谓少得可怜——
            2014年紫光获得国家集成电路大基金400亿元人民币;宏芯成立时获6亿注册资本,从2014年至今,获得补助不少于20亿元人民币;兆芯成立时上海市政府出资12亿元,从2013年成立至今,获得补助不少于70亿元人民币。
            另外,芯片研发对资金需求极大,国家对龙芯的补助无异于杯水车薪。举个列子,俄罗斯贝尔加电子的Baikal-T1处理器研发成本折算为人民币是1.85亿元,该芯片是购买MIPS Warrior P5600微结构集成双核CPU,主频1.2G,用于路由器、打印机、复印机等产品。如果贝尔加电子自主研发微结构的话,成本会更高。
            换言之,贝尔加电子研发一枚路由器芯片的研发成本(而且还不是自己研发微结构)相当于国家对龙芯的总投入的四分之一。若以国外巨头作参照,则差距更大,2014年Intel研发经费超过100亿美元,员工达10万余人。


            IP属地:浙江来自Android客户端7楼2015-09-25 18:06
            回复
              3、龙芯经营现状
              自2010年龙芯市场化运营以后,龙芯选择了走主动挖掘民用市场、提升造血能力的道路,将过去的向国家要经费转变为从市场赚收入,没有再向国家要过一分钱。2014年,龙芯在纯商业行为的收入占总收入的比重从0上升到1/3,国家安全市场的比重占2/3,实现了自主经营、自负盈亏、收支平衡。


              IP属地:浙江来自Android客户端8楼2015-09-25 18:07
              回复
                5、指令集
                指令集就是一个编码集合。它是用一些代码表达读、写等操作,命令计算机做各种运算的一套命令标准。指令集可分为复杂指令CISC、精简指令RISC、超长指令集VLIW。CISC指令集的每个指令可执行若干低阶操作。诸如从内存读取、储存、和计算操作,全部集于单一指令之中,指令数目多而复杂,指令编码格式混乱,导致编码器复杂,流水线设计较为困难,指令不定长也带来指令对齐方面的额外挑战,因此付出了性能的代价。CISC指令集经典代表:X86。
                RISC指令集对指令数目和寻址方式都做了精简,固定指令长度,统一指令编码格式,加速常用指令,流水线设计更容易,因此效率也更高。有一段时间,因为RISC的高效率,Intel在发展CISC产品线的同时,也不得不研发了RISC处理器。RISC指令集典型代表:Alpha、Mips。
                CISC和RISC与在竞争的过程中相互学习、取长补短,CISC指令集在解码阶段上实现向RISC类指令的转化,将后端流水线转换成类RISC的形式。而随着技术发展,RISC指令集也达到数百条甚至上千条(loongISA有1907条),在指令集上殊途同归了。
                超长指令集(VLIW)使用非常长的指令组合,把许多条指令连在一起,以能并行执行。因为和CISC和RISC软件生态不兼容的原因已经很罕见了,Intel的安腾,英伟达的丹佛都是其代表。
                龙芯选择兼容Mips,一方面是因为课题组当时只有10余名成员,人力财力精力有限。另一方面,龙芯自己定义一套指令集技术上没有难度,但是无法兼容现有的计算机体系。
                举例来说,你既可以用“+”、“-”、“*”、“/”来定义加、减、乘、除和也可以用 “-”、“+”、“/”、“*”来定义加、减、乘、除,既可以用大写汉字来“壹”来表示1,也可以用“一”来表示1。


                IP属地:浙江来自Android客户端10楼2015-09-25 18:08
                回复
                  1+1=2,这种表述方式全世界都看得懂。但是壹+壹=贰,就只有中国人才看得懂了。而你若将“-”定义为加,那么壹-壹=贰,就只有你自己看得懂了——因为你无法让全世界的人跟着你的指挥棒走,让全世界人民在日常数学运算中用“-”来表示加,无法让全世界学校的教科书中用“-”来表示加,无法让已经被证明的数学公式和定理中用“-”来表示加。
                  因此,重新定义指令集技术上难度近乎于零,美国也一度禁止将单独的指令集申请为专利,只有当指令集与实现方法相结合的时候才被允许申请专利。研发兼容Mips指令集的CPU,就如同我们在数学上放弃了传统的汉字而使用阿拉伯数字去证明数学定理,Mips指令集和阿拉伯数字只是知识的载体而非知识本身,真正具有价值的是指令集的实现方法和被证明的数学定理。
                  ARM于2012年购买了498条Mips指令专利,但这并不会对ARM的自主知识产权造成影响。同理,龙芯使用兼容Mips指令并不会对自主知识产权构成影响。而真正对龙芯自主可控路线产生影响的是指令集的发展权——是否有资格自主扩展指令,是否能让软件生态跟着你的指挥棒走。


                  IP属地:浙江来自Android客户端11楼2015-09-25 18:09
                  回复
                    6、龙芯的指令集
                    龙芯走兼容MIPS指令集发展路线,在2008年金融危机后,以比较低的价格购买了MIPS指令的永久授权,在十几年的发展中对指令集进行了相当大的扩展,逐渐发展出了自己的指令集loongISA。
                    loongISA指令集共1907条指令。源自mips:
                    216条mips基础指令,获得永久授权。
                    311条DSP指令,获得永久授权。
                    自主指令:
                    mips基础指令扩展——148条loongEXT,
                    虚拟机扩展——5条loongVM指令,
                    二进制翻译扩展——213条loongBT,
                    向量指令扩展——1014条loongSIMD
                    龙芯在MIPS的指令系统的创新方面已经远远超过了MIPS公司,之所以购买Mips指令永久授权主要是减少市场化过程中的麻烦。举例来说,Transmeta公司曾经市场前景良好,但Intel起诉它,打了两年官司。虽然最终Intel输了,但两年过程中没有人敢跟Transmeta做生意, Transmeta被官司拖垮了。
                    MIPS公司破产后,所拥有的技术专利分的比较散。虽然MIPS被英国Imagination公司收购,但Imagination的主营业务是GPU,在CPU设计方面技术底蕴不足,它既没有能力,也没有意志扛起MIPS阵营的大旗,指令集扩展和微结构研发都不如龙芯。
                    而龙芯只要保持现有的发展势头,使应用软件跟着龙芯走,构建并壮大自己的产业联盟,那么龙芯对Mips的扩展就是行之有效的,而且有机会夺取Mips阵营的主导权。


                    IP属地:浙江来自Android客户端12楼2015-09-25 18:10
                    回复
                      7、编译器
                      程序员在编程的时候写的是编程语言,但是计算机运行的时候是机器语言,编译器就是将程序员的编程语言翻译成机器语言的工具,而编译器的好坏也非常影响一款计算机的整机性能,比如SUN就曾经依靠对编译器的优化使CPU的spec跑分提升了50%,大幅提升了整机性能和用户体验。
                      国际上使用最为广泛的编译器是GCC,该编译器对X86、ARM、MIPS、Alpha等指令集的CPU优化各不相同,对市场占有率高的X86和ARM优化得较好,版本也比较新(GCC部分代码就是Intel提供的),但对龙芯、申威的优化比较差,版本也比较老旧。
                      因此,龙芯自主研发了LCC以提高编译器的效率,虽然LCC诞生的时间还很短,对自家CPU的优化能力无法与Intel公司的ICC编译器相比较,以GS464E的spec2000跑分为例,使用LCC比使用GCC4.8整数提升7%,浮点提升36.8%。毕竟万丈高楼平地起,期待龙芯能不断提升LCC编译效率。


                      IP属地:浙江来自Android客户端13楼2015-09-25 18:10
                      回复
                        当初吹得天上有地下无,后来才"发现”很多技术是"舶来品”,这脸。。。。


                        来自Android青春福利版14楼2015-09-25 18:10
                        回复
                          8、微结构和主频
                          CPU性能(单核)=主频*IPC(这个公式必须是同指令集才能成立,不同指令集不可比较)。主频就是CPU工作的时钟频率,同一款CPU在一个时钟周期内完成的指令数量是固定的,因此主频越高,完成一个时钟周期所消耗的时间越短,CPU的运行速度就越快。
                          IPC是单位时间内调用的指令集数量,微结构设计得越好,单位时间内能调用的指令集数量越多,CPU的性能就越好。微结构好坏取决于前端设计水平,主频的高低一方面受微结构流水线级数的影响,但更多的是取决于后端的设计水平。再往细的方面说,前端设计主要指芯片的执行结构、数字逻辑层设计、执行状态仿真等方面,后端设计主要指物理层电路的具体优化,包括单元布局、时序优化等方面。
                          微结构研发不仅技术门槛高,而且费时费钱,一个微结构从研发到产品一般需要3年,而所需资金更是难以计数。龙芯自2001年以来,共研发GS132、GS232、GS264、GS464、GS464V、GS464E共6个微结构,以龙芯及其有限的人力和财力,实现了以平均2.33年更新一个微结构的发展速度,相较于国家非常有限的扶持,龙芯拿出了远远超过投入的产出。
                          龙芯在2015年8月发布的GS464E微结构测试参数非常亮眼。根据中电集团的测试报告,GS464E的SPEC2000使用GCC4.8编译器跑分为:整数768/G、浮点1153/G,使用LCC编译器跑分为:整数828/G、浮点1578/G,微结构的效率在整数性能方面基本追平了AMD目前最好的微结构,在浮点性能方面接近Intel在2013年发布的Ivy,分支预测和访存带宽更是能直接与Ivy比肩(Intel公司2013年的Ivy和2015年的Skylake差距很小)。
                          现在,龙芯和国外巨头在微结构方面的差距已经比较小了,差距主要在主频方面和制程工艺方面。在主频方面,2015年发布的龙芯3A2000的主频只有1G,而代码已冻结,即将流片的龙芯3A3000的也只有1.6-1.8G的主频。相比之下,Intel的CPU主频大多在3G以上,部分CPU主频接近4G;在制程工艺方面,受限于中芯国际的代工水平,龙芯能使用的最好的制程为28nm,而市面上出售的Intel芯片制程大多为22nm,Intel最新的产品普遍采用14nm制程工艺。


                          IP属地:浙江来自Android客户端15楼2015-09-25 18:10
                          回复
                            中电十四所用GS464V微结构研发了华睿2号(DSP),华睿2号能将雷达信号处理算法提炼成FFT、FIR、相关、矩阵求逆等17种基本计算构件,较好地解决了雷达系统大带宽、高吞吐的应用需求。龙芯3A2000和龙芯3B2000的微结构是GS464E,龙芯3A2000有台式机和笔记本产品,龙芯3B2000将被用于服务器。


                            IP属地:浙江来自Android客户端17楼2015-09-25 18:11
                            回复
                              最简单方式是先挖人搞,然后再自己搞


                              来自手机贴吧18楼2015-09-25 18:11
                              回复