You are on page 1of 4

PROGRAM MODELING CONCEPTS

Introduction

Modelling processes are used for software analysis and design before software implementation. A
software analysis and design helps (a) A description of the system requirement (b)A description of
how system works(c) Shows system validation

Graphical modelling languages use a diagram technique with named symbols that represent
concepts and lines that connect the symbols and represent relationships and various other graphical
notation to represent constraints.

Ways of Modelling an Embedded System

1. Sequential Program Model

Sequential programming models are used in industrial solutions usually. Sequential programming
model is named linear programming model too. These programs are composed from four software
component: initialization, reading status of the inputs, calculation or processing, refreshing values of
the outputs. Figure 1 illustrates the simplified flow chart of program based on sequential
programming model.

The advantage of sequential programming model is the design of program is very similar to classical
logical circuit design method. Simultaneously (in time) reading of all inputs and writing of all outputs
exclude the hazard known in logical circuits.

The disadvantage of the model is the source code contains lots of if-else control structures and
therefore is incomprehensible case of writing complex programs. Other disadvantage of the model is
the poor utilization of processor. The program always recalculate the values of outputs, regardless of
there is any change on inputs. The program based on this model is always running, therefore uses all
CPU time. The reaction time of program depends on the program complexity due to constant
recalculations.

Example:
2. Data Flow graph (DFG) Model

 The Data Flow Graph (DFG) model translates the data processing requirements into a data
flow graph.
 The Data Flow Graph (DFG) is a data driven model in which the program execution is
determined by data. This model emphasizes on the data and operations on the data which
transforms the input data to output data.
 Indeed DFG is a visual model in which the operation on the data (process) is represented
using a block (circle) and data flow is represented using arrows. An inward arrow to the
process (circle) represents input data and an outward arrow from the process (circle)
represents output data in DFG notation.
 Embedded applications which are computational intensive and data driven are modeled
using the DFG model. DSP applications are typical examples for it.
 Suppose one of the functions in our application contains the computational requirement
x=a+b; and y=x-c. Following figure shows the implementation of a DFG model for
implementing these requirements.
 In a DFG model, a data path is the data flow path from input to output. A DFG model is said
to be acyclic DFG if it doesn't contain multiple values for the input variable and multiple
output values for a given set of inputs. A DFG model translates the program as a single
sequential process execution.

3. Control Data Flow Graph (CDFG) Model


4. Synchronous Data Flow Graph(SDGF) Model

5. Finite States Machine(FSM) Model

You might also like