ECE: Electrical & Computer Engineering
Accredited by ABET
Undergraduate Programs

ECE 2504 Introduction to Computer Engineering


Spring 2014 textbook list

The Spring 2014 ECE textbook list is available online for students.

Current Prerequisites & Course Offering

For current prerequisites for a particular course, and to view course offerings for a particular semester, see the Virginia Tech Course Timetables.

Return to course list

ECE 2504 Introduction to Computer Engineering (3C)

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.

What is the reason for 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.

Required for all EE and CPE majors. Typically offered: Fall, Spring. Program Area: Computers.

Prerequisites: C- or better in 1574.

Why are these prerequisites or corequisites required?

This course assumes that students can develop simple programs in a high level programming language such as C/C++, using basic proggramming concepts such as procedures, arrays, pointers, memory, control flow, and debugging, as taught in 1574. Students must also be able to use a personal computer to execute software development tools. A grade of C- or better is required in 1574 because the material in that course provides an essential foundation for the material covered in 2504. Students without sufficient mastery of this essential material are at increased risk of failing 2504.

Department Syllabus Information:

Major Measurable 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
Topic Percentage
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%

Return to course list