五位本科生4个月造出芯片毕业!新的后续来了……|五位本科生4个月造出芯片毕业!新的后续来了……( 二 )


2019年8月,“一生一芯”计划正式启动 。这是一次教学实践 。 
国科大校领导认为,它会掀起本科教学改革的新篇章 。 
 五位参与的学生是金越、王华强、王凯帆、张林隽和张紫飞 。 
五位本科生4个月造出芯片毕业!新的后续来了……|五位本科生4个月造出芯片毕业!新的后续来了……
文章图片
 
他们都是国科大计算机科学与技术学院2016级本科生,那时也都已通过了中国科学院计算技术研究所的保研夏令营,成为首批吃螃蟹的人 。 

 

 
   踩坑、挖坑,再从坑里爬出来    
其实,在他们们面前的,是一条未有人走过的路 。 
没有导航,他们需要自己打怪升级,自己试错尝试 。 
当然,他们也并非是在白纸上作画 。 
教师团队已经制定了总体方案,确定了技术路线,选择好了基础平台,搭建了开发环境,也选定了流片工艺和班车 。 
五位学生真正动手之前,一支实力强大的教师团队,为学生的乘风破浪,做好了保驾护航的准备 。 
做芯片,其实分为前端和后端 。前端主要是做设计,用数字电路的方式实现处理器的功能;后端则是用物理元件来实现这些设计 。 
“要说芯片都是我们做的,并不准确 。其实我们只是做了前端的逻辑设计部分 。”王凯帆强调 。 
 他尝试用最通俗的语言向科技日报采访人员解释设计芯片是怎么一回事——类似于画一张大楼的施工图纸 。只不过,呈现这张图纸,用的不是线条,而是一种叫做Chisel的硬件语言 。 
此前,包云岗团队中的博士生余子濠为南京大学开发了一款教学用RISC-V处理器,“一生一芯”计划的学生要在此基础上进行改进,把师兄搭建的房子,改建得更舒服、更亮堂 。 
包云岗说,在实际产品研发和科研工作中,也往往不是从头开始,更多是在已有基础上,增加新功能,提高性能 。“这培养的是学生‘理解—消化—创新’的能力 。”  
 大家采用了当下流行的“敏捷开发”模式:每人负责一个或几个模块,齐头并进,多线推进,然后合龙 。 
   五位本科生4个月造出芯片毕业!新的后续来了……|五位本科生4个月造出芯片毕业!新的后续来了……
文章图片
 芯片设计开发历程 。图源:包云岗知乎问答  
 “一生一芯”计划的目标很明确:在芯片上运行Linux系统,支持基本的输入输出设备 。 
先解决“能不能”“对不对”的问题,再来看“快不快”“好不好” 。 
对新手施工设计团队来说,他们盖的第一栋房子,要保证的是屹立不倒 。 
 从2019年8月正式动手设计,到12月中旬交付设计图纸,五人组踩过坑,给别人挖过坑,也挣扎着从坑里爬出来过 。 
他们曾熬夜和不知躲在哪里的错误死磕,还要对抗可能拖延队友进度的焦虑 。 
团队成员金越负责的是片上系统 。 
除了中央处理器,在系统内还有五个控制器来实现具体功能 。 
 
这些控制器的代码是由开源社区提供的,但团队并不清楚这些控制器是否适合他们设计的这款芯片 。 
金越需要编写驱动软件,测试外设控制器是否设置正确,能否正常工作 。 
“要是出现问题就很麻烦了 。到底是我的软件写错了,还是外设控制器本身有问题?如果是外设控制器有问题,到底是哪个有问题?”  
变量太多,排列组合下来,测试复杂得让人头疼 。 
“做验证的那几天,几乎没怎么睡过觉 。”金越半夜对着电脑,查手册,查代码,查波形,怀着点“我就不信邪”的不忿:“我一定要把这个东西弄出来 。”  


推荐阅读