Transcript Models.ppt
Essential Issues in Codesign:
Models
Part of
HW/SW Codesign of Embedded
Systems Course (CE 40-226)
Winter-Spring 2001
Codesign of Embedded Systems
1
Today programme
Essential issues in codesign
Models
Architectures
Languages
Winter-Spring 2001
Codesign of Embedded Systems
2
Models
Model should be
Formal => avoid ambiguity
Complete => can describe entire system
Comprehensible and easy-to-modify
Model vs. Language
We use a model to decompose a system into
pieces (Model implies a way of thinking)
We generate a specification by describing these
pieces in a particular language (Language is a tool
for description)
Winter-Spring 2001
Codesign of Embedded Systems
3
Models:
Finite-State Machines (FSM)
A set of states and a set of transitions
between them
Most popular model for control systems
Formal definition
<S,I,O,f,h>
Depending on output function (h)
Mealy machine / Moore machine
Winter-Spring 2001
Codesign of Embedded Systems
4
Models:
Dataflow Graph (DFG)
Most popular model for computation-intensive
systems
Its basic principles
Asynchrony: all operations execute when and only
when all its operands are available
Functionality: operations are functions with no
side-effects => execution order is not important
Formal definition
<N,A,V,v0,f>
Winter-Spring 2001
Codesign of Embedded Systems
5
Models:
FSM with Datapath (FSMD)
Both control and computation are
required in most systems
FSMD is a combination of FSM and DFG
models
Formal definition
<S,I,O,f,h>
f = {fC,fD}
h= {hC,hD}
Winter-Spring 2001
Codesign of Embedded Systems
6
Models:
FSM with Datapath (cont’d)
Neither FSM nor FSMD are suitable for
complex systems
Concurrency
Explosion in states
Hierarchy
Explosion in arcs
Winter-Spring 2001
Codesign of Embedded Systems
7
Models:
Hierarchical Concurrent FSMs
Extension of FSM, supporting
concurrency and hierarchy
Like FSM: sets of states and transitions
Unlike FSM: each state can consist of
concurrent substates
Transitions can be structured or
unstructured
An example language: Statecharts
Winter-Spring 2001
Codesign of Embedded Systems
8
Models:
Programming Languages
Heterogeneous model
support data, and control modeling
Major PL types
Imperative (C, Pascal)
Control-driven model of execution
Declarative
Demand-driven / Pattern-driven model of
execution
Winter-Spring 2001
Codesign of Embedded Systems
9
Models:
Programming Lang. (cont’d)
Declarative languages
No explicit order of execution
Focus on defining target of the computation
through a set of functions of logic rules
Imperative Languages
Variety of data-structures
Support hierarchy (functions of procedures)
Support control-flow
Well-suited for modeling an algorithm
Winter-Spring 2001
Codesign of Embedded Systems
10
Models:
Programming Lang. (cont’d)
Main disadvantage
Do not explicitly model system states
Winter-Spring 2001
Codesign of Embedded Systems
11
Models:
Program-State Machines
Combination of HCFSM with PL
Consists of a hierarchy of Program-states
Program-states
Leaf / composite program-states
Composite program-state
concurrent / sequential program-substates
Sequential program-substates
Transition-on-Completion (TOC) arc / Transitionimmediately (TI) arc
Winter-Spring 2001
Codesign of Embedded Systems
12
What we learned today
We use Models to decompose systems into
pieces, then use Languages to generate a
specification of those pieces.
FSM, DFG, FSMD, HCFSM, PL, PSM, ...
Winter-Spring 2001
Codesign of Embedded Systems
13
Complementary notes:
Extra classes
“Compiler Design Short Course” by Gh. Jaberi-Pur
“HW Synthesis Techniques Seminar” by S. Safari
Date-Time: Thursday, Esfand 18th, 9-12 o’clock
Place:
Date-Time: Saturday, Esfand 20th, 13-14:30
Place
“HW design using RenoirTM workshop” by A. Ganjei
Date-Time:
Place:
Winter-Spring 2001
Codesign of Embedded Systems
14
Complementary notes (cont’d)
Assignment 1.c becomes optional
Course webpage is ready
Subscribe to course mailing list
Send an email from your desired email address to
[email protected] containing:
subscribe ce226list
Project
Choose and announce your partner for the final
project
Winter-Spring 2001
Codesign of Embedded Systems
15