Master Course Syllabus for EE 478 (ABET sheet)


Design of Computer Subsystems


5 (4 lecture - 1 lab)

UW Course Catalog Description


Coordinator: James K. Peckol, Senior Lecturer, Electrical Engineering


An introductory course in the specification, design, development, and test of digital computer subsystems and systems, using SSI, MSI, and LSI digital components as well as arrayed logics and microprocessors. Contemporary design tools and instruments will be introduced through a series of open-ended laboratory projects then applied in a comprehensive final project.  The capstone project provides a venue to bring together all of the course material as well as the knowledge the student has acquired through his or her undergraduate studies while emphasizing strong written and oral communications skills.


1.     Comprehensive, in-depth coverage of advanced digital design principles and practice in real-world applications.

2.     Introduce the system design and development process and steps.

3.     Emphasize written and oral communications skills.

4.     Provide a real-world, intensive experience in a capstone design project in contemporary digital electronics, software, and computer systems.


John F. Wakerly, Digital Design Principles and Practices, Prentice-Hall, 4th. ed., 2006.



TTL, CMOS, PLD, memory and microprocessor data sheets

Prerequisites by Topic:

1.     Digital circuits and systems

2.     Microprocessor organization and programming

3.     Computer design and organization

4.     Electronic devices and circuits


Introduction to Basic Laboratory Tools and Techniques 1.0 weeks

System Specification, Modeling, and Design 1.0 weeks

Programmable Logic Devices 1.0 weeks

High Speed Signals and Signal Management 2.0 weeks

Busses and Networks 2.0 weeks

Memory Systems 1.0 weeks

Reliability, Fault Tolerance, and Test 1.0 weeks

Topics of Current Interest 1.0 weeks


Course Structure:

4-5 hours/week lecture, 2 laboratories in the first five weeks, a final project starting in the fifth week, four homework assignments, and a research paper and presentation of a topic of current interest.

Computer Resources:

This class is supported by a laboratory that has 12 Intel PC's and a variety of target and development machines and other electronic test and measurement instruments.


Examples of labs that might be used:

Familiarization with the logic analyzer and other advanced tools.

Development of a control system for a satellite infrared imaging system.

The development of a serial interface between a PC and a parallel bus interconnecting a variety of simple modules. The modules must interpret then respond to commands to accept or send data to/from the PC.

Design/Science Content:

This course assumes that the fundamental science knowledge related to digital systems, embedded systems, and Verilog and C programming has been acquired in the earlier courses. The hardware design of digital systems is emphasized.  There is significant practical hands-on experience gained through solving several open-ended design assignments and a significant final project. The user interface, robustness, design integrity, implementation, test, and ease-of-use of each student's solution are specifically evaluated.


There is a research paper, four homework assignments, two laboratory assignments and one final project.  The homework counts 10%, research papers, in class presentation, workshops, and applications count 15%, the laboratory projects count 35%, and the final project 40% of the grade.

Outcome Coverage:

This course addresses most of the basic ABET outcomes.

(a)    An ability to apply knowledge of mathematics, science, and engineering. The laboratories require the student to assess and analyze the assignment, then apply basic engineering knowledge to either solve the problem or state why (based upon their analysis) they are unable to fully satisfy the requirements.  The final project requires the application of such knowledge to a project of the student's own choice. (H)

(b)   An ability to design and conduct experiments, as well as to analyze and interpret data.   A significant component of designing and developing a real world application is ensuring that one's system performs to specification in the intended environment.  Such assurance can only be gained by testing the system in such a context then analyzing the results of those tests.  Such a process is integral to this class, to each of the labs and to the final project. (H)

(c) An ability to design a system, component or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability and sustainability. Students design and implement two significant real world systems followed by a substantial final project. Each of the two laboratory projects provides a high level requirements specification for the problem to be solved.  For the final project, the students must develop their own such specification. (M)

(d) An ability to function on multidisciplinary teams.   Although not multidisciplinary since the class is in the student's selected major, the students work as members of 2-3 person teams to execute each of the labs and the final project.  (M)

(e) An ability to identify, formulate and solve engineering problems. For each of the lab projects, the student must analyze the requirements, then design, implement, and test a hardware/software system that meets the stated requirements.  The student must then propose a test plan and demonstrate that their design meets the initial requirements. (M)

(f) An understanding of professional and ethical responsibilities. Ethics and professional behavior are strongly stressed throughout the course.  Considered areas include copyrights, national and international patents, licensed material, intellectual property, plagiarism, citing sources for material or idea, and using published algorithms and designs. Projects, lab assignments, and research projects that do not cite sources are given failing marks. (M)

(g) An ability to communicate effectively. Team must prepare an oral presentation to the class describing their project, discussing any problems and how they were solved, and proposing how they might alter their design should they begin again. (M)

(h) The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental and societal context.   Lecture material routinely stresses the need for designs to consider international markets and the need to satisfy international standards, including those for safety and health. (L)

(i)    A recognition of the need for, and an ability to engage in, lifelong learning.  Lecture material continually emphasizes that today's technology is transitory and that the students must learn the basics so that these may form a foundation upon which they will build future technologies. (L)

(j) Knowledge of contemporary issues. Discussions of contemporary technologies, corporate needs and responsibilities, the legal impacts of designs, and the ever-evolving engineering discipline are an integral part of the lecture material. (L)

(k) An ability to use the techniques, skills and modern engineering tools necessary for engineering practice.  Students will use modern computers, development tools and debugging techniques. (M)

ABET Criterion 4 Considerations

Engineering Standards - Students are provided with realistic specifications that must be satisfied by their lab projects as well as their final project.  The standards are derived from acceptable industry practices and a government agency's good engineering practices.  In addition, students are made aware that to sell into the commercial market, products must meet the standards specified by the agencies in specific countries such as the FCC, FDA, CSA, the German standards agencies, as well as international standards such as those set by the ISO.  Lecture material includes a discussion of verification and validation testing to meet such requirements.

Realistic constraints - All of the design exercises must consider real world constraints and trade-offs including those on memory size, speed, algorithm efficiency, code size, system performance and capability.  Often the constraints are intentionally conflicting.

Economic - Students are asked to choose among design alternatives on the basis of performance, features which affect product sales, reliability, memory size, weight, safety, etc. This analysis should appear in the project reports.  In addition, students are made aware that the economics and the associated constraints are different is a design that is selling 1-2 pieces vs. 1-2 million pieces.

Environmental - Design and component reuse are integral elements of the class material.

Sustainability - Students are asked to consider design and component reuse in each of their projects.

Manufacturability - To be of any use, a system must be able to be manufactured in quantities larger than one.  This topic is repeatedly stressed throughout the course.  Students are introduced to the idea that software (particularly that in embedded systems) like hardware has manufacturing costs and constraints.  Although, it is not possible to demonstrate the success which an individual project may have in meeting such an objective, each is evaluated on such criteria as a part of the grade.

Ethical - See goal (f) under Outcomes and Assessment.

Health and Safety - The safe and reliable operation of any system is a customary thread of discussion throughout the course.  The student must routinely assess design trade-offs based upon their impact on the safety and such an analysis need to appear as part of their project report.

Social - The potential social impact of today's technologies on our society and on our lifestyle is an integral component of the lecture material.

Political - Political considerations are addressed through repeated emphasis that today's technologies have no local boundaries. Further, that products and intellectual property are international in scope and that ethical, social, and political considerations are now as much a part of contemporary designs as resistors or software algorithms.



James K. Peckol

Last Revised:

10 / 08 / 2012