<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="static/style.xsl"?><OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd"><responseDate>2026-05-05T18:38:36Z</responseDate><request verb="GetRecord" identifier="oai:uvadoc.uva.es:10324/50086" metadataPrefix="uketd_dc">https://uvadoc.uva.es/oai/request</request><GetRecord><record><header><identifier>oai:uvadoc.uva.es:10324/50086</identifier><datestamp>2025-02-13T08:12:09Z</datestamp><setSpec>com_10324_38</setSpec><setSpec>col_10324_852</setSpec></header><metadata><uketd_dc:uketddc xmlns:uketd_dc="http://naca.central.cranfield.ac.uk/ethos-oai/2.0/" xmlns:doc="http://www.lyncode.com/xoai" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:uketdterms="http://naca.central.cranfield.ac.uk/ethos-oai/terms/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:dc="http://purl.org/dc/elements/1.1/" xsi:schemaLocation="http://naca.central.cranfield.ac.uk/ethos-oai/2.0/ http://naca.central.cranfield.ac.uk/ethos-oai/2.0/uketd_dc.xsd">
<dc:title>Simulador de múltiples arquitecturas segmentadas de computadores</dc:title>
<dc:creator>Castro Caballero, Manuel De</dc:creator>
<uketdterms:advisor>Bastida Ibáñez, Javier</uketdterms:advisor>
<uketdterms:advisor>Torres de la Sierra, Yuri</uketdterms:advisor>
<dcterms:abstract>Los lenguajes ensambladores son comúnmente estudiados en asignaturas básicas sobre Arquitectura&#xd;
de Computadores para explicar el funcionamiento de los procesadores. Existe un conjunto&#xd;
significativo de lenguajes ensambladores surgidos de las distintas arquitecturas de computadores&#xd;
existentes. Dicho conjunto de lenguajes va en aumento conforme se desarrollan más arquitecturas&#xd;
hardware. Elegir qué lenguaje ensamblador estudiar y de qué modo es una decisión limitada a las&#xd;
tecnologías de desarrollo o simulación existentes para cada arquitectura.&#xd;
Este trabajo describe la implementación de un prototipo de simulador de lenguajes ensambladores&#xd;
con propósito docente escrito en Java. Este simulador ha sido desarrollado para soportar un&#xd;
conjunto extensible de lenguajes ensambladores distintos, centrándose en aquellos de arquitecturas&#xd;
RISC. Actualmente, está implementado el backend para ARM LEGv8, arquitectura descrita en&#xd;
Computer Organization and Design: ARM edition. Este backend implementa funcionalidades de&#xd;
segmentación de instrucciones, tales como las descritas en Computer Architecture: A Quantitative&#xd;
Approach, incluyendo la simulación de unidades funcionales multiciclo. También se ha implementado&#xd;
el backend para el subconjunto de instrucciones RV64I de RISC-V, validando la capacidad&#xd;
de extensión del simulador.&#xd;
El trabajo desarrollado en este proyecto ha dado lugar a dos publicaciones científicas que han&#xd;
sido aceptadas y serán presentadas en las XXXI Jornadas de Paralelismo 2020/2021 de la Sociedad&#xd;
de Arquitecturas de Computadores (SARTECO).&#xd;
Consideramos que la herramienta desarrollada puede ser de gran utilidad tanto para docentes&#xd;
como para estudiantes de asignaturas básicas de Arquitectura de Computadores.</dcterms:abstract>
<dcterms:abstract>Assembly languages are commonly studied in basic Computer Architecture courses to explain&#xd;
the inner workings of processors. A significantly large set of assembly languages has arisen from&#xd;
the various different computer architectures that exist. Said set is increasing as more hardware&#xd;
architectures are being developed. Choosing which assembly language to study in a subject and&#xd;
how to do so is a decision limited by the development and simulation tools available for each&#xd;
architecture.&#xd;
This project describes the implementation of a prorotype of an education-oriented, Java-based&#xd;
assembly language simulator. This simulator has been developed to support an increasing set&#xd;
of different assembly languages, focusing on those of RISC architectures. Currently, the ARM&#xd;
LEGv8 backend is implemented, whose architecture is described in Computer Organization and&#xd;
Design: ARM edition. This backend implements instruction pipelining functionalities such as the&#xd;
ones described in Computer Architecture: A Quantitative Approach, including the simulation of&#xd;
multicycle functional units. The RV64I subset of instructions from the RISC-V architecture has&#xd;
also been implemented, proving the extension capabilities of the simulator.&#xd;
The work developed in this project has led to the writing of two scientific articles that have&#xd;
been accepted and will be presented in the XXXI Jornadas de Paralelismo 2020/2021, organized&#xd;
by the Sociedad de Arquitectura de Computadores (SARTECO).&#xd;
We consider that the developed tool might be really useful to both undergraduate computer&#xd;
science students and Computer Architecture professors.</dcterms:abstract>
<dcterms:issued>2021</dcterms:issued>
<dc:type>info:eu-repo/semantics/bachelorThesis</dc:type>
<dc:language xsi:type="dcterms:ISO639-2">spa</dc:language>
<dcterms:isReferencedBy>https://uvadoc.uva.es/handle/10324/50086</dcterms:isReferencedBy>
<dcterms:license>https://uvadoc.uva.es/bitstream/10324/50086/3/license.txt</dcterms:license>
<uketdterms:checksum xsi:type="uketdterms:MD5">017313583e37a1e4d1253e1ef6c66c6c</uketdterms:checksum>
<dc:identifier xsi:type="dcterms:URI">https://uvadoc.uva.es/bitstream/10324/50086/1/TFG-G5236.pdf</dc:identifier>
<uketdterms:checksum xsi:type="uketdterms:MD5">2ba5929252998f49adada88820b64ac3</uketdterms:checksum>
<dc:rights>Attribution-NonCommercial-NoDerivatives 4.0 Internacional</dc:rights>
</uketd_dc:uketddc></metadata></record></GetRecord></OAI-PMH>