Undergraduate Degree

E-mail: eesystem@pollux.usc.edu

Bachelor of Science in Computer Engineering and Computer Science

Students attaining the Bachelor of Science degree in Computer Engineering and Computer Science would possess the scientific and engineering skills and knowledge that would enable them to design and implement computer systems that effectively and efficiently integrate developing hardware and software technologies. This degree is administered jointly by the Departments of Computer Science and Electrical Engineering.

In order to earn the Bachelor of Science degree in Computer Engineering and Computer Science, the student must: (1) earn 132 class units as described below; (2) achieve a minimum grade point average of 2.0 on all course work undertaken at USC; (3) attain a minimum grade point average of 2.0 on all course work completed in Electrical Engineering and Computer Science at USC.

The following sample four-year program is only an example of how the required courses might be scheduled. A student does not have to take the required course work in the order specified in the sample program although it would be appropriate to try and follow it as closely as possible.

Sample Four-Year Program

First Year, First SemesterUnits
EE 105Introduction to Electrical Engineering, or
CSCI 105Introduction to Computer Science3
MATH 125Calculus I4
General education*Social Issues4
WRIT 140*Writing and Critical Reasoning4
____
15

First Year, Second SemesterUnits
CSCI 101L**Fundamentals of Computer Programming3
EE 101Introduction to Digital Logic3
MATH 126Calculus II4
General education4
____
14

Second Year, First SemesterUnits
CSCI 102L**Data Structures4
EE 102LIntroduction to Digital Circuits2
MATH 226Calculus III4
PHYS 151L***Fundamentals of Physics I: Mechanics and Thermodynamics4
General education4
____
18

Second Year, Second SemesterUnits
CSCI 201LPrinciples of Software Development4
EE 357Basic Organization of Computer Systems3
MATH 225Linear Algebra and Differential Equations4
PHYS 152LFundamentals of Physics II: Electricity and Magnetism4
Advanced writing course3
____
18

Third Year, First SemesterUnits
CSCI 271Discrete Methods in Computer Science4
EE 326LEssentials of Electrical Engineering4
EE 457Computer Systems Organization3
ISE 460Engineering Economics3
Science elective****4
____
18

Third Year, Second SemesterUnits
CSCI 301Theory of Computation3
CSCI 402Operating Systems3
EE 327Digital Electronics3
MATH 407Probability Theory4
General education4
____
17

Fourth Year, First SemesterUnits
CSCI 303Analysis and Design of Algorithms3
EE 454LIntroduction to Systems Using Microprocessors4
General education4
Electives
*****
technical6
____
17

Fourth Year, Second SemesterUnits
EE 459LSenior Design Project, or
CS 477Design and Construction of Large Software Systems3 or 4
A 400-level Math course******4
Electives
*****
technical8
____
15 or 16

*Taken concurrently.

**CSCI 120 can substitute for CSCI 101 and CSCI 102 with permission of an advisor.

***Satisfies general education requirement for category III.

****See an advisor for a list of science courses that can satisfy this requirement.

*****See an advisor for a list of courses that can satisfy the technical elective requirement. A CECS major must take a set of courses for at least one of the following four areas of specialization as part of his or her 14 technical elective units.

a. Theory - CSCI 301, CSCI 410, CSCI 430
b. Multimedia and Graphics - EE 320, CSCI 351, CSCI 480
c. Advanced Circuit Design - EE 477, EE 478, EE 479
d. Software Systems - CSCI 351, CSCI 477, CSCI 485

******Any 400-level Mathematics course can be taken to satisfy this requirement except MATH 406 or MATH 450.

Minor in Multimedia and Creative Technologies

See listing under Multimedia and Creative Technologies.

Graduate Degrees

The graduate program in computer engineering, offered through the Department of Electrical Engineering, is designed to provide students with an intensive background in the analysis, structure, design and function of digital computers and information processing systems. In addition to giving each student a fundamental background in digital logic, computer architecture and operating systems, a wide variety of elective courses allows for study in the following specialized areas: artificial intelligence; computer architecture; computer networks; computer system performance; design automation; fault-tolerant computers; microprocessors; parallel processing; real-time systems; robotics; and VLSI design.

