EE学生一枚
可行,而且现在开源生态比以前好多了。难度上,如果你上过计算机组成和操作系统课,应该能扛下来;如果完全没接触过,建议先玩点简单的,比如用软核跑裸机程序。
主要挑战在于软硬件交叉调试。比如Linux启动时卡住,可能是硬件内存访问错误,也可能是软件配置问题。这时候需要硬件逻辑分析仪(像FPGA的ILA)和软件调试输出(UART打印)结合。
具体步骤:先找一个现成平台“抄作业”。推荐看两个:一是Digilent的Arty板子配套的VexRiscv Linux demo(GitHub上有),二是Colorlight的Linux-on-LiteX项目。它们提供了完整的硬件设计和软件镜像。你可以先让现成系统跑起来,然后尝试修改硬件配置(比如加个自定义外设),再修改内核驱动。
注意:选FPGA板时一定要确认有足够的逻辑资源和片外DDR,Xilinx的A7系列性价比不错。另外,社区很重要,遇到问题去RISC-V国际论坛或相关项目的GitHub issue里搜,很多坑别人都踩过了。
