0% found this document useful (0 votes)
3 views51 pages

Module 4-6

The document outlines various computational models used in embedded systems, including Data Flow Graph, Control Data Flow Graph, State Machine, Sequential Program, Concurrent/Communicating Process, and Object-Oriented models. Each model is described with its characteristics, applications, and examples, highlighting their suitability for different types of processing requirements. The document emphasizes the importance of these models in hardware-software co-design for efficient system development.

Uploaded by

shodan1729
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views51 pages

Module 4-6

The document outlines various computational models used in embedded systems, including Data Flow Graph, Control Data Flow Graph, State Machine, Sequential Program, Concurrent/Communicating Process, and Object-Oriented models. Each model is described with its characteristics, applications, and examples, highlighting their suitability for different types of processing requirements. The document emphasizes the importance of these models in hardware-software co-design for efficient system development.

Uploaded by

shodan1729
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Hardware Software Co-Design:→

Computational Models in ES
Few of the computational models used in Embedded system are
listed below:
1. Data Flow Graph / Diagram (DFG) Model

2. Control Data Flow Graph / Diagram (CDFG) Model

3. State Machine Model

4. Sequential Program Model

5. Concurrent / Communicating Process Model

6. Object-Oriented Model
Hardware Software Co-Design:→ Computational
Models in ES
1. Data Flow Graph / Diagram (DFG)
Model:
• Translates the data processing
requirements into a data flow
graph
• A data driven model in which the
program execution is determined
by data.
• Emphasizes on the data and
operations on the data which
transforms the input data to
output data.
Hardware Software Co-Design:→
Computational Models in ES
1. Data Flow Graph / Diagram (DFG)
Model :→ Consist of
• Process:→The operation on the data,
represented using a block (circle)
• Data flow:→Is represented using
arrows.
– An inward arrow to the process
(circle) represents input data
– An outward arrow from the process
(circle) represents output data in
DFG notation
• Best suited for modeling Embedded
systems which are computational
intensive (like DSP applications)
Department of ISE BMS Institute of Technology and Mgmt
Hardware Software Co-Design:→
Computational Models in ES
2. Control Data Flow Graph / Diagram (CDFG)
Model :
• It is similar to DFG model but only difference
is:→ Contains both data operations and
control operations
• Model used for:→conditional program
execution
• Construction is same as DFG in addition:→it
has conditional (constructs) as decision
makers known as decision nodes.
The control• node is represented by a
‘Diamond’ block which is the decision
making element in a normal flow chart
based design
Hardware Software Co-Design:→
Computational Models in ES
2. Control Data Flow Graph / Diagram
If flag = 1, x = a + b;
(CDFG) Model : else y = a-b;
• Translates the requirement, which is
modeled to a concurrent process
model
• The decision on which process is to be
executed is determined by the control
node
• Example(Application):Digital Camera
– Capturing of image
– Storing it in the format selected
(bmp, jpg, tiff, etc.)
Hardware Software Co-Design:→
Computational Models in ES
3. State Machine Model :
• Based on ‘States’ and ‘State Transition’
• Describes the system behavior with:→
– States
• Representation of a current situation.
– Events
• Input to the state
• It acts as stimuli for state transition.
– Actions
• Action is an activity to be performed by
the state machine.
– Transitions
• Is the movement from one state to
another.
Hardware Software Co-Design:→ Computational Models in ES
3. State Machine Model :
• A Finite State Machine (FSM) Model is one in which the number of states
are finite. In other words the system is described using a finite number of
possible states.
• E.g. Automatic ‘Seat Belt Warning’ in an automotive
▪ When the vehicle ignition is
turned on:
▪ The seat belt is not fastened
within 10 seconds of ignition ON
▪ The system generates an alarm
signal for 5 seconds.
▪ The Alarm is turned off :
▪ The alarm time (5 seconds)
expires
▪ if the driver/passenger fastens
the belt or if the ignition switch is
turned off, whichever happens
first.
Hardware Software Co-Design:→
Computational Models in ES
3. Sequential Program Model:
• The functions or processing requirements are executed in
sequence
• The program instructions are iterated and executed
conditionally and the data gets transformed through a series of
operations
• FSMs are good choice for sequential Program modeling.
• Flow Charts is another important tool used for modeling
sequential program
• The FSM approach represents the states, events, transitions
and actions, whereas the Flow Chart models the execution flow
Hardware Software Co-Design:→
Computational Models in ES
3. State Machine Model :
• E.g. Model of Timer
Sequential Program Model:

E.g. Automatic ‘Seat Belt Warning’


in an automotive

Department of ISE
Sequential Program Model:
E.g. Automatic ‘Seat Belt Warning’
in an automotive

Department of ISE
Hardware Software Co-Design:→
Computational Models in ES
4. Concurrent / Communicating Process Model:
• Certain processing requirements are easier to model in
concurrent processing model than the conventional sequential
execution.
• Sequential execution leads to a single sequential execution of
task and thereby leads to poor processor utilization, when the
task involves I/O waiting, sleeping for specified duration etc.
• If the task is split into multiple subtasks, it is possible to tackle
the CPU usage effectively, when the subtask under execution
goes to a wait or sleep mode, by switching the task execution.
• Concurrent processing model requires additional overheads in
task scheduling, task synchronization and communication
Concurrent /Communicating Process Model:
E.g. Automatic ‘Seat Belt Warning’ in an automotive

Department of ISE BMS InstituteofofISE


Department Technology and Mgmt
BMS Institute of Technology and Mgmt
Hardware Software Co-Design:→
Computational Models in ES
5. Object-Oriented Model:
• It is object based model for system requirements.
• A Complex requirement→ into simple pieces called objects.
• This model brings:
– Reusability, Maintainability and Productivity.
• Object is represented as an entity
– Each object has a set of unique behaviour and state
• A class is an abstract description i.e. blue print of object.
• Member variables, member functions, private, public,
protected, inheritance, hiding, abstraction etc.

You might also like