Skip to Content
University Catalog

ENGINEERING - COMPUTER ENGINEERING

College of Engineering and Computer Science

PROGRAM DESCRIPTION

Computer Engineering is one of the newest areas of engineering, a dynamic field that thrives on innovation and challenges. Business, industry, and home applications create the need for products that often can be used both for work as well as for entertainment. In the high technology areas of the United States, Sacramento included, Computer Engineering has experienced tremendous growth, becoming one of the major driving forces behind the rapidly advancing electronics and computer industry. Employment projections consistently predict that computer engineering and computer science will continue to experience more than a doubling of growth in a ten-year period.

Nationally, nearly all engineering universities offer a degree in Computer Engineering. Being close in course content to Electrical Engineering and to Computer Science, these degrees are found in various departmental and program configurations. At Sacramento State, Computer Engineering enjoys the advantage of both areas since it is a program jointly supported by the Electrical and Electronic Engineering Department and the Computer Science Department.

Lower division preparation in Computer Engineering parallels that of Computer Science, with the addition of a basic electrical circuit course and a logic design course. Except for the logic design course, most community colleges offer sufficient lower division courses in mathematics, chemistry, physics, and most importantly, computer science.

Special Features

  • Due to numerous generous donations from supportive industries, the computer engineering labs are well equipped with servers and workstations, and with software development tools for VLSI application-specific integrated circuits. Industries donate large electronic devices (FPGAs, CPUs) to each student in computer engineering laboratories.
  • The Sacramento State Computer Engineering BS degree is accredited by the Engineering Accreditation Commission (EAC) of ABET, www.abet.org. Computer Engineering faculty value accreditation very highly.
  • A mechanism of maintaining currency in technology, curriculum review, and outcomes assessment is in place to assure the university and graduates of the continued growth and high quality of the program.

Program Educational Objectives

The objectives of this program are to prepare graduates to:

  • enter professional employment and/or graduate study in computer engineering areas, such as logic design, computer architecture, processor hardware, and computer systems;
  • identify, analyze, and solve practical computer engineering problems using both hardware and software design tools and techniques;
  • work cooperatively and communicate effectively through speaking, writing, and graphics, with peers, with multi-disciplinary teams, and with the general public;
  • practice computer engineering in a professionally responsible and ethical manner; and
  • anticipate changes in one's own career with respect to changing technology and shifting societal needs for the application of computer engineering.

UNDERGRADUATE PROGRAM

The Bachelor of Science degree in Computer Engineering is a four-year program that emphasizes engineering design of computer hardware and systems at all levels. Engineering design begins with logic design taught to entering students during their first semester. The thread of design continues through the study of architecture, CMOS and VLSI technology, ASIC design, operating systems, computer hardware design, and networking hardware. To complete their degree, students take a two-semester senior design and project course.

Students are expected to satisfy the general education requirements of the Accreditation Board for Engineering and Technology (ABET) as well as the University's General Education requirements. Students should consult the Program Coordinator for specific General Education requirements.

A second-year foreign language course (2A or equivalent) may also satisfy 3 units of GE when the course is being taken to comply with the Sacramento State foreign language requirement. Students should consult with an advisor for exact GE eligibility of these courses.

Requirements - Bachelor of Science Degree

Units required for Major: 98
Minimum total units required for the BS: 125

Note: Students graduating with a BS in Computer Engineering will not be subject to the University’s Foreign Language Graduation Requirement. Students who change major may be subject to the University’s Foreign Language Graduation Requirement.

Courses in parentheses are prerequisites.

A. Required Lower Division Courses (23 units)

(4)

CPE/EEE 64

Introduction to Logic Design (CSC 15 or CSC 25)

(3)

CSC 15

Programming Concepts and Methodology I (CSC 10 or programming experience in a high level language)

(3)

CSC 20

Programming Concepts and Methodology II (CSC 15)

(3)

CSC 28

Discrete Structures for Computer Science (MATH 26A or MATH 29 and CSC 20; CSC 20 may be taken concurrently)

(3)

CSC 35

Introduction to Computer Architecture (CSC 15)

(3)

CSC 60

Introduction to Systems Programming in Unix (CSC 20, CSC 35)

(1)

ENGR 1

Introduction to Engineering (Algebra & Trigonometry, or instructor permission)

