000107925 001__ 107925 000107925 005__ 20211108144123.0 000107925 037__ $$aTAZ-TFG-2021-3966 000107925 041__ $$aspa 000107925 1001_ $$aSalamero Sanz, Javier 000107925 24200 $$aImplementation of cache prefetchers for the RISC-V DRAC processor 000107925 24500 $$aImplementación de prebuscadores de cache para el procesador RISC-V DRAC 000107925 260__ $$aZaragoza$$bUniversidad de Zaragoza$$c2021 000107925 506__ $$aby-nc-sa$$bCreative Commons$$c3.0$$uhttp://creativecommons.org/licenses/by-nc-sa/3.0/ 000107925 520__ $$aEl tiempo de acceso a memoria es un elemento clave en el rendimiento de todo procesador moderno. Un mecanismo que permite reducir este tiempo es la prebúsqueda, que consiste en mover datos a las memorias cache antes de que sean solicitados por el procesador. Existen diversas aproximaciones de este mecanismo, en este trabajo se han explorado algunas de ellas.<br />Por otra parte, la Unión Europea ha marcado como objetivo estratégico diseñar y fabricar procesadores de propósito general a través de la iniciativa EPI. La motivación tras esta iniciativa es la necesidad de desarrollar procesadores de diseño propio capaces de satisfacer una creciente demanda en computación a gran escala, a la vez que disminuir la dependencia de mercados externos. En el contexto de EPI, surgen muchos proyectos derivados, como el proyecto DRAC, cuyo objetivo es el desarrollo de un procesador de propósito general basado en la tecnología RISC-V y sus aceleradores, liderado por el CNS.<br />Este trabajo fin de grado consiste en el estudio, simulación, implementación e integración de un prebuscador de instrucciones en un procesador real, con el deseo de que forme parte del chip que finalmente se fabrique. El objetivo principal en este TFG es adquirir un visión global de todas las fases involucradas en el desarrollo de un módulo en un procesador. El procesador elegido es Sargantana, una de las líneas de trabajo dentro del proyecto DRAC. Se han estudiado diversos mecanismos de prebúsqueda, de los cuales se han analizado sus prestaciones a través de la simulación, utilizando benchmarks SPEC como aplicaciones de referencia. Finalmente, se ha escogido un prebuscador para su implementación en RTL utilizando el lenguaje de descripción VHDL. Además de verificar el correcto funcionamiento de la implementación, se ha comprobado que sea rápida y de bajo coste en silicio. Para ello, se han analizado los resultados de síntesis en una FPGA. Por último, se ha trabajado en la integración con Sargantana.<br />Durante el desarrollo de este trabajo se han puesto en práctica todos los conocimientos en el área de arquitectura adquiridos durante el grado. Tras él, se ha demostrado la aceleración que supone la prebúsqueda en un procesador y se ha comprendido la metodología a seguir en proyectos de la misma índole, además de descubrir su complejidad subyacente. Como finalización, se han planteado diversas vías para la continuación de este trabajo en un futuro. Se puede encontrar en https://github.com/Haz99/Sargantana-TFG} el repositorio del proyecto con los fuentes, scripts y casos de estudio utilizados.<br /><br /> 000107925 521__ $$aGraduado en Ingeniería Informática 000107925 540__ $$aDerechos regulados por licencia Creative Commons 000107925 700__ $$aIbáñez Marín, Pablo Enrique$$edir. 000107925 700__ $$aResano Ezcaray, Jesús Javier$$edir. 000107925 7102_ $$aUniversidad de Zaragoza$$bInformática e Ingeniería de Sistemas$$cArquitectura y Tecnología de Computadores 000107925 8560_ $$f756868@unizar.es 000107925 8564_ $$s963734$$uhttps://zaguan.unizar.es/record/107925/files/TAZ-TFG-2021-3966.pdf$$yMemoria (spa) 000107925 909CO $$ooai:zaguan.unizar.es:107925$$pdriver$$ptrabajos-fin-grado 000107925 950__ $$a 000107925 951__ $$adeposita:2021-11-08 000107925 980__ $$aTAZ$$bTFG$$cEINA 000107925 999__ $$a20210923185805.CREATION_DATE