PTOLEMY an opened graphical design environment for heterogeneous systems

by Arnaud Laprévote
1. INTRODUCTION
1.1. Workshop objectives
You should learn:
- what is Ptolemy, in terms of
- architecture
- field of application
- simulation and co-simulation performances
- how to implement simple design application
- how to generate code with Ptolemy
- how to use related tools and utilities (display tools, debugger,...)
1.2. Summary Program
- Day 1: Ptolemy basics
- Part 1: Introduction to Ptolemy, its features and architecture
- Part 2: Simulation domain overview
- Lab 1: Simple design application: amplitude modulator
- Part 3: SDF domain
- Lab 2: Star writing for signal processing
- Lab 3: SDFexample: sampling rate conversion
- Day 2: advanced Ptolemy
- Part 4: Debugging under Ptolemy
- Part 5: Using Tcl/tk within Ptolemy
- Part 6: DDF Domain
- Part 7: BDF Domain
- Part 8: DE Domain
- Day 3: Ptolemy for hardware
- Part 9: Co-simulation within Ptolemy
- Lab 8: DE/SDF co-simulation example
- Part 10: Code Generation
- Lab 9: code generation example
- Part 11: VHDL basics and models
- Lab 10: VHDL/DE/SDF co-simulation example
1.3. Prerequisites
Familiarity with :
- Signal processing
- DSP topics
- programming knowledge:
- language such as C/C++
- shell scripts (optionaly)
- compilation / linking
- a UNIX text editor and X Windows
2. PTOLEMY - INTRODUCTION
- on-going research project at the University of California in Berkeley
started 1990
- successor of Blosim and Gabriel design environments for digital signal processing
- current release 0.7.1
- research ideas transfered to CAD tool vendors (Cadence, Mentor Graphics and Synopsis)
- Data flow programming with CAD tools
3. Main Features
"an opened graphical design environment for heterogeneous systems":
- free software , distributed on internet
- running under UNIX and X-Windows
- object oriented software technology (C++)
- variety of domains of simulation
- mixed discrete events and synchronous signal processing
- mixed analog and digital simulation
- mixed hardware and software codesign
- interaction and co-simulation between domains
- variety of code generation capability
- C, Motorola 56000 assembly, VHDL languages
- compilation into optimized code in any target language
- mixture of compile time and run time scheduling techniques
- fully flexible and extensible (C++, Tcl/Tk)
4. Fields of Application
- image and video processing
- signal processing
- spectral analysis
- logic and integrated circuits
- communications
- telecommunications
- ....
5. Typical Simulations
- transmission of compressed video and audio over an Asynchronous Transfert Mode (ATM) network
- simulation of voice coding-decoding algorithms
- radio-communication chain
- video up-conversion
- MPEG video processing
- evaluation of bus width for chip design
- cosimulation hardware / software for radiocommunication
6. Typical simulation domains
- dataflow oriented signal processing applications
- discrete event modeling of communication networks
- synthesis environments for embedded software
- communicating sequential processes
- computational models with shared data structure
- ... any partitioning and scheduling of heterogeneous parallel system...
7. Ptolemy Overall Architecture (1)
8. Ptolemy Overall Architecture (2)
9. Ptolemy Overall Architecture (3)
10. Software organization (1)
- the Ptolemy tree is built as a typical development environment
11. Software organisation (2)
- environment is fully flexible and customizable
- operating system
- compiler and compilation/link options
- full debugging environment
- new sub tree...
- use automatic generation of makefile
Copyright Arnaud LAPREVOTE & FREE&ALTER SOFT 1997-2000 - Right to copy, distribute, modify electronically the electronic form is given to anybody. Commercial reproductions on paper vorbidden without written autorisation of Arnaud LAPREVOTE