Presentation is loading. Please wait.

Presentation is loading. Please wait.

Universität Dortmund Marek Perkowski’s Productions present: Lectures on Embedded Systems and High Level Synthesis and CAD Some slides come from various.

Similar presentations


Presentation on theme: "Universität Dortmund Marek Perkowski’s Productions present: Lectures on Embedded Systems and High Level Synthesis and CAD Some slides come from various."— Presentation transcript:

1

2 Universität Dortmund Marek Perkowski’s Productions present: Lectures on Embedded Systems and High Level Synthesis and CAD Some slides come from various sources, including Adam Postula, Mark Schulz and U.C. Berkeley

3 Universität Dortmund ECE 574 Embedded Systems, FPGAs and High Level Synthesis Dr Marek Perkowski Dr Marek Perkowski Introduction Grading What is this class about

4 Universität Dortmund Elementary Project related class Projects This class teaches about design of high-performance parallel digital systems using FPGAs. Grading is based mostly on practical projects. It is not the old 574 as in the PSU catalog. In past my students got several national awards for their projects. The best projects of this class will be submitted to a competition. Students select 1.software CAD project, (for those who know C/C++), 2.FPGA design project (for those with Verilog/VHDL knowledge), 3.conceptual design project (involves use of CAD tools for analysis and performance comparison of designs)

5 Universität Dortmund Future of IT is characterized by the terms such as  Post-PC era  Disappearing computer  Ubiquitous computing  Pervasive computing  Ambient intelligence  Embedded systems This class has no prerequisite. It is open to all graduate students Typical FPGA design projects: 1. Image processor based on spectral transforms. 2. Advanced controller for a robotic toy. 3.Cellular automaton controller for a robot. 4.Reconfigurable processor for Robot Vision 5.Radon Transform for medical applications 6.Image matching processor 7.Fractal Set Generator

6 Universität Dortmund Future of IT is characterized by the terms such as  Post-PC era  Disappearing computer  Ubiquitous computing  Pervasive computing  Ambient intelligence  Embedded systems This class has no prerequisite. It is open to all graduate students Typical Theory Projects 1.Cellular logic for nanotechnology. 2. Cellular automata for test generation. 3. Advanced FSM decomposition for FPGAs. 4.Scheduling for low power 5.Constraint Satisfaction Computer 6.Oracle Based Computer 7.General Spectral Transform Computer

7 Universität Dortmund B B Typical software projects: 1.Use of SAT solver for logic synthesis 2.Logic synthesis with AND and EXOR gates 3.Reversible Automaton synthesis 4.Cellular automaton synthesis 5. Asynchronous design software in Matlab 6.Use of ABC system for low power logic preprocessing 7.Testing reversible circuits 8.Design for test

8 Universität Dortmund High-Level Synthesis and Design Automation – ECE 574/ECE674 If you have any questions please contact Dr. Marek Perkowski

9 Universität Dortmund

10

11 Related PSU courses that I teach ECE 478. Mobile and Humanoid Robots ECE 479. Robot Perception ECE 479. Robots for Disabled ECE 572. Logic Synthesis ECE 573. Sequential Circuits ECE 574. This class ECE 590. VHDL Design ECE 510. Quantum Computers ECE 510. Design for Test

12 Universität Dortmund PSU sequence of classes This is a complete sequence related to digital logic design automation. ECE 171ECE 271 Logic Synthesis Sequential Circuits Winter Design with VHDL/VerilogSpring Formal Verification and DesignSpring Testing and Design for Test Fall Fall Quantum Computing

13 Universität Dortmund Do not take notes You will get all slides on my WWW, or they are already there If I am not using slides, please take notes, this may be exam material or project material

14 Universität Dortmund I do not assume much background knowledge from you Basic Boolean Logic and state machines Basic graph theory concepts Basic linear algebra concepts Basic programming skills in Basic, Java, Matlab, or C, C++ Basic knowledge of VHDL or Verilog is welcome but not mandatory

15 Universität Dortmund The good news is that I will review much of this background material Also, there will be additional meetings just to review the material and solve problems. Participation in those meetings is not mandatory, and you can get an A without participating. However, participating will help you in homeworks and projects. Usually Fridays

16 Universität Dortmund Goals of this class 1.Many of you are using some CAD tools. Do you know what is inside these tools? Here you will learn. 2.Do you want to design better algorithms and software for your specific tasks? This class can help. I will teach both fundamentals and applications. 3.Teach about relations between data structures, algorithms and CAD tools. 4.Examples of my previous projects from US industry (companies like GTE, Sharp, Intel and Cypress) and US government (Wright Laboratories of Air Force) and Polish Government. 1.Many of you are using some CAD tools. Do you know what is inside these tools? Here you will learn. 2.Do you want to design better algorithms and software for your specific tasks? This class can help. I will teach both fundamentals and applications. 3.Teach about relations between data structures, algorithms and CAD tools. 4.Examples of my previous projects from US industry (companies like GTE, Sharp, Intel and Cypress) and US government (Wright Laboratories of Air Force) and Polish Government.

17 Universität Dortmund Goals of this class 1.The algorithms and concepts presented in this class are very general. They can be used in Machine Learning, Testing, Data Mining, Pattern Recognition, and Robotics. 2.We will concentrate on basic algorithms and how to use them for new problems that you may find in your research. 3.In the past students from this and other classes got several awards from Design Automation Conference and ACM. 4.Would you be interested to submit your project to next year competition. If accepted, you have a very good chance for travel and other funds. 1.The algorithms and concepts presented in this class are very general. They can be used in Machine Learning, Testing, Data Mining, Pattern Recognition, and Robotics. 2.We will concentrate on basic algorithms and how to use them for new problems that you may find in your research. 3.In the past students from this and other classes got several awards from Design Automation Conference and ACM. 4.Would you be interested to submit your project to next year competition. If accepted, you have a very good chance for travel and other funds.

