Hardware/Software Codesign of Embedded Systems TOPICS IN COMPUTERS I ELG7186B (EACJ5807B )Carleton CRN: 17151 Voicu Groza SITE Hall, Room 5017 562 5800 ext. 2159 Groza@SITE.uOttawa.ca
Concurrent Cooperative Design of HW/SW Goals: • To introduce issues and methods for the specification and design of embedded computing systems • To present techniques for codesign CODESIGN=
Embedded Systems Infomercial • Sales of microprocessors rose 3% in 2007 as chip companies sold $270 billion worth of chips worldwide (Gartner). • Intel had 12.2% market share, followed by • Samsung with 7.7%, • Toshiba with 4.6% and • Texas Instruments with 4.2%. • $-wise, the embedded and desktop markets are about the same, since embedded computers cost only a few to tens of dollars - you can't put a $200 processor inside a pager • Designers of embedded systems will likely be in high demand …
Who knows how to build embedded systems? • Such systems used to be the domain of hardware designers. • Today, embedded system designer must be experienced in both software and hardware design, as well as in embedded applications. • In addition, because an embedded system usually executes just one program during its lifetime (unlike desktop computers that execute thousands of programs), the designer must be familiar with optimization techniques to perform the specific program using the least size, power, and time.
ELG 7186B Course Outline • Introduction: Concurrent Engineering • Hardware/Software Components and Architectures of Embedded Systems • System Modeling and Specification Languages (State Machines, Codesign FSM, StateCharts, Petri-Nets, Communicating Sequential Processes, Synchronous Dataflow; System Level Specification Languages). Co-Simulation. • System-Level Synthesis: Architecture selection. Hardware/Software Partitioning. • Interface Analysis and Synthesis. • Hardware and Software Synthesis. • Co-Verification and rapid prototyping of Hardware/Software Systems • Hardware/Software Codesign Environments.
CO • SPECIFICATION • SIMULATION • VERIFICATION • PARTITIONING • SYNTHESIS
References • Peter Marwedel, “Embedded System Design,” Springer, 2005, ISBN-10: 0387292373 • Daniel D. Gajski, Franck Vahid, Sanjiv Narayan, Jie Gong, “Specification and Design of Embedded Systems,” PTR Prentice Hall, Englewood Cliffs, New Jersey 07632, 1994, ISBN 0-13-150731-1 • Wayne Wolf, “Computers as Components. Principles of Embedded Computing Systems Design,” Morgan Kaufmann, 2002, Elsevier Science ISBN: 1-55860-541 • Tim Mikkelsen, “Embedded Computers In Electronic Instruments,” from “Standard Handbook Of Electronic Engineering,” The McGraw-Hill Companies,2004 • A. Jantsch, “Modeling Embedded Systems and SoC's - Concurrency and Time in Models of Computation,” Morgan Kaufmann, 2003.
Marking Scheme • Assignments (1 or 2) (15 %) • One or two assignments, dealing with co-design methodologies and/or tools will be given out to familiarize the student with system modeling • First project task (15 %) • This task involves a literature review of an agreed upon topic, preferably in line with the student’s research • A paper presentation is given to the class discussing one of the literatures surveyed in the first project task. This will be scheduled for sometime in the middle of the semester. • Second project task (35 %) • This task complements the first one, through the design, simulation and/or implementation of the chosen topic. The student is free to utilize any available tools and languages to carry out the research. • A presentation outlining the project’s details and results is given to the class. Each student is required to choose at least one of the presentations (paper or project) • Final examination (35%)