(3)

ENGR 17

Introductory Circuit Analysis (PHYS 11C, MATH 45; either the math or physics may be taken concurrently, but not both)

B. Required Mathematics Courses (11 units)

(4)

MATH 30

Calculus I (MATH 29 or four years of high school mathematics which includes two years of algebra, one year of geometry, and one year of mathematical analysis; completion of ELM requirement and Pre-Calculus Diagnostic Test)

(4)

MATH 31

Calculus II (MATH 30 or appropriate high school based AP credit)

(3)

MATH 45

Differential Equations for Science and Engineering (MATH 31)

C. Additional Required Courses (14 units)

(3)

ECON 1B

Introduction to Microeconomic Analysis

(3)

ENVS 10

Environmental Science

(4)

PHYS 11A

General Physics: Mechanics (MATH 30, MATH 31; or equivalent certificated high school courses. MATH 31 may be taken concurrently)

(4)

PHYS 11C

General Physics: Electricity and Magnetism, Modern Physics (MATH 31, PHYS 11A)

D. Required Upper Division Courses (47 units)

(3)

CPE/CSC 138

Computer Networks and Internets (CSC 35, CSC 60, CSC 130)

(3)

CPE/CSC 142

Advanced Computer Organization (CSC 137 or CPE 166 and CPE 185)

(3)

CPE 151

CMOS and VLSI (CPE/EEE 64,or EEE 108)

(3)

CPE/CSC 159

Operating System Pragmatics (CSC 139)

(4)

CPE 166

Advanced Logic Design (CPE/EEE 64 , ENGR 17)

(4)

CPE 185

Computer Interfacing (CPE/EEE 64, CSC 35, CSC 60)

(3)

CPE 186

Computer Hardware System Design (CPE 185 or EEE 174)

(2)

CPE 190

Senior Design Project I (CPE 142, CPE 166, CPE 186, CPE 187, EEE 108;GWAR Certification before Fall 09, or WPJ score of 80+; or 3-unit placement in ENGL 109M/W; or 4-unit placement in ENGL 109M/W and co-enrollment in ENGL 109X; or WPJ score 70/71 and co-enrollment in ENGL 109X)

(2)

CPE 191

Senior Design Project II (CPE 190; GWAR Certification before Fall 09, or WPJ score of 80+; or 3-unit placement in ENGL 109M/W; or 4-unit placement in ENGL 109M/W and co-enrollment in ENGL 109X; or WPJ score 70/71 and co-enrollment in ENGL 109X)

(3)

CSC 130

Data Structures and Algorithm Analysis (CSC 20, CSC 28; CSC 28 may be taken concurrently)

(3)

CSC 139

Operating System Principles (CSC 60, CSC 137, or equivalents)

(3)

EEE 108

Electronics I (EEE 117; Corequisite: EEE 108L)

(1)

EEE 108L

Electronics I Laboratory (EEE 117, EEE 117L; Corequisite: EEE 108)

(3)

EEE 117

Network Analysis (ENGR 17, MATH 45 and PHSY 11C; Corequisite: EEE 117L)

(1)

EEE 117L

Networks Analysis Laboratory (Corequisite: EEE 117)

(3)

EEE 180

Signals and Systems (EEE 117; EEE 117 may be taken concurrently)

(3)

ENGR 120

Probability and Random Signals (EEE 180; EEE 180 may be taken concurrently)

E. Technical Electives (3 units)

CPE 144

DSP Architecture Design (CPE 142)

CPE 153

VLSI Design (CPE 151)

CSC 131

Computer Software Engineering (CSC 130; may be taken concurrently)

CSC 133

Object-Oriented Computer Graphics Programming (CSC 130 and CSC 131)

CSC 134

Database Management Systems (CSC 130)

CSC 151

Compiler Construction (CSC 135)

CSC 152

Cryptography (CSC 60, CSC 130 and STAT 50 or ENGR 115)

CSC 153

Computer Forensics Principles and Practices (CSC 138 or CPE 138))

CSC 154

Computer System Attacks and Countermeasures (CSC 138 or CPE 138)

CSC 155

Advanced Computer Graphics (CSC 133)

EEE 120

Electronic Instrumentation (EEE 108, EEE 117; EEE 108 may be taken concurrently)

EEE 122