18 Universität Dortmund Objective of Subject 1.Both theory and practical applications. 2.Students will learn modern EDA (Electronic Design Automation) approaches and fundamentals of building tools 3.Do not be scared of my English. 4.If I speak too quickly, please tell me. I will slow down. but it is not mandatory, 5.I will give you some challenging research problems that nobody solved or even formulated. You can work on them and we can publish them, but it is not mandatory, only for those who like a challenge. 1.Both theory and practical applications. 2.Students will learn modern EDA (Electronic Design Automation) approaches and fundamentals of building tools 3.Do not be scared of my English. 4.If I speak too quickly, please tell me. I will slow down. but it is not mandatory, 5.I will give you some challenging research problems that nobody solved or even formulated. You can work on them and we can publish them, but it is not mandatory, only for those who like a challenge.

19 Universität Dortmund Objective of Subject Register Transfer Language 1.Students will learn about techniques of specifying sequential designs and optimizing them on a Register Transfer Language Level 2.These techniques can be used to Computer, Digital Signal Processing (DSP) and Image Processing architectures. You can use your own examples. 3.At the end, some recent research and industrial papers from top conferences and journals will be discussed to show the modern research areas. FPGAs 4.Modern realization technologies will be presented, FPGAs 5.Unified approach to many problems. 6.After completing the class students should be able to create new applications and software for new EDA tools and use new CAD tools for synthesis. Register Transfer Language 1.Students will learn about techniques of specifying sequential designs and optimizing them on a Register Transfer Language Level 2.These techniques can be used to Computer, Digital Signal Processing (DSP) and Image Processing architectures. You can use your own examples. 3.At the end, some recent research and industrial papers from top conferences and journals will be discussed to show the modern research areas. FPGAs 4.Modern realization technologies will be presented, FPGAs 5.Unified approach to many problems. 6.After completing the class students should be able to create new applications and software for new EDA tools and use new CAD tools for synthesis.

20 Universität Dortmund What in coming weeks? Look to my WWW Page. Review and Introduction. Basic graph algorithms Representations of Functions, Relations and State Machines. Overview of CAD systems Levels of modeling Basic high level synthesis methodologies Look to my WWW Page. Review and Introduction. Basic graph algorithms Representations of Functions, Relations and State Machines. Overview of CAD systems Levels of modeling Basic high level synthesis methodologies

21 Universität Dortmund Homeworks set covering, graph coloring, shortest path, satisfiabilityHomeworks will be to solve practical problems illustrating the algorithms and data structures, such as set covering, graph coloring, shortest path, satisfiability or scheduling. Some homeworks will be to optimize simple processors using methods from the class. animated PowerPointOne homework will be to create an animated PowerPoint presentation and present it in the class. You may exchange it for creating your WWW Page with a problem solution. set covering, graph coloring, shortest path, satisfiabilityHomeworks will be to solve practical problems illustrating the algorithms and data structures, such as set covering, graph coloring, shortest path, satisfiability or scheduling. Some homeworks will be to optimize simple processors using methods from the class. animated PowerPointOne homework will be to create an animated PowerPoint presentation and present it in the class. You may exchange it for creating your WWW Page with a problem solution. Quality of your class presentations and report is important

22 Universität Dortmund Required Background ECE 171 ECE You are assumed to know, the material presented in ECE 171 and ECE 271 or equivalent 2.This material covered basic Boolean algebra, truth tables, Karnaugh maps (K-maps), simple minimization techniques using Karnaugh maps, and some basic design skills in Boolean algebra. but not a must 3.Knowledge of programming in C, C++, Java, Basic, Lisp or similar language is useful but not a must. animated PowerPoint 4.Everybody will create animated PowerPoint presentations and his WWW Page with a new material and project descriptions. ECE 171 ECE You are assumed to know, the material presented in ECE 171 and ECE 271 or equivalent 2.This material covered basic Boolean algebra, truth tables, Karnaugh maps (K-maps), simple minimization techniques using Karnaugh maps, and some basic design skills in Boolean algebra. but not a must 3.Knowledge of programming in C, C++, Java, Basic, Lisp or similar language is useful but not a must. animated PowerPoint 4.Everybody will create animated PowerPoint presentations and his WWW Page with a new material and project descriptions.

23 Universität Dortmund Review. What this first part of the course covers. Combinational Circuit Design Review of Karnaugh Maps Minimization of combinational logic circuits using Karnaugh Maps CAD Techniques of combinational logic circuit minimization Binary Decision Diagrams Combinational Circuit Design Review of Karnaugh Maps Minimization of combinational logic circuits using Karnaugh Maps CAD Techniques of combinational logic circuit minimization Binary Decision Diagrams

24 Universität Dortmund Review. What this part of the course covers(cont). Combinational Circuit Design 1.Functional Decomposition 2.Graph Coloring and Set Covering Techniques 3.MSI building blocks: multiplexers, decoders, ROM’s and PLA’s 4.Arithmetic circuits 5.Introduction to data structures and optimization Combinational Circuit Design 1.Functional Decomposition 2.Graph Coloring and Set Covering Techniques 3.MSI building blocks: multiplexers, decoders, ROM’s and PLA’s 4.Arithmetic circuits 5.Introduction to data structures and optimization

