Descripción
La mayoría de los
microprocesadores de los dispositivos electrónicos, computadores, celulares o
relojes inteligentes, están construidos alrededor de dos arquitecturas de
referencia (definidas por sus ISA – Instruction Set Architecture), la x86 y la
ARM-32. Estos dos ISA pertenecen y son desarrollados únicamente por dos
compañías, Intel y ARM respectivamente. Estas dos empresas acapararon casi todo
el mercado electrónico mencionado anteriormente hasta hace unos años.
Concretamente en 2019, cuando surgió una nueva ISA, RISC-V, que empezó a ser
tenida en cuenta en este mercado. A diferencia de x86 o ARM-32, RISC-V es un
conjunto de instrucciones que además de ser libre y abierto, su desarrollo no
depende de empresas privadas, como lo que sucede con sus competidores. Esto en
el campo comercial tiene muchas implicaciones, por ejemplo, si se requiere usar
algún chip con alguna ISA comercial se pueden necesitar hasta 2 años para
conseguir dicho permiso, lo que retrasaría mucho el diseño de alguna
aplicación, mientras los chips basados en RISC-V pueden ser usados sin pasar
por este tipo de negociaciones, lo ello tiene una ventaja comercial enorme
frente a sus competidores.
RISC-V al ser una ISA modular en
lugar de una incremental no ve necesario el incluir las instrucciones
desarrolladas desde el inicio de la arquitectura, sino que, al tener un núcleo
congelado, da la posibilidad de incluir las extensiones necesarias según la
aplicación a desarrollar. Esto tiene como ventaja no solo disminuir el costo de
fabricación, ya que se reduce su tamaño, sino también disminuye el tiempo de
ejecución de un programa implementado en dicha arquitectura. Consecuentemente,
a nivel comercial ha tenido una gran acogida, contando desde 2015 con RISC-V
International, una fundación que actualmente consta con más de 200 miembros,
entre los cuales se destacan grandes compañías como Huawei, ZTE, Western
Digital, entre otras. Sin embargo, a nivel académico son pocas las iniciativas
de Universidades y de propuestas no comerciales que desarrollen procesadores
RISC-V. Además, las propuestas que existen son limitadas en capacidades y
documentación, por consiguiente, este trabajo de grado busca realizar una
implementación que soporte programación en alto nivel y periféricos a la
medida, incluyendo una buena documentación al respecto. Igualmente, busca
evaluar el rendimiento del procesador desarrollado con el fin de mostrar sus
capacidades y su compatibilidad para que, con este procesador libre y abierto,
se pueda apoyar las clases de Organización de Computadores del Departamento de Ingeniería
Electrónica de la Pontificia Universidad Javeriana en la línea de Sistemas
Digitales.