[full instruction set]
[simulated instruction set]
The focus of this project has been to design and
implement a graphical simulation of the internal
operations of the M6800 microprocessor. The aim
was to create an application that could accept
user input in the form of assembly code, and see
the simulated execution of that code as it would
actually happen in the M6800. The specified purpose
of this software was that it was to be used by
students meeting microprocessor architecture for
the first time, under the supposition that seeing
the execution of an instruction would aid their
understanding. The fetch / execute cycle was to
be animated at a register transfer level, showing
register, bus and memory interactions.
Another objective was to create a portable
application, so that it could be used in a
variety of environments. This is necessary as
in the scenario of teaching the
equipment available may vary with venue.
The animation and portability features provided
by Java make it the ideal choice as the program
Background research was carried out into the
areas of microprocessor architecture and the
Java programming language, in order to
accumulate an extensive knowledge base
from which to begin the design.
The task was then divided into modules, each
of which should function almost independently
of each other. These modules were then implemented
and tested separately, until satisfactory operation
had been achieved. When all the modules were
completed, the whole system was constructed
and tested for correct operation.
The final software solution met most of the objectives
specified, reaching a satisfactory compromise between
features and reliability.