FuryGPU - 一块由爱好者从零开始构建的开源GPU硬件

有人能从零开始制造 3D 显卡吗?迪伦-巴里(Dylan Barrie)想找出答案,并花了四年时间进行尝试。他的成果是一块完整的 GPU,理论上可以在 Windows 上运行旧版游戏软件。

图片

迪伦-巴里(Dylan Barrie)是一名游戏开发人员和硬件爱好者。在过去 14 年的游戏行业职业生涯中,Barrie 主要专注于图形渲染的软件方面。不过,四年前他开始利用业余时间开发定制的全栈 GPU。

巴里说,从头开始创建图形卡的过程简直是地狱般的煎熬,但经过四年的不懈努力,他终于可以与大家分享他的心血,现在附加卡的设计工作已基本完成。FuryGPU是基于 Xilinx Zynq UltraScale+ FPGA 设计的"真正的硬件 GPU"。该卡使用定制的印刷电路板,通过一个 PCIe 插槽与主机连接。

FuryGPU 可支持相当于 20 世纪 90 年代中期"高端"显卡的硬件功能,并为现代 Windows 版本提供完整的软件和驱动程序栈。该图形处理器可以以实时、可玩的帧速率渲染那个年代的游戏。巴利公司最终将通过开源许可发布硬件原理图、软件和驱动程序。

这位硬件自制者说,他决定从头开始制造图形处理器,因为他不知道 GPU 如何工作的"实际细节"。由于对软件方面的 3D 渲染过程"极为熟悉",巴里意识到创建 GPU 可能是一个虽然艰巨但可行的个人项目。

他花了"无数个小时"学习 FPGA 芯片如何工作,以及如何通过硬件描述、验证和实现语言SystemVerilog 来构建芯片设计。巴里说,设计 PCIe 图形卡的原理图是一项"艰巨的工作"。编写 Windows 驱动程序是该项目最痛苦的任务,这也许不足为奇。

开发人员编写了与 GPU 通信的自定义图形 API,并创建了管理显示和音频信号的 Windows 内核驱动程序。FuryGPU 可以以每秒 60 帧的"稳定"速度渲染《雷神之锤》(1996 年发布的初代),这对 90 年代的游戏玩家来说是一种真正的享受。

Barrie 计划在他的 FuryGPU 博客上撰写更多关于 GPU 制作冒险的文章,从显卡的纹理单元开始。他还希望优化他的定制《雷神之锤》构建版本,使其运行速度更快。