Digital Design Laboratory


CMPE Degree: This course is Required for the CMPE degree.

EE Degree: This course is Required for the EE degree.

Lab Hours: 3 supervised lab hours and 0 unsupervised lab hours.

Course Coordinator: Thomas R Collins

Prerequisites: (ECE2020/2030 and (ECE 2035* or ECE 2036*)) or CS 2110 [all courses min C]

Corequisites: None.

Catalog Description

Design and implementation of digital systems, including a team design project. CAD tools, project design methodologies, logic synthesis, and assembly language programming.

Course Outcomes

  1. implement combinational logic circuits both with TTL devices on a protoboard and within a complex PLD.
  2. analyze the timing of digital circuits with oscilloscopes and logic analyzers.
  3. design and implement state machines to meet design specifications.
  4. design circuits with a graphical schematic CAD editor.
  5. simulate circuits within a CAD tool and compare to design specifications.
  6. design, implement, and simulate circuits using VHDL.
  7. implement a simple computer within a PLD.
  8. write machine language programs and assembly language programs for the simple computer.
  9. use a complex sequential logic circuit as part of a solution to an open-ended design problem.
  10. write laboratory reports and documentation conforming to technical writing standards.
  11. work effectively as team members to develop and write a group report.
  12. work effectively as team members to design an approved project.

Student Outcomes

In the parentheses for each Student Outcome:
"P" for primary indicates the outcome is a major focus of the entire course.
“M” for moderate indicates the outcome is the focus of at least one component of the course, but not majority of course material.
“LN” for “little to none” indicates that the course does not contribute significantly to this outcome.

1. ( P ) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics

2. ( M ) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors

3. ( P ) An ability to communicate effectively with a range of audiences

4. ( LN ) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts

5. ( M ) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives

6. ( P ) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions

7. ( M ) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies.

Strategic Performance Indicators (SPIs)

Not Applicable

Course Objectives

  1. apply their knowledge from ECE 2030 to practical laboratory experience in digital computing systems. [6, 8]
  2. apply the concepts of basic combinational logic circuits, sequential circuit elements, and programmable logic in the laboratory setting. [7]
  3. develop familiarity and confidence with designing, building and testing digital circuits, including the use of CAD tools. [1, 7, 11]
  4. develop team-building skills and enhance technical knowledge through both written assignments and design projects. [2, 13]

Topical Outline

Laboratory projects will use a PC-based CAD environment that supports schematic capture, logic simulation, and HDL-based logic sysnthesis on FPGAs (field-programmable gate arrays). Small-scale integrated circuits will be used for early labs, then HDL-based logic synthesis on FPGA-based design boards will be used for more advanced design implementations, including exposure to mixed design-entry methods. The semester will culminate with design projects specified and undertaken by teams of three to five students. Technical writing skills are developed through laboratory reports, project documentation, and an oral presentation.

  1. CAD Tools
  2. Logic Synthesis using an HDL
  3. HDL models of basic gates and logic operations
  4. Combinational design using multiple methods: primitive gates, schematic capture for FPGAs, and VHDL
  5. HDL based simulation and synthesis with FPGAs
  6. Examination of real timing issues on hardware using timing simulation, oscilloscope, and logic analyzer
  7. State machine specification, design, and simulation
  8. State machine implementation with multiple methods
  9. Design verification with logic analyzer
  10. HDL models of data storage elements
  11. ROM and RAM implementations on FPGA boards
  12. Hardware design of a simple computer with ALU, registers, control unit, memory, instructions, and I/O
  13. HDL-based simple computer simulation and implementation on FPGA board
  14. Machine language and assembly language programming for the simple computer
  15. Simulation and implementation of programs on the FPGA board
  16. Final design project problem specification (examples: video game, control application, robot, or contest)
  17. Hardware and tools available to solve the final design project problem
  18. Project engineering issues: top-down vs. bottom-up design, hierarchical decomposition, and modularity