CSE 671

Embedded System Design – Spring 2008

Syracuse University        L.C. Smith College of Engineering and Computer Science

Description

Methodologies for systematic design of embedded systems. System specification, architecture modeling, component partitioning, estimation metrics, hardware software co-design. Embedded computing platforms and programming. Putting it all together: ASIC, CPU, and glue logic.

Meets with

CSE471 - Introduction to Embedded System.

Instructor

Dr. Ehat Ercanli, Assistant Professor of Electrical Engineering and Computer Science.

eercanli@syr.edu. CST 4-297. 443-3564. Office hours: TTh 11:30am-1:30pm.

TA

Jean Hannouche. jhannouc@syr.edu.

Times

TTH 9:30 – 10:50 a.m. at Bowne 119.

Textbook

Embedded System Design- A Unified Hardware/Software Introduction, F Vahid, T Givargis, 2002, JWS, ISBN:0471386782.

Recommended

Computers and Components – Principles of Embedded Computing System Design.  W Wolf, 2001, Morgan Kaufmann.

Prerequisites

CSE 381 and programming competence

Grading

Assignments/Lab Projects: 50%, Exams: 50%. The projects will be graded based on the quality of the designs, reports and presentations. CSE 671 will have additional project and exam requirements.

Homework

Homework assignments are to be submitted in lecture on the assigned due date. No late assignments will be accepted. You are expected to complete the homework individually. However, you can discuss assignments and solutions with each other, but all work submitted must be the sole work of the author. Course projects will be completed individually or in-groups of two. Answers to selected problems will be available on the class web page.

Exams

All exams must be taken at the scheduled time unless a previous arrangement (with a good reason) has been made with the instructor.

Attendance

You are expected to attend each class punctually and remain for the entire class period; tardiness disturbs everyone. You need to inform the instructor in advance if you expect to miss a class or leave the course before the end of the semester. If you miss class your absence will be excused by the instructor only if a doctor's certificate or other evidence is submitted. If you have been absent and fail to submit an excuse to the instructor, your absence will be considered unexcused. Even if your absence is excused, you remain responsible for the work associated with the class you missed.  There will be a number of unannounced pop quizzes.

Academic Honesty

Cheating in any form is not tolerated, nor is assisting another person to cheat. The submission of any work by a student is taken as a guarantee that the thoughts and expressions in it are the student's own except when properly credited to another.

Violations of this principle include giving or receiving aid in an exam or where otherwise prohibited, fraud, plagiarism, the falsification or forgery of any record, and any other deceptive act in connection with academic work. Plagiarism is the representation of another's words, ideas, programs, formulae, options, or other products of work as one's own, either overtly or by failing to attribute them to their true source.

Always protect your own work from others, since it is often not possible to determine who the originator or the copier was. Such offense will result in a failing grade ‘F’ and a letter of reprimand in your permanent student file.

Required Knowledge and Skills

Recall:

You should be able to define the differences between various classes of systems such as CISC & RISC and micro programmable & wired decoding.

Comprehension:

You should be able to translate between various formal representations for design and analysis and interpret the meaning of the various formal representations.

Application:

You should be able to modify a system to enhance its overall throughput using various techniques such as pipelining and multiple execution units.

Acquired Knowledge and Skills

Recall:

You should be able to describe and understand the principle characteristics of a generic embedded system.

You should be able describe and understand key tools used in the overall embedded-system design process such as ARM/MIPS platforms and Synopsys/Cadence tools.

Comprehension:

You should be able to define the principle design criteria and constraints such as cost, size, power, reliability, maintainability, and reusability for a given embedded system.

You should be able to describe and understand contemporary industrial practices and trends with respect to embedded systems and embedded-system design.

Application:

You should be able to understand and apply the overall engineering design process such as project justification, constraint identification, establishments of design criteria and timetables, the partitioning of work and project evaluation.

You should be able to search for the information contained in contemporary technical literature and for the embedded-system hardware components, software, design tools, third-party suppliers, etc.

Synthesis:

When given an abstract description of behavior, you should be able to create a concrete implementation that is a faithful refinement of the specification.

Evaluation:

You should be able to judge the degree of correspondence between abstract behavioral specifications and the actual behavior of implementations.

Course Outline

1.     Introduction. Design methodology and representation. Current CAD design. System-level design.

2.     Modeling. FSM models. Event Nets. Data Flow and Control Flow models. Flow Chart-based models. UML. Spec Charts. Uniprocessor and Multiprocessor systems. Application-Specific Architectures. Networks.

3.     ASIC. Specification and representation of embedded systems. HDL. Behavioral and Structural Hierarchy. Data-driven and Control-driven concurrency. Communication and synchronization. Timing. Logic synthesis algorithms.

4.     CPU. Embedded computing. ARM-based systems. Computing platform. Program design and analysis.

5.     Estimation and Verification. Estimation techniques at the system level. Simulation of system level design. Prototyping.

6.     Applications. Digital Camera, Wireless videophone, and others.

 

Tuesday – Thursday

Notes

Overview. Introduction. Specifications. Models. UML Diagrams. FSM Examples. Processor. CPU. Peripherals. Memory. Interfacing. Digital Camera. Concurrency. Control Systems. ARM. IC Technology.

Design Technology. System Development. Mayfest 4/22 no classes.

Tutorials

Synopsys Simulation. System Studio. System Studio II. ARM.

Assignments

H1 due on 1/31. H2 due on 2/14. H3 due on 2/28. H4 due on 4/08.

Projects

P1 due on 2/7. P2 due on 2/21. P3 due on 3/25.

Final Project

Project: You will develop the blueprint of your videophone based on the requirements stated at Requirements, and provide a roadmap to develop it. Actual development/prototyping would be costly and time consuming; hence, we cannot afford it but your final report should be comprehensive enough as a development guideline.

Programming Implementation for GPS feature (for CSE671 only): Routing. Sample Map.

Supplementary Info: Protocols. A Video Chip. FPGA Based Videophone. VOIP. TI OMAP. Sample Controller. Videophone projects.

Report: SU Online Library. Citation Style. Report MODEL.

Exams

E1 due on 3/4. E2 due on 5/1.

Resources

Textbook Supplement. SpecC. SystemC. Embedded.com. EETimes. News. Embedded Control.

Discussion Groups: Embedded. Synthesis. DSP. Real Time. Sensors.

CSE 471/671