Donut.c em um Chip: Renderização 3D Minimalista com Shifts e Adds

2025-01-12
Donut.c em um Chip: Renderização 3D Minimalista com Shifts e Adds

Este projeto descreve a portabilidade do clássico programa donut.c para um pequeno ASIC, alcançando renderização 3D de um donut usando apenas shifts e adições, eliminando a necessidade de multiplicação. Aproveitando CORDIC e ray marching, um design de 4 tiles foi submetido ao Tiny Tapeout 8, resultando em uma implementação de hardware em um chip de 130nm. Restrições de recursos levam a uma renderização grosseira, poligonal, mostrando a elegância do design de hardware minimalista.