Applied Digital Signal Processing (EEE 117, EEE 180)

EEE 181

Introduction to Digital Signal Processing (CPE /EEE 64 or equivalent, EEE 180)

EEE 187

Robotics (EEE 180 or equivalent, or instructor permission)

Cooperative Education (Work Experience)

The Computer Engineering Program encourages students to participate in the Cooperative Education Program which provides alternate periods of university study and major-related, paid off-campus work experience in private industry or government. The experience will enhance the student's employment prospects upon graduation. Most participants in this program will complete the equivalent of two six-month work periods, one in their junior year and the other in their senior year. Students must enroll in the appropriate professional practice course (CPE 195A, CPE 195B, or CPE 195C) and are awarded a Certificate of Satisfactory Completion of the two work periods. However, the credits for this course do not replace the curricular requirements of the BS Computer Engineering degree. Students interested in this program should apply in the satellite office in Riverside Hall 2004 or the main office in Lassen Hall Room 2000 (csus.edu/careercenter/). For information, call (916) 278-6231.

GRADUATE PROGRAM

The Master of Science degree in Computer Engineering is jointly supported by the Departments of Computer Science and Electrical and Electronic Engineering. The program is designed to provide opportunities for students with undergraduate degrees in Computer Engineering, Computer Science, Electrical Engineering, or a closely related field to pursue graduate studies in this interdisciplinary field. The program provides students with broad and advanced knowledge in areas such as advanced microprocessor architecture, parallel computer architecture, advanced microprocessor systems, distributed computing, data communication, computer networks, operating systems, and concurrent programming. The program is sufficiently flexible to allow students to conduct independent research and broaden their professional scope. Each student plans a program of study in consultation with a graduate advisor and/or his/her thesis or project advisor and works closely with these advisors.

Computer Engineering is a part of the larger Information Technology (IT) discipline. Highly skilled computer engineers who have advanced knowledge of both hardware and software and who can design, test, and implement complex digital systems are a part of the IT workforce. Networks such as the Internet, Intranets, communication systems, banking computer systems, public utility systems, and transportation systems are just a few examples of areas where high-tech solutions and skilled workers are needed. The continuing dramatic progress in hardware and the sophistication of computing devices and systems require continually increasing technical skills in hardware and software.

Admission Requirements

Admission to the graduate program in Computer Engineering requires all of the following:

  • a BS degree in Computer Engineering (CPE), Computer Science (CSC), Electrical and Electronic Engineering (EEE), or a closely related field;
  • at least a 3.0 GPA in the last 60 units of the BS degree;
  • Graduate Record Examination (GRE) general test scores and;
  • background as specified in Required Basic Knowledge to enter the program.

Students with deficiencies in the admission requirements are advised to remove any such deficiencies before applying. However, under special circumstances, a student who does not satisfy the admission requirements may be admitted as a conditionally classified graduate student. Conditional admission may be granted to those students who are likely to complete all the admission requirements. Deficiencies will be specified in the acceptance letter to the student and must be removed by the student before the student can become a fully classified graduate student.

A student registered as an unclassified or conditionally classified graduate student cannot use graduate courses to improve his/her grade point average for admittance to the program. Only undergraduate courses required in the degree program in CPE, CSC, or EEE may be taken or retaken to improve the GPA for admittance to the graduate program.

Required Basic Knowledge

A student must have completed the following list of Required Basic Knowledge before becoming a fully classified graduate student in Computer Engineering. Courses listed in parentheses are the equivalent Sacramento State courses.

Minimum required GPA in the following subject areas: 3.0

Electrical Fundamentals
Analog/Digital Electronics
CMOS and VLSI
Digital Logic Design and Introduction to Computer Organization
Assembly Language
Computer Interfacing
Object Oriented Programming
Algorithms and Data Structure
Systems Programming
Introduction to Operating Systems
Computer Networks and Internets
Differential Equations for Science and Engineering
Statistics and Probability
Applied Linear Algebra
Numerical Analysis

Graduate Admission Procedures

Applications will be accepted as long as there is space available. All prospective graduate students, including Sacramento State graduates, must file all of the following with the Office of Graduate Studies, River Front Center 206, (916) 278-6470:

  • an online application for graduate admission;
  • two sets of official transcripts from colleges and universities attended, other than Sacramento State;
  • Graduate Record Examination (GRE) scores; and
  • two letters of recommendation from professors and/or supervisors familiar with the student's accomplishments.

