4.  Conclusion

This diploma thesis deals with a topic, every embedded controller software engineer uses, but usually does not think of. The simulation of CPUs to allow software debugging is well known, but the simulation of full chips in various environments drives system development into new spheres. In times of decreasing product cycle times and new technologies, becoming available faster and faster, the simulation sector will become consequently more important.

For me, it was fascinating to see that there are already many approaches and products to face the full chip simulation challenge, that there are already a few groups developing standards for this topic, and to see the refinement is growing every year.

The main advances in my personal knowledge were the techniques, to simulate systems, how specifications of hardware are to be read and interpreted, and how they can be transferred to a piece of software. It was an experience to experiment with software, to find a very performant, but still comfortable, middle course between raw, fast and hard-to-read C programming and the object oriented software paradigm of C++. In many ways, object oriented software offers solutions that are nice to implement and nice to read, but the strict object oriented design also often costs performance. These points are better solved with plain C. In other parts, the usage of plain C does not result in a better performance but in complicated statements and functions that are easier to express in C++. As an example take implementing functions as class members. This may be nice to read, but the “this” pointer of object instances, passed to every method as a hidden argument, costs performance for often-called methods.

Another gain in experience was the transfer of standards to existing implementations. Things that were difficult to understand when reading the user’s manual of the model manager became clearer when reading the corresponding standards.

Simulator engines, caring of full systems, and integrated into various environments gives engineers the power to effectively design electronic systems for devices of the 21st century. I hope, my diploma thesis can help a little to improve this.