Gathering Skills for Embedded Systems Design

2,735 views

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,735
On SlideShare
0
From Embeds
0
Number of Embeds
141
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

×