
江南大学集成电路学院“海底大纵队”的三名本科生围在电脑前,盯着仿真波形,一遍遍核对数据内容与接收次数。整套处理器与操作系统主体功能已经跑通,偏偏卡在最基础的输入交互上——
终端里敲下一个字符,屏幕上却跳出两个。
这个看似微小的故障,成了他们重新认识RISC-V的入口。
在第十届全国大学生集成电路创新创业大赛全国总决赛上,江南大学集成电路学院拿下4项一等奖、3项二等奖、10项三等奖——数字背后,是这群年轻人与一颗自研RISC-V处理器共同成长的故事。


“分工只是主攻方向
联调时所有人一起上”


“海底大纵队”由微电子科学与工程专业大三本科生李佳、付云鹏、高源阳组成,指导教师为虞致国。三位同班同学,因对FPGA与处理器设计的共同兴趣走到了一起。此前,他们曾斩获全国大学生嵌入式芯片与系统设计竞赛FPGA创新设计赛道全国一等奖,彼此熟悉各自的技术特长与协作模式。
但这一次,他们面对的是从零设计一颗处理器。
组队之初,三人对RISC-V的认知各有侧重。付云鹏擅长CPU内部指令执行逻辑,拥有小型CPU设计经验;李佳具备嵌入式开发功底,熟悉程序、驱动与外设之间的联动关系;高源阳深耕FPGA实现,对硬件调试有着浓厚兴趣。
但如何把指令流水线、中断机制、操作系统、外设驱动串联成完整系统,仍是摆在三人面前的全新挑战。

“分工只是主攻方向,系统联调的时候,硬件握手、驱动读取、操作系统调度任何一环出问题,所有人都要一起对照波形、核对代码。”团队约定统一接口规范,共用验证程序,修改完成后同步校验功能与中断逻辑,保障硬件、加速模块、软件生态真正打通。
谈及初次接触RISC-V的感受,付云鹏觉得“既新鲜又畏难”。数据相关、分支跳转、访存时序,都需要逐一处理。“当在仿真波形中亲眼看见一条指令完整走完流水线、正确写回寄存器时,真切感受到处理器不再是书本上的概念。”他说,“那一刻,课本上抽象的流水线,变成了屏幕上可观测的波形。”

“再跑一遍,别只成功这一次”

真正的考验出现在RT-Thread命令行串口联调阶段——电脑终端仅输入单个字符,FPGA端却会出现字符重复,命令无法正常识别。此时,处理器与操作系统的主体功能已经完成,系统却卡在了最基础的输入交互环节。
团队也曾闪过暂时绕过交互、自动运行程序的想法,但很快否定了这个念头——回避现象不等于解决根源,后续传感器、外设链路都依赖串口交互,演示环节同样需要命令输入,必须彻底定位问题。

最初测试完整命令,大量字符混杂在一起,很难区分故障发生在哪一环。团队果断停下其他优化工作,将测试收敛到单个字符,逐段排查,核对每一处的数据内容与接收次数。
付云鹏梳理软件读取逻辑,李佳比对硬件接收信号波形。查来查去,软件逻辑没问题,硬件信号也没错,可偏偏就是跑不通。
多次尝试,根源终于浮出水面——串口接收有效信号会持续维持高电平,并非理想的单周期脉冲;跨时钟域握手完成之后,持续的高电平信号仍会被反复识别为新的数据请求,同一个字节被多次送入队列,最终造成字符重复。

找到原因后,团队在硬件入口增加上升沿识别逻辑,确保一次事件仅触发一次数据传递;软件侧则等待硬件缓冲区状态更新之后,再执行读取操作。当终端终于稳定响应输入,几个人松了一口气。但付云鹏没急着高兴,而是补了一句:“再跑一遍,别只成功这一次。”
于是,团队反复开展单字符、连续完整命令的多轮复现测试,直到故障不再出现。这次经历让团队深刻明白:仿真通过不等于系统可用,缩小问题范围、依靠重复测试确认结果,远比急于修改代码更加重要。

