The code of the distribution is organized as follows.
configure
The main configuration script.
linux.cfg
An Or1ksim configuration file for use when running Linux.
progs-or32
A collection of OpenRISC 1000 programs which run on the models created. Binaries are provided as well as source, but to recompile the example programs requires the OpenRISC 1000 tool chain. See Embecosm Application Note 2. The OpenCores OpenRISC 1000 Simulator and Tool Chain: Installation Guide. [4] for more information on building the OpenRISC 1000 tool chain.
simple.cfg
An Or1ksim configuration file for use when running simple examples.
sysc-models
The SystemC code for the various models. A separate directory is provided for each model. In each case the models build on previous models using the C++ class inheritance mechanism.
logger
The simplest model, providing a base class wrapper to Or1ksim and connecting to a simple logger class, which can check the correct behavior of the bus. See Chapter 4 and Chapter 5.
simple-soc
The simplest complete SoC model, adding a UART and
terminal emulator to the Or1ksim model. The base
Or1ksim wrapper class from logger
is extended to allow other threads to execute. See Chapter 6 and Chapter 7.
sync-soc
This extends the SoC wrapper from
simple-soc
to add synchronized
timing. Derived classes of the UART and terminal
emulator also add synchronized timing. See Chapter 8.
decoup-soc
Decoupled timing is added to the SoC wrapper from
sync-soc
. A decoupled version of
the UART is also implemented. See Chapter 9.
intr-soc
This is a version of the SoC wrapper from
decoup-soc
which adds interrupt
handling. A version of the UART which supports
interrupt based operation is also implemented. This
allows Linux to be supported. See Chapter 10.
jtag-soc
The SoC wrapper from intr-soc
is
extended with an additional thread implementing a JTAG
interface. This allows code running on the model to be
debugged using a tool such as GDB. See Chapter 11.
uml
UML design information for all the models, created with BoUML is provided in this directory.
Various other files and directories are included. These form part of the standard GNU autotools infrastructure.