Object-Oriented Modeling for System Level Design - PowerPoint PPT Presentation

About This Presentation
Title:

Object-Oriented Modeling for System Level Design

Description:

Object-Oriented Modeling for System Level Design. Abdallah Tabbara. Bassam Tabbara ... of a design block starting at the system level ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 15
Provided by: abdallah1
Category:

less

Transcript and Presenter's Notes

Title: Object-Oriented Modeling for System Level Design


1
Object-Oriented Modeling for System Level Design
  • Abdallah Tabbara
  • Bassam Tabbara
  • A. Richard Newton
  • UC Berkeley

2
Project Goals
  • Model all aspects
  • Behavior
  • Communication
  • Structure
  • of a design block starting at the system level
  • Support specification, verification, and synthesis

3
Description
  • Use an Object-Oriented methodology for modeling
    designs at the system level
  • Object Modeling Technique (OMT) (Rumbaugh 91)
  • Graphical design entry
  • object model
  • dynamic model
  • functional model
  • Visual debugging environment
  • Specification can be verified, and synthesized

4
Technology
  • Objects
  • Instantiation
  • Encapsulation
  • Methods for Communication
  • Object-Oriented Input Specification
  • OOP, simple, compact, intuitive
  • implementation independent
  • no side-effects
  • Java define subset and policy

5
Modeling Issues
  • Hierarchy
  • Communication
  • Inputs
  • Outputs
  • Timing
  • Blocks
  • Combinational
  • Sequential

6
Object as the Building Block
  • Basic unit of the hierarchy
  • Methods
  • Interface
  • Communication
  • Private Variables
  • State
  • Instances of other Objects

7
Design Entry An Illustrative Example
  • Handshake protocol between two processes
  • Object Model
  • Object Producer
  • Object Consumer
  • Object HandShake

8
Design Specification An Illustrative Example (1)
  • Dynamic Model
  • describes the control aspects of a system
  • Functional Model
  • describes data value transformations

9
Design Specification An Illustrative Example (2)
10
Modeling in Java (1)
  • class Producer extends Block
  • private boolean Ready
  • // Constructor
  • public Producer(boolean i)
  • Ready i
  • // Methods
  • public void ComputeReady(boolean Ack)
  • Ready !Ack
  • return(!Ack)
  • public boolean ReadyStatus()
  • return Ready
  • class Consumer extends Block
  • private boolean Ack
  • // Constructor
  • public Consumer(boolean i)
  • Ack i
  • // Methods
  • public void ComputeAck(boolean Ready)
  • Ack Ready
  • return(Ready)
  • public boolean AckStatus()
  • return(Ack)

11
Modeling in Java (2)
  • class HandShake extends Block
  • // State
  • private int dataA, dataB
  • // Internal Objects
  • private Producer P
  • private Consumer C
  • // Constructor
  • public HandShake()
  • P new Producer(true)
  • C new Consumer(false)
  • // Methods
  • public int Output(int data_in)
  • if (P.ReadyStatus())
  • dataA data
  • if (C.AckStatus())
  • dataB dataA
  • // Latch
  • P.ComputeReady(C.AckStatus())
  • C.ComputeAck(P.ReadyStatus())
  • return dataB

12
Intermediate Design Representation
  • Class File Intermediate Format (CFIF)
  • Extracted from the Java Virtual Machine class
    file format.
  • Each class file contains one Java type either a
    class, or an interface.
  • CFIF output for the Producer in our example
    follows

methods2.access_flags ACC_PUBLIC
methods2.name_index ReadyStatus methods2.des
criptor_index ()Z methods2.attributes_count
1 methods2.attributes0.name_index
Code methods2.attributes0.max_stack
1 methods2.attributes0.max_locals
1 methods2.attributes0.code_length
5 methods2.attributes0.code0
aload_0 methods2.attributes0.code1
getfield -gt A Ready Z methods2.attributes0.cod
e4 ireturn ...
access_flags this_class Producer super_class
Block interfaces_count 0 fields_count
1 fields0.access_flags ACC_PRIVATE
fields0.name_index Ready fields0.descriptor_
index Z fields0.attributes_count
0 methods_count 3
13
Advantages of This Approach
  • Increased Productivity
  • HDL Lines per week
  • Intuitive Specification
  • Ease of Design Space Exploration
  • Block Level Methodology
  • better design reuse
  • Validation at the High Level
  • Potential for Formal Verification

14
Future Work
  • Incorporate Design
  • Validation (simulation)
  • Verification (formal)
  • Synthesis from CFIF
  • Hardware
  • Software

FOR MORE INFO...
Abdallah Tabbara atabbara_at_eecs.berkeley.edu Bassa
m Tabbara tbassam_at_eecs.berkeley.edu
Write a Comment
User Comments (0)
About PowerShow.com