instruction.
Following the present section, this document in-
cludes a review and discussion of related work on
tools for CA education in Section 2, followed by an
overview of the implementation process behind the
eduARM platform in Section 3, and a description of
its user interface in Section 4. The validation process
is detailed in Section 5, and, to finalize, conclusions
are disclosed in Section 6.
Although valuable projects in this domain were
found, showcased in the State of the Art, none are
capable of completely responding to this problem.
Nonetheless, these tools’ good practices and features
presented a solid starting point for the development of
the eduARM web platform, an intuitive and interac-
tive approach to teaching and learning of the ARMv8
architecture.
2 STATE OF THE ART
Throughout this section, several tools dedicated to
CA education are presented, their various features are
discussed, as well as their positive and negative as-
pects. Finally, a comparison is made between the pre-
sented tools, highlighting which features were con-
sidered the most important for the platform and what
contribution its development can give to the field.
This section focuses solely on open-source tools
dedicated to RISC architectures, namely MIPS,
RISC-V and ARM, as these make up a much less
complicated processor compared to CISC architec-
tures (Gupta and Sharma, 2021), and are thus com-
monly adopted in CA courses.
SPIM is a self-contained MIPS simulator that
runs assembly language programs, considered the
most widely known and used MIPS simulator (Larus,
1990), both for education and the industry. Although
SPIM can be used for debugging assembly programs,
in order for the tool to thoroughly support the teach-
ing of CA, CPU datapath visualization is missing.
WebMIPS is an educational web-based MIPS sim-
ulation environment written in the ASP language.
This tool is a five stage MIPS pipeline simulator (Bra-
novic et al., 2004) and solely supports the MIPS ar-
chitecture and the pipeline version of the CPU, which
poses a great disadvantage. The platform can thus be
seen as outdated and easily surpassed by other similar,
more recent tools.
MARS, the Mips Assembly and Runtime Simu-
lator (Vollmar and Sanderson, 2006), was designed
as an alternative to SPIM, tackling most of its short-
comings and greatly outperforming it. Despite be-
ing a robust and useful tool for assembly debugging,
MARS has no CPU datapath visualization, no support
for pipelined architectures and is not available on the
Web.
DrMIPS is an open-source graphical simulator of
the MIPS processor, specifically designed for teach-
ing and learning CA (Nova et al., 2013). While this
project provides students with a robust and highly in-
tuitive tool that includes fundamental principles lec-
tured in CA, it exclusively supports the MIPS archi-
tecture, preventing its adoption in more recent higher
education courses. Nevertheless, its focus on edu-
cation and multitude of functionalities and visualiza-
tion make DrMIPS a valuable platform whose vision
served as a model for the tool presented in this paper.
RARS, or RISC-V Assembler and Runtime Sim-
ulator (Landers, 2017), is a direct port of the MIPS
simulator MARS. RARS, much like its MIPS counter-
part, focuses intensively on assembly debugging, con-
taining essentially the same features and also lacking
CPU datapath visualization and support for pipelined
architectures.
The BRISC-V Simulator is a browser-based as-
sembly programming simulator, which, together with
BRISC-V Explorer, makes up the BRISC-V Platform
(Agrawal et al., 2019). Similarly to several of the
already presented educational platforms, BRISC-V is
more focused on assembly debugging and does not in-
clude a display of the CPU datapath, as well as lack-
ing support for a pipeline version of the CPU.
The BRISC-V Explorer is an educational tool for
exploring CPU design, allowing the creation of single
or multi-core RISC-V processors. As the BRISC-V
Explorer provides a platform for CPU architecture de-
sign, this can be helpful for students to understand its
components on a deeper level. Since this tool is more
focused on architectural design, it is better suited for
more advanced CA classes (Agrawal et al., 2019).
VisUAL is an ARM emulator developed as a
cross-platform tool for ARM education, particularly
ARMv7 (Arif, 2015). Although this tool is not as fo-
cused on the CPU and its internal behaviour, and more
on assembly debugging, it includes multiple educa-
tional features that are useful for students and can be
taken into consideration while designing a new tool.
VisUAL only supports ARMv7, which was already re-
placed by ARMv8 in certain institutions, not being
suitable for aiding those students any longer.
The Graphical Micro-Architecture Simulator, also
called simply LEGv8 Simulator, is a web based
ARMv8-A ISA simulator, which, albeit still in BETA
version, delivers a complete and interactive environ-
ment for CPU visualization, both its unicycle and
pipelined versions (ARM, 2021). Despite being a
very complete platform, this simulator lacks certain
CSEDU 2023 - 15th International Conference on Computer Supported Education
342