For more admissions information and application deadlines, please visit http://www.csus.edu/gradstudies/.

Approximately six weeks after receipt of all items listed above, a decision regarding admission will be mailed to the applicant.

Advancement to Candidacy

Each student must file an application for Advancement to Candidacy indicating a proposed program of graduate study. This procedure should begin as soon as the classified graduate student has:

  • removed any deficiencies in the admission requirements;
  • completed at least 12 units of graduate level (200 series) Computer Engineering courses with a minimum 3.0 GPA; and
  • passed the Writing Placement for Graduate Students (WPG) or secured approval for a WPG waiver.

Students must have been advanced to candidacy before they can register for Plan A, B or C. The student should fill out the form after planning a degree program in consultation with a Computer Engineering graduate advisor. The completed form must be signed by the CPE Graduate Coordinator and is then returned to the Office of Graduate Studies for approval.

Requirements - Master of Science Degree

Units required for MS: 30, (including 0-5 units of 500-level courses for Plan A, B, or C) and the remaining units from the list of required and elective courses. All graduate students are required to take CPE 201: Research Methodology in their first semester of study. Minimum required overall GPA: 3.0. Up to three courses in the program of study may have a grade of "C+" or "B-". All other courses in the program of study must have a grade of "B" or higher. Students may take no more than 6 units of CPE 299 to fulfill the unit requirements. Only those courses completed within seven years prior to date of graduation will satisfy course requirements.

Courses in parentheses are prerequisites.

A. Required Core Courses (13 units)

(1)

CPE 201

Research Methodology (Classified graduate status)

(3)

CPE 273*

Hierarchical Digital Design Methodology (CSC 205, EEE 285 or their equivalents)

(3)

CPE 280

Advanced Computer Architecture (CSC 205, fully classified graduate status)

(3)

CSC 205*

Computer Systems Structure (Fully classified graduate status in Computer Science, Software Engineering or Computer Engineering)

(3)

EEE 285*

Micro-Computer System Design I (EEE 174 or CPE 185)

*Students whose undergraduate preparation has covered a significant amount of the material in CPE 273, CSC 205, or EEE 285 may be allowed to waive these courses. The course waiver form must be signed by the designated Computer Engineering faculty member for each course and signed by the Computer Engineering Graduate Coordinator. In this case, for each course waived, the student must take three additional units from Required Courses B through D or Elective Courses E to satisfy the program unit requirement.

B. Required Courses (9 units)

Select at least one course from each of the following areas:

Architecture:

(3)

CSC 237

Microprocessor Systems Architecture (CSC 205)

(3)

EEE 286

Microcomputer System Design II (CPE 186 or EEE 285)

Network:

(3)

CSC 255

Computer Networks (Fully classified graduate-level major in Computer Science, Software Engineering, or Computer Engineering)

(3)

CSC 258

Distributed Systems (Fully classified graduate standing in Computer Science, Software Engineering, or Computer Engineering and CSC 204)

(3)

CSC 275

Advanced Data Communication Systems (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering)

Software:

(3)

CSC 239

Advanced Operating Systems Principles and Design (CSC 205)

C. Elective Courses (To reach total of 30 units)

(3)

CPE/CSC 159

Operating System Pragmatics (CSC 139)

(1-3)

CPE 299

Special Problems (Instructor permission)

(3)

CSC 215

Artificial Intelligence (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering)

(3)

CSC 219

Machine Learning (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering)

(3)

CSC 230

Software System Engineering (Fully classified graduate status in Computer Science or Software Engineering; or Computer Engineering and CSC 131)

(3)

CSC 234

Software Verification and Validation (Fully classified graduate status in Computer Science or Software Engineering; or Computer Engineering and CSC 131)

(3)

CSC 242

Computer Aided Systems Design and Verification (CSC 205, CSC 273, or EEE 273)

(3)

CSC 244

Database System Design (CSC 174 or CSC 204)

(3)

CSC 245

Performance Modeling and Evaluation (Fully classified graduate status in Computer Science or Software Engineering)

(3)

CSC 250

Computer Security (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering)

(3)

CSC 251

Principles of Compiler Design (CSC 151 or CSC 201)

