USC Viterbi - School of Engineering

You are here

Master of Science in Computer Engineering

Program Description: 

Computer Engineering is the creative application of engineering principles and methods to the design and development of hardware and software systems. The M.S. in Computer Engineering encompasses the design, development, testing, and evaluation of components, systems, and networks.

Research in Computer Engineering strives to achieve higher performance in the systems and components that are built as well as in the design process. At USC, research is focused in three main areas: Computer Architecture and Parallel Processing, Design and Analysis of Computer Networks and their Protocols, and VLSI Design and Computer Aided Design and Verification of VLSI. This degree program is administered by the Department of Electrical Engineering.

Application Info: 

Application Criteria

An undergraduate degree in engineering, math or hard science from a regionally-accredited university.
Satisfactory cumulative undergraduate GPA (grade point average)
Satisfactory GRE test scores. All scores must be officially reported to the university directly by ETS.
Satisfactory performance in previous coursework related to the intended major.

Application Materials for All Applicants

DEN@Viterbi Summer 2016 and DEN@Viterbi Fall 2016 Applicants: All applicants must complete and submit the USC Online Application. 

Spring 2017 and Fall 2017 Applicants: USC Online Application will be available July 1, 2016. Visit our Application Deadlines page for more information.

Transcripts: Official transcripts from all colleges and universities attended.
GRE General Test: Satisfactory scores less than five years old. Official scores must be reported from ETS directly to USC using ETS school code 4852. A department code is not required.
Letters of Recommendation (Optional): Letters of recommendation should be from faculty or others (supervisors, professional colleagues, etc.) qualified to evaluate your potential for graduate study.
Statement of Purpose (Optional): The statement of purpose should describe succinctly your reasons for applying to the proposed program at the Viterbi School of Engineering, your preparation for this field of study, study interests, future career plans, and other aspects of your background and interests which may aid the admissions committee in evaluating your aptitude and motivation for graduate study.

Additional Application Materials for International Applicants

English Language Proficiency: In addition to the general admission criteria listed above, international students whose first language is not English are required to take the TOEFL or IELTS examination to be considered a candidate for admission.  There is no minimum TOEFL or IELTS score required for admission to the Viterbi School. For possible exemption from additional language requirements, you must achieve an Internet Based TOEFL (iBT) score of 90, with no less than 20 on each section or an IELTS score of 6.5, with no less than 6 on each band score. For more details on English Proficiency Criteria for the University of Southern California, please visit USC Graduate Admission - Proficiency in English.
Program Details: 
Please Note: Requirements for graduation, course offerings, course availability, track offerings and any other degree requirements are subject to change. Students should consult with an academic advisor prior to registering for any classes.
  • A minimum of 27 units is required for the M.S. in Computer Engineering degree
  • 4 Required fundamental Courses: 14-15 Units
  • 2 Required Core Courses: 6 Units
  • A minimum of 2 Elective Courses: 6 Units
  • A maximum of three 400 level courses (12 units maximum) may be taken
  • At least 18 units must be taken at the 500-level or above
  • At least 18 units must be taken in electrical engineering 15 of which must be taken at USC
  • A minimum cumulative GPA of 3.00 is required for graduation
       Curriculum               Schedule of Classes       
Available Online: 

This program is also available online to professional engineers through the Distance Education Network (DEN@Viterbi). Because the DEN@Viterbi program provides a fully equivalent academic experience, the degree a USC engineering student earns is the same whether they are on-campus or online.

If you are interested in beginning classes as a DEN@Viterbi student next semester, explore the requirements and steps to enrolling as a Limited Status Student

More information about DEN@Viterbi

DEN@Viterbi Online Course Offerings

The following courses and program requirements serve as program planning for DEN@Viterbi students. Course offerings and availability are subject to change. Please consult with advisor if you have any questions.

Fundamental Coursework

All courses are required with either EE 450 or EE 503 - 14-15 units total.

CSCI 402 | Operating Systems

EE 450 | Introduction to Computer Networks (or EE 503)

EE 457 | Computer Systems Organization

EE 477 | MOS VLSI Circuit Design

EE 503 | Probability for Electrical and Computer Engineers (or EE 450)

A fundamental course may be waived by taking a placement exam. In case a placement exam is not offered, a fundamental course may be waived by a designated faculty member.

Core Courses

Two courses are required - one course may be either EE 550 or EE 555 - 9 units total.

EE 550 | Design and Analysis of Computer Communication Networks (or EE 555)

EE 555 | Broadband Network Architectures (or EE 550)

EE 557 | Computer Systems Architecture

EE 577a | VLSI System Design

Suggested Elective Courses

At least 6 units required - elective courses cannot overlap with core courses.

CSCI 551 | Computer Communications

CSCI 555 | Advanced Operating Systems

CSCI 561 | Foundations of Artificial Intelligence

CSCI 565 | Compiler Design

CSCI 570 | Analysis of Algorithms

CSCI 585 | Database Systems

EE 532 | Wireless Internet & Pervasive Computing

EE 536ab | Mixed-Signal Integrated Circuit Design

EE 550 | Design & Analysis of Computer Communication Networks

EE 552 | Asynchronous VLSI Design

EE 554 | Real Time Computer Systems

EE 555 | Broadband Network Architectures

EE 557 | Computer Systems Architecture

EE 558 | Optical Fiber Communication Systems

EE 577b | VLSI System Design

EE 581 | Mathematical Foundations for CAD of VLSI Circuits