|
ESL and software intersect in two ways—the process of creating
executable software using ESL methodologies and the use of ESL
models as the run-time environment for developing executable software.
The former is a natural outgrowth of the refinement of ESL models
to realized implementations, where software running on one or
more processors is just one of many implementation choices. Use
of ESL models for software development is important, and is emerging
for many reasons that result from the rise of SoCs.
In this chapter, we first review the classical embedded software
development methods to serve as a contrast to the newer methods
based on ESL methodologies, and then discuss ESL for software
development and development of software using ESL models as the
execution platform.
12.1 Introduction
12.2 Classical Software Development Methods for Embedded Systems
and SoCs
12.2.1 Performance Estimation
12.2.2 Classical Development Tools
12.3 Developing Run-Time Software from ESL Models
12.3.1 UML Code Generation Case Study
12.4 Developing Software Using ESL Models as Run-Time Environments
12.4.1 Classes of ESL Models for Software
Development
12.4.2 Observability for Debug and Analysis
12.4.3 Software Debug and Analysis Tools
for Highly Observable Systems
12.5 Provocative Thoughts
12.6 Summary
12.7 The Prescription
|