Title: Application of UML for Hardware Design Based on Design Process Model
1Application of UML for Hardware Design Based on
Design Process Model
Authors R. Damasevicius, V. Stuikys
- Speaker Prof. Vytautas STUIKYS,
- Software Engineering Department,
- Kaunas University of Technology,
- Kaunas, Lithuania
-
- E-mail vystu_at_if.ktu.lt
- Phone 370-37-300399
2Content
- Motivation
- Higher-Level Abstractions Design Processes
UML-Based Specification - Taxonomy, Definition, Examples
- Metamodel for Conversion of a given Specification
from UML to VHDL - Design Flow, Experiments
- Evaluation, Discussion, Conclusions
3MOTIVATION
- MAIN DESIGN PROBLEM (Complexity and its
derivatives - quality, productivity, time-to
market) can be solved through - Higher Reuse content at all design levels
- System-Level Design
- Novel design methodologies (e.g., Platform-Based
Design) - Standardization initiatives
- RAISING THE ABSTRACTION LEVEL IN DESIGN
- We INTRODUCE 3 higher-level abstractions
- DESIGN PROCESSES
- UML for specifying Design Processes (PD)
- METAPROGRAMMING for specifying generic
functionality within a DP
4Design Processes within Platform-Based Design
General View
5Object-Oriented (OO) View to HL Design Processes
6High-level (HL) and Low-level (LL) Design
Processes
7UML Class Diagrams Graphical Notation
8Object-Oriented (OO) View to HL HW Design
Processes Taxonomy
- Basic Operations
- Refinement, Widening
- Narrowing, Containment
- Logical Composition, Physical Composition
- Design Patterns (processes) as a specific
combination of Basic Operations - Wrapping, Specialization
- Composition, Recursive Composition
9Example 1 Refinement
VHDL
UML
- Interface class is given in italic
- Refinement (HW domain) Realization (SW domain)
10Example 2 Widening
VHDL
UML
- Widening (HW domain) Inheritance (SW domain)
- Narrowing (HW domain) inversion of Widening (HW
domain)
11Example 4 Containment
VHDL
UML
- Containment (HW domain) Composition (SW domain)
12Example 5 Logical Composition
VHDL
UML
- Logical Composition (HW domain) Multiple
Inheritance (SW domain)
13Example 6 Physical Composition
VHDL
UML
- Physical Composition (HW domain) Composition
(SW domain)
14Wrapping Design Process
Block diagram
UML
- Wrapping Design Process (HW domain) ? Decorator
Design Pattern (SW domain)
- For details, and VHDL code see
http//soften.ktu.lt/stuik/dac03/
15Metamodel and Transformation from UML to VHDL (1)
- UML Interface VHDL Entity
16Metamodel and Transformation from UML to VHDL (2)
- UML Inheritance ? VHDL abstraction
- Inheritance (widening) is implemented using the
metaprogramming techniques
17Metamodel and Transformation from UML to VHDL (3)
- UML Realization Refinement (VHDL
entity-architecture)
18Metamodel and Transformation from UML to VHDL (4)
- UML Composition HW Containment (VHDL Port map)
19What Is a Design Process?
- Design Process (DP) is
- More than a simple design pattern
- A domain-specific generative process
- A pattern that includes
- documentation (well-proven models, natural
language descriptions, UML diagrams), which
describes a design solution, - domain code components, and
- tools (parsers, generators, etc.), which
implement the solution - For properties of DPs (see paper)
20Detailed Design Flow Automatic Generation of
Instances in VHDL
21Experimental Approval
- Design Problems very close to the Real World
Design Problems we have solved - IP Communication Problems
- Based on HandShake Model
- Based on FIFO Communication Model
- Reliable Components (sub-systems, IPs) based on
TRM - Based on SPACE redundancy
- Based on DATA redundancy
- Based on TIME redundancy
- Third-party Soft IPs Freely available the
coarse-grained components in VHDL (Free-6502
core, DRAGONFLY core, AX8 core, i8051
micro-controller, etc.) - Important note All above stated design problems
can be specified using the same PD- WRAPPER
DESIGN PATTERN
22Evaluation of the Approach at the Design Process
Level
- HW Design Processes (DPs) reside within some
framework such as Platform-Based Design - HW designers conceive DPs usually intuitively (on
previous knowledge and design experience basis) - In our view, DP is an abstraction (model) and it
can be treated at different levels of
abstractions - A HW DP not always matches to the SW DP
(Patterns) - Perhaps (our vision) HW DPs are richer than SW
DPs - The same DP can be expressed using different
relationships
23Evaluation of the Approach at the Specification
Level
- Advantages of using UML for HW design
- Graphical, OO, standard, well-documented, serious
efforts for applying in HW domain now, may serve
for converging SW/HW design - High level specification (abstraction) of a
designed system - Soft IP reusability, adaptability,
maintainability for reuse - Difficulties of using UML for HW design relate
with - Specification of interconnections between
components, generic domain functionality - Model validation, increased initial development
time - Relationship UML /non-OO HDL is not
well-understood yet - Expressiveness of UML for HW DP is not enough
- A little maturity in usage of UML for HW design
- Some problems with metamodel (UML subset/VHDL
subset)
24General Evaluation of the Proposed Approach
- Several problems are still left to be solved
- How to select a HDL to implement the OO model of
a system? - SystemC (an OO HDL) is better for HW modeling,
HW/SW co-simulation and IP reuse - VHDL (not an OO HDL) is better for optimization
and synthesis - Which specification method is better for HW
design block-based or OO? - Block diagrams are more common for HW designers.
They are more straightforward and are oriented at
interconnecting components - UML class diagrams are more intuitive and
oriented at reusing and customizing components
25SUMMARY CONCLUSION
- We have shown that High-level Abstractions play a
key role in System-Level Design - We have introduced and discussed 3 types of
Abstractions for System-Level Design - Design Process as a higher-level (or meta) model
- UML for Specification and Implementation of the
model - MetaProgramming for generic Specification
(partially) - We have (1) introduced taxonomy of UML- based
Design Processes at two levels Operations and
Design Patterns, (2) discussed Design Flow based
on MetaModel (UML-VHDL) and its implementation
using UMLStudio Tools, and (3) evaluated the
proposed methodology
26Application of UML for Hardware Design Based on
Design Process Model
- Thank You for Your attention !
- http//soften.ktu.lt/stuik/group/