next up previous contents
Next: 2.4.1 Model Module Up: 2. Solving Optimization Tasks Previous: 2.3 The VISTA Framework

2.4 The SIESTA Framework

The SIESTA framework is a newly developed framework based on the knowledge from the VISTA framework [40]. A detailed description of the features framework can be found in [56]. Here only a brief overview of the major functionality needed by the modules, described in the next chapters, is given.

The framework is divided into several modules the queue manager (qman), sequencer, model module, persistence module, and curve viewer. These modules sometimes require other modules, such as the optimize module described in Section 4.5.3 which depends on the queue manager (qman), model module and curve viewer. New applications can be built by the reuse of these basic modules. Figure 2.1 is a graph showing the dependencies of the modules.

Figure 2.1: Graph of the module dependencies in the SIESTA framework.
\includegraphics[width=\linewidth]{graphics/siesta_modules.eps}

The purpose of the modules in the order of their inheritance is listed below:

persistence The persistence module is able to save and reload settings of subclasses. The settings for the hosts and load-limits etc. are saved by this module.
sequencer The sequencer can find in a complex model built from several sequential and parallel models, the sequence of evaluations that have to be processed.
pif This module is used for manipulations on PIF2.3 files.
curve In the curve module, graphs stored in the curve format2.4 can be viewed and printed.
ipd In the ipd module a description of the IPL can be viewed and manipulated such that the inheritance of the variables of subclasses can be easily understood.
qman The queue manager distributes the jobs to the available hosts. It also performs the load balancing for an efficient usage of the computation resources.
model The model module provides functionality for the nesting of several submodels in a network model.
mmnt The mmnt module is a graphical front-end for the MINIMOS-NT device simulator.
optimize The optimize model enables the user to evaluate various optimization tasks. More details can be found in Section 4.5.3.
main The main module makes all submodules available to the user.

The rigorous object-oriented design of the internal data structures reduces the required code for the functionality.

The advantage of VLISP2.5 compared to Tcl/Tk [66] is the object system and large number of sophisticated basis classes for data manipulation, user interface generation, and handling of asynchronous events.



Footnotes

...PIF2.3
PIF (Profile Interchange Format) [13,15] is a file format for the storage of the entire design information generated by the process and device simulation.
... format2.4
The curve format is an ASCII representation of data points, like current over voltage (I/V) curves from a device simulation.
...VLISP2.5
VLISP [25] is an enhanced version of XLISP [2].



next up previous contents
Next: 2.4.1 Model Module Up: 2. Solving Optimization Tasks Previous: 2.3 The VISTA Framework

R. Plasun