Services and modeling for embedded software development
Separation strip between header and contents

Modeling

Most embedded software development relies on instruction set simulators for the SoC processor core. However effective coding requires modeling not just the processor, but the peripheral components and the environment in which the SoC will be used. For most development, high level functional models are required, but for performance analysis and low level driver development, fully cycle accurate modeling is essential.

Developing these models reliably, and in short time frames is a challenge. Embecosm has the skills and experience to supply them.

  • Hand coded high level functional models of custom peripherals;
  • Conversion of existing models to the latest OSCI SystemC TLM 2.0 standard;
  • Cycle accurate models generated from hardware descriptions using tools such as Verilator or ARC VTOC; and
  • Graphical models of the external environment, allowing the functionality of the developed software to be visualized realistically.

Embecosm's application note on modeling and model reuse was the first publication to explain how to use the new OSCI SystemC TLM 2.0 standard for complete SoCs. More information.

The importance of modeling the external environment visually cannot be underestimated. This can be as simple as a terminal to display debug output from a UART port, to models of Ethernet PHYs that connect to the actual Ethernet of the workstation, allowing real traffic to exercise the embedded application.