Gathering Skills for
 Embedded Systems Design
                                     Peter Bertels
     Michiel D’Haene, Tom...
Diversity         Complexity



                   (R)evolution


Paul Pop                                  2
Embedded Systems @ UGent
• Educational reform: new masters subjects
  – Master of Electronics Engineering / Circuits & Sys...
Everything fits in the curriculum
     Programming             Computer architecture
   Digital electronics         Signal...
Overview of the design methodology
       System specification      Architecture exploration




                         ...
High-level design methodology

   Generic step-by-step recipe?



Basic concepts            Skills


                     ...
Which skills and concepts?
• ARTIST Guidelines for an ES curriculum
  –   Computing theory
  –   Control and signal proces...
From ‘generic’ methodology …
       System specification      Architecture exploration




                               ...
… to basic concepts & skills

System specification

          Transaction-
        level modelling

               Archite...
System specification
• Behavioural system specification
  – System as a black box
  – Functionality and interaction with e...
Petrinets (1)
• Level 1: condition-event nets
  – Conditions and events
  – Only one token per condition node
            ...
Petrinets (2)
• Level 1: condition-event nets
• Level 2: place-transition nets
  – Places contain more than one token
  – ...
Petrinets (3)
• Level 1: condition-event nets
• Level 2: place-transition nets
• Level 3: coloured petrinets
  – Tokens re...
StateCharts
                                                                                                 time-out[d=1]...
Didactical principles


Individual concepts   Step-by-step


       Well chosen examples


                               ...
Concepts & skills
                       Petrinets
System specification
                       StateCharts

          Tran...
Transaction-level modelling
                                                not funny / intended for the professor
• Conce...
Architecture exploration
• Concepts
   – Non-functional requirements
     e.g. cost, power, performance
   – Pareto curve
...
High-level optimisation
• Concepts
   – Hot code detection
   – High-level transformations
   – Memory: temporal & spatial...
Concepts & skills
                              Petrinets
  System specification
                              StateCharts...
Course evaluation
• Course evaluation at UGent
  – Biennial evaluation of each course
  – Generic questions
  – Student pa...
Student appreciation
System specification

    Transaction-
  level modelling

   Architecture
   exploration

   Optimisa...
Summary & Conclusion

Concepts       Skills



  Complex systems design methodology


             Individual concepts   S...
Upcoming SlideShare
Loading in...5
×

Gathering Skills for Embedded Systems Design

2,272

Published on

Slides of our presentation at the Workshop on Embedded Systems Education (WESE) at the Embedded Systems Week 2007. Authors: Peter Bertels, Michiel D'Haene, Tom Degryse and Dirk Stroobandt