“开放指令集不等于整颗芯片开源”


本次参赛作品以RV32IM+Zicsr指令集为基础,拓展轻量Zba/Zbb指令子集,实现机器态定时器中断、异常处理,满足RT-Thread运行条件。流水线分支预测、受限条件双指令发射、乘法与独立指令重叠执行等优化,借鉴开源RISC-V核的设计思路,但团队没有直接复用开源代码,而是吃透原理之后,结合FPGA资源约束自主编写RTL代码,完成仿真与板级全流程验证。
谈及为何选择自研RISC-V处理器作为参赛方向,团队表示,赛题本身围绕RISC-V SoC展开,同时契合团队的研究兴趣。RISC-V公开的指令规范,让开发者能够直接研究指令编码、异常机制,依托成熟工具链生成程序,完成从指令到硬件实现的全链路探索。团队也了解Arm生态的优势,但本次项目核心目标是探究CPU微架构内部实现,因此选择聚焦RISC-V开展方案迭代。
“开放指令集不等于整颗芯片开源,自主可控仍需工具链、制造和应用生态共同支撑。”这是付云鹏在项目实践中生出的感悟。
RISC-V公开规范降低了处理器入门门槛,但指令集开放,不代表流水线、存储系统等具体实现天然开源。项目实操中,团队真切体会到工具链与生态的分量:GCC编译选项必须匹配处理器支持的指令扩展,编译参数的差异,会直接改变指令布局,影响分支预测效果、程序运行周期;移植RT-Thread时,即便操作系统源码可获取,定时器、中断、驱动、链接脚本,依旧需要和自研硬件逐项适配对齐。不同模块各自逻辑合理,握手时序不匹配,依旧会引发故障。
FPGA原型开发尚且如此,如果走向流片落地,工艺制造、封装测试、上层软件应用,每一环都不可或缺。自主可控,意味着要积累从设计、验证到适配生态的完整系统能力。
亲自走完RISC-V处理器完整开发流程,团队感慨:RISC-V开放规范给了学生动手实现处理器的机会,但一套可用的系统,离不开无数细节打磨。优化性能不能只看跑分数字,需要明确适用场景、配置条件与验证边界;能够稳定复现结果、定位失败根源,才是更加扎实的工程能力。

“我不会直接给出答案”


指导老师虞致国认为,竞赛是连接课堂与真实工程的“第二课堂”,重点在于培养系统思维和解决问题的能力,不能替代基础学习。
日常指导中,他先让学生理解成熟架构、掌握设计工具,完成“学会”;再引导他们查手册、看报告、定位瓶颈,比较方案,逐步“会学”;最后从实际问题出发提出改进,评估代价,用仿真和上板数据验证,走向“创新”。
“我不会直接给出答案,而是鼓励学生试错。”在他看来,有依据、能落地的小改进同样有价值,自主学习与持续改进的能力比奖项更重要。
当前,国家对集成电路产业高度重视,产教融合已成为人才培养的关键路径。虞致国认为,像全国大学生集成电路创新创业大赛这样的学科竞赛,用具体工程任务连接了教学、科研和产业。企业命题让学生理解实际需求,综合运用课程知识,在方案比较、测试和迭代中学习用实验与数据检验判断。企业评价也能反馈到课程和实训。
“我更关注学生能否独立分析问题、合作完成系统,并用可靠数据说明设计的合理性,这些能力是走向科研和产业的重要基础。”虞致国说。
江南大学集成电路学院依托二十余年办学积累,持续深耕学科建设,深化产教融合、科教融汇育人模式,以高水平学科竞赛赋能人才培养,不断提升学生创新实践能力与核心竞争力,为集成电路行业高质量发展持续培育高素质应用型、创新型专业人才。

从屏幕上一条指令走完流水线
到终端里一个字符不再重复
再到FPGA板上系统稳定跑起来——
这群年轻人对RISC-V自主可控的理解
落在了波形、代码和一次次复现测试里
他们正在补上从设计、验证到适配生态的每一环
-END-

点赞、分享、在看
↓ ↓ ↓