Risco-5

Documentação Risco 5

Logo do processador

Autor: Julio Nunes Avelar

Autor da logo: Mateus luck

Licença Hardware: CERN-OHL-P-2.0

Licença Software: MIT

Sinais e pinagem dos módulos: signals.md

Lista de instruções suportadas: instructions.md

Familia Risco 5:

Testes

O diretório testes possui alguns testes para os módulos do projeto. Os testes foram feitos para serem utilizados para o Iverilog, para executar os testes basta utilizar o iverilog e o vpp, como no exemplo abaixo:

iverilog -o build/core_test.o -s core_tb src/core/* src/peripheral/memory.v tests/core_test.v
vvp build/core_test.o

Software

O diretório software possui pelo menos um exemplo em assembly para cada instrução suportada, além disso possui um arquivo de memória para cada exemplo. Na raiz do diretório está disponível um script para conversão de assembly em arquivo de memória, o mesmo pode ser utilizado como no exemplo abaixo:

./generate_mem.sh
>addi

FPGA

O projeto oferece suporte a teste em algumas FPGAs, sendo elas:

Os exemplos estão disponíveis no diretório FPGA. Para FPGAs sipeed (Tangnano 9k e 20k) os exemplos foram feitos utilizando a IDE gowin, e para as FPGA Lattice/ColorLight os exemplos foram feitos utilizando o Yosys + NextPNR e podem ser sintetizados e flashado utilizando o makefile disponível nos diretórios.

Maquina de estados da unidade de controle e Esquemático

Versão PDF dos diagramas Maquina de estados da unidade de controle Esquemático do processador

Maquina de estados da unidade de controle

Maquina de estados da unidade de controle

Esquemático do processador

Esquemático atual Esquemático atual do processador

Esquemático Inicial Esquemático antigo do processador

Debug