25 Universität Dortmund Grading System Homeworks = 40 % Midterm 1 = 15 % Midterm 2 = 15 % Project = 30 % Midterm Examinations (open book, in class) Homeworks, including student presentations, quality of presentations Project: - your choice -- programming assignments theoretical work literature study processor designs using optimization methods from the class Homeworks = 40 % Midterm 1 = 15 % Midterm 2 = 15 % Project = 30 % Midterm Examinations (open book, in class) Homeworks, including student presentations, quality of presentations Project: - your choice -- programming assignments theoretical work literature study processor designs using optimization methods from the class On popular demand no final this year in ECE 574

26 Universität Dortmund Remember that both midterm exams are: Remember that I emphasize in this class not only hard work but also…. MIDTERM EXAMS

27 Universität Dortmund Remember that I really want to help you to be successful in this class and obtain a good grade. Do not be afraid to speak in English, it is better to speak with mistakes than to avoid communication

28 Universität Dortmund TEXTBOOK Strongly Recommended Giovanni De Micheli, Synthesis and Optimization of Digital Circuits. Mc Graw Hill International Editions, Electrical Engineering Series. ISBN This textbook is the most popular in USA and is used in top universities It has many examples and its language is quite easy. Even if you do not understand my English, you can learn from this textbook to get a grade of A in this class. My examples and additional material that I will teach is just to help to illustrate the ideas better. They will be NOT required in homeworks and exams. The material from the book will be on slides. All slides can be printed and used to learn the material. Background Randy Katz, Contemporary Logic Design, Benjamin/Cummings, This book is already used in KAIST. Strongly Recommended Giovanni De Micheli, Synthesis and Optimization of Digital Circuits. Mc Graw Hill International Editions, Electrical Engineering Series. ISBN This textbook is the most popular in USA and is used in top universities It has many examples and its language is quite easy. Even if you do not understand my English, you can learn from this textbook to get a grade of A in this class. My examples and additional material that I will teach is just to help to illustrate the ideas better. They will be NOT required in homeworks and exams. The material from the book will be on slides. All slides can be printed and used to learn the material. Background Randy Katz, Contemporary Logic Design, Benjamin/Cummings, This book is already used in KAIST.

29 Universität Dortmund Additional Textbook 3 Styles:  Original hardcover version, Kluwer, 2003, >100 $/€  Reprint, lighter cover borders, thicker paper, same price/ content; Corrections available on web site (see slides)  2nd edition, Springer, "2006", scheduled for end of October 2005, soft cover, with corrections, 37€

30 Universität Dortmund More TEXTBOOKS Strongly Recommended Gary Hachtel and Fabio Somenzi, Logic Synthesis and Verification Algorithms, Kluwer Academic Publishers, Randy Katz, Contemporary Logic Design, Benjamin/Cummings, 1994 My lecture notes Strongly Recommended Gary Hachtel and Fabio Somenzi, Logic Synthesis and Verification Algorithms, Kluwer Academic Publishers, Randy Katz, Contemporary Logic Design, Benjamin/Cummings, 1994 My lecture notes Useful Capilano Computing, LogicWorks 3, 1995 (includes 3.5” diskette for Windows). This is a simulation program.

31 Universität Dortmund Other Information 1.There is a WWW Home page for the class. I will keep updating it every day, also to reflect a feedback from you. 2.All PowerPoint 4.0 slides you see here, plus a Postscript printable version with 6 slides per page will be available. 3.Lectures will be available within 24 hours after the lecture is given (mainly because I will be completing the lectures on Sunday nights and Monday mornings prior to the lecture). 4.All sorts of other info will be there as well. 5.Much additional material is on my US webpage, but using it is not mandatory. 1.There is a WWW Home page for the class. I will keep updating it every day, also to reflect a feedback from you. 2.All PowerPoint 4.0 slides you see here, plus a Postscript printable version with 6 slides per page will be available. 3.Lectures will be available within 24 hours after the lecture is given (mainly because I will be completing the lectures on Sunday nights and Monday mornings prior to the lecture). 4.All sorts of other info will be there as well. 5.Much additional material is on my US webpage, but using it is not mandatory.

32 Universität Dortmund Other Information Class announcements will appear in the “class schedule” pages of this class at the WWW page of Marek Perkowski. Assignment:Assignment: Find this page using Google Engine. Type +Perkowski +Marek and next go to “Classes that I teach” Class announcements will appear in the “class schedule” pages of this class at the WWW page of Marek Perkowski. Assignment:Assignment: Find this page using Google Engine. Type +Perkowski +Marek and next go to “Classes that I teach”

33 Universität Dortmund Other Information Internet Explorer 1.Use Internet Explorer or other to view these pages. 2.Send s with questions. 3.If you are shy to ask in class or want to be anonymous, please leave me a question on a paper sheet before class on the desk. 4.I will post news for class students of this group. I presume that it is read within 2 or 3 working days. YOU ARE RESPONSIBLE FOR READING THE NEWS IN CLASS SCHEDULE LINK! Internet Explorer 1.Use Internet Explorer or other to view these pages. 2.Send s with questions. 3.If you are shy to ask in class or want to be anonymous, please leave me a question on a paper sheet before class on the desk. 4.I will post news for class students of this group. I presume that it is read within 2 or 3 working days. YOU ARE RESPONSIBLE FOR READING THE NEWS IN CLASS SCHEDULE LINK!

