ECE 2544 Fundamentals of Digital Systems | ECE | Virginia Tech

Undergraduate PROGRAMS

Course Information


Design and analysis of digital systems. Information representations and computer arithmetic. Switch and gate design within digital logic. Combinational logic analysis and synthesis, Hardware Description Languages (HDL), and hierarchical design. Finite-state machines, synchronous sequential logic analysis and design. Hardware specification and documentation. Register transfer level architectures, computer organization, memories, and digital interfacing. Instruction set architecture and assembly language programming. Emphasis on the relationship between software and hardware

Why take this course?

This course is necessary to ECE curriculum as each student must comprehend the fundamental concepts of digital systems design. The course expands on topics briefly introduced in ECE 1004-binary, primitive logic gates, and the difference between combinational and sequential logic-and introduces the hierarchical relationship between transistors, digital logic, and microprocessors, spanning topics from logic gate formulation to computer organization and assembly language programming. The concepts of hierarchical design, project planning, and documentation are interwoven with these technical skills. Students will apply theory-to-practice in hands-on activities, designing and integrating digital components into increasingly complex systems. Topics in this course are closely linked to ECE 2024 (Circuits and Devices) and ECE 2514 (Computational Engineering), and will prepare students for the more advanced courses ECE 2214 (Physical Electronics), ECE 2564 (Embedded Systems), and ECE 3544 (Digital Design).

Learning Objectives

  • 1. Represent and manipulate information in digital systems, and apply these concepts to performing computer arithmetic.
  • 2. Design, implement, and debug basic combinational and sequential logic circuits.
  • 3. Develop structural and dataflow models of logic circuits in a Hardware Description Language (HDL).
  • 4. Explain the hierarchical relationship between transistors, digital logic, and microprocessors.
  • 5. Plan, implement, and document the design of digital systems.
  • 6. Design elementary register transfer systems.
  • 7. Analyze and demonstrate the organization and operation of, and digital interfacing within, a basic digital computer.
  • 8. Implement and analyze the execution of assembly and machine language computer programs by a basic digital computer

Course Topics


Percentage of Course

1. Representation of information 15%
2. Combinational logic design, synthesis, and HDL 20%
3. Synchronous sequential logic 10%
4. Register-transfer design in digital systems 20%
5. Memory 5%
6. Organization and operation of a basic digital computer 15%
7. Assembly/machine language programming 10%
8. Project planning and documentation 5%