Published in: Education, Technology, Business
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,272
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Gathering Skills for Embedded Systems Design

  1. 1. Gathering Skills for Embedded Systems Design Peter Bertels Michiel D’Haene, Tom Degryse, Dirk Stroobandt WESE 2007 - Faculty of Engineering - Department of Electronics and Information Systems - October 4th, 2007
  2. 2. Diversity Complexity (R)evolution Paul Pop 2
  3. 3. Embedded Systems @ UGent • Educational reform: new masters subjects – Master of Electronics Engineering / Circuits & Systems – Master of Electronics Engineering / ICT – Master of Computer Science / Embedded Systems • First master year started in 2004-2005 • New courses – Complex Systems Design Methodology – And others … 3
  4. 4. Everything fits in the curriculum Programming Computer architecture Digital electronics Signal processing Complex systems design methodology Hardware/software co-design Real-time systems Operating systems Mechatronics Modelling and control of dynamic systems Digital building blocks Sensors and actuators 4
  5. 5. Overview of the design methodology System specification Architecture exploration Simulation Platform design Hardware/software partitioning Analogue design HW SW Software Digital hardware design Communication compilation High-level synthesis Verification Component Interface Logic design selection synthesis Physical design Testing 5
  6. 6. High-level design methodology Generic step-by-step recipe? Basic concepts Skills 6
  7. 7. Which skills and concepts? • ARTIST Guidelines for an ES curriculum – Computing theory – Control and signal processing – Distributed systems – Optimisation, evaluation, verification – Real-time processing – Systems architecture • Hardware design for embedded systems 7
  8. 8. From ‘generic’ methodology … System specification Architecture exploration Simulation Platform design Hardware/software partitioning Analogue design HW SW Software Digital hardware design Communication compilation High-level synthesis Verification Component Interface Logic design selection synthesis Physical design Testing 8
  9. 9. … to basic concepts & skills System specification Transaction- level modelling Architecture exploration Optimisation 9
  10. 10. System specification • Behavioural system specification – System as a black box – Functionality and interaction with environment • Two specification techniques – Petrinets – StateCharts 10
  11. 11. Petrinets (1) • Level 1: condition-event nets – Conditions and events – Only one token per condition node waiter free customer 1 customer 2 waiter in kitchen wait wait customer 1 eating customer 2 eating 11
  12. 12. Petrinets (2) • Level 1: condition-event nets • Level 2: place-transition nets – Places contain more than one token – Transitions work with several tokens 1000 6 lines urgent free customers urgent call waiting for urgent call waiting for information computer information call information free 12
  13. 13. Petrinets (3) • Level 1: condition-event nets • Level 2: place-transition nets • Level 3: coloured petrinets – Tokens represent individuals 1R 1R 1G/1B 1G/1B 1R 1R on strike entrance home 1G 4R 95 1 4 G packs 1G/1B 1 of cards 5G 1 card 4R playing 1 1G of 1B working 13
  14. 14. StateCharts time-out[d=1] • Basic concepts press/s=1 0.2 s – Finite state machine release[s=0] wait time-out[d=0] out[d=0] light switched off short/long – Event / Condition / Reaction time-out[c=0] 0.5 s 0.5 s – Hierarchical states (AND / OR) decrease time-out[c=5] increase time-out[c>0]/c-- time-out[c<5]/c++ – Timeout blocks light switched on • Skills: hands-on experience – Several examples: e.g. traffic lights control – One textual description, several StateCharts 14
  15. 15. Didactical principles Individual concepts Step-by-step Well chosen examples 15
  16. 16. Concepts & skills Petrinets System specification StateCharts Transaction- level modelling Architecture exploration Optimisation 16
  17. 17. Transaction-level modelling not funny / intended for the professor • Concepts – Concurrency input sort forms humour comic – Communication paper basket post box secretary post box – Process networks professor paper recycling paper basket to do • Skills – Modelling language: SystemC – Practical illustration of ‘deadlock’ 17
  18. 18. Architecture exploration • Concepts – Non-functional requirements e.g. cost, power, performance – Pareto curve • Skills – A priori estimations – Design is a trade-off • Real-world example: high-level exploration for a digital camera 18
  19. 19. High-level optimisation • Concepts – Hot code detection – High-level transformations – Memory: temporal & spatial data locality • Skills – DTSE methodology developed by IMEC – Improving locality, optimising memory layout, … 19
  20. 20. Concepts & skills Petrinets System specification StateCharts Transaction- Deadlock Process Networks level modelling Requirements Architecture Pareto curve Estimations exploration Trade-off Memory hierarchy Optimisation High-level transformations 20
  21. 21. Course evaluation • Course evaluation at UGent – Biennial evaluation of each course – Generic questions – Student participation rate: 27 % • Extra yearly survey for our course – Specific questions (theory & hands-on sessions) – Participation rate: over 75 % 21
  22. 22. Student appreciation System specification Transaction- level modelling Architecture exploration Optimisation 22
  23. 23. Summary & Conclusion Concepts Skills Complex systems design methodology Individual concepts Step-by-step Well chosen examples 23

×