Master of Science in Computer Engineering

The Master of Science in Computer Engineering is earned by completing an integrated program of at least 27 units of approved course work. At most, nine units at the 400 level may be counted toward the degree, and the remaining units must be at the 500 or 600 level. At least 15 units must be taken at the 500 or 600 level in the computer engineering major. (Those courses in computer science cross-listed with electrical engineering are considered computer engineering.) All course work requires the prior approval of a computer engineering faculty member. Elective units may be chosen from a list of computer engineering, computer science, electrophysics, signal processing and mathematics courses.

These elective units will be recommended and approved by the individual computer engineering faculty advisor. A minimum grade point average of 3.0 must be earned on all course work applied toward the master's degree in computer engineering. This average must also be achieved on all 400-level and above course work attempted at USC beyond the bachelor's degree. Transfer units count as credit (CR) toward the master's degree and are not computed in the grade point average. All other School of Engineering requirements for the Master of Science apply. For the M.S., Electrical Engineering VLSI Design and M.S., Electrical Engineering Computer Network degrees section.

Required coursesUnits
EE 557Computer Systems Architecture, and3
CSCI 402xOperating Systems, or
CSCI 555Advanced Operating Systems3
and one of the following:
CSCI 545Robotics3
EE 549Queueing Theory for Performance Modeling3
EE 550Design and Analysis of Computer Communication Networks3
EE 552Logic Design and Switching Theory3
EE 554Real-Time Computer Systems3
EE/CSCI 561Artificial Intelligence3
EE 577VLSI System Design3
and approved electives18
____
27

Doctor of Philosophy in Computer Engineering

The requirements for the Doctor of Philosophy (Ph.D.) degree in computer engineering are in strict conformity with the requirements of the Graduate School. Program requirements for the Ph.D. in computer engineering are the same as those for the Ph.D. in electrical engineering except that the major field is computer engineering. See general requirements for graduate degrees.

Screening and qualifying examinations are administered by the computer engineering faculty. Students should contact the Electrical Engineering-Systems Department Office for further information.

Major Areas in Computer Engineering and Relevant Courses (not applicable to M.S., Computer Engineering requirements)

Computer Systems ArchitectureUnits
EE 457xComputer Systems Organization3
EE 554Real Time Computer Systems3
EE 557Computer Systems Architecture3
EE 653Multithreaded Architectures, Data-Flow Computing and Functional Programming3
EE 656Fault Tolerant Computer Systems3
EE 657Parallel Processing3
EE 659Interconnection Networks3
Artificial IntelligenceUnits
CSCI 544Natural Language Processing3
CSCI 598Expert Systems3
CSCI 674Advanced Topics in Computer Vision3
EE 559Mathematical Pattern Recognition3
CSCI 561Artificial Intelligence3
CSCI 574Computer Vision3
CSCI 592Symbolic Computation for Artificial Intelligence3
RoboticsUnits
CSCI 545Robotics3
EE 546LBasic Robotics Laboratory3
EE 547Software Methods in Robotics3
EE 548Analytical Methods in Robotics3
ME 541Linear Control Systems II3
Computer Networks and Distributed SystemsUnits
CSCI 551Computer Communications3
CSCI 555Advanced Operating Systems3
CSCI/EE 579Graph and Combinatorial Algorithms3
EE 450Introduction to Computer Networks3
EE 549Queueing Theory for Performance Modeling3
EE 550Design and Analysis of Computer Communication Networks3
EE 555Broadband Network Architectures3
EE 649Applied Performance Evaluation for Computer Systems3
EE 650Advanced Topics in Computer Networks3
Digital Systems DesignUnits
EE 552Logic Design and Switching Theory3
EE 577abVLSI System Design3-2
EE 582Technical Seminar on VLSI Design1
EE 658Diagnosis and Design of Reliable Digital Systems3
EE 677VLSI Architectures and Algorithms3
EE 680Computer Aided Design of Digital Systems I3
EE 681Computer Aided Design of Digital Systems II3

 

NEXT SECTION

 

Catalogue ContentsUSC Source BookCampus MapAdmissionUSCweb

USC Monogram

Produced by the USC Division of Student Affairs,
Office of University Publications
univpub@usc.edu