(3)

EEE 215

Lasers (EEE 180 and EEE 161 or instructor permission)

(3)

EEE 221

Machine Vision

(3)

EEE 222

Electronic Neural Networks

(3)

EEE 225

Advanced Robotic Control (EEE 184 or equivalent)

(3)

EEE 230

Analog and Mixed Signal Integrated Circuit Design (EEE 109 and instructor permission)

(3)

EEE 236

Advanced Semiconductor Devices

(3)

EEE 238

Advanced VLSI Design-For-Test I (CPE 151 and CPE 166)

(3)

EEE 242

Statistical Signal Processing

(3)

EEE 243

Applied Stochastic Processes (ENGR 120)

(3)

EEE 245

Advanced Digital Signal Processing (EEE 174, EEE 181 or equivalent)

(3)

EEE 260

Statistical Theory of Communication (EEE 185)

(3)

EEE 261

Information Theory, Coding, and Detection (EEE 185)

(3)

EEE 267

Fiber Optic Communications (EEE 185 or instructor permission)

(3)

MATH 210A

Algebraic Structures (MATH 110B)

(3)

MATH 241A

Methods of Applied Mathematics (MATH 134 recommended)

Certain special offerings in CSC, EEE or MATH with CPE advisor approval.

D. Culminating Requirement (0-5 units)

CPE 500

Plan A , B or C (Advanced to candidacy and graduate coordinator's permission)

Note: Before registering for CPE 500, students choosing Plan A, Master Thesis (5 units), or Plan B, Master Project (2 units), must submit an approved Topic Form to the graduate coordinator. As soon as possible after the student has registered for CPE 500, it is expected that the student will select a committee appropriate to the chosen plan of study. The Thesis committee is to consist of the student's Thesis Advisor, who is the Chairperson of the student's Thesis Committee, and two other faculty members. The Project Committee is to consist of the student's Project Advisor, who is the Chairperson of the student's Project Committee, and one other faculty member. The committee members selected by the student must be approved by the Computer Engineering Graduate Coordinator.

Thesis (Plan A) must be orally presented and defended, approved by the student's Thesis Committee, and approved by the Electrical and Electronic Engineering Graduate Coordinator prior to submittal of the Thesis to the Office of Graduate Studies.

Project (Plan B) is to culminate in a report and a device or simulation, which is to be demonstrated to the student's Project Committee. The Project Report must be approved by the student's Project Committee and approved by the Computer Engineering Graduate Coordinator prior to its submittal to the Office of Graduate Studies.

Comprehensive Exam (Plan C) option must be approved by their elective area advisor. Students will not receive degree credit for CPE 500. Students must complete a total of 30 units of approved course work, including core, elective core, and, and elective courses. Students must advance to candidacy for the degree, and take a written comprehensive exam that will cover all of the material in their MS Program of Study. Students who fail the exam may be permitted to retake the exam at its next offering; however, those who fail the exam a second time will not be allowed to continue with the Plan C.

Note: It should be recognized that the industry puts a high value on project and thesis problem-solving experience, and the demonstration of technical writing skills that these options require. Graduating under the Plan C option will not provide that experience. Students taking this option should consider, with their elective area advisors, other ways of gaining that valuable experience, such as through a CPE 299 Special Problems course.

Career Possibilities

Computer Engineer · Computer Architect · ASIC Designer · Chip Architect · VLSI Engineer · Real Time System Design Engineer · Design Engineer · Hardware Engineer · Software Engineer · Systems Engineer · Applications Engineer · Networking Engineer · Control Engineer · Marketing Engineer · Data Communications Engineer · Project Engineer · Research Engineer · Consulting Engineer · Test Engineer · Production Engineer · Telecommunications Engineer · Solid State Engineer · DSP Engineer

Faculty

Behnam Arad, Dennis Dahlquist, Nikrouz Faroughi, Isaac Ghansah, Perry Heedley, Jing Pang, Suresh Vadhva

Contact Information

Nikrouz Faroughi, Program Coordinator
faroughi@csus.edu or (916) 278-6139
Suzanne Abshire, Administrative Support Coordinator
Riverside Hall 3018
(916) 278-6844
www.ecs.csus.edu/cpe



COMPLETE COURSE LISTING | RETURN TO TOP |