Services and Modeling for Embedded Software Development
Embecosm divider strip
Prev  Next

3.2.1.  Source Code for Example Models and Programs

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.

Embecosm divider strip