Lista RISC-V selecionada
Lista de ferramentas RISC-V
Awesome RISC-V é um diretório curado de ferramentas open source RISC-V, núcleos de processador, placas de desenvolvimento e recursos de aprendizado.
Simuladores e núcleos RISC-V amplamente utilizados, com notas sobre seus criadores e origens.
Países
Brasil
O Brasil produz chips? O Brasil projeta chips, do microcontrolador RISC-V BlueMacaw a núcleos de pesquisa como o NoX, enquanto a fabricação nacional depende de fundições estrangeiras. A fábrica estatal CEITEC foi dissolvida por decreto em 2020.
Ler a entradaPaísUcrânia
A Ucrânia produz chips? A Ucrânia não tem fábrica de chips. O país está construindo uma indústria fabless que projeta chips internamente e os manda fabricar no exterior, além de possuir as maiores reservas de titânio da Europa.
Ler a entradaAprendizado
Especificações
Índice oficial das especificações ratificadas da ISA, perfis e plataformas do RISC-V, da RISC-V International.
Fonte das especificações da ISA para modos sem privilégios e com privilégios.
Diretivas do assembler, pseudo-instruções e sintaxe de realocação.
Convenção de chamada, uso de registros e formato ELF utilizados pelos compiladores RISC-V.
Cursos
Curso gratuito da Linux Foundation no edX que aborda o projeto prático de microarquitetura de CPU usando ferramentas de código aberto (TL-Verilog / Makerchip).
Ministrado pelo MIT.
Pela Universidade de Oakland.
Curso gratuito da Linux Foundation no edX; aborda a ISA do RISC-V, as especificações e o ecossistema; ponto de partida ideal para estudantes.
Pela UC Irvine.
Tutoriais
Aulas de montagem RISC-V para iniciantes com figuras interativas, traduzidas para vários idiomas e executáveis no simulador Lux.
Bootcamp interativo baseado em Jupyter Notebook para aprender projeto de hardware com Chisel.
Repositório do workshop que documenta a construção prática de uma CPU RISC-V TL-Verilog em cinco dias.
Página da Wiki com exemplos avançados de projeto de hardware com o Chisel utilizando os núcleos RISC-V Sodor.
Wiki com padrões e soluções do Chisel contribuídos pela comunidade.
Wiki da comunidade que documenta um caminho estruturado de aprendizagem para o projeto de hardware com o Chisel.
Notas de leitura comentadas sobre o código-fonte do gerador Rocket Chip.
Livros
Livro didático de código aberto sobre projeto de hardware usando o Chisel, com PDF gratuito disponível.
Livro didático gratuito e de código aberto (com versões em PDF) que aborda a linguagem de montagem RV32I desde os princípios básicos; mantido ativamente por John Winans.
Documentação
Referência de instruções do RV32IM com formatos de codificação, exemplos e expansões de pseudo-instruções.
Especificação formal da ISA do RISC-V.
Guia de referência rápida para a linguagem de projeto de hardware Chisel.
Documentação oficial da estrutura de projeto de SoC Chipyard.
Wiki oficial e introdução ao simulador visual Ripes RISC-V.
Artigos
Artigo de retrospectiva do ano abordando os principais marcos do silício de código aberto RISC-V em 2019.
Slides da ELCE 2018 sobre a implementação do Linux embarcado em plataformas RISC-V.
Recurso de aprendizagem introdutório para o processador Shakti RISC-V do IIT Madras.
Visão geral acessível da ISA básica do RISC-V e de suas extensões padrão.
Página da wiki do Debian sobre o status da portabilidade do RISC-V e instruções de compilação.
Tutorial sobre como escrever e visualizar código de assemblagem RV32I usando o simulador Ripes.
Página sobre a linguagem de especificação Sail ISA, usada para descrever formalmente o RISC-V.
Página sobre trabalhos relacionados ao RISC-V da UC Berkeley.
Coleção mantida pela comunidade com notas, links e recursos de aprendizagem sobre o RISC-V.
Vídeos
Transmissão ao vivo com explicação passo a passo de um programa “Hello World” rodando em hardware RISC-V.
Lista de reprodução no YouTube sobre como projetar uma CPU RISC de 32 bits personalizada do zero.
Da Western Digital Corporation.
Gravações do Workshop RISC-V realizado em Zurique, abordando o desenvolvimento de ISA e atualizações do ecossistema.
Artigos
Artigo defendendo interfaces de aceleradores de hardware gerenciadas pelo sistema operacional.
Artigo da IEEE sobre suporte de hardware personalizado para coleta de lixo em ambientes de tempo de execução gerenciados.
Artigo do IEEE sobre aceleração compacta de CNNs para visão embarcada.
Artigo do IEEE sobre gerenciamento de energia integrado para processadores vetoriais RISC-V.
Artigo do IEEE sobre núcleos vetoriais RISC-V energeticamente eficientes com conversores CC-CC integrados.
artigo técnico da Microsoft Research sobre aceleração de hardware dedicada para CNNs.
Ferramentas
Cadeias de ferramentas
Simuladores e emuladores
Assembler e simulador RV32IM baseado em navegador, com lições e uma referência de instruções.
Simulador oficial da ISA RISC-V usado como modelo de referência padrão.
Simulador e editor RV32IM que roda no navegador, utilizado no curso CS61C da UC Berkeley.
Simulador e depurador RV32 baseado em navegador, com visualização de memória e registros.
O principal emulador e virtualizador de máquina de código aberto; oferece suporte à emulação em modo de sistema e de usuário tanto para RV32 quanto para RV64.
O simulador mais rápido de Verilog/SystemVerilog.
Ambientes de projeto
Estrutura para o desenvolvimento ágil de sistemas em chip baseados em Chisel.
Ferramenta portátil de posicionamento e roteamento para FPGA.
Sistema de microcontrolador de núcleo único, baseado em núcleos RISC-V de 32 bits.
Plataforma SoC lowRISC construída com base no núcleo Rocket RISC-V.
Arquitetura de microcontrolador dos chips PULP mais recentes.
Ferramenta de exploração do espaço de projeto da arquitetura RISC-V baseada em navegador, desenvolvida pela Universidade de Boston.
Representação interna flexível para RTL.
Cadeia de ferramentas de compilação GNU para RISC-V.
Mecanismo de execução Chisel/Firrtl.
Compilação do ambiente de trabalho Gnome do Fedora no RISC-V.
Biblioteca de visualização de desempenho de ferramentas FPGA.
Linguagens de descrição de hardware
Verificação
Especificação formal da ISA RISC-V escrita em Sail, adotada como o modelo oficial de referência.
Conjunto de testes arquitetônicos que verifica se uma implementação segue a especificação RISC-V.
Gerador de instruções aleatórias em SystemVerilog e UVM para verificação de processadores RISC-V.
Estrutura de verificação formal de código aberto para processadores RISC-V.
Gerador aleatório de testes de tortura para processadores RISC-V.
Estrutura de verificação formal para processadores RISC-V.
Utilitários de teste para circuitos escritos em Chisel.
Gerador de instruções de código aberto baseado em SV/UVM para verificação de processadores RISC-V.
Testes unitários para processadores RISC-V.
Biblioteca da Metodologia Universal de Verificação (UVM) para fluxos de EDA de código aberto.
Ataques especulativos BOOM.
Testes automáticos de caixa preta.
Software
Sistemas operacionais
Status da portabilidade do Fedora, imagens e guias de instalação para placas RISC-V.
Imagens oficiais do Ubuntu para placas RISC-V e QEMU.
Status da portabilidade do FreeBSD e instruções para hardware e emuladores RISC-V.
Placas RISC-V compatíveis com o sistema operacional em tempo real Zephyr.
Implementações
Núcleos
Processador RISC-V de código aberto, de alto desempenho e com execução fora de ordem, desenvolvido pelo Instituto de Tecnologia da Computação da Academia Chinesa de Ciências.
Gerador de SoC RISC-V parametrizável da UC Berkeley.
Implementação RISC-V de 32 bits otimizada para FPGA, escrita em SpinalHDL.
Implementação experimental de RISC-V em Verilog, que cabe em um FPGA pequeno.
CPU soft-core de 32 bits personalizável e extensível da classe MCU e SoC, escrita em VHDL.
Processador RISC-V fora de ordem de Berkeley.
SoCs
Sistema em chip RISC-V de 32 bits para FPGAs iCE40 HX8K, iCE40 UP5K e ECP5.
Modelo para a criação de SoCs baseados em RISC-V utilizando ferramentas de código aberto.
Exemplo simples de SoC utilizando o PicoRV32.
SoC completo desenvolvido em torno da família de processadores Shakti RISC-V do IIT Madras.
Implementação em ASIC do PicoSoC PicoRV32.
Implementação de SoC RISC-V voltada para FPGAs da Xilinx.
Silício
Chip PULP, 330 MHz, 22 nm, 3.000 x 3.000 um.
Chip PULP, 500 MHz, 65 nm, 1.252 x 1.252 µm.
Chip PULP, 200 MHz, 65 nm, 2.626 x 2.626 µm.
Chip PULP, 500 MHz, 65 nm, 1252 x 1252 um.
Chip PULP, 15 MHz, 180 nm, 7.201 x 8.160 µm.
Chip PULP, 400 MHz, 65 nm, 2.626 x 2.626 µm.
Hardware
Placas
Projetos de hardware, documentação do SDK, ferramentas de programação e imagens de sistema para placas Allwinner D1, em chinês.
Placa de microcontrolador RISC-V compatível com Arduino da SiFive; um ponto de entrada acessível para programação embarcada bare-metal.
Computador de placa única RISC-V de 64 bits e quatro núcleos que roda Debian, Ubuntu e Fedora.
Computador de placa única BeagleBoard baseado no T-Head C910 quad-core.
Placa RISC-V de baixo custo baseada no chip Bouffalo BL808.
Documentação para as placas e módulos RISC-V Lichee e Maix da Sipeed.
Placa Linux embarcada ultracompacta e de custo extremamente baixo (US$ 5–US$ 9), baseada em um SoC dual-core RISC-V + ARM; ótima para aprendizado em IoT.
Microcontroladores
Placa baseada no RP2350, que pode inicializar com dois núcleos RISC-V Hazard3 em vez de seus núcleos ARM.
Microcontrolador RISC-V da Espressif com Wi-Fi e Bluetooth Low Energy.
Microcontrolador RISC-V de 32 bits da WCH vendido por alguns centavos por chip.
Por país
Brasil
Aula sobre a história da fabricação de chips no Brasil, a fábrica da CEITEC e os processadores RISC-V brasileiros, com fontes.
Microcontrolador RISC-V brasileiro de 32 bits com Bluetooth Low Energy para IoT, também chamado de u32BR, projetado pela UFCG, UFPR, UFSM, UnB e UFMG com financiamento federal.
Relatório da UFMG sobre os primeiros chips BlueMacaw fabricados, em português.
Palestra de Fernando Pereira, do Laboratório de Compiladores da UFMG, sobre o kit de desenvolvimento de software do u32BR, em português.
Processador RISC-V compacto de código aberto para sistemas em chip multiprocessadores, desenvolvido por pesquisadores brasileiros.
Programa nacional brasileiro que capacita projetistas de chips por meio de residências em microeletrônica.
Anúncio do Instituto Eldorado sobre um projeto conjunto com RISC-V para computação de alto desempenho.
Artigo da RISC-V International sobre a comunidade RISC-V no Brasil.
Colômbia
Grupo de pesquisa da Universidade Industrial de Santander responsável pelo mRISCV, um microcontrolador RISC-V de 32 bits projetado como o primeiro sistema em chip colombiano.
Artigo da eeNews Europe sobre a equipe da Onchip e o financiamento por trás do mRISCV.
China
Instituto de pesquisa que desenvolve o processador de código aberto de alto desempenho XiangShan.
Laboratório do ISCAS que contribui com suporte a RISC-V para compiladores, emuladores e distribuições Linux.
Ambiente de desenvolvimento e gerenciador de pacotes para hardware RISC-V, do ISCAS.
Cores RISC-V de código aberto C906 e C910ISC-V de código aberto da Alibaba T-Head.
Europa
Projeto da UE que desenvolve processadores europeus, incluindo aceleradores RISC-V para computação de alto desempenho.
Projeto da UE que visa construir um ecossistema europeu de IPs de processadores RISC-V e ferramentas de projeto.
Empresa tcheca que oferece IPs de processadores RISC-V personalizáveis e ferramentas de projeto.
Empresa de Barcelona que projeta núcleos RISC-V com unidades vetoriais para cargas de trabalho de IA.
Índia
Comunidade
Organizações
Organização sem fins lucrativos que detém e ratifica as especificações do RISC-V.
Repositórios oficiais das especificações, do modelo Sail e das ferramentas relacionadas.
Projeto do setor que financia o suporte ao RISC-V em compiladores, ambientes de execução, distribuições e kernels.
Organização sem fins lucrativos que apoia o silício de código aberto por meio de eventos, notícias e hospedagem de projetos.
Criadora da linguagem de descrição de hardware Bluespec e dos núcleos Piccolo, Flute e Toooba.
Projeto da Linux Foundation que desenvolve hardware de código aberto e ferramentas de projeto, incluindo o Rocket Chip.
Organização sem- sem fins lucrativos em Cambridge que mantém o núcleo Ibex e a raiz de confiança em silício OpenTitan.
Organização sem fins lucrativos que mantém a família CORE-V de núcleos RISC-V de código aberto, incluindo o CVA6.
Plataforma da ETH Zurich e da Universidade de Bolonha para núcleos e SoCs de código aberto com consumo ultrabaixo de energia.
Empresa fundada pelos criadores da ISA RISC-V, que publica IP de processadores, SDKs e ferramentas.
Linguagem de descrição de hardware baseada em Scala e sede dos núcleos VexRiscv e NaxRiscv.
Mantenedores do conjunto de ferramentas de síntese Yosys, do nextpnr e do riscv-formal.
Eventos
Fóruns
Grupos do Google
Lista de discussão da comunidade para usuários da linguagem de projeto de hardware Chisel.
Lista de discussão oficial do RISC-V para desenvolvimento de hardware.
Lista de discussão oficial para debates sobre o desenvolvimento da especificação da ISA do RISC-V.
Lista de discussão para educadores que utilizam o RISC-V em cursos e programas acadêmicos.
Contribuições
Sugestões são bem-vindas por meio de issues e pull requests. Adicione um link por pull request, coloque-o na seção correspondente e descreva-o em uma frase.
Agradecimentos
Esta lista teve origem nas listas a seguir, cujas entradas foram mescladas, verificadas e reorganizadas.
- suryakantamangaraj/awesome-riscv, CC0 1.0
- drom/awesome-riscv, CC0 1.0
- yunchenlo/awesome-RISCV-Cores, CC0 1.0
- Dragon-Git/awesome-riscv, Apache 2.0
- DongshanPI/Awesome_RISCV-AllwinnerD1, CC BY-SA 4.0
Licença
Esta lista está licenciada sob a Creative Commons Atribuição-Compartilhamento pela mesma licença 4.0. Cópias e adaptações devem citar Awesome RISC-V e serem divulgadas sob a mesma licença.

