Presentation on theme: "Design & Co-design of Embedded Systems Embedded System Design: Traditional vs. Modern Style Maziar Goudarzi."— Presentation transcript:
Design & Co-design of Embedded Systems Embedded System Design: Traditional vs. Modern Style Maziar Goudarzi
2005 Design & Co-design of Embedded Systems2 Today Program zEmbedded System Design Process yTraditional approach yAnalysis & discussion yModern approaches yCourse final project
2005 Design & Co-design of Embedded Systems3 Traditional Approach CPU mem input output analog embedded computer Logic
2005 Design & Co-design of Embedded Systems4 Design Example zRobot Control Unit (RCU) of Arvand soccer-playing robots Bottom View of Arvand Robots castor wheel motion wheels Touch sensors Infra-Red Sensors steering motors (not shown)
2005 Design & Co-design of Embedded Systems5 Design Example (cont’d) zThings to handle yMotors xPWM for motion motors xDC control for steering yTouch sensors xRead-in and refresh values yInfra-Red sensors xReset, then read them yCommunication to the main motherboard xRS-232 serial link castor wheel motion wheels
2005 Design & Co-design of Embedded Systems6 Design Example (cont’d) zImplementation steps 1.Choose HW or SW implementation per operation 2.Design the analog IO parts 3.Design the Printed Circuit Board (PCB) 1.Pass the PCB files to manufacturing firms 4.HW: Develop the FPGA contents 1.Program the FPGA configuration EEPROM 5.SW: Develop the 8051 program 1.Program the 8051 instruction memory (EEPROM) 6.Integrate HW, SW, and the PCB 7.Test 1.Limited test in isolation (as far as possible) 2.Test in action (on the robot)
2005 Design & Co-design of Embedded Systems7 Design Example (cont’d) FabricationTest System design PCB test SW test Time Tasks Traditional System Design Process Simulation PCB design SW design FPGA design
2005 Design & Co-design of Embedded Systems8 Analysis zDevelopment yIsolated (SW, HW, Analog electronics) yConsistency check: designers zDebug yBefore PCB is available xIsolated (SW, HW, Analog) yAfter PCB is available 1.Remove the EEPROM/ Change the configuration/program 3.Re-insert the EEPROM/8051 xWhat if PCB initial design (or analog parts) was wrong?
2005 Design & Co-design of Embedded Systems9 Analysis (cont’d) zSome other problems yTools used xProtel, OrCAD for PCB xAltera MAX+Plus II for FPGA x8051 command-line compiler and debugger yTool interoperability issues
2005 Design & Co-design of Embedded Systems10 Solution zTry to do as much of the tests as early as possible in the design cycle yStep 1: Combine HW and SW simulation yStep 2: Add analog parts as well xAnalog Mixed-Signal (AMS) simulation yStep 3: Entire design of the PCB?
2005 Design & Co-design of Embedded Systems11 Modern Design Style (HW+SW) Shared Design Co-Design Process HW design PCB test SW test Time Tasks System design System-Level Partitioning SW design
2005 Design & Co-design of Embedded Systems13 The approach to be evaluated here Synthesize HW Design interface Time Tasks System Design Compile SW Data type refinement C++SystemC Parallelize Xilinx tools Integrate & Test
2005 Design & Co-design of Embedded Systems14 Ideas for course project zAlternative 1: App. case study 1.Select an embedded application 2.Design an executable specification for it 3.Step by step manually refine it to HW-SW implementation 4.Report performance, area, power & compare with full-SW & write a paper (optional) ySuggestions yData compressor/decompressor yVoice codec yA game yJPEG, JPEG2000
2005 Design & Co-design of Embedded Systems15 Ideas for course project (cont’d) zAlternative 2: Methodology case study 1.Select a system design language and methodology 2.Implement an application using them 3.Give a presentation ySuggestions: yHandle-C & Celoxica “DK Design Suite” ySpecC & the associated tools from UCI yTensilica’s processor generator (XTensa processor)
2005 Design & Co-design of Embedded Systems16 Ideas for course project (cont’d) zAlternative 3: Case study in ODYSSEY 1.Select an application 2.Develop an OO C++ program for that 3.Implement it as HW-SW system using ODYSSEY tools and flows ySuggestions yThe same applications as in alternative 1
2005 Design & Co-design of Embedded Systems17 Ideas for course project (cont’d) zAlternative 4: Implement algorithms 1.Select one of the co-synthesis algorithms (to be taught during the course) 2.Develop a program that implements the algorithm for ODYSSEY
2005 Design & Co-design of Embedded Systems18 Summary zProblems inherent in traditional style of designing embedded systems zThe general solution zA modern approach followed in this course and to be used in its final project
2005 Design & Co-design of Embedded Systems19 Other Notes zReading assignments on the course web-page zAnnounce by the end of next week (1 page) 1.Your team members (at most 3 persons) 2.Your selection for course project 3.Rough schedule yOther deadlines for the project 1.Report 1: Sun. Aban 15 th x2-3 pages: List of your collected material Summary of what you’ve done + demo of the C++ app. Your plan for next phases and role of each person 2.Report 2 + Oral presentation: Sun. Azar 13th y4-5 pages: 15 min. oral presentation Summary of what you’ve done + experimental results (as far as available) What’s remained? Plan to finish it.
2005 Design & Co-design of Embedded Systems20 Tool Presentation zShort presentation of the tools to be used in the course project (now, in the lab.) yXilinx EDK: Naser MohammadZadeh ySynopsys SystemC Compiler: Morteza NajafVand