More and more people want to run fully open source systems due to philosophical, privacy and security concerns, but on embedded systems with a GPU is often hard to achieve due to closed-source binary blobs. Projects such as Freedreno and Etnaviv have freed Qualcomm Adreno and Vivante GPUs, but it takes years to implement workable reverse-engineered open source GPU drivers.
One solution to get an open source graphics driver from the get-go is to implement the rendering into the CPU, but the problem is that it’s usually really slow, and GPU’s are much faster thanks to their ability to quickly handle parallel tasks. Kazan is a software-rendering Vulkan implementation, but it may be eventually end up as a low-end soft-GPU in some RISC-V SoCs thanks to specific instructions.
I found out about Kazan through the Libre RISC-V M-Class chip project that aims to be a low-power, mobile-class, 64-bit quad-core SoC clocked at a minimum 800 MHz clock rate and relying on Kazan implementation to provide a soft-GPU capable of handling 1280 x 720 output at 25 fps, 100 Mpixels/sec, 30 Mtriangles/sec, and 5-6 GFLOPs. This won’t break benchmark records, but if successful it would provide a nearly free-as-in-beer open source “GPU” can that be used for embedded systems requiring a display interface with 2D or 3D acceleration.
The project is now hosted on Debian, where you’ll find source code, tools, and documentation, including the SPIRV parser and shader compiler, as well as steps to get started. If you wonder about the custom RISC-V instructions that may be used for Kazan implementation, 64-bit Uniform Instruction Format Proposal.srt may be the file to read. While initially started in 2017, the project got dropped, before the developer decided to work again on it recently, and it will take a while before Kazan becomes mature, and silicon with the proposed RISC-V instructions is taped out.

Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress