ARM Simulation using C++ and Multithreading
Suresh Babu S1, Channabasappa Baligar2

1Suresh Babu S, M.Tech Department of VLSI Design & Emd System, UTL Technologies, Bangalore India.
2Channabasappa Baligar, M.Tech Professor, Department of VLSI Design & Emd System, UTL Technologies, Bangalore India.
Manuscript received on 12 November 2014 | Revised Manuscript received on 22 November 2014 | Manuscript Published on 30 November 2014 | PP: 56-60 | Volume-4 Issue-6, November 2014 | Retrieval Number: F1862114614/14©BEIESP
Open Access | Editorial and Publishing Policies | Cite | Mendeley | Indexing and Abstracting
© The Authors. Blue Eyes Intelligence Engineering and Sciences Publication (BEIESP). This is an open access article under the CC-BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)

Abstract: This project is to be produced a software simulation of an ARM processor. A hardware simulator is a piece of software that emulates specific hardware devices, enabling execution of software that is written and compiled for those devices, on alternate systems. Aim of this project is to develop an ARM simulator using C++ and Multithreading, the same is tested with ‘GDB’ tool in Linux 2.6.37.4. The main feature of the project is the implementation of the ARM simulation with multithreading. The analysis phase of the project involved detailed studies of different ARM architectures and ARM assembly language. Most of the decisions about hardware components to include in the simulation and assembly instructions to support were to be made during this stage. This phase also involved identifying the requirements of the simulator. The next stage was design, in which the major parts are identified to develop the simulation part of an ARM processor. The implementation phase involved turning the major parts into code, following the design as closely as possible. C++ programming language is to be used as it is object oriented programming language to implement the project. Multithreading concept is to be adopted to execute decoding function and execute function, so that execution will become faster. GDB is to be used to debug the project.
Keywords: ARM, Simulation, Thumb, Multithreading.

Scope of the Article: Network Modelling and Simulation