34 Universität Dortmund Other Information Send s with questions. I will post news for class students of this group. I presume that it is read within 2 or 3 working days. YOU ARE RESPONSIBLE FOR READING THE NEWS IN CLASS SCHEDULE LINK! Send s with questions. I will post news for class students of this group. I presume that it is read within 2 or 3 working days. YOU ARE RESPONSIBLE FOR READING THE NEWS IN CLASS SCHEDULE LINK!

35 Universität Dortmund Any Other Administrative Details? ! Now is the time to ask

36 Universität Dortmund Advanced For Advanced Students If it is too easy, do not worry. –You can be challenged in the project The class is for everybody. –I will go fast through repetition material. – More advanced material will soon appear. If it is too easy, do not worry. –You can be challenged in the project The class is for everybody. –I will go fast through repetition material. – More advanced material will soon appear.

37 Universität Dortmund Embedded Systems

38 Universität Dortmund What is the Future of Information Technology (IT)? According to forecasts charac- terized by the terms such as  Post-PC era  Disappearing computer  Ubiquitous computing  Pervasive computing  Ambient intelligence  Embedded systems According to forecasts charac- terized by the terms such as  Post-PC era  Disappearing computer  Ubiquitous computing  Pervasive computing  Ambient intelligence  Embedded systems preface

39 Universität Dortmund What is an embedded system?

40 Universität Dortmund Embedded Systems Main reason for buying is not information processing Embedded systems (ES) = information processing systems embedded into a larger product

41 Universität Dortmund Embedded systems and ubiquitous computing Ubiquitous computing: Information anytime, anywhere. Embedded systems provide fundamental technology. Ubiquitous computing: Information anytime, anywhere. Embedded systems provide fundamental technology. UMTS,

42 Universität Dortmund Application Areas of Embedded Systems

43 Universität Dortmund Application areas (1) Automotive electronics Aircraft electronics Trains Telecommunication Automotive electronics Aircraft electronics Trains Telecommunication 1.2 Application areas

44 Universität Dortmund Application areas (2) Medical systems e.g. “artificial eye” [www.dobelle.com]

45 Universität Dortmund Application areas (3) Authentication Military applications Hot topic – antiterrorist technologies

46 Universität Dortmund Application areas (4) Consumer electronics

47 Universität Dortmund Application areas (5) Smart buildings Fabrication equipment Show movie conference.com/conference/ 2003/keynotes/index.htmhttp://www.date- conference.com/conference/

48 Universität Dortmund Application areas (6) Robotics „Pipe-climber“ Robot „Johnnie“ (Courtesy and ©: H.Ulbrich, F. Pfeiffer, TU München) Show movie of 2-legged robot(s)

49 Examples Some embedded systems from real life

50 Information Technology Smart Beer Glass 8-bit, 8-pin PIC processor Capacitive sensor for fluid level Inductive coil for RF ID activation & power CPU and reading coil in the table. Reports the level of fluid in the glass, alerts servers when close to empty Contact less transmission of power and readings © Jakob Engblom

51 Information Technology Smart Beer Glass Typical embedded solution Integrates several technologies:  Radio transmissions  Sensor technology  Magnetic inductance for power  Computer used for calibration Impossible without the computer Meaningless without the electronics © Jakob Engblom

52 Information Technology Pedometer Obvious computer work:  Count steps  Keep time  Averages  etc. Hard computer work:  Actually identify when a step is taken  Sensor feels motion of device, not of user feet © Jakob Engblom

53 Information Technology Mobile phones Multiprocessor  8-bit/32-bit for user interface  DSP for signals  32-bit in IR port  32-bit in Bluetooth MB of memory All custom chips Power consumption & battery life depends on software © Jakob Engblom

54 Information Technology Mobile base station Massive signal processing  Several processing tasks per connected mobile phone Based on DSPs  Standard or custom  100s of processors © Jakob Engblom

55 Information Technology Telecom Switch Rack-based  Control cards  IO cards  DSP cards ... Optical & copper connections Digital & analog signals © Jakob Engblom

56 Information Technology Smart Welding Machine Electronics control voltage & speed of wire feed Adjusts to operator  kHz sample rate  1000s of decisions/second Perfect weld even for quite clumsy operators Easier-to-use product, but no obvious computer © Jakob Engblom

57 Information Technology Sewing Machine User interface  Embroidery patterns  Touch-screen control ”Smart”  Sets pressure of “foot” depending on task  Raise foot when stopped New functions added by upgrading the software © Jakob Engblom

58 Information Technology Forestry Machines © Jakob Engblom

59 Information Technology Forestry Machines Networked computer system  Controlling arms & tools  Navigating the forest  Recording the trees harvested  Crucial to efficient work Processors  16-bit processors in a network © Jakob Engblom

60 Information Technology Operator Panel in this machine Embedded PC  Graphical display  Touch panel  Joystick  Buttons  Keyboard But tough enough to be “out in the woods” © Jakob Engblom

61 Information Technology Cars Multiple networks  Body, engine, telematics, media, safety Multiple processors  Up to 100  Networked together © Jakob Engblom

62 Information Technology Cars Functions by embedded processing:  ABS: Anti-lock braking systems  ESP: Electronic stability control  Airbags  Efficient automatic gearboxes  Theft prevention with smart keys  Blind-angle alert systems ... etc... © Jakob Engblom

63 Information Technology Cars Large diversity in processor types:  8-bit – door locks, lights, etc.  16-bit – most functions  32-bit – engine control, airbags Form follows function  Processing where the action is  Sensors and actuators distributed all over the vehicle © Jakob Engblom

