Executando uma VM 486 no Sipeed Tang: Uma façanha de amador

2025-09-13

O autor portou com sucesso o core ao486 PC do MiSTer para o Sipeed Tang 138K FPGA, criando um projeto chamado 486Tang. Isso marca a primeira vez que o ao486 foi portado com sucesso para uma FPGA não-Altera. A porta apresentou vários desafios, incluindo gerenciamento de memória (usando SDRAM para memória principal, DDR3 para o framebuffer), armazenamento em disco (acesso direto ao cartão SD) e um processo de depuração complexo. Para superar as dificuldades de depuração de hardware, o autor utilizou inteligentemente o Verilator para simulação de subsistema e de sistema inteiro, usando mensagens de depuração do Bochs BIOS e flags de rastreamento personalizadas para identificar problemas. Por fim, por meio de uma série de otimizações de desempenho, como redução de árvore de reset e fan-out, otimização de busca de instruções e otimização de TLB, o 486Tang atingiu aproximadamente os níveis de desempenho do 486SX-20. Este projeto demonstra as impressionantes habilidades de desenvolvimento de FPGA e a capacidade de resolução de problemas do autor.

Leia mais
Desenvolvimento