Computer Engineering / Bachelor of Science
Total Credit Hours: 133
Major Credit Hours: 90
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.
Incoming freshmen 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.
I. Engineering Foundation Courses (41)
II. Computer Engineering Core Courses (40)
III. Choose 2 Computer Engineering Electives (6)
IV. Capstone (3)
V. Advanced Writing Requirement
The advanced writing requirement of the General Education curriculum is satisfied by successful completion of:
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 300- or 400-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 300- or 400-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.