64 Information Technology Extremely Large Embedded Systems Functions requiring computers:  Radar  Weapons  Damage control  Navigation  basically everything Computers:  Large servers  1000s of processors © Jakob Engblom

65 Information Technology Inside your PC Custom processors  Graphics, sound 32-bit processors  IR, Bluetooth  Network, WLAN  Harddisk  RAID controllers 8-bit processors  USB  Keyboard, mouse © Jakob Engblom

66 Information Technology If you want to play Lego mindstorms robotics kit  Standard controller  8-bit processor  64 kB of memory  Electronics to interface to motors and sensors Good way to learn embedded systems © Jakob Engblom We use new Lego NXT and Tetrix, just introduced

67 Information Technology Some of our ES Projects at WTU, UofM and PSU Ovulo-computer PSUBOT – mobile robot with AI control for handicapped (award) Logic Design Machine (DAC Scholarship Award 1992) PLD programmer (national award) PID controller CCM (paper and DAC Scholarship Award) Decomposition Machine (paper) SAT solver (paper) FFT matcher Hough Transform (3 papers) Radon Transform Processor Mandelbrot Set Fractal Processor 2008 Robot Controller for Image Processing Tracking System 2008 ESOP minimizer (paper) FPAA (patent 1999) Teeth measurement device (patent 1997)

68 Information Technology 67 Embedded systems overview Embedded computing systems 1. Computing systems embedded within electronic devices 2. Hard to define. Nearly any computing system other than a desktop computer 3. Billions of units produced yearly, versus millions of desktop units 4. Perhaps 50 per household and per automobile Computers are in here... and here... and even here... Lots more of these, though they cost a lot less each.

69 Information Technology 68 A “short list” of embedded systems And the list goes on and on Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR’s, DVD players Video game consoles Video phones Washers and dryers

70 Education Areas

71 Universität Dortmund Concept of ES education at Dortmund  Can typically be taught in 4 th or 5 th term  Provides motivation and context of other work in the area  Mix of students and courses from CS and EE departments  Can typically be taught in 4 th or 5 th term  Provides motivation and context of other work in the area  Mix of students and courses from CS and EE departments programming algorithms computer organization computer organization math education math education electrical networks & digital circuits electrical networks & digital circuits first course on embedded systems lab control systems DSP machine vision real-time systems project group applications … Lego

72 Universität Dortmund Structure of the CS curriculum at Dortmund - current 4.5 year diploma program - Term 1Computer organization Programming & semantics Math education 2Circuits & communication OSAlgorithms 3HW labNetworksSW lab 4Databases… 5Embedded systems fundamentals Software engineering … 6Advanced topic in ES …… 7Project group…… 8…… 9Thesis All dependences met

73 Universität Dortmund Structure of the course by Marwedel 1.4 Structure

74 Universität Dortmund Broad scope avoids problems with narrow perspectives reported in ARTIST curriculum guidelines “The lack of maturity of the domain results in a large variety of industrial practices, often due to cultural habits” “curricula … concentrate on one technique and do not present a sufficiently wide perspective.” “As a result, industry has difficulty finding adequately trained engineers, fully aware of design choices.” “The lack of maturity of the domain results in a large variety of industrial practices, often due to cultural habits” “curricula … concentrate on one technique and do not present a sufficiently wide perspective.” “As a result, industry has difficulty finding adequately trained engineers, fully aware of design choices.” Source: ARTIST network of excellence: Guidelines for a Graduate Curriculum on Embedded Software and Systems, /Education/Education.pdf, 2003 Source: ARTIST network of excellence: Guidelines for a Graduate Curriculum on Embedded Software and Systems, /Education/Education.pdf, 2003

75 Universität Dortmund Scope consistent with ARTIST guidelines "The development of ES cannot ignore the underlying HW characteristics. Timing, memory usage, power consumption, and physical failures are important." "It seems that fundamental bases are really difficult to acquire during continuous training if they haven’t been initially learned, and we must focus on them." "The development of ES cannot ignore the underlying HW characteristics. Timing, memory usage, power consumption, and physical failures are important." "It seems that fundamental bases are really difficult to acquire during continuous training if they haven’t been initially learned, and we must focus on them."

76 Universität Dortmund Slides of Marwedel  Slides are available at: kluwer-es-book Master format: Powerpoint; Derived formats: OpenOffice, PDF  Changes for term of winter 2005/6: -Additional "more in-depth sections". -Selected updates. -Improved B/W printing.  Slides are available at: kluwer-es-book Master format: Powerpoint; Derived formats: OpenOffice, PDF  Changes for term of winter 2005/6: -Additional "more in-depth sections". -Selected updates. -Improved B/W printing. Course announcements

77 Universität Dortmund Importance of Embedded Systems

78 Universität Dortmund Growing importance of embedded systems (1)  Growing economical importance of embedded systems THE growing market according to forecasts, e.g.: Worldwide mobile phone sales surpassed mln units in Q2 2004, a 35% increase from Q2 2003, according to Gartner [www.itfacts.biz] The worldwide portable flash player market exploded in 2003 and is expected to grow from 12.5 mln units in 2003 to over 50 mln units in 2008 [www.itfacts.biz] Global 3G subscribers will grow from an estimated 45 mln at the end of 2004 to 85 mln in 2005, according to Wireless World Forum. [www.itfacts.biz]  Growing economical importance of embedded systems THE growing market according to forecasts, e.g.: Worldwide mobile phone sales surpassed mln units in Q2 2004, a 35% increase from Q2 2003, according to Gartner [www.itfacts.biz] The worldwide portable flash player market exploded in 2003 and is expected to grow from 12.5 mln units in 2003 to over 50 mln units in 2008 [www.itfacts.biz] Global 3G subscribers will grow from an estimated 45 mln at the end of 2004 to 85 mln in 2005, according to Wireless World Forum. [www.itfacts.biz] 1.3 … importance

