Pular para conteúdo

Entregas do semestre

As entregas do semestre são cumulativas e levam a um sistema computacional completo desenvolvido até o final. O objetivo principal das entregas parciais é permitir que os grupos consigam acompanhar o desenvolvimento do projeto e também o planejamento futuro de cada fase.

Entrega 1

Para essa entrega, os alunos devem planejar e desenvolver um processador RISC-V de 32 bits, com pipeline, que suporte o conjunto RV32I. Deve ser possível desenvolver programas em alto nível para o processador e executa-los corretamente no kit de FPGA.

Para realizar essa entrega, o grupo deve:

  • Compreender e desenvolver um pipeline para o processador RISC-V;
  • Compreender e desenvolver programas de teste para o processador;
  • Compreender e desenvolver um ambiente de execução (restrito ao momento) para o processador;
  • Compreender e utilizar o ambiente de execução em FPGA para implementar o processador;

Entrega 2

Para essa entrega, o conjunto de instruções do processador deve ser incrementado para suportar RV32IMA, novamente com suporte de software para execução em FPGA. Além disso, um primeiro periférico precisa ser desenvolvido e integrado ao processador.

Para realizar essa entrega, o grupo deve:

  • Compreender e desenvolver a cache L1;
  • Compreender e desenvolver um periférico para o processador;
  • Compreender e desenvolver um ambiente de execução (restrito ao momento) para o periférico;
  • Compreender e utilizar o ambiente de execução em FPGA para implementar o periférico;
  • Demonstrar um código que utilize as instruções e o periférico em FPGA;

Entrega 3

Para essa entrega, o conjunto de instruções do processador deve ser incrementado para suportar as instruções compactas. Além disso, outro periférico precisa ser desenvolvido em integrado ao processador.

Para realizar essa entrega, o grupo deve:

  • Compreender e desenvolver um periférico para o processador;
  • Compreender e desenvolver um ambiente de execução (restrito ao momento) para o periférico;
  • Compreender e utilizar o ambiente de execução em FPGA para implementar o periférico;
  • Demonstrar um código que utilize as instruções e os periféricos em FPGA;

Entrega 4

A meta para essa entrega é complementar o sistema computacional desejado. Além disso, o processador deve conseguir executar programas em alto nível, compilados para o conjunto de instruções RV32IMAC.

Todas as pendências de entregas anteriores precisam ser sanadas até a entrega final.

Avaliação

Cada grupo deve ter um repositório git para a disciplina. Esse repositório precisa ser fornecido no primeiro dia de aula e deverá ser utilizado para todas as entregas. Juntamente com o repositório, o grupo deve fornecer um arquivo README.md com as seguintes informações:

  • RA e nome dos integrantes do grupo;
  • Link para o próprio repositório;
  • Um arquivo com a apresentação para cada entrega do projeto;

Notas

As notas são individuais e serão atribuídas de acordo com a participação de cada aluno no projeto. A nota final será a média ponderada das notas de cada entrega conforme os pesos indicados na página da disciplina.