Computer Engineering (CENG)
College of Engineering
Computer Engineering – the application of computer science and electrical/electronics engineering to develop computer hardware and software. Graduates in Computer Engineering gain skills and use computer aided-design tools that enable them to design, implement, and develop processors, hardware accelerators and associated software. These skills lead to efficient hardware/software co-design and the ability to develop user/application-level software. This major provides students with a common base of knowledge essential to computer engineering and then allows them to select from a menu of electives to attain a broad technical background. Electives are available in the areas of Embedded Systems, Artificial Intelligence, Software Design, Computer Communications, Circuit Design and VLSI, Controls and Robotics.
Major Requirements (Honours)
This is a major within the degree: Bachelor of Engineering.
Credit Summary (23.50 Total Credits)
| Code | Title | Credits |
|---|---|---|
| Required Core Courses | 19.50 | |
| Technical Electives | 2.00 | |
| Complementary Studies Electives 1 | 2.00 | |
| Total Credits | 23.5 | |
- 1
Consult BENG degree overview page for a full list of courses eligible for Complementary Studies Electives.
All students are admitted into the Co-op stream. Students who withdraw from the Co-op stream must speak with their Academic Advisor about completing the other program requirements. At least one summer academic semester will be required for students who complete the non-Co-op stream.
Core Courses
| Code | Title | Credits |
|---|---|---|
| CIS*2520 | Data Structures | 0.50 |
| CIS*2910 | Discrete Structures in Computing II | 0.50 |
| CIS*3110 | Operating Systems I | 0.50 |
| CIS*3490 | Analysis and Design of Computer Algorithms | 0.50 |
| CHEM*1140 | General Chemistry I | 0.50 |
| ENGG*1100 | Engineering and Design I | 0.75 |
| ENGG*1210 | Engineering Mechanics I | 0.50 |
| ENGG*1410 | Introductory Programming for Engineers | 0.50 |
| ENGG*1420 | Object-Oriented Programming for Engineers | 0.50 |
| ENGG*1500 | Engineering Analysis | 0.50 |
| ENGG*2100 | Engineering and Design II | 0.75 |
| ENGG*2400 | Engineering Systems Analysis | 0.50 |
| ENGG*2410 | Digital Systems Design Using Descriptive Languages | 0.50 |
| ENGG*2450 | Electric Circuits | 0.50 |
| ENGG*3050 | Embedded Reconfigurable Computing Systems | 0.50 |
| ENGG*3100 | Engineering and Design III | 0.75 |
| ENGG*3210 | Communication Systems | 0.50 |
| ENGG*3240 | Engineering Economics | 0.50 |
| ENGG*3380 | Computer Organization and Design | 0.50 |
| ENGG*3390 | Signal Processing | 0.50 |
| ENGG*3410 | Systems and Control Theory | 0.50 |
| ENGG*3450 | Electronic Devices | 0.50 |
| ENGG*3640 | Microcomputer Interfacing | 0.50 |
| ENGG*4000 | Proposal for Engineering Design IV | 0.00 |
| ENGG*4170 | Computer Engineering Design IV | 1.00 |
| ENGG*4420 | Real-time Systems Design | 0.75 |
| ENGG*4450 | Large-Scale Software Architecture Engineering | 0.50 |
| ENGG*4540 | Advanced Computer Architecture | 0.50 |
| ENGG*4550 | VLSI Digital Design | 0.50 |
| HIST*1250 | Science and Technology in a Global Context | 0.50 |
| MATH*1200 | Calculus I | 0.50 |
| MATH*1210 | Calculus II | 0.50 |
| MATH*2130 | Numerical Methods | 0.50 |
| MATH*2270 | Applied Differential Equations | 0.50 |
| PHYS*1010 | Introductory Electricity and Magnetism | 0.50 |
| PHYS*1130 | Physics with Applications | 0.50 |
| STAT*2120 | Probability and Statistics for Engineers | 0.50 |
Technical Electives
| Code | Title | Credits |
|---|---|---|
| CENG-1: Computer Engineering Electives | ||
| Select 2.00 credits from the following: | ||
| CIS*2750 | Software Systems Development and Integration | 0.50 |
| CIS*3750 | System Analysis and Design in Applications | 0.50 |
| CIS*3760 | Software Engineering | 0.50 |
| CIS*4720 | Image Processing and Vision | 0.50 |
| ENGG*3130 | Modelling Complex Systems | 0.50 |
| ENGG*3700 | Optimization for Engineers | 0.50 |
| ENGG*4080 | Micro and Nano-Scale Electronics | 0.50 |
| ENGG*4200 | Wireless Sensor Networks | 0.50 |
| ENGG*4430 | Neuro-Fuzzy and Soft Computing Systems | 0.50 |
| ENGG*4460 | Robotic Systems | 0.50 |
| ENGG*4560 | Embedded System Design | 0.75 |
Co-op Requirements (Honours)
This is a major within the degree: Bachelor of Engineering.
The Co-op program in Computer Engineering is a five year program, including five work terms. Students must follow the academic work schedule as outlined below (also found on the Co-operative Education website: https://www.recruitguelph.ca/cecs/).
Academic and Co-op Work Term Schedule
| Year | Fall | Winter | Summer |
|---|---|---|---|
| 1 | Academic Semester 1 | Academic Semester 2 | Off |
| 2 | Academic Semester 3 COOP*1100 | Academic Semester 4 | COOP*1000 Work Term I |
| 3 | Academic Semester 5 | COOP*2000 Work Term II | Academic Semester 6 |
| 4 | COOP*3000 Work Term III | COOP*4000 Work Term IV | COOP*5000 Work Term V |
| 5 | Academic Semester 7 | Academic Semester 8 | N/A |
Please refer to the Co-operative Education program policy with respect to work term performance grading, work term report grading and program completion requirements.
For additional program information students should consult with their Co-op Co-ordinator and Co-op Faculty Advisor, listed on the Co-operative Education web site.
Credit Summary
(26.00 Total Credits)
| Code | Title | Credits |
|---|---|---|
| Required Core Courses | 19.50 | |
| CENG-1 Computer Engineering Electives | 2.00 | |
| Complementary Studies Electives | 2.00 | |
| Co-op Work Terms | 2.50 | |
| Total Credits | 26 | |
Recommended Program Sequence
| Code | Title | Credits |
|---|---|---|
| Semester 1 - Fall | ||
| CHEM*1140 | General Chemistry I | 0.50 |
| ENGG*1100 | Engineering and Design I | 0.75 |
| ENGG*1410 | Introductory Programming for Engineers | 0.50 |
| MATH*1200 | Calculus I | 0.50 |
| PHYS*1130 | Physics with Applications | 0.50 |
| Semester 2 - Winter | ||
| ENGG*1210 | Engineering Mechanics I | 0.50 |
| ENGG*1420 | Object-Oriented Programming for Engineers | 0.50 |
| ENGG*1500 | Engineering Analysis | 0.50 |
| MATH*1210 | Calculus II | 0.50 |
| PHYS*1010 | Introductory Electricity and Magnetism | 0.50 |
| Summer Semester | ||
| No academic semester or work term | ||
| Semester 3 - Fall | ||
| CIS*2520 | Data Structures | 0.50 |
| COOP*1100 | Introduction to Co-operative Education | 0.00 |
| ENGG*2400 | Engineering Systems Analysis | 0.50 |
| ENGG*2410 | Digital Systems Design Using Descriptive Languages | 0.50 |
| MATH*2270 | Applied Differential Equations | 0.50 |
| STAT*2120 | Probability and Statistics for Engineers | 0.50 |
| 0.50 restricted electives | 0.50 | |
| Semester 4 - Winter | ||
| CIS*2910 | Discrete Structures in Computing II | 0.50 |
| ENGG*2100 | Engineering and Design II | 0.75 |
| ENGG*2450 | Electric Circuits | 0.50 |
| ENGG*3380 | Computer Organization and Design | 0.50 |
| MATH*2130 | Numerical Methods | 0.50 |
| 0.50 restricted electives | 0.50 | |
| Summer Semester | ||
| COOP*1000 | Co-op Work Term I | 0.50 |
| Semester 5 - Fall | ||
| ENGG*3390 | Signal Processing | 0.50 |
| ENGG*3450 | Electronic Devices | 0.50 |
| ENGG*3640 | Microcomputer Interfacing | 0.50 |
| ENGG*4450 | Large-Scale Software Architecture Engineering | 0.50 |
| HIST*1250 | Science and Technology in a Global Context | 0.50 |
| 0.50 restricted electives | 0.50 | |
| Winter Semester | ||
| COOP*2000 | Co-op Work Term II | 0.50 |
| Semester 6 - Summer | ||
| CIS*3110 | Operating Systems I | 0.50 |
| CIS*3490 | Analysis and Design of Computer Algorithms | 0.50 |
| ENGG*3100 | Engineering and Design III | 0.75 |
| ENGG*3210 | Communication Systems | 0.50 |
| ENGG*3410 | Systems and Control Theory | 0.50 |
| 0.50 restricted electives | 0.50 | |
| Fall Semester | ||
| COOP*3000 | Co-op Work Term III | 0.50 |
| Winter Semester | ||
| COOP*4000 | Co-op Work Term IV | 0.50 |
| Summer Semester | ||
| COOP*5000 | Co-op Work Term V | 0.50 |
| Semester 7 - Fall | ||
| ENGG*3050 | Embedded Reconfigurable Computing Systems | 0.50 |
| ENGG*3240 | Engineering Economics | 0.50 |
| ENGG*4000 | Proposal for Engineering Design IV | 0.00 |
| ENGG*4420 | Real-time Systems Design | 0.75 |
| 1.00 restricted electives | 1.00 | |
| Semester 8 - Winter | ||
| ENGG*4170 | Computer Engineering Design IV | 1.00 |
| ENGG*4540 | Advanced Computer Architecture | 0.50 |
| ENGG*4550 | VLSI Digital Design | 0.50 |
| 1.00 restricted electives | 1.00 | |
Restricted Electives
The Engineering Program requires Computer Engineering students to complete the following combination of elective credits, totaling a minimum of 4.00 credits, to complete their program.
| Code | Title | Credits |
|---|---|---|
| 2.00 credits from Complementary Studies Electives: | ||
| Consult the Program Guide for a full list of courses eligible for Complementary Studies Electives. | ||
| CENG-1: Computer Engineering Electives (2.00 Credits Required) | ||
| CIS*2750 | Software Systems Development and Integration | 0.50 |
| CIS*3750 | System Analysis and Design in Applications | 0.50 |
| CIS*3760 | Software Engineering | 0.50 |
| CIS*4720 | Image Processing and Vision | 0.50 |
| ENGG*3130 | Modelling Complex Systems | 0.50 |
| ENGG*3700 | Optimization for Engineers | 0.50 |
| ENGG*4080 | Micro and Nano-Scale Electronics | 0.50 |
| ENGG*4200 | Wireless Sensor Networks | 0.50 |
| ENGG*4430 | Neuro-Fuzzy and Soft Computing Systems | 0.50 |
| ENGG*4460 | Robotic Systems | 0.50 |
| ENGG*4560 | Embedded System Design | 0.75 |