79 Universität Dortmund Growing importance of embedded systems (2) The number of broadband lines worldwide increased by almost 55% to over 123 mln in the 12 months to the end of June 2004, according to Point-Topic. [www.itfacts.biz] Today's DVR (digital video recorders) users - 5% of households - will grow to 41% within five years, according to Forrester. [www.itfacts.biz] The automotive sector … ensures the employment of more than 4 million people in Europe only. –Altogether, some 8 million jobs in total depend on the fortunes of the transport industry and related sectors - representing around 7 per cent of the European Union’s Gross National Product (GNP) [OMI bulletin] The number of broadband lines worldwide increased by almost 55% to over 123 mln in the 12 months to the end of June 2004, according to Point-Topic. [www.itfacts.biz] Today's DVR (digital video recorders) users - 5% of households - will grow to 41% within five years, according to Forrester. [www.itfacts.biz] The automotive sector … ensures the employment of more than 4 million people in Europe only. –Altogether, some 8 million jobs in total depend on the fortunes of the transport industry and related sectors - representing around 7 per cent of the European Union’s Gross National Product (GNP) [OMI bulletin]

80 Universität Dortmund Growing importance of embedded systems (3).. but embedded chips form the backbone of the electronics driven world in which we live... they are part of almost everything that runs on electricity [Mary Ryan, EEDesign, 1995] 79% of all high-end processors are used in embedded systems The future is embedded, Embedded is the future!  Foundation for the „post PC era“  ES hardly discussed in other CS courses  ES important for Technical University  Scope: sets context for specialized courses.. but embedded chips form the backbone of the electronics driven world in which we live... they are part of almost everything that runs on electricity [Mary Ryan, EEDesign, 1995] 79% of all high-end processors are used in embedded systems The future is embedded, Embedded is the future!  Foundation for the „post PC era“  ES hardly discussed in other CS courses  ES important for Technical University  Scope: sets context for specialized courses 1.3 … importance Importance of education

81 Universität Dortmund Characteristics of Embedded Systems

82 Universität Dortmund Characteristics of Embedded Systems (1)  Must be dependable, Reliability R(t) = probability of system working correctly provided that is was working at t=0 Maintainability M(d) = probability of system working correctly d time units after error occurred. Availability A(t): probability of system working at time t Safety: no harm to be caused Security: confidential and authentic communication Even perfectly designed systems can fail if the assumptions about the workload and possible errors turn out to be wrong. Making the system dependable must not be an after- thought, it must be considered from the very beginning  Must be dependable, Reliability R(t) = probability of system working correctly provided that is was working at t=0 Maintainability M(d) = probability of system working correctly d time units after error occurred. Availability A(t): probability of system working at time t Safety: no harm to be caused Security: confidential and authentic communication Even perfectly designed systems can fail if the assumptions about the workload and possible errors turn out to be wrong. Making the system dependable must not be an after- thought, it must be considered from the very beginning 1.1 terms and scope

83 Universität Dortmund Characteristics of Embedded Systems (2)  Must be efficient –Energy efficient –Code-size efficient (especially for systems on a chip) –Run-time efficient –Weight efficient –Cost efficient  Dedicated towards a certain application Knowledge about behavior at design time can be used to minimize resources and to maximize robustness  Dedicated user interface (no mouse, keyboard and screen)  Must be efficient –Energy efficient –Code-size efficient (especially for systems on a chip) –Run-time efficient –Weight efficient –Cost efficient  Dedicated towards a certain application Knowledge about behavior at design time can be used to minimize resources and to maximize robustness  Dedicated user interface (no mouse, keyboard and screen)

84 Universität Dortmund Characteristics of Embedded Systems (3)  Many ES must meet real-time constraints –A real-time system must react to stimuli from the controlled object (or the operator) within the time interval dictated by the environment. –For real-time systems, right answers arriving too late are wrong. –„A real-time constraint is called hard, if not meeting that constraint could result in a catastrophe“ [Kopetz, 1997]. –All other time-constraints are called soft. –A guaranteed system response has to be explained without statistical arguments  Many ES must meet real-time constraints –A real-time system must react to stimuli from the controlled object (or the operator) within the time interval dictated by the environment. –For real-time systems, right answers arriving too late are wrong. –„A real-time constraint is called hard, if not meeting that constraint could result in a catastrophe“ [Kopetz, 1997]. –All other time-constraints are called soft. –A guaranteed system response has to be explained without statistical arguments

85 Information Technology Real-Time Systems Embedded and Real-Time  Synonymous? Most embedded systems are real-time Most real-time systems are embedded embedded real-time embedded real-time © Jakob Engblom

86 Universität Dortmund Characteristics of Embedded Systems (4)  Frequently connected to physical environment through sensors and actuators,  Hybrid systems (analog + digital parts).  Typically, ES are reactive systems: „A reactive system is one which is in continual interaction with is environment and executes at a pace determined by that environment“ [Bergé, 1995] Behavior depends on input and current state.  automata model appropriate, model of computable functions inappropriate.  Frequently connected to physical environment through sensors and actuators,  Hybrid systems (analog + digital parts).  Typically, ES are reactive systems: „A reactive system is one which is in continual interaction with is environment and executes at a pace determined by that environment“ [Bergé, 1995] Behavior depends on input and current state.  automata model appropriate, model of computable functions inappropriate.

