A Methodology for Design of Real Time Embedded Systems' - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

A Methodology for Design of Real Time Embedded Systems'

Description:

Specification in Verilog. Automated interface and device driver synthesis. ... Interfaces to Leapfrog and Verilog XL simulators. Cycle level accurate. ... – PowerPoint PPT presentation

Number of Views:90
Avg rating:3.0/5.0
Slides: 31
Provided by: fpga3
Category:

less

Transcript and Presenter's Notes

Title: A Methodology for Design of Real Time Embedded Systems'


1
A Methodology for Design of Real Time Embedded
Systems.
  • Prof.M.Balakrishnan
  • Presenting the work done by Embedded Systems
    Group, IIT Delhi, India.
  • Sponsored by Naval Research Board,
  • Government of India.

2
Overview
  • Motivation and previous work
  • Methodology and ESIR
  • Specification
  • Processor Selection
  • Partitioning and Cosimulation
  • Case Study
  • Conclusion

3
Motivation
  • Embedded systems becoming a part of everyday
    life.
  • System on silicon becoming a reality.
  • Traditional ad-hoc techniques no longer viable.
  • Drive towards automated system design.
  • In this project we target computation dominated
    embedded systems.

4
Previous approaches - Polis (Univ. of
California, Berkeley)
  • FSM based methodology.
  • Suitable for small control dominated systems.
  • Supports formal verification.
  • Simulation through Ptolemy.
  • Restricted architecture support.

5
COSYMA (IDA, Germany)
  • Software oriented approach
  • Automated partitioning and co-processor
    synthesis.
  • Single thread of execution.
  • Limited architectures supported.
  • No formal verification.

6
Chinook (Univ. of Washington, Seattle)
  • Intended for control dominated designs.
  • Specification in Verilog.
  • Automated interface and device driver synthesis.
  • Single simulation environment for complete
    design.
  • Supports wide range of architectures.

7
Ptolemy (Univ. of California, Berkeley)
  • Modeling and cosimulation of heterogeneous
    systems.
  • Supports various models of computation (domains).
  • New domains can be defined.

8
TSS (Philips)
  • Simulation platform for complex hardware designs.
  • Modules written in C.
  • Can mix levels of abstraction.
  • Interfaces to Leapfrog and Verilog XL simulators.
  • Cycle level accurate.

9
Methodology
10
ESIR Embedded Systems Internal Representation
  • Storehouse of information.
  • Uses SUIF for providing the data structures.
  • SUIF annotations used to add information to the
    application syntax tree.

11
Different views
  • Internal Representation
  • Input/Output for all tools.
  • Abstract syntax tree
  • With annotations.
  • A database
  • With query functions.

12
Example
13
Specification
  • Application specified in C.
  • Strengths
  • Good for specification of large systems.
  • Available software.
  • Weaknesses
  • Parallelism.
  • Real time constraints.

14
MPI (Message Passing Interface)
  • Concurrent processes.
  • Point to point communication.
  • Blocking and non blocking calls.
  • No shared memory.
  • A subset selected.

15
Pthreads (POSIX threads)
  • Multiple threads.
  • Create and join calls.
  • Shared memory.
  • A subset selected.
  • Each MPI process allowed to have multiple threads.

16
Constraints
  • Specified as comments in C code.
  • Have a defined grammar.
  • Rate, timeout, latency constraints.
  • Inter and intra process constraints.

17
Architecture Template
  • Quick evaluation of alternate architectures.
  • Structural VHDL file.
  • Resource libraries.
  • Processor selector evaluation used as guideline.
  • Attached as an annotation to the AST.

18
Processor Selection
  • Matching application
  • with the processors.
  • Identification of application
  • characteristics.
  • Capturing processor features.
  • Software estimation.

19
Processor Architecture
  • Types of functional units and their properties.
  • Number of each type available.
  • Number of registers.
  • Slots for each operation.
  • Load/Store in parallel.

20
Application Parameters
  • Average block size.
  • Number of mac operations.
  • Address ALU utilization.
  • Memory bandwidth requirement.
  • ASAP schedule and average arc length.

21
Constraint Scheduler
  • Scheduling application on processor.
  • Profiler results used.
  • Assumptions -
  • Infinite register file.
  • All operations on registers.
  • All blocks executed sequentially.
  • First fit heuristic for mapping functions to FUs.

22
Results (MPEG Case Study)
23
Design Flow
24
Partitioning
  • Process/function level partitioning.
  • Single processor, multiple FPGAs.
  • Algorithms developed using
  • Dynamic programming.
  • Integer linear programming

25
Cosimulation
  • Functional simulation.
  • Software in C, hardware in VHDL.
  • Trimedia and Leapforg simulators used.
  • Currently, channels implemented using files.

26
Tool
27
Case Study
  • Tracking application
  • Vision based.
  • Computation intensive.

28
Testing
  • Application coded using MPI and Pthreads.
  • Translated to ESIR.

29
Conclusion
  • Methodology in place.
  • ESIR developed and some annotations defined.
  • Processor selector, partitioner and cosimulator
    developed.

30
References
  • Project technical reports
  • TR 99/1 - 99/9
  • Website
  • http//www.cse.iitd.ernet.in/esproject
Write a Comment
User Comments (0)
About PowerShow.com