ECE 2504 Introduction to Computer Engineering | ECE | Virginia Tech

Undergraduate PROGRAMS

Course Information


An introduction to the design and operation of digital computers, including information representation, logic design, integrated circuits, register transfer description, hardware description languages, basic computer organization and assembly-level programming. The relationship between software and hardware is stressed. This course duplicates material in CS2504 and may not be taken for credit towards graduation if CS2504 is also taken.

Why take this course?

This course provides the basic concepts of computer design and operation, both hardware and software, to new computer and electrical engineering students. Students need the background on computer engineering provided by this class before advancing to more complex topics in computer engineering.

Learning Objectives

  • Represent and manipulate information in binary form
  • Design, physically implement, and debug basic combinational and sequential logic circuits
  • Write structural and data flow models of logic circuits in a hardware description language
  • Implement designs represented in a register transfer language
  • Discuss the organization and operation of a basic digital computer
  • Discuss the execution of machine language computer programs by a basic computer
  • Write elementary assembly language programs and discuss their translation to machine language programs
  • Write reports on hardware and software design projects

Course Topics


Percentage of Course

Representation of Information and Computer Arithmetic 14%
Combinational Logic 15%
Sequential Logic 14%
Registers, Counters, Adders, Multiplexers 15%
Register Transfer Language, Hardware Description Language 14%
Basic Computer Organizaion 14%
Assembly Programming 14%