Se há uma coisa que o Raspberry Pi community faz bem, é ultrapassar os limites do que essas placas são capazes. O criador Vlad Tomoiagă fez exatamente isso com este emocionante projeto de emulador RISC-V. Baseado no Mini-rv32ima, criado pela CNLohr, esta versão do Pico, apelidada de pico-rv32imaé capaz de executar o Linux.
O projeto conta com o núcleo do emulador Mini-rv32ima, que permite que o Pico execute o Linux. De acordo com Tomoiagă, ele usa dois chips SPI PSRAM de 8 MB como memória com 4 kB de cache para evitar gargalos da interface SPI. Tomoiagă explica que essa ideia veio do projeto uc32-rvima criado por um fabricante conhecido como xhackerustc.
Quando o Raspberry Pi Pico é inicializado, a imagem do Linux é copiada para a RAM antes de carregar o texto do kernel do Linux no console. Leva cerca de um minuto e trinta segundos para o sistema inicializar completamente. Tomoiagă teve a gentileza de compartilhar um demonstração em vídeo do processo de inicialização para quaisquer partes interessadas.
Não é preciso muito hardware para recriar este projeto, mas Tomoiagă adverte que o projeto faz overclock e overvolt do processador RP2040 e prossiga por sua conta e risco. Como a Pico é uma prancha acessível, o risco não é tão alto e achamos que vale a pena viver no limite pelo resultado final. Você precisará de um Raspberry Pi Pico, mas pode usar muitas das melhores placas RP2040 junto com um cartão microSD. São necessários dois chips SPI PSRAM de 8 MB. Neste caso, Tomoiagă está usando chips LY68L6400.
O cartão SD se conecta via interface SPI. O console pode ser acessado por UART, USB-CDC ou em um monitor. Em um exemplo, Tomoiagă está usando um monitor ST7735 com resolução de 128 x 160px. Isso é emparelhado com um teclado PS2 para entrada do usuário. O código usado neste projeto foi escrito principalmente em C e está disponível na página oficial do projeto em GitHub.
Se você quiser fazer este projeto Raspberry Pi sozinho ou apenas ver mais de perto como ele funciona, visite o site do projeto GitHub page e certifique-se de seguir Vlad Tomoiagă para mais projetos interessantes, bem como atualizações futuras sobre este.