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 of the Accreditation Board for Engineering and Technology, 111 Market Place, Suite 1050, Baltimore, MD 21202-4012; (410) 347-7700. 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) |
||
(3) |
Programming Concepts and Methodology I (CSC 10 or programming experience in a high level language) |
|
(3) |
Programming Concepts and Methodology II (CSC 15) |
|
(3) |
Discrete Structures for Computer Science (MATH 26A or MATH 29 and CSC 20; CSC 20 may be taken concurrently) |
|
(3) |
Introduction to Computer Architecture (CSC 15) |
|
(3) |
Introduction to Systems Programming in Unix (CSC 20, CSC 35) |
|
(1) |
Introduction to Engineering (Algebra & Trigonometry, or instructor permission) |
|
(3) |
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) |
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) |
Calculus II (MATH 30 or appropriate high school based AP credit) |
|
(3) |
Differential Equations for Science and Engineering (MATH 31) |
C. Additional Required Courses (14 units)
(3) |
Introduction to Microeconomic Analysis |
|
(3) |
Environmental Science |
|
(4) |
General Physics: Mechanics (MATH 30, MATH 31; or equivalent certificated high school courses. MATH 31 may be taken concurrently) |
|
(4) |
General Physics: Electricity and Magnetism, Modern Physics (MATH 31, PHYS 11A) |
D. Required Upper Division Courses (47 units)
(3) |
||
(3) |
Advanced Computer Organization (CSC 137 or CPE 166 and CPE 185) |
|
(3) |
||
(3) |
Operating System Pragmatics (CSC 139) |
|
(4) |
||
(4) |
||
(3) |
||
(2) |
Senior Design Project I (CPE 142, CPE 166, CPE 186, CPE 187, EEE 102;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) |
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) |
Data Structures and Algorithm Analysis (CSC 20, CSC 28; CSC 28 may be taken concurrently) |
|
(3) |
Operating System Principles (CSC 60, CSC 137, or equivalents) |
|
(3) |
||
(1) |
Electronics I Laboratory (EEE 117, EEE 117L; Corequisite: EEE 108) |
|
(3) |
Network Analysis (ENGR 17, EEE 64; EEE 64 may be taken concurrently; Corequisite: EEE 117L) |
|
(1) |
Networks Analysis Laboratory (Corequisite: EEE 117) |
|
(3) |
Signals and Systems (EEE 117; EEE 117 may be taken concurrently) |
|
(3) |
Probability and Random Signals (EEE 180; EEE 180 may be taken concurrently) |
E. Technical Electives (3 units)
DSP Architecture Design (CPE 142) |
||
VLSI Design (CPE 151) |
||
Computer Software Engineering (CSC 130; may be taken concurrently) |
||
Object-Oriented Computer Graphics Programming (CSC 130 and CSC 131) |
||
Database Management Systems (CSC 130) |
||
Compiler Construction (CSC 135) |
||
Computer Forensics Principles and Practices (CSC 138 or CPE 138)) |
||
Computer System Attacks and Countermeasures (CSC 138 or CPE 138) |
||
Advanced Computer Graphics (CSC 133) |
||
Electronic Instrumentation (EEE 108, EEE 117; EEE 108 may be taken concurrently) |
||
Introduction to Digital Signal Processing (CPE /EEE 64 or equivalent, EEE 180) |
||
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) |
Research Methodology (Classified graduate status) |
|
(3) |
Hierarchical Digital Design Methodology (CSC 205, EEE 285 or their equivalents) |
|
(3) |
Advanced Computer Architecture (CSC 205, fully classified graduate status) |
|
(3) |
Computer Systems Structure (Fully classified graduate status in Computer Science, Software Engineering or Computer Engineering) |
|
(3) |
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) |
Microprocessor Systems Architecture (CSC 205) |
|
(3) |
(3) |
Computer Networks (Fully classified graduate-level major in Computer Science, Software Engineering, or Computer Engineering) |
|
(3) |
Distributed Systems (Fully classified graduate standing in Computer Science, Software Engineering, or Computer Engineering and CSC 204) |
|
(3) |
Advanced Data Communication Systems (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering) |
(3) |
Advanced Operating Systems Principles and Design (CSC 205) |
C . Elective Courses (To reach total of 30 units)
(3) |
Operating System Pragmatics (CSC 139) |
|
(1-3) |
Special Problems (Instructor permission) |
|
(3) |
Artificial Intelligence (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering) |
|
(3) |
Machine Learning (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering) |
|
(3) |
Software System Engineering (Fully classified graduate status in Computer Science or Software Engineering; or Computer Engineering and CSC 131) |
|
(3) |
Software Verification and Validation (Fully classified graduate status in Computer Science or Software Engineering; or Computer Engineering and CSC 131) |
|
(3) |
Computer Aided Systems Design and Verification (CSC 205, CSC 273, or EEE 273) |
|
(3) |
||
(3) |
Performance Modeling and Evaluation (Fully classified graduate status in Computer Science or Software Engineering) |
|
(3) |
Computer Security (Fully classified graduate status in Computer Science, Software Engineering, or Computer Engineering) |
|
(3) |
||
(3) |
||
(3) |
Machine Vision |
|
(3) |
Electronic Neural Networks |
|
(3) |
Advanced Robotic Control (EEE 184 or equivalent) |
|
(3) |
Analog and Mixed Signal Integrated Circuit Design (EEE 109 and instructor permission) |
|
(3) |
Advanced Semiconductor Devices |
|
(3) |
||
(3) |
Statistical Signal Processing |
|
(3) |
Applied Stochastic Processes (ENGR 120) |
|
(3) |
Advanced Digital Signal Processing (EEE 174, EEE 181 or equivalent) |
|
(3) |
Statistical Theory of Communication (EEE 185) |
|
(3) |
Information Theory, Coding, and Detection (EEE 185) |
|
(3) |
Fiber Optic Communications (EEE 185 or instructor permission) |
|
(3) |
Algebraic Structures (MATH 110B) |
|
(3) |
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)
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, Weide Chang, John Clevenger, Dennis Dahlquist, Nikrouz Faroughi, Isaac Ghansah, Perry Heedley, Preetham Kumar, Jing Pang, Suresh Vadhva
Contact Information
Thomas Matthews, Program Coordinator
matthews@ecs.csus.edu or (916)
278-5948
Suzanne Abshire, Administrative Support Coordinator
Riverside Hall 3018
(916) 278-6844
www.ecs.csus.edu/cpe