RISC-V es una arquitectura abierta de procesador relativamente novedosa, que pretende ser universal y tener una larga vida. Esta iniciativa ha generado gran interés, existiendo ya abundante documentación y una amplia variedad de recursos hardware y software para RISC-V.
Además de realizar un acercamiento a la arquitectura RISC-V, este TFG pretende recopilar y desplegar distintas herramientas (en la medida de lo posible, también abiertas) que pudieran resultar de utilidad para el proceso de enseñanza/aprendizaje de esta arquitectura. En concreto, se evaluarán alternativas a nivel de simulación, pero también se pretende realizar una aproximación al empleo de placas de desarrollo (PCB) basadas en procesadores RISC-V, abordar la emulación de esta arquitectura, o incluso valorar el uso de herramientas en línea.
El objetivo final será determinar las ventajas e inconvenientes de cada uno de los enfoques (simulación, placas de desarrollo, emulación...), y recomendar alguna de las herramientas analizadas, siempre desde la perspectiva de su posible uso docente.
El trabajo se iniciará necesariamente con un periodo de familiarización con la arquitectura RISC-V, al que seguirá un proceso de búsqueda y selección de las herramientas que serán estudiadas con mayor profundidad.
La metodología a emplear a continuación es muy diversa, dada la variedad de la naturaleza de las herramientas a analizar. Cada herramienta concreta necesitará de un periodo de estudio inicial, que irá seguido de una fase de instalación y, en su caso, configuración, para finalmente concluir con la realización de las pruebas pertinentes.
Como se ha indicado, tanto la selección de herramientas como su análisis se llevarán a cabo sin perder de vista la finalidad docente que se persigue. Para dicha selección se tendrá en cuenta un conjunto de criterios previamente establecidos que tendrán que ver, por ejemplo, con la funcionalidad de la herramienta, sus posibilidades de ampliación, el soporte que ofrece, etc.
En cuanto a las competencias de la tecnología específica de Ingeniería de Computadores que se abordarán en este TFG, son las siguientes:
[IC3] Capacidad de analizar y evaluar arquitecturas de computadores, incluyendo plataformas paralelas y distribuidas, así como desarrollar y optimizar software para las mismas.
[IC4] Capacidad de diseñar e implementar software de sistema y de comunicaciones.
[IC7] Capacidad para analizar, evaluar, seleccionar y configurar plataformas hardware para el desarrollo y ejecución de aplicaciones y servicios informáticos.
La ESII dispone de todos los medios necesarios para el desarrollo de este TFG. Para el trabajo con herramientas basadas en simulación y emulación se necesitarán ordenadores de sobremesa o portátiles. En el caso de la placa (o placas) de desarrollo, si fuera necesario, se adquirirá el equipamiento necesario para las pruebas.