大数据文摘出品
毕业季,中国科学院大学(以下简称国科大)的五位本科毕业生给母校送上了一份“硬核”毕业礼物——主导完成了一款64位RISC-V处理器SoC芯片设计并实现流片。
处理器芯片被公认为芯片产业皇冠上的明珠,设计复杂度高、难度大。去年,正是为了加快此类人才的培养规模与培养速度,国科大启动了名为“一生一芯”的培养计划,以流片为目标,由5位2016级本科生主导完成一款64位RISC-V处理器SoC芯片设计并实现流片,这在国内还是史无前例的尝试。
今年6月2日, “一生一芯”团队学生代表向国科大毕业答辩委员会演示处理器芯片的功能,交出了一份超出预期的本科毕业设计“答卷”。这5位2016级本科生主不仅实现了带着自己设计的处理器芯片毕业这一目标,而且其主导设计的芯片目前能够成功运行Linux操作系统以及学生自己编写的国科大教学操作系统UCAS-Core。
这款处理器芯片被学生们命名为“果壳(NutShell)”,与“国科”发音相同。“一生一芯”计划负责人、国科大计算机学院教授、中科院计算所先进计算机系统研究中心主任包云岗透露:“‘果壳’的设计源代码已经向国际社区开源。前段时间,‘果壳’的设计投稿到RISC-V全球论坛,最近刚收到被接收的通知,王华强同学将代表团队于9月3日向全球业界介绍‘果壳’的设计,这也是‘果壳’首次在国际舞台上亮相。“
RISC-V全球论坛的报告均来自世界各地的业界资深专家,包括图灵奖得主David Patterson教授。”
据中青报报道,这5位毕业生都将在中国科学院计算技术研究所读研究生,“参与一个更有挑战的项目,开发一款高性能乱序多发射RISC-V处理器核的设计”。
7月25日,中国科学院大学举行了一场特别的新闻发布会,公布了去年启动的“一生一芯”计划的研究成果。
国科大计算机科学与技术学院院长、中国科学院计算技术研究所所长孙凝晖院士宣布,经过9个月的努力,由国科大2016级计算机学院本科生金越、王华强、王凯帆、张林隽和张紫飞五位同学参与的首期“一生一芯”计划取得圆满成功,五位本科生可以带着自己设计的处理器芯片毕业了!
五位同学平均年龄只有23.1岁,他们合作开发的芯片是一款64位RISC-V 处理器SoC芯片,并已经实现流片(试生产),这款芯片能成功运行Linux操作系统以及学生自己编写的国科大教学操作系统UCAS-Core。
“果壳”芯片
“果壳”芯片
“果壳”芯片
国科大计算机科学与技术学院院长、中国科学院计算技术研究所所长孙凝晖院士表示,“我国处理器芯片设计人才严重紧缺,如何加快此类人才的培养规模与培养速度,是我国迫在眉睫的难题。”
“一生一芯“计划的发起,旨在通过让本科生设计处理器芯片并完成流片,培养具有扎实理论与实践经验的处理器芯片设计人才。换句话说,这一计划正是为了培养解决“卡脖子”的关键技术人才。
国科大的第一期“一生一芯”计划于去年8月正式启动,经过立项分工各自研发后,五位同学在仿真环境中进行了系统联合调试,设计的RISC-V处理器可在FPGA平台上分别运行游戏和Linux Debian发行版。
这在国内也是首次以流片为目标,指导五位本科生设计的RISC-V芯片“果壳”。
发布会上也详细介绍了整个项目的时间线。
2019年12月19日,一款 64 位 RISC-V 处理器 SoC 芯片完成设计,并基于中芯国际 110nm 工艺完成投片;
2020年4月23日,处理器芯片返回,经过调试测试验证,芯片成功运行 Linux 操作系统以及学生自己编写的国科大教学操作系统 UCAS-Core;
2020年5月28日,“果壳”在 Linux 上运行Busybox并展示中科院图标。
2020年6月2日,王华强同学代表 “一生一芯”团队向毕业答辩委员会演示处理器芯片的功能,五位同学交出了一份超出预期的本科毕业设计 “答卷”。这标志着首期 “一生一芯”计划取得圆满成功。
参与项目的王凯帆同学表示,他认为这与之前的课程实验最与众不同的地方就是没有实验手册,一切都需要自己去探索。张紫飞和王华强也表示,对于他们来说这是一次非常难忘的项目经历,和同学们一起协助开发、讨论结构问题,一起“挖坑”“踩坑”,都是非常有意思的。
发布会上,国科大副校长董纪昌教授表示,去年,国科大在本科新生录取通知书中嵌入了“龙芯三号”芯片,“硬核录取通知书”至今让人记忆犹新;今年,国科大本科生已经拿到了“超硬核毕业证书”。国科大将充分发挥科教融合优势,培养更多国家紧缺的高技术人才,也欢迎更多优秀本科生加入第二期“一生一芯”计划。
在发布会和知乎的热议话题下,包云岗教授详细介绍了该计划的启动与实施背后的故事。
知乎全文链接:
https://www.zhihu.com/question/409298856/answer/1363569013
国内的处理器芯片设计人才面临着流失困境,2017年,包云岗教授就组织了一次针对2008~2017体系结构顶会ISCA论文第一作者的统计,他们发现,85%的人选择在美国就业,只有4%在中国就业。
不过,在上个世纪80年代,类似的人才危机在美国也曾出现。当时为了应对危机,美国国防部高级研究计划署 (DARPA) 在启动MOSIS项目,为大学提供流片服务,通过MPW模式大幅降低芯片设计门槛。30余年来MOSIS为大学和研究机构流了60000多款芯片,培养了数万名学生。
这也是“一生一芯”计划的目标。
在组建教学团队上,这个计划得到了老师和学生们的大力支持。
在知乎相关问题下,包云岗也介绍了整个项目的强大指导老师团队:“唐丹老师和工程师刘彤负责SoC架构设计指导,余子濠老师负责处理器核设计,张科老师负责项目协调、与国科大对接,并和常轶松老师、赵然老师一起在FPGA模拟仿真方面进行指导,解壁伟老师和李峄工程师在后端物理设计上给予支持,深圳大学蔡晔老师则参与帮助设计PCB板卡,另外蒋德钧老师和王卅老师是国科大本科操作系统任课老师,在操作系统方面给予支持,两位博士生王诲喆与徐易难也担任起助教的角色,帮助答疑解惑。自己更像一个啦啦队长,给大家打鸡血。”
教学团队组建完成后,团队随后就针对总体方案进行了讨论和制定,包括确定技术路线,选择基础平台,搭建开发环境,选择流片工艺和班车等。
图片来自知乎
包云岗称,在确定了流片班车12月17日后,留给整个计划的时间只有不到4个月,如果顺利,就可以赶上五月底或六月初的国科大本科毕业答辩,届时可以在答辩现场展示芯片。
在总体方案上,包云岗回忆,团队当时有两个决定,一个是用Chisel开发,另一个是以余子濠为南大开发的一款教学RISC-V处理器核为基础进行改进,开发历程如下图所示:
整个项目时间紧任务重,众所周知在芯片的测试上,从底层PCB版图、内存颗粒到中间处理器设计、再到上层操作系统、应用软件,每个层次都可能出问题,而哪怕只是一个小问题,都会造成芯片无法正常工作。
虽然历程艰辛,但项目组终于还是按时完成了整个项目。6月2日,五位学生在国科大毕业答辩介绍了他们基于COOSCA处理器核的进一步优化工作:
王华强:《基于RISC-V的乱序多发射处理器设计》
张紫飞:《基于RISC-V的向量处理单元设计》
张林隽:《开源处理器分支预测器的设计与性能优化》
金越:《基于敏捷开发语言的开源处理器非阻塞缓存的设计与实现》
王凯帆:《RISC-V平台下的二进制翻译与优化》
其中王凯帆的毕业设计中使用了COOSCA核,也是他们自己设计的核首次在科研中得到应用。
包云岗也在回答的最后称:回想到一年前,“一生一芯”计划还不知道是否可行,最终能不能成功也都是未知数。但如今,他们用实际经验表示,这是可行的,虽然也一路上满是教训,但是对于这五位“小白鼠”同学,也累积了不少经验。
相关话题也在知乎上引发了热议。
多数评论都表达了赞扬之情,称看得“热血沸腾”,希望自己本科时候也能接受这样的教育。
但也有网友指出,设计团队中值得肯定的不止是5位学生,还有背后支持的老师团体。
知乎答友@勇敢的心表示,“芯片设计团队不仅仅是这5位学生,还有背后支持的老师团队,这是至关重要的!芯片设计最难的工作是系统架构定义(软硬件架构),而这颗芯片是在已有的芯片基础上做改善,不能说没难度,但是难度相对小很多!另外从实现上来看,采用chisel来开发,确实比verilog来得快,这得给伯克利大学点个大赞!”
也有人指出五位本科生数量还是太少了,十几个staff照顾5个学生的这种项目不可能年年搞。
“以后流程都走通了后最好能够做到一个老师加3个TA带5-10个学生走一遍tape-out全过程这样比较好。”
正如包云岗教授所说,这五位学生的平均年龄只有23.1岁,但他们不到三个星期就从头开始完成了乱序处理器主流水线的设计与实现,通过CoreMark测试。可以试想,到他们30岁时,可以说已经是处理器芯片和计算机系统设计领域的“老兵”了,那时,不管去工业界研发产品,还在学术界做科研,他们的创造力都能得到更大的发挥和展现。
我们也希望国科大的“一生一芯”能够继续下去,向业内输入更多芯片血液。