设计又可以分成前端后端,比如这张图展示的。
做前端就是要把100亿个晶体管怎样分类组织,要放几个加法器,放几个乘法器,放几个做存储,放几个做寄存器。
它们彼此之间怎样互联互通的效率最高,最后形成一个设计,变成一个线路。
这个线路要跟具体的工艺相匹配,比如是要到台积电的7纳米工艺上去做呢,还是在中兴国际的28纳米工艺上去做。
根据不同的工艺,它有不同的物理参数、物理特点,我们要把这两个东西很好地匹配起来。
这里面这么多线,这么多晶体管,只要任何一个出错,就有可能导致整个芯片无法正常工作,所以芯片设计里有很多挑战。
龙芯横空出世从最早开始,我的运气很好,在2000年进到计算所时,我的导师就是龙芯的总设计师——胡伟武老师。
那时胡老师也还年轻,刚刚开始带学生,当时他从所里揭英雄榜,把李所长立的100万做芯片的前期研究的事承担下来了,正在筹备着做龙芯。
所以我这20年,就一直在做这一件事情,从头到尾,见证了龙芯的发展过程。
这张图是我们最早做的龙芯一号,2000年课题组成立时,一共就有两个老师和十几个学生,包括老师在内,没有人做过CPU,一切从零开始。
但那时大家都非常振奋,非常激动,觉得有这么一个挑战是机会难得,所以我们就没日没夜地看资料,去做各种设计讨论,然后调试测试。
有一句话说:天道酬勤。
我的印象特别深刻,因为当时我们调试一些问题时,经常会发现,如果朝九晚五,下班到点就走,好像有些问题永远也解决不了,始终没有灵感。
但是如果下了狠心,说这个问题一定要解决,不解决就不回去睡觉。
这时熬上一天、两天、三天,经常在深更半夜,夜深人静时,一个灵感突然来了,问题就突破了。
所以那时,我们隔三差五地就会熬上一阵,碰到一根硬骨头,就把它熬出来,一年时间,我们就把一个原型性的芯片做出来了。
于是中科院的领导非常高兴,马上就给我们追加了500万的经费,使得我们能够继续往下做。
再过了一年,2002年8月10日凌晨6点08分,这个芯片正式调试成功启动。胡老师也很高兴,登录到系统里,输入了一段话。
大概意思就是说,今天我们中国信息产业无芯的历史结束了,在场的人们见证了这个过程。然后把我们在场人的名字全部都列在那里。
现在我们回过头去看,这个芯片还是一个很粗糙的设计,但是重要的是那时能有去做这件事的勇气。
而龙芯一号出来后,大家信心大涨,我们从国家那边,从863项目又得到了支持,继续做龙芯2号。
因为那时国际上已经做了几十年芯片了,我们从零开始,还有很多有差距的地方。
所以我们做了很多计划,我们把国际上先进的技术一个一个拿来研究,研究透一个做一个,就是用小步快跑的策略,做了一系列的芯片。
但是,我们一开始就碰到一个很大的挫折,就是龙芯的第一个芯片叫2A,它拿回来后是半身不遂的。
这个芯片只能在电压很小的范围内工作,高了不行,低了不行,以没达到我们的要求,就用不起来。
最后追究原因时发现,是我们对物理参数,对工艺的理解不够透彻,因为我们都是做计算机出身的,工艺更需要做微电子和做物理的人。
所以我们当时从微电子所引进了黄令仪老师和他们团队,就慢慢地把这块短板补上了。
再接下去,就把一个个先进的技术往龙芯2里面堆,努力地去追赶国际先进技术前沿。
2007年,芯片863验收时,我们做出来的芯片已经比1号快了一个数量级以上,也就是10倍以上。
这时国家非常重视,当时的科技部部长徐冠华专门来参加龙芯的验收会。
在龙芯2号做到一定程度时,我们觉得这个芯片已经差不多了,从很多参数来看,我们的确跟当时国际上最好的一些芯片相比,也没有很大差距了。
所以当时国家正好做了16个重大专项的部署,其中第一个,就是核高基重大专项。
核高基就是核心电子元器件高端通用芯片和基础软件,就是为解决我们缺芯少魂的问题开设的。
我们从核高基那边拿到了两亿多元,看上去是一笔巨额的经费,然后就开始做龙芯3号。
当时我们对龙芯3号雄心勃勃,我们想通过多核技术,能够一下站到世界前沿。
多核是什么意思呢?
就是我们在一个芯片里,同时摆好几个CPU的核心,让它能够同时独立地做好几个不同的程序,这样能够增加程序的吞吐力。
当时主流的个人电脑还是单核或双核,但我们上来3A1000就设计了四核,3B1500设计了八个核。
但是事实证明,我们走了一个很大的弯路,因为首先,多核芯片本身的技术很复杂,一下规模大增,各种测试验证的复杂度都大了很多。
我们花了三年多的时间,才好不容易把这个芯片成功地量产。
但是这时拿到市场上一看,特别是桌面上的用户会说,感觉好像跟你三年前的龙芯2号也差不多。
然后我们一看,坏了,是我们的指标体系出了很大的问题,这就是我们做科研的一个毛病。
当时那些峰值指标确实已经是世界的领先水平了,但是,能表现出来的,在应用软件能享受到的,还是其中的一个核。
那时很多软件是为单核写的,它用不起那么多核,就像有一堆小学生,也并不能做一个大人能做的事情。
所以我们当时就没有全面地做好评估,忽略了单核这方面的提升,然后我们痛定思痛,回过头来再去提升我们的单核。
所以从3A1000到2000,我们用完全一样的工艺,只靠设计,就把它的性能提高了三四倍,到今天最新的产品,已经足足提高了15倍以上。
我们也注意到,从用户能体验到的性能,就是打开一个很复杂WORD文档,在原来3A1000的时候要33秒,到2000的时候就只要6秒了,到现在鼠标一点就可以瞬开。
这就是我们面向市场、面向用户去不断地优化后获得的一些成绩。
当然今天我们离最新的国际最先进的技术还有点距离,但是很多距离是来自于我们用的工艺。
国际上最新的已经是5纳米了,我们的3A5000用的还只是12纳米。
这是因为我国在工艺这块仍然是一个短板,我们不敢用国际上最先进的工艺,担心随时被掐。
但在这一块,应该说我们已经具备了一个很好的国际主流水平,进入了一个新的创新空间。
龙芯生态体系建设当时很多专家认为我们做不了芯片,不是说我们做不出那么一颗东西来,而是觉得这个东西无法把外面的产业生态做起来。
什么叫做产业生态呢?
简单地说分为两个部分,一个是得有人愿意来做你的芯片,就是他用你的芯片去做机器,然后去卖给用户。
另外一方面是电脑和别的东西不同,电脑上要跑软件,上面得有丰富的软件,用户觉得东西好用,他才会买。
这两个东西都很麻烦,首先怎么解决做机器的问题。
所里2004年在江苏省建了一个龙芯产业化基地,2005年把我派过去,因为那个基地就在红色景区沙家浜旁边,所以我们叫南下沙家浜。