ENGIN441_Syllabus_20140406

advertisement
ENGIN 441 – Embedded Systems
University of Massachusetts Boston
Engineering Program
Dr. Filip Cuckov
Course description:
This course covers fundamentals of embedded systems: architecture, programming, design,
and interfacing. Topics include processors and hardware for embedded systems, embedded
programming and real time operating systems. The course will cover technologies and methods
using Computer Aided Design (CAD) design tools for implementation of complex digital systems
using Field Programmable Gate Arrays (FPGAs). It provides advanced methods of digital circuit
design, specification, synthesis, implementation and prototyping.
(Offered Fall)
Prerequisites: ENGIN 341 – Advanced Digital Design
Textbook:
Peter Marwedel, Embedded System Design, Springer, 2006, ISBN 978-0-387-29237-3
Supplementary (Optional) Textbooks and References:





Frank Vahid, Tony Givargis, Embedded System Design: A Unified
Hardware/Software Introduction, Wiley, Oct. 2001, ISBN 978-0471386780
Michael Barr, Programming Embedded Systems in C and C++, O'Reilly, 1999..
Online available at: Safaribooksonline.com
Kernighan; Dennis M. Ritchie, The C Programming Language (2nd ed.), Prentice Hall,
ISBN 0-13-110362-8
S. Kilts, Advanced FPGA Design: Architecture, Implementation, and Optimization, WileyInterscience, 2007.
V. Pedroni, Circuit Design with VHDL, The MIT Press, 2004
Required materials (Provided to students):
Altera DE2 Education Board (provided to students for the duration of the semester, special
student pricing available, if you are interested in owning one)
Parts kit from ENGIN 241
Course Learning Objectives:
1. Students will be able to design, specify, synthesize, simulate, and implement advanced
digital systems on FPGAs.
2. Students will understand current applications and trends in FPGA technology.
3. Students will learn advanced VHDL programming techniques.
4. Students will develop, implement, and prototype a complex digital system.
5. Students will develop functional hardware modules and integrate them into a complete
system.
6. Students will make use of external peripherals devices in their design projects.
7. Students will learn advanced code debugging, and hardware troubleshooting methods.
8. Students will have completed a major project that involves identifying, formulating, and
solving a complex engineering problem.
Topics Covered:
Topic
I. COURSE INTRODUCTION
Number of Classes
1
A. Course Overview
B. ENGIN Curriculum Overview
C. Course Format and Procedures
II. INTRODUCTION TO ADVANCED VHDL CAD
A. VHDL Review
B. VHDL Programming Models
C. CAD Design Cycle
D. Advanced VHDL Concepts
7
III. FPGA DESIGN METHODOLOGIES
A. Design Synthesis
B. Functional Simulation
C. Design Fitting
D. Timing Analysis and Simulation
E. Device Programming and Configuration
8
IV. DIGITAL DESIGN OF COMPLEX SYSTEMS
A. Sub-Component Design and Prototyping
B. Component Interfacing
C. Complex System Component Integration
D. Complete System Analysis
10
V. CONCLUSION
1
A. Lifelong Learning
B. Contemporary Issues
Class will meet twice a week for 1:15 periods, for a total of 3 hours.
Engineering Science Hours: 3
Engineering Design Hours: 0
Weekly Schedule
Week 1:
• Overview of course and expectation
• Overview of embedded system, technologies and application areas
Week 2:
• Review of hardware definition languages and uses in embedded systems
• VHDL review
Week 3:
• VHDL programming models – behavioral
• VHDL programming models - dataflow
Week 4:
• VHDL programming models – structural
• VHDL mixed modeling
Week 5:
• Computer aided design cycle – from definition to implementation
• Advanced VHDL – automated test-benches
Week 6:
• Advanced VHDL – synthesizable code
• Advanced VHDL – mapping code to hardware implementation
Week 7:
• Field programmable gate arrays and programmable logic devices
• Design synthesis on programmable hardware
Week 8:
• Functional simulation and automating verification
• Post synthesis design fitting, placement, and routing
Week 9:
• Timing analysis and simulation
• Device programming and configuration
Week 10:
• Advanced digital design of complex digital systems
• Modular design, interfacing, hierarchical design, top-down and bottom-up approaches
Week 11:
• Component design and encapsulation
• System-level design and component interfacing
Week 12:
• Analysis of complex systems - timing
• Analysis of complex systems – implementation verification
Week 13:
• Hardware-software co-design
Week 14:
• Iterative design and incremental synthesis
• Reconfigurable hardware
Week 15:
• Summary and review
Project:
The goal of the project is to design a complex embedded system by applying the theory learned
in class. Sample projects include: hardware implementation of adaptive video stabilization,
MJPEG compression and decompression, video codec design, real-time signal processing,
among others. Several options for the final project will be provided to students at the beginning
of the semester. Students can choose any one of the provided options, as long as they commit
to this choice before the midterm exam. Those who wish to work on designing a custom
embedded system, need to propose a system/problem to the instructor within the 3rd week of
class. The instructor then will work with each student to make sure that the project complexity is
adequate, as well as to divide the project into 3 milestone deliverables. Each milestone can be
thought of as a mini standalone project that is an integral part of the final project. Students will
be expected to work individually on the project.
Homework Assignments:
Homework assignment will be given as needed, and used to reinforce concepts covered in the
lecture. There will be 7 homework assignments given during the semester, one every two
weeks. Solutions will be posted the day after the assignment is due.
Grading Criteria:
The course will be graded on the following scale:
Homework assignments
Mid-term exam
Final project
Final exam
20%
20%
30% (3 milestones, 10% each)
30%
Accommodations:
The University of Massachusetts Boston is committed to providing reasonable academic
accommodations for all students with disabilities. This syllabus is available in alternate format
upon request. If you have a disability and feel you will need accommodations in this course,
please contact the Ross Center for Disability Services, Campus Center, Upper Level, Room 211
at 617.287.7430. http://www.umb.edu/academics/vpass/disability/ After registration with the
Ross Center, a student should present and discuss the accommodations with the professor.
Although a student can request accommodations at any time, we recommend that students
inform the professor of the need for accommodations by the end of the Drop/Add period to
ensure that accommodations are available for the entirety of the course.
Code of Conduct and Academic Integrity:
It is the expressed policy of the University that every aspect of academic life--not only formal
coursework situations, but all relationships and interactions connected to the educational
process--shall be conducted in an absolutely and uncompromisingly honest manner. The
University presupposes that any submission of work for academic credit is the student’s own
and is in compliance with University policies, including its policies on appropriate citation and
plagiarism. These policies are spelled out in the Code of Student Conduct. Students are
required to adhere to the Code of Student Conduct, including requirements for academic
honesty, as delineated in the University of Massachusetts Boston Graduate Catalogue and
relevant program student handbook(s) http://www.umb.edu/life_on_campus/policies/code.
Download