在 Sipeed Tang 上运行 486 虚拟机:一个业余爱好者的壮举
2025-09-13
作者成功地将 MiSTer 的 ao486 PC 核心移植到 Sipeed Tang 138K FPGA 上,创造了名为 486Tang 的项目。这代表着 ao486 首次成功移植到非 Altera FPGA 平台。移植过程中,作者面临诸多挑战,例如内存管理(使用 SDRAM 作为主内存,DDR3 作为帧缓冲区)、磁盘存储(直接访问 SD 卡)和复杂的调试过程。为了克服硬件调试的困难,作者巧妙地利用 Verilator 进行子系统和全系统仿真,通过 Bochs BIOS 的调试信息和自定义的跟踪标记来定位问题。最终,通过一系列性能优化,例如重置树和扇出减少、指令提取优化和 TLB 优化,486Tang 达到了 486SX-20 的性能水平。这个项目展现了作者精湛的 FPGA 开发技能和强大的问题解决能力。
开发