# Graduation Requirements

## Preparation

High school students are encouraged to take four (4) years of English; four (4) years of mathematics, including trigonometry and pre-calculus; and one year of physics. Courses in calculus and computer programming are recommended. Experience in clear, concise, and careful writing is valuable for success in all courses.

Transfer students entering the program at the junior and senior levels will be expected
to have completed a maximum of thirty-six (36) lower-division units including courses
in computer science, mathematics, and physics, which may be applied toward the preparation
for the major requirements. **Of the thirty-six (36) units**:

- sixteen (16) units must appropriately match the description for CE 100, CS 111, CS 211, CS 231, and EE 280 (depending on the articulation agreement between Cal State San Marcos and other institutions; transfer students are advised to consult with their articulation officer to determine if they need to take CE 100, CS 111, CS 211, CS 231 and EE 280);
- thirteen (13) units must appropriately match the description for MATH 160*, MATH 162, MATH 260A, and MATH 270; and eight (8) units must appropriately match the description for PHYS 201* and PHYS 202.

**Six (6) units of the above-transferred courses, MATH 160 and PHYS 201, will count
toward the lower-division General Education requirements in Area B. Students are encouraged
to consult their faculty advisor to learn about courses that fulfill the General Education
requirements*.

## Special Conditions for the Bachelor of Science in Computer Engineering

All courses counted toward the major, including Preparation for the Major courses, must be completed with a grade of C (2.0) or better. A minimum of fifteen (15) upper-division units counted toward the major must be completed at Cal State San Marcos.

## Preparation for the Major (46 Units)

### Lower-Division Courses (16 units)

- CE 100 - Introduction to Computer Engineering
**Units:**1 - CS 111 - Computer Science I
**Units:**4 - CS 211 - Computer Science II
**Units:**4 - CS 231 - Assembly Language and Digital Circuits
**Units:**4 - EE 280 - Introduction to Circuit Analysis
**Units:**3

### Supporting Courses (30 units)

- MATH 160 - Calculus with Applications, I
**Units:**5 * - MATH 162 - Calculus with Applications, II
**Units:**4 - MATH 260A - Multivariable Integration
**Units:**1 - MATH 270 - Basic Discrete Mathematics
**Units:**3 - MATH 342 - Probability and Statistics for Engineers and Scientists
**Units:**3 ** - MATH 346 - Mathematical Methods for Engineering and Physics
**Units:**3 ** - PHIL 348 - Ethics in Engineering
**Units:**3 *** - PHYS 201 - Physics of Mechanics and Sound
**Units:**4 * - PHYS 202 - Physics of Electromagnetism and Optics
**Units:**4 -
**Six (6) lower-division General Education units in Area B (Math and Science) are automatically satisfied by courses taken in Preparation for the Major.*

**MATH 342 or MATH 346 satisfies the upper-division General Education units in Area BB (Math and Science).

***PHIL 348 satisfies the upper-division General Education units in Area CC and Diversity & Equity in the Global Context requirement.

## Major Requirements (38 Units)

### Upper-Division (35 units)

- CE 301 - Digital Systems Design with HDL
**Units:**4 - CE 310 - Introduction to Computer Engineering Laboratory
**Units:**1 - CE 402 - Microcontroller Systems and Computer Interfacing
**Units:**4 - CE 411 - System-on-Chip Design
**Units:**3 - CE 491A - Senior Project Planning
**Units:**1 - CE 491B - Senior Lab Project
**Units:**3 - CS 311 - Data Structures and Algorithms
**Units:**3 - CS 331 - Computer Architecture
**Units:**3 - CS 433 - Operating Systems
**Units:**3 - CS 436 - Introduction to Networking
**Units:**3 - EE 303 - Signals and Systems
**Units:**3 - EE 330 - Electronic Circuits
**Units:**4

### Computer Engineering Electives (3 Units)

Choose electives from 400-level CS, CE, and EE courses, or SE 370.

## Minimum Total (120 Units)

**Students must take a sufficient number of elective units to bring the total number
of units to a minimum of 120.**