A working prototype of the FuryGpu project has been presented, developing a custom GPU based on the Xilinx Zynq UltraScale+ FPGA, designed as a separate board that connects to a PC via a PCIe interface. Hardware block descriptions are implemented in SystemVerilog, and the board design is prepared in the free PCB design software KiCAD. In its current state, the FuryGpu GPU already allows running the game Quake with a rendering performance of 60 FPS at a resolution of 1280 x 720.
The project has been under development since 2021 as a hobby by a programmer specializing in computer game development and interested in hardware. The board schematics, Verilog descriptions, and drivers are currently not publicly available, but the project author has stated intentions to release all related FuryGpu developments after agreeing on some legal matters with their employer (the agreement is necessary to protect against potential claims from the employer).

At its current stage of development, the capabilities of FuryGpu are comparable to an advanced graphics card from the mid-1990s. The GPU's functionality is defined by a set of fixed functions; support for programmable shaders is not yet available, and the main focus is on components for rendering, rasterization, and texture processing. For performing graphical operations, there is a dedicated graphics API called FuryGL, resembling the Vulkan API but incompatible with it due to the lack of shader support.
Among the already available features are:
- Four independent tile rasterizers;
- GPU operation at 400MHz, texture control block operation at 480MHz;
- Frontend for performing floating-point operations (fp32);
- A texture mapping and processing block supporting linear and bilinear filtering with MIP texturing support;
- PCIe Gen 2×4 interface. Available DisplayPort and HDMI ports for monitor connection.

Source: opennet.ru
