ARMSim# is a desktop application running in a Windows environment.
It allows users to simulate the execution of ARM assembly language programs on a system based on the
ARMSim# includes both an assembler and a linker and it also provides features not
often found in similar applications. They enable users both to debug ARM assembly programs and to
monitor the state of the system while a program executes. The monitoring information includes both
cache states and timing information. ARMSim# is also able to link object files produced by other applications.
An important feature not found elsewhere is the addition of graphical views, programmed as plugins, allowing execution of interactive interfaces and supporting interrupt processing. The main view included is that of a board including an ARM processor and a set of peripherals - buttons, LED lights, keyboard, small LCD screen. Other plugins are also included - for example, the simulation of a traffic light controller. Instructions on how to design and implement new ones are included.
ARMSim# has been developed by members of the Department of Computer Science at
the University of Victoria, in Victoria, British Columbia, Canada. It is distributed for free for
academic use. For commercial use, please contact the authors.