2026年集创赛企业命题用高云GW5A做RISC-V软核+NPU异构SoC,队伍三个人没人碰过总线互联,这个题选下去是冲国奖还是陪跑?

开放4 回答 40 浏览

我们队三个人,一个写过UART和SPI,一个做过图像Sobel,还有一个主要负责写文档。今年集创赛企业命题给了高云GW5A,要求做RISC-V软核加轻量NPU的异构SoC,看着很诱人但AXI互联、地址映射、中断分发我们谁都没做过。距离提交还有四个月,是硬着头皮上还是换回纯FPGA图像处理题?有做过软核SoC的学长能说说从哪一步开始拆吗?

分享:

5 个回答

  • 用户_15425

    两条路线对比

    路线 A:高云企业命题 RISC-V 软核 + 轻量 NPU 异构 SoC

    ✅ 优点

    1. 企业命题天然加分:集创赛企业杯,评委是高云工程师,对这个方向认可度高,创新点强,国奖上限高;
    2. 成员 2 做过 Sobel,卷积算子基础可以直接复用做轻量 NPU(比如二值 / 8bit 卷积神经网络,图像分类);
    3. GW5A 官方 AE350 RISC-V IP 是现成工程模板,有参考手册,能快速搭最小 SoC 系统,不用从零造 RISC-V 核。

    ❌ 风险点(最容易翻车的地方)

    1. 系统集成坑最多:AXI 地址映射、中断、软硬件协同调试,属于完全陌生领域。Verilog 写加速器不难,软硬件联调是最大杀手;经常出现硬件综合通过,但 RISC-V 软件无法读写 NPU 寄存器、中断不触发,排错极其耗时间;
    2. 4 个月时间很紧:要拆分学习、搭建最小系统、NPU 加速器、软硬件联调、优化、写报告、准备答辩;一旦中间某个环节卡住(比如总线调试卡 1 个月),直接半成品;
    3. GW5A 资源约束:GW5A 的 LE、BRAM 有限,NPU 不能做太大模型,只能做轻量网络(MNIST、简单图像分类),模型效果上限有限;
    4. 同赛道强队多:很多强队是微电子 / 计科专业,有 SoC、AXI、RISC-V 基础,会直接拉高决赛评审标准。

    👉 获奖预期:

    • 全力投入 + 运气好:国一 / 国二(冲国奖)
    • 正常完成功能,Demo 跑通:国三
    • 系统联调失败,只能单独跑 RISC-V 和单独跑 NPU,无法异构联动:优秀奖,陪跑

    路线 B:换回纯 FPGA 图像处理题

    ✅ 优点:

    1. 和你们现有技术栈高度匹配:Sobel 图像基础,UART/SPI 外设;不需要学 AXI、地址映射、RISC-V 软件,学习量大幅减少;
    2. 调试简单,纯硬件,没有软硬件协同的玄学 bug;4 个月时间非常从容,稳做出完整 Demo;
    3. 踩坑少,文档工作量可控,保底国三,做得好可以国二。

    ❌ 缺点:

    • 赛道内卷严重,做图像 Sobel、边缘检测的队伍非常多;创新上限低,很难拿到国一,评委看多了同质化作品。

    👉 获奖预期:保底国三,上限国二,很难国一。

    三、如果坚持选【RISC-V+NPU 异构 SoC】:4 个月拆解开发路线(从零起步)

    核心思路:先搭最小可运行 SoC,再把 NPU 作为 AXI-Lite 外设挂载上去,不要一上来就写 NPU

    第 1 个月:基础学习,跑通官方最小工程(最重要)

    1. 学习高云 Gowin IDE,导入官方 AE350 RISC-V SOC 参考工程,在 GW5A 开发板跑通最小系统:RISC-V 上电,C 语言控制 GPIO、UART 打印。
    2. 学习 AXI-Lite,重点:AXI-Lite Slave 怎么写、地址映射原理、中断信号接入,不需要啃完整 AXI-Full 协议。
    3. 任务目标:把一个简单寄存器模块封装成 AXI-Lite 从设备,RISC-V 软件通过 C 语言读写这个寄存器,验证总线通路。

    产出:最小 SoC 系统,CPU 可以读写自定义外设寄存器。

    第 2 个月:开发轻量 NPU 硬件加速器

    由做 Sobel 的同学负责:基于 Sobel 流水线经验,设计 8bit 卷积阵列,做轻量化 CNN(MNIST 手写数字分类)。NPU 对外只暴露控制寄存器、状态寄存器,封装成 AXI-Lite Slave 接口。

    产出:单独仿真验证 NPU 卷积计算功能正确。

    第 3 个月:系统集成、中断、软硬件联调(最容易翻车阶段)

    1. 在 AE350 的 AXI 互联矩阵里,添加 NPU 作为 Slave,分配基地址;
    2. 接入中断:NPU 计算完成后,发中断给 RISC-V;
    3. 写裸机 C 驱动:RISC-V 下发任务,启动 NPU,等待中断,读取推理结果;
    4. 板上联合调试,解决时序、地址、数据读写异常问题。

    产出:完整异构系统,CPU 调度 NPU,开发板上完成图像推理。

    第 4 个月:系统优化、测试、撰写报告、准备答辩

    1. 优化时序,提升 NPU 吞吐;做性能对比(纯软件推理 vs 硬件 NPU 加速);
    2. 完善演示 Demo,摄像头输入 + 实时推理可视化;
    3. 论文、技术报告、PPT、答辩准备。
  • 数字IC爱好者

    先说结论:四个月、三个人、零总线经验,冲国奖概率不高,但也不是纯陪跑,关键看你们愿不愿意把题目砍小。企业命题的评分通常看完成度和工程闭环,不是看你堆了多少IP。最现实的做法是别一上来就搞完整异构SoC,先把RISC-V软核在高云GW5A上跑起来,用现成的AXI Crossbar或者干脆用核自带的简单总线,挂一个UART打印hello world,这一步能通,你们就已经超过不少队伍了。然后再把Sobel那个模块包成AXI Slave挂上去,最后才考虑NPU。NPU也别自己从头写,找个轻量开源的或者用卷积加速器的简化版,接口降到AXI-Lite就行。风险点在于地址映射和中断分发,这两块没人做过很容易卡两三周,建议队里指定一个人全职啃总线,另外两个人一个保图像算法一个保文档和板级调试。如果到第二个月中旬最小系统还跑不通,就果断退回纯FPGA图像处理题,别恋战。你们现在手上有没有高云的IP核文档和参考例程?这个决定了起步难度。

  • 硬件小白

    先别急着判断是冲奖还是陪跑,我更想先问一句:你们三个人里,有没有一个人愿意在接下来六到八周里,把总线互联当成唯一任务来啃?这个问题的答案基本决定了这个题对你们是机会还是坑。异构SoC听起来高大上,但企业命题的评分逻辑通常不是看你IP堆得多,而是看系统能不能跑通、有没有工程闭环。四个月三个人,最现实的目标是单核RISC-V加一个加速器,而不是完整异构。具体拆法:第一周先把高云工具链和软核例程跑起来,确认能生成比特流、能烧板、串口有输出;第二到四周搞定软核加一个最简单的总线,哪怕用核自带的或现成Crossbar,挂个UART打印字符就算里程碑;第五到八周把Sobel包成AXI从设备挂上去,跑通一次图像进、结果出;NPU放最后,能用轻量开源的就别自己写,接口降到AXI-Lite。这里有个容易被忽略的风险:地址映射和中断分发一旦卡住,可能两三周毫无进展,所以队里必须有人全职盯总线,另外两人一个保算法一个保文档和板级调试。如果到第二个月中旬最小系统还没通,就该果断砍掉NPU,把题目收缩成软核加图像加速器,完成度反而更好看。你们现在手上有能跑通的软核例程吗?

  • 新手村

    先对齐一下你们的处境:三个人、四个月、没人碰过总线,这其实不是技术难度问题,是任务分配问题。我的判断标准很简单,队里有没有一个人愿意在接下来六周把总线互联当成唯一任务,其他事一概不碰。有,这题可以打;没有,趁早换纯图像题,别耗到第二个月才发现没人扛得动。

    为什么这么看重这一点?因为软核加加速器的最小系统,卡人的地方往往不是Sobel算法也不是NPU结构,而是地址映射对不上、中断进不来、仿真波形看不懂却不知道从哪查。这类问题没法靠三个人一起开会解决,必须有一个熟手持续泡在里面。

    具体拆法上,第一周别写代码,先把高云工具链跑通,软核例程生成比特流、烧板、串口出字符,这一步通了心里就有底。然后直接拿现成的AXI Crossbar,别自己写互联,挂UART打印hello world算第一个里程碑。再把Sobel包成AXI从设备接进去,跑通一次图像进结果出。NPU放最后,用轻量开源方案,接口降到AXI-Lite,能跑就行。

    还有个替代思路:如果没人愿意全职啃总线,可以把题缩成单核RISC-V加一个自定义加速器,NPU只做接口预留和文档说明,完成度反而更高。企业命题评分一般看系统闭环,不看IP数量。你们那位写文档的同学其实很关键,但前提是前面得有人把系统跑起来。顺便问一句,你们现在高云的工具链装好、板子能烧进去了吗?

  • 电子工程学生

    先别急着在冲奖和陪跑之间二选一,我更想先看你们队里有没有一个人能在这四个月里把总线这件事当成唯一任务。异构SoC听着唬人,真正卡住绝大多数队伍的其实不是算法,而是地址映射对不上、中断进不来、仿真波形看不懂这几个很琐碎的点,而这些东西没法靠三个人开会解决,得有人持续泡在里面。如果你们能指定出这么一个人,这题值得试;指定不出来,趁早换纯图像题,别拖到第二个月才发现没人扛。

    拆法上我建议把目标砍到单核RISC-V加一个加速器,别一上来就画完整异构的框图。第一周先不写代码,把高云工具链跑通,软核例程能生成比特流、能烧板、串口能出字符,这一步通了心里就有底。第二步直接拿现成的AXI Crossbar,别自己写互联,挂个UART打印hello world,这算第一个真里程碑。第三步再把你们那个Sobel包成AXI从设备挂上去,跑通一次图像进、结果出。NPU放到最后,能用轻量开源的就别自己从头写,接口降到AXI-Lite就行。

    再补一个容易被忽略的点:文档那位同学别真的只写文档,让他负责板级调试记录和里程碑验收,否则进度一乱队里就没人踩刹车。至于国奖,一般来说评委更看系统能不能跑通、有没有工程闭环,而不是你堆了多少IP,所以把最小系统做扎实比什么都强。你们现在高云的工具链装上了吗,板子到手没有?

登录后可在本页底部提交回答

提问者

ScriptBoy查看主页
浏览「其他」

描述场景与已尝试方案,更容易获得有效解答

相关问题

同分类

提问建议

  • 标题写清核心疑问,避免「求助」「请问」等空泛用语
  • 正文补充环境、版本、报错信息或截图
  • 先搜索本站是否已有相近问题,减少重复提问
  • 若与课程相关,请标明课时或章节便于讲师定位