87 Universität Dortmund Characteristics of Embedded Systems (5) Not every ES has all of the above characteristics. Def.: Information processing systems having most of the above characteristics are called embedded systems. Course on embedded systems makes sense because of the number of common characteristics. Not every ES has all of the above characteristics. Def.: Information processing systems having most of the above characteristics are called embedded systems. Course on embedded systems makes sense because of the number of common characteristics.  ES are underrepresented in teaching and public discussions: „Embedded chips aren‘t hyped in TV and magazine ads... [Mary Ryan, EEDesign, 1995]

88 Universität Dortmund Challenges of Embedded Systems

89 Universität Dortmund Quite a number of challenges, e.g. dependability Dependability?  Non-real time protocols used for real-time applications (e.g. fire departments)  Over-simplification of models (e.g. aircraft anti-collision system)  Using unsafe systems for safety-critical missions (e.g. voice control system in Los Angeles; ~ 800 planes without voice connection to tower for > 3 hrs Dependability?  Non-real time protocols used for real-time applications (e.g. fire departments)  Over-simplification of models (e.g. aircraft anti-collision system)  Using unsafe systems for safety-critical missions (e.g. voice control system in Los Angeles; ~ 800 planes without voice connection to tower for > 3 hrs

90 Universität Dortmund Challenges for implementation in hardware  Lack of flexibility (changing standards).  Mask cost for specialized HW becomes very expensive  Lack of flexibility (changing standards).  Mask cost for specialized HW becomes very expensive [http://www.molecularimprints.com/Technology/ tech_articles/MII_COO_NIST_2001.PDF9]  Trend towards implementation in Software 2010

91 Universität Dortmund Importance of Embedded Software and Embedded Processors “... the New York Times has estimated that the average American comes into contact with about 60 micro- processors every day....” [Camposano, 1996] Latest top-level BMWs contain over 100 micro- processors [Marwedel, 2003] The average American does not drive a BMW! Most of the functionality will be implemented in software

92 Universität Dortmund Challenges for implementation in software If embedded systems will be implemented mostly in software, then why don‘t we just use what software engineers have come up with?

93 Universität Dortmund Software complexity is a challenge Rob van Ommering, COPA Tutorial, as cited by: Gerrit Müller: Opportunities and challenges in embedded systems, Eindhoven Embedded Systems Institute, 2004  Exponential increase in software complexity  In some areas code size is doubling every 9 months [ST Microelectronics, Medea Workshop, Fall 2003] ... > 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development [A. Sangiovanni-Vincentelli, 1999]  Exponential increase in software complexity  In some areas code size is doubling every 9 months [ST Microelectronics, Medea Workshop, Fall 2003] ... > 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development [A. Sangiovanni-Vincentelli, 1999]

94 Universität Dortmund More challenges for embedded software  Dynamic environments  Capture the required behaviour!  Validate specifications  Efficient translation of specifications into implementations!  How can we check that we meet real- time constraints?  How do we validate embedded real- time software? (large volumes of data, testing may be safety-critical)  Dynamic environments  Capture the required behaviour!  Validate specifications  Efficient translation of specifications into implementations!  How can we check that we meet real- time constraints?  How do we validate embedded real- time software? (large volumes of data, testing may be safety-critical)

95 Universität Dortmund It is not sufficient to consider ES just as a special case of software engineering EE knowledge must be available, Walls between EE and CS must be torn down

96 Universität Dortmund Summary of ES introduction  Definition of embedded systems  Application areas  Examples  Curriculum  Characteristics -Reliability  Growing importance of embedded systems  Challenges in embedded system design  Definition of embedded systems  Application areas  Examples  Curriculum  Characteristics -Reliability  Growing importance of embedded systems  Challenges in embedded system design

97 Universität Dortmund First Part of First Homework 1.Which types of embedded systems are most interesting to you and why? 2.What kind of project you are interested in? 3.How can your project contribute to society? 4.Challenges of your project as part of embedded system design challenges. Write a short essay

98 Universität Dortmund General Architecture of a Digital System Memory Control Unit Data Path D/AA/D Input signalsOutput signals

99 Universität Dortmund From ASIC to system on a chip

100 Universität Dortmund NAND V DD c a b Source gate drain W L drain gate source

101 Universität Dortmund Accumulator

102 Universität Dortmund Multiplexer ALU

103 Universität Dortmund Memory Register

104 Universität Dortmund

105 Finite State Machines S4, 11 S3, 10 S2, 01 S1, 00 A=1 A=0 A=1 A=0

106 Universität Dortmund Design PCB or realize in an FPGA/PLD In our projects we will use FPGA and GPU. Boards exist. No PCB design

107 Universität Dortmund Short Review of AND/OR and AND/EXOR Logics A  A = 0 A  A’ = 1 A  1=A’ A’  1=A A  0=A A  B= B  A A B = B A A  A = 0 A  A’ = 1 A  1=A’ A’  1=A A  0=A A  B= B  A A B = B A A(B  C) = AB  AC A+B = A  B  AB A+B = A  B when AB = 0 A  (B  C) = (A  B)  C (A B) C = A (B C) A+B = A  B  AB = A  B(1  A) = A  BA’ 1.These rules are sufficient to minimize Exclusive Sum of Product expression for small number of variables 2.We will use these rules in the class for all kinds of reversible, quantum, optical, etc. logic. 3.Try to remember them or put them to your “creepsheet”. AND/EXOR

108 Universität Dortmund Natural number of the cell This ESOP is : W’X’  YZ Learn how to design graphically such solutions

109 Universität Dortmund Short Review of Exor Logic A  A = 0 A  A’ = 1 A  1=A’ A’  1=A A  0=A A  B= B  A A B = B A A  A = 0 A  A’ = 1 A  1=A’ A’  1=A A  0=A A  B= B  A A B = B A A(B  C) = AB  AC A+B = A  B  AB A+B = A  B when AB = 0 A  (B  C) = (A  B)  C (A B) C = A (B C) A+B = A  B  AB = A  B(1  A) = A  BA’ These rules are sufficient to minimize Exclusive Sum of Product expression for small number of variables We will use these rules in the class for all kinds of reversible, quantum, optical, etc. logic. Try to remember them or put them to your “creepsheet”.

110 Universität Dortmund Natural number of the cell This ESOP is : W’X’  YZ Learn how to design graphically such solutions

111 Universität Dortmund Karnaugh Map

112 Universität Dortmund Karnaugh Map for SOP AND/OR

113 Universität Dortmund

114 Homework number 1 (Due Monday) 1.Design an adder of two 3-bit numbers. 2.Synthesize as an ESOP or factorized ESOP. 3.Minimize graphically, algebraically, describe hierarchically or using VHDL/Verilog. 4.Draw the circuit. 1.Design an adder of two 3-bit numbers. 2.Synthesize as an ESOP or factorized ESOP. 3.Minimize graphically, algebraically, describe hierarchically or using VHDL/Verilog. 4.Draw the circuit. Second Part of First Homework

115 Universität Dortmund Please review 1.Karnaugh Maps (Kmaps, for short) for 2,3,4 and 5 variables. 2.The adjacent cells - geometrically and in the sense of Hamming distance. 3.Enumeration of cells (minterms) 4.Don’t care minterms and how to use them 5.How to find prime implicants 6.How to find Sum-of-Products (SOP) Covers of sets of true minterms with prime implicants. 7.What are essential prime implicants and distinct vertices. 1.Distinct vertices are minterms that are covered by only one prime 2.Essential primes are primes that cover distinct vertices 1.Karnaugh Maps (Kmaps, for short) for 2,3,4 and 5 variables. 2.The adjacent cells - geometrically and in the sense of Hamming distance. 3.Enumeration of cells (minterms) 4.Don’t care minterms and how to use them 5.How to find prime implicants 6.How to find Sum-of-Products (SOP) Covers of sets of true minterms with prime implicants. 7.What are essential prime implicants and distinct vertices. 1.Distinct vertices are minterms that are covered by only one prime 2.Essential primes are primes that cover distinct vertices

116 Universität Dortmund What else should you review for next time? 1.Please review the Kmap, implicants and covering from any undergraduate textbook such as Roth or Katz 2.Review basic Boolean algebra, De Morgan rules, factorization and flip-flops (D,T,JK). 3.You should be able to take arbitrary Kmap of 5 variables, truth table, netlist or expression and convert it to a truth table or Kmap. 4.Next you should be able to minimize it and draw a schematic with gates such as EXOR, NAND, NOR, etc. 5.You should be able to reformulate problem expressed in English as a Boolean minimization or decision problem. 6.SOP and ESOP logic and circuits. 7.These are the minimum information to start practical design problems. 1.Please review the Kmap, implicants and covering from any undergraduate textbook such as Roth or Katz 2.Review basic Boolean algebra, De Morgan rules, factorization and flip-flops (D,T,JK). 3.You should be able to take arbitrary Kmap of 5 variables, truth table, netlist or expression and convert it to a truth table or Kmap. 4.Next you should be able to minimize it and draw a schematic with gates such as EXOR, NAND, NOR, etc. 5.You should be able to reformulate problem expressed in English as a Boolean minimization or decision problem. 6.SOP and ESOP logic and circuits. 7.These are the minimum information to start practical design problems.

117 Universität Dortmund Questions for Review and Exams 1.Give a definition of Embedded Systems 2.List your ideas about applications of Embedded Systems for: 1.Autistic children therapy and diagnosis 2.Alcoholics and addicts therapy and diagnosis 3.Mountaineers 4.Exercising equipment 5.Any other area of life where ES are not yet much used, think about human benefit 3.What are real time systems? 4.Think about ES that are big state machines. List them 5.Think about sensors that may be used with ES? How much do they cost? 6.Think about effectors that are used in ES? Their cost and where to get them? 7.What are the biggest challenges of Embedded Systems reasearch? 8.What are the challenges of practical design of ES that takes economics into account? 1.Give a definition of Embedded Systems 2.List your ideas about applications of Embedded Systems for: 1.Autistic children therapy and diagnosis 2.Alcoholics and addicts therapy and diagnosis 3.Mountaineers 4.Exercising equipment 5.Any other area of life where ES are not yet much used, think about human benefit 3.What are real time systems? 4.Think about ES that are big state machines. List them 5.Think about sensors that may be used with ES? How much do they cost? 6.Think about effectors that are used in ES? Their cost and where to get them? 7.What are the biggest challenges of Embedded Systems reasearch? 8.What are the challenges of practical design of ES that takes economics into account?

118 Universität Dortmund Embedded Systems Graphics: © Alexandra Nolte, Gesine Marwedel, 2003 Slides of Peter Marweded andJakob Engblom are used Some slides come from various sources, including Adam Postula, Mark Schulz and U.C. Berkeley


Download ppt "Universität Dortmund Marek Perkowski’s Productions present: Lectures on Embedded Systems and High Level Synthesis and CAD Some slides come from various."

Similar presentations


Ads by Google