Repositorio personal con las soluciones de la materia de Arquitectura de Computadoras Avanzada dictada durante el año 2021 para la creación de distintos microprocesadores de arquitectura RISC-V para FPGA. La misma, es la proveniente del kit de desarrollo Digilent Zybo Z7-20 versión B.2. La herramienta con la que se sintetizó el código es Vivado 2020.2. Por razones de facilidad de cálculo, se modfició el xdc para que, en vez de tener un clock de 125 MHz (8ns), se tenga uno de 50MHz (20ns)
Se escribieron los códigos en SystemVerilog para 3 modelos distintos de RV32i basados tanto en el ISA documentado en The RISC-V Instruction Set Manual v.20191213, versión sin privilegios como en el libro Digital Design and Computer Architecture - RISC-V Edition por Harris y Harris. Del libro es que salen las bases para las arquitecturas de todos los modelos de microprocesador.
Se debe destacar, que los códigos implementados en todo este repositorio, no fueron optimizados para alguna plataforma en especial.
Los modelos de RV32i son:
- monociclo (carpeta riscv32i)
- multiciclo
- pipelined
Para el mismo, se siguió como template la arquitectura propuesta en el libro
Ahora se muestra la arquitectura resultante en nivel RTL
A continuación, se muestran los resultados de la implementación que devuelve la herramienta
Siguiendo los lineamientos de Xilinx para encontrar la frecuencia máxima, tenemos que:
fm = 1/(T-WNS) = 1/(20ns - 1.617ns) = 54.4MHz