ES Unit - 3
ES Unit - 3
In the traditional embedded system development approach, the hardware software partitioning is done at
an early stage and engineers from the software group take care of the software architecture development
and implementation, whereas engineers from the hardware group are responsible for building the hardware
required for the product. There is less interaction between the two teams and the development happens either
serially or in parallel. Once the hardware and software are ready, the integration is performed. The increasing
competition in the commercial market and need for reduced 'time-to-market' the p~oduct c'aus for a novel
~pproach for embedded system design in which the har~ware and software are co-developed instead of
1r.dependently developing both. •1 •• • •. •
During the co-design process, the product requirements captured from the customer are converted into
sys~m level needs or processing requirements. At this point of time it is not segregated as either hardware
requirement or software requirement, instead it is specified as functional requirement. The system level
I I •
¾ J•
ZC.atJ :_ .....
~21~0---------~~~
lntroductton to Embedded Systems
~~::::.:=-=-~.:.:.
:_------------ ---
processi.ng requirem
. , I
ents are then transferred into func
,
. tion s which can be simulated and veri fied
performance and functionality. The Archite aga·Inst
cture design follows the syste~ desi.gn. ~e ..
1eve1processi.ng requi•rements into hardware and software takes place during the arch partition of systein
Each system level processing requirement . itecture design Phas
is mapped as either hardware a~d/o~ soft . . e.
. . • •
partitiomng 1s per1&orm ed based on the hardware-software trade-offs. war e req~tren ient. The
1
.
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 (ADFG) if it doesn't contain multiple
values for
the input variable and multiple output values Data flow node
for a given
set of input(s). Feedback inputs (Output
is fed back
to Input), events, etc. are examples for
non-acyclic ·.y
inputs. A DFG model translates the program
as a single Fig. 7.1 Data flow graph (OFG) model
• sequential process execution.
\ ◄
215
Hardware Software Co-Design and Program Mode/1/ng
C1011,
• 0 ne
Example 2
l for the following requirements.
Design a coin operated public telephone unit based on FSM mode
ok) of the telephone unit
1. The calling process is initiated by lifting the receiver (off-ho
to make the call.
2. After lifting the phone the user needs to insert a 1 rupee coin
er back on the hook (on-hook)
3. If the line is busy, the coin is returned on placing the receiv th
If the line is through, the user is allowed to talk till 60 secon ds and at the end of 45 second, prompt for
4.
inserting another 1 rupee coin for continuing the call is initiated
nated on completing the 60 seconds time
5. If the user doesn't insert another 1 rupee coin, the call is termi
slot.
er fa placed back on the hook (on-hook)
6. The system is ready to accept new call request when the receiv
line fault.
7. The system goes to the 'Out of Order' state when there is a
and it doesn't take care of scenarios like,
The FSM model shown in Fig. 7.6, is a simple representation
receiver, user inserts coins other than a one
user doesn't insert a coin within the specified time after lifting the
ise.
rupee etc. Handling these scenarios is left to the readers as exerc
reme nts into sequence driven program and it
Most of the time state machine model translates the requi
limitation is addressed by the Hierarchical/
is difficult to implement concurrent processing with FSM. This
M is an extension of the FSM for supporting
Concurrent Finite State Machine model (HCFSM). The HCFS
diagrams by the AND, OR decomposition
concurrency and hierarchy. HCFSM extends the conventional state
mechanism for communicating between
of States together with inter level transitions and a broadcast
the states, transitions, events and actions.
concurrent processes. HCFSM uses statecharts for capturing
for popular statecharts used for the HCFSM
The Harel Statechart, UML State diagram, etc. are examples
ly represented using geometric shapes like
modelling of embedded systems. In statecharts, the state is usual
hart uses a rounded rectangle for representing
rounded rectangle, rectangle, ellipse, circle, etc. The Harel Statec
they are marked with the event associated
s~te. Arrows are used for representing the state transition and
condition is also labelled with the arrow. The
With the state transition. Sometimes an optional parenthesised
the occurrence of the specified event. Lots of
~on~tion specifies on what basis the state transition happens at
system modelling. The IAR visualSTATE
esign tools are available for state machine and statechart based
216 Introduction to Embedded Systems
.
.
~
.
..:,~
.'!ti} .
. te;
}t\~:~ . .
.
·c{/'
. .
.
.
..
.