Computer Engineering / Bachelor of Science

Total Credit Hours:  133

Major Credit Hours:  91 

Computer Engineering is the marriage of Computer Science and Electrical Engineering. It focuses on computing in all forms, from microprocessors to embedded computing devices to laptop and desktop systems to supercomputers. As such, it concerns the electrical engineering considerations of how microprocessors function, are designed, and are optimized; how data is communicated among electronic components; how integrated systems of electronic components are designed and how they operate to process instructions expressed in software; and how software is written, compiled, and optimized for specific hardware platforms. Therefore, computer engineers are electrical engineers who specialize in software design, hardware design, or systems design that integrates both.

The topics Computer Engineers typically study include

  • Microprocessor and microcontroller systems
  • Assembly language
  • Coding, cryptography, and information protection
  • Distributed computing
  • Computer vision and pattern recognition
  • Computer graphics and multimedia applications
  • Internet computing and wireless networks
  • Computer architecture and embedded digital systems design
  • Network security and privacy
  • Real-Time Systems
  • VLSI, VHDL, and ASICS design
  • Computer internetworking and Network Protocols
  • Embedded software for real-time microcontrollers
  • Algorithms, compilers, and operating systems
  • Human-computer interaction.

Several of these topics are also studied by computer scientists. The distinction between Computer Science and Computer Engineering could perhaps best be described by considering computing technology in terms of scale. Computer engineers operate often at the large and small ends of the computing spectrum, whereas computer scientists work in the middle. Computer engineers deal with the physics of semiconductor electronics so that they may design hardware at the integrated circuit level. They also work on the integration of hardware and software into optimized systems that perform specific tasks. Computer scientists write the software, design the databases, devise the algorithms, design the communications networks, and secure the data and devices that enable the integrated system to function. In reality, of course, this division of labor is a simplification, as computer engineers and computer scientists collaborate extensively. Because of this, computer scientists and computer engineers often qualify for the same career opportunities, with computer engineers having the edge in careers that focus more on hardware design, and computer scientists preferred for careers that focus more on software design.

Admission Requirements

Incoming first-year students must have a minimum ACT Math subscore of 23 to be admitted to the Computer Engineering program. Transfer students and students who are changing majors must have a cumulative GPA of 3.0 and must be ready to enroll in Calculus 1.

Degree Requirements

Program: BS-CPEN-A

IV. Capstone (3)

CPEN-49600Computer Engineering Senior Project

3

III. Choose 3 Computer Engineering Electives (9)

CPSC-36000Applied Programming Languages

3

CPSC-42000Computer Security

3

CPSC-44000Software Engineering

3

CPSC-47100Machine Learning

3

CPSC-48000Communications and Networking

3

CPSC-48500Advanced Communications and Networking

3

CPEN-41000Artificial Intelligence

3

CPEN-45000Robotics

3

V. Advanced Writing Requirement

The advanced writing requirement of the General Education curriculum is satisfied by successful completion of
CPSC-49600Topics in Computer Science

1-3

VI. Double Major in Computer Engineering and Computer Science

Students who wish to major in both Computer Engineering and Computer Science must take at least 12 credit hours of upper-division coursework not counted toward the other degree. In other words, a Computer Engineer who also wishes to major in Computer Science must take four 30000- or 40000-level Computer Science courses (12 credit hours) that count strictly toward his or her Computer Science degree.  Conversely, a Computer Science major who wishes to major in Computer Engineering must take four 30000- or 40000-level Computer Engineering courses (12 credit hours) that count strictly toward the Computer Engineering degree.  Because CPSC 30000 / CPEN 30000 and CPSC 47000 / CPEN 41000 are cross-coded, these courses may not apply to a second major.

I. Engineering Foundation Courses (38)

CHEM-11000General Chemistry 1

4

CHEM-11100General Chemistry 1 Lab

1

MATH-20000Calculus 1

4

MATH-20100Calculus 2

4

MATH-25000Calculus 3

4

MATH-30000Differential Equations

3

MATH-30500Linear Algebra

3

-OR

MATH-30700Applied Linear Algebra

3

MATH-31000Discrete Mathematics

4

MATH-31500Probability and Theory

3

PHYS-21000General Physics 1

3

PHYS-21100General Physics 1 Lab

1

PHYS-21500General Physics 2

3

PHYS-21600General Physics 2 Lab

1

II. Computer Engineering Core Courses (41)

CPSC-21000Programming Fundamentals

3

CPSC-24500Object-Oriented Programming

3

CPSC-34000Algorithms and Data Structures

3

CPSC-35000Operating Systems

3

CPEN-10000Introduction to Computer Engineering

3

CPEN-21000Logic Design

3

CPEN-22000Electric and Electronic Circuits

5

CPEN-23000Signals and Systems

3

CPEN-25000Semiconductor Devices

3

CPEN-30000Computer Architecture 1

3

CPEN-31000Computer Architecture 2

3

CPEN-32000Hardware and Software Systems

3

CPEN-40000Computer Engineering Applications

3