Rong Book fdl02
Rong Book fdl02
Rong Book fdl02
1. INTRODUCTION
Embedded System Design (ESD or just ES) is about the implementation
of a set of functionalities satisfying a number of constraints ranging from
performance to cost, emissions, power consumption and weight. Due to
complexity increases, coupled with constantly evolv ing specifications, the
interest in software-based implementations has risen to previously unseen
levels because software is intrinsically flexible. Unlike traditional software
design, embedded software (ESW) design must consider hard constraints
such as reaction speed, memory footprint and power consumption of
2 Chapter #
2. RELATED WORK
UML already has the capability to model the most relevant real-time
system features, such as performance (using tagged attributes or OCL [10]),
resources (using Component or Deployment Diagrams), and time (using
classifiers and tagged attributes). However, in absence of a standard and
unified modeling approach, the same embedded systems specification may
be modeled in several different ways. Therefore, how to use UML for
modeling real-time systems has become recently an active area of research
and several proposals have been made.
The Real-Time UML profile [3] defines a unified framework to express
the time, scheduling and performance aspects of a system. It is based on a set
of notations that can be used by designers to build models of real-time
systems annotated with relevant QoS parameters. The profile standardizes an
extended UML notation to support the interoperability of modeling and
analysis tools but touches little on platform representation. UML-RT [11] is
a profile that extends UML with stereotyped active objects, calle d capsules,
to represent system components. The internal behavior of a capsule is
defined using statecharts; its interaction with other capsules takes place by
means of protocols that define the sequence of signals exchanged through
stereotyped objects called ports. The UML-RT profile defines a model with
precise execution semantics; hence it is suitable to capture system behavior
and support simulation or synthesis tools (e.g. Rose RT). HASoC [5] is a
design methodology based on UML-RT notation. The design flow begins
with a description of the system functionality initially given in use case
diagrams and then in a UML-RT version properly extended to include
annotations with mapping information. De Jong in [9] presents an approach
that combines the informal notation of the UML Diagrams with the formal
semantics of SDL. It consists of a flow from the initial specification phase to
the deployment level that specifies the target architecture. The high-level
system specification is specified using use case diagrams; the system
components and their interactions are described using block diagrams and
message sequence charts, respectively. Then the behavior of each module is
specified using SDL that provides an executable and simulatable
specification.
Application Layer
UI Mulaw Mulaw
Transport Layer
Transport
MAC Layer
Filter MAC
Physical Layer
Transmit Receive
Synchronization
because there are several types of RTOS that can run on the Xtensa CPU and
several CPUs that can support the eCOS RTOS. Finally, we call <<share>>
the relationship among multiple entities that use services provided by the
same resource (e.g. in Figure 3, tasks sender and receiver share the same
CPU). In the presence of <<share>>, it is frequently necessary to deploy an
allocation or arbitration scheme, such as a scheduler.
< < task > > <<share>> < < task > >
Sender Receiver
<<use>> <<use>>
< < R T O S>>
eCos
<<use>> <<use>>
<<weak coupling>>
<<CPU>>
Xtensa
Tagged values (or called tags) are used to extend the properties of a
UML building block with additional information. In the UML Platform
profile, they are mainly used to specify QoS parameters, application
requirements, as well as communication types, usage types, etc. Examples of
relevant tags are: {throughput} for communication throughput, {delay} for
time delay between request and response, {precision} for calculation
precision, {power} for power consumption, {size} for memory size.
3.2 Platforms
abstraction level
network device API
RTOS c o m m u.
subsystem driver platform
I
µP and i n t e r- / ARC
HW
memory connection
o platform
low
Trans. PHY
ARC
Xtensa Silicon-
API backplane
I/O
eCos Sonics ASIC
OCP .
device
driver
4. CONCLUSIONS
In this paper we have presented a new UML Profile, called UML
Platform. We have introduced new building blocks to represent specific
platform concepts; selected proper UML diagrams and notations to model
platforms at different abstraction levels including QoS performance and
constraints. As future work we will develop a full design methodology and
tool set based on UML Platform.
REFERENCES
1. A. Sangiovanni-Vincentelli, Defining Platform-based Design, EEDesign, Feb 2002.
2. G. Martin, L. Lavagno, J. Louis-Guerin, Embedded UML: a merger of real-time
UML and co-design, Proceedings of CODES 2001, Copenhagen, Apr. ‘01, p.23-28.
3. Bran Selic, A Generic Framework for Modeling Resources with UML, IEEE
Computer, June 2000, pp.64-69
4. J. Rumbaugh, I. Jacobson, and G. Booch, The Unified Modeling Language User
Guide, Addison-Wesley, 1998
5. P. N. Green, M. D. Edwards, The modeling of Embedded Systems Using HASoC,
Proceedings of DATE 02.
6. ARTiSAN Software Tools, Inc. et al., Response to the OMG RFP for
Schedulability, Performance, and Time, OMG document number: ad/2001-06-14,
June, 2001.
7. J. da Silva Jr., M. Sgroi, F. De Bernardinis, S.F Li, A. Sangiovanni-Vincentelli and
J. Rabaey, Wireless Protocols Design: Challenges and Opportunities. Proceedings
of the 8th IEEE International Workshop on Hardware/Software Codesign, CODES
'00, S.Diego, CA, USA, May 2000.
8. Rosetta, www.sldl.org
9. G. de Jong, A UML-Based Design Methodology for Real-Time and Embedded
Systems, Proceedings of DATE 02.
10. J. Warmer, A. Kleppe, The Object Constraint Language: Precise Modeling with
UML, Object Technology Series, Addison-Wesley, 1999.
11. Selic, J. Rumbaugh, Using UML for Modeling Complex Real-Time Systems, White
paper, Rational (Object Time), March 1998.