B.Eng. in Computer Engineering — CUHK Engineering Major Requirements (2026–27)

Admission code: CENGN · 75 units · For students admitted in 2026–27

Students are required to complete a minimum of 75 units of courses as follows:

1.Faculty Package9 units

ENGG1110/ESTR1002, ENGG1111, ENGG1120/ESTR1005, ENGG1125/ESTR1007[a]

Show 7 courses
CourseTitleTerm 1Term 2Enrolment information
ENGG 1110Problem Solving By Programming
Not for students who have taken CSCI1020 or 1030 or 1110 or 1120 or 1130 or 1510 or 1520 or 1530 or 1540 or ESTR1002 or 1100 or 1102.
ESTR 1002Problem Solving By Programming
Not for students who have taken CSCI1020, CSCI1030, CSCI1110, CSCI1120, CSCI1130, CSCI1510, CSCI1520, CSCI1530, CSCI1540, ENGG1110, ESTR1100 or ESTR1102.
ENGG 1111 [0]AI Literacy Workshop
Co-requisite: ENGG1110.
ENGG 1120Linear Algebra for Engineers
Not for students who have taken ENGG1410 or ESTR1004 or ESTR1005 or MATH1030 or MATH1038.
ESTR 1005Linear Algebra for Engineers
Not for students who have taken ENGG1120 or ENGG1410 or ESTR1004 or MATH1030 or MATH1038.
ENGG 1125Single Variable Calculus for Engineers
Not for students who have taken ESTR1007 or MATH1510.
ESTR 1007Single Variable Calculus for Engineers
Not for students who have taken ENGG1125 or MATH1510.

2.Foundation Courses17 units

(a)Any one course from the following3 units

Chemistry Courses: CHEM1380

Life Science Courses: LSCI1001, 1003

Physics Courses[b]: ENGG1310/ESTR1003, PHYS1003, 1110

Show 7 courses
CourseTitleTerm 1Term 2Enrolment information
CHEM 1380Basic Chemistry for Engineers
LSCI 1001Basic Concepts in Biological Sciences
Not for students who have taken LSCI1002 or 1003.
LSCI 1003Life Sciences for Engineers
Not for students who have taken LSCI1001.
ENGG 1310Engineering Physics: Electromagnetics, Optics and Modern Physics
Not for students who have taken ENGG2520, ESTR2006 or ESTR1003.
ESTR 1003Engineering Physics: Electromagnetics, Optics and Modern Physics
Not for students who have taken ENGG1310 or ENGG2520 or ESTR2006.
PHYS 1003General Physics for Engineers
PHYS 1110Engineering Physics: Mechanics and Thermodynamics

(b)3 units

CSCI1120/ESTR1100

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
CSCI 1120Introduction to Computing Using C++
Not for students who have taken AIST1110 or CSCI1020 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ESTR1100 or ESTR1102.
ESTR 1100Introduction to Computing Using C++
Not for students who have taken AIST1110 or ESTR1102 or CSCI1020, CSCI1120, CSCI1130, CSCI1510, CSCI1520, CSCI1530, CSCI1540, CSCI1550.

(c)11 units

ENGG1130/ESTR1006[c], ENGG2720/ESTR2014, ENGG2740/ESTR2016, ENGG2760/ESTR2018, ENGG2780/ESTR2020

Show 10 courses
CourseTitleTerm 1Term 2Enrolment information
ENGG 1130Multivariable Calculus for Engineers
Pre-requisite(s): ENGG1125 or ESTR1007 or MATH1510.Not for students who have taken ENGG1410 or ESTR1004 or 1006 or MATH2010 or 2018 or 2020 or 2028.
ESTR 1006Multivariable Calculus for Engineers
Pre-requisite(s): ENGG1125 or ESTR1007 or MATH1510.Not for students who have taken ENGG1130 or ENGG1410 or ESTR1004 or MATH2010 or MATH2018 or MATH2020 or MATH2028.
ENGG 2720 [2]Complex Variables for Engineers
Not for students who have taken ENGG2420 or 2460 or ESTR2000 or 2010 or 2014.
ESTR 2014 [2]Complex Variables for Engineers
Not for students who have taken ENGG2420 or ENGG2460 or ENGG2720 or ESTR2000 or ESTR2010.
ENGG 2740 [2]Differential Equations for Engineers
Not for students who have taken ENGG2420 or 2460 or ESTR2000 or 2010 or 2016.
ESTR 2016 [2]Differential Equations for Engineers
Not for students who have taken ENGG2420 or ENGG2460 or ENGG2740 or ESTR2000 or ESTR2010.
ENGG 2760 [2]Probability for Engineers
Not for students who have taken ENGG2430 or 2450 or 2470 or ESTR2002 or 2005 or 2012 or 2018 or 2308 or 2362 or IERG2470 or MIEG2440.
ESTR 2018 [2]Probability for Engineers
Not for students who have taken ENGG2430 or ENGG2450 or ENGG2470 or ENGG2760 or ESTR2002 or ESTR2005 or ESTR2012 or ESTR2308 or ESTR2362 or IERG2470 or MIEG2440.
ENGG 2780 [2]Statistics for Engineers
Not for students who have taken ENGG2430 or ENGG2450 or ESTR2002 or ESTR2005 or 2020.Co-requisite(s): ENGG2760 or ESTR2018 or 2308 or IERG2470.
ESTR 2020 [2]Statistics for Engineers
Not for students who have taken ENGG2430 or ENGG2450 or ENGG2780 or ESTR2002 or ESTR2005.Co-requisite(s): ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.

3.Required Courses37 units

(a)31 units

CENG2010, 2030, CENG2400/ESTR2100, CENG3420, CSCI2100/ESTR2102, CSCI3100, CSCI3150/ESTR3102, CSCI3190, 3250, 3251, ELEG2202, ENGG2020/ESTR2104

Show 16 courses
CourseTitleTerm 1Term 2Enrolment information
CENG 2010 [1]Digital Logic Design Laboratory
Prerequisite: ENGG2020 or ESTR2104.
CENG 2030Fundamentals of Embedded Systems
Pre-requisite: ENGG1110 or ESTR1002.
CENG 2400Embedded System Design
Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100.
ESTR 2100Embedded System Design
Not for students who have taken CENG2400.Pre-requisite: ENGG2020 or ENGG2120 or ESTR2104.
CENG 3420Computer Organization and Design
Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived.
CSCI 2100Data Structures
Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived.
ESTR 2102Data Structures
Not for students who have taken CSCI2100 or CSC2520.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the pre-requisite will be waived.
CSCI 3100Software Engineering
Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3150Introduction to Operating Systems
Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102.
ESTR 3102Introduction to Operating Systems
Not for students who have taken CSCI3150.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102.For senior-year entrants, the pre-requisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.
CSCI 3190Introduction to Discrete Mathematics and Algorithms
Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3250 [2]Computers and Society
Not for students who have taken ENGG2601.
CSCI 3251 [1]Engineering Practicum
Not for students who have taken ENGG2602.
ELEG 2202Fundamentals of Electric Circuits
Not for students who have taken BMEG2300.
ENGG 2020Digital Logic and Systems
Not for students who have taken ELEG2120 or ESTR2104.
ESTR 2104Digital Logic and Systems
Not for students who have taken ELEG2120 or ENGG2020.

(b)Research Component Courses[d]6 units

CENG4998, 4999

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
CENG 4998Final Year Project I
CENG 4999Final Year Project II
Prerequisite: CENG4998.

4.Choose any ONE from the following three options12 units

(a)General Computer Engineering12 units

Elective Courses: Choose at least 6 units from the following6 units

AIST3510 or SEEM3510, AIST4010/ESTR4140, AIST4050, BMEG3111, 3420, 4220, CENG3430/ESTR3100, CENG4120, 4480, 5030, 5270, 5280, CENG5410/ENGG5101, CSCI3350, CSCI4180/ESTR4106, CSCI4200, 5390, 5680, ELEG4211, 4701, IERG4300/ESTR4300, MAEG3080

Show 28 courses
CourseTitleTerm 1Term 2Enrolment information
AIST 3510Human-computer Interaction
Not for students who have taken SEEM3510.
SEEM 3510Human-computer Interaction
Not for students who have taken AIST3510.
AIST 4010Foundation of Applied Deep Learning
Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108.
ESTR 4140Foundation of Applied Deep Learning
Pre-requisite: CSCI3230 or CSCI3320 or ESTR3108.Not for students who have taken AIST4010.
AIST 4050Embodied Intelligence: Algorithms and Applications
Prerequisite: AIST1000.
BMEG 3111 [2]Medical Instrumentation and Design
Not for students who have taken BMEG3101 or ELEG3101 or ESTR3210 or ESTR3601 or ESTR3603.
BMEG 3420Medical Robotics
BMEG 4220Wearable Biomedical Devices and Personalized Healthcare
CENG 3430Rapid Prototyping of Digital Systems
Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100.
ESTR 3100Rapid Prototyping of Digital Systems
Not for students who have taken CENG3430.Pre-requisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent.For senior-year entrants, the pre-requisite will be waived.
CENG 4120Computer-aided Design for Very Large Scale Integrated Circuits
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CENG 4480Embedded System Development and Applications
Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived.
CENG 5030Energy Efficient Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CENG 5270EDA for Physical Design of Digital Systems
For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN).
CENG 5280Quantum Computer Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CENG 5410(not found in course_info)
ENGG 5101Advanced Computer Architecture
For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CENG5410.
CSCI 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
ESTR 4106Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken CSCI4180.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 5390Advanced GPU Programming
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5680Advanced Topics in Flash Memory Technology
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
ELEG 4211CMOS Digital Integrated Circuits Design
Not for students who have taken ELEG4201 or ELEG4260.
ELEG 4701Intelligent Interactive Robot Practice
Pre-requisite: CSCI1120 or ESTR1100 Introduction to Computing Using C++.
IERG 4300Web-scale Information Analytics
Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300.
ESTR 4300Web-scale Information Analytics
Not for students who have taken CSCI5510 or ENGG4030 or IERG4300.
MAEG 3080Fundamentals of Machine Intelligence

Courses Eligible for Remaining Units

Remaining units can be chosen from the following: AIST/CENG/CSCI/ELEG courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803)

Show 175 courses
CourseTitleTerm 1Term 2Enrolment information
AIST 2010Introduction to Computer Music: From Analysis to Algorithmic Music
Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102.
AIST 2601 [2]Technology, Society and Engineering Practice
Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602.
AIST 2602 [1]Engineering Practicum
Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602.
AIST 3010 [2]Numerical Optimization
Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114.
AIST 3020Introduction to Computer Systems
Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004).
AIST 3030Numerical Optimization
Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114.
AIST 3110Music Information Retrieval
Pre-requisite/Co-requisite: AIST2010 or CSCI3280.
AIST 3120Introduction to Natural Language Processing
Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
AIST 3510Human-computer Interaction
Not for students who have taken SEEM3510.
AIST 4010Foundation of Applied Deep Learning
Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108.
AIST 4020Agentic AI and LLM Serving
Prerequisite: AIST3020 or CSCI3150 or ESTR3102.
AIST 4030Structured Data Modeling and Graph Neural Network
Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320.
AIST 4040Mathematical Foundations of Deep Learning
Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112).
AIST 4050Embodied Intelligence: Algorithms and Applications
Prerequisite: AIST1000.
AIST 4060 [2]AI-Native Software Engineering
Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844.
AIST 4998Final Year Project I
AIST 4999Final Year Project II
Prerequisite: AIST4998.
AIST 5020Trustworthy Artificial Intelligence
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
AIST 5030Generative Artificial Intelligence
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030.
AIST 5040PhysAI and GenAI for Natural Science
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
AIST 5050Optimization for Large Language Models
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CENG 2010 [1]Digital Logic Design Laboratory
Prerequisite: ENGG2020 or ESTR2104.
CENG 2030Fundamentals of Embedded Systems
Pre-requisite: ENGG1110 or ESTR1002.
CENG 2400Embedded System Design
Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100.
CENG 3420Computer Organization and Design
Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived.
CENG 3430Rapid Prototyping of Digital Systems
Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100.
CENG 4120Computer-aided Design for Very Large Scale Integrated Circuits
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CENG 4480Embedded System Development and Applications
Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived.
CENG 4998Final Year Project I
CENG 4999Final Year Project II
Prerequisite: CENG4998.
CENG 5030Energy Efficient Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CENG 5270EDA for Physical Design of Digital Systems
For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN).
CENG 5280Quantum Computer Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CSCI 2040 [2]Introduction to Python
Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080.
CSCI 2100Data Structures
Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived.
CSCI 2510Computer Organization
Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2520Data Structures and Applications
Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2720Building Web Applications
Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2730Introduction to Blockchain Technologies and Applications
Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102.
CSCI 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software Engineering
Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction to Operating Systems
Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102.
CSCI 3160Design and Analysis of Algorithms
Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440).
CSCI 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles of Programming Languages
Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived.
CSCI 3190Introduction to Discrete Mathematics and Algorithms
Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals of Artificial Intelligence
Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent.
CSCI 3250 [2]Computers and Society
Not for students who have taken ENGG2601.
CSCI 3251 [1]Engineering Practicum
Not for students who have taken ENGG2602.
CSCI 3260Principles of Computer Graphics
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 3270 [2]Advanced Programming Laboratory
1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104.
CSCI 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals of Machine Learning
Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001.
CSCI 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific Computing
Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520).
CSCI 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational Learning Theory
Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440.
CSCI 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical Computational Geometry Algorithms
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5030Machine Learning Theory
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704.
CSCI 5120Advanced Topics in Database Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010.
CSCI 5150Machine Learning Algorithms and Applications
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580.
CSCI 5210Advanced Computer Graphics and Visualization
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5350Advanced Topics in Game Theory
For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728.
CSCI 5370Quantum Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5390Advanced GPU Programming
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5440Theory of Cryptography
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5540Machine Learning Systems
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5550Advanced File and Storage Systems
For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering.
CSCI 5600Advanced Topics in Distributed Systems
For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735.
CSCI 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced Topics in Graph Mining
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5640Natural Language Processing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5650Graph Neural Networks
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5660Advanced Topics of AI for Life Sciences
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5670Computational Imaging Systems and Algorithms
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670.
CSCI 5680Advanced Topics in Flash Memory Technology
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5690Automated Reasoning about Software Systems
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5700Advanced Topics in Software Testing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CSCI 6500 [1]Seminars for M.Phil. Studies
For students in MPhil-PhD Computer Science & Engineering.
CSCI 7600 [1]Seminars for Ph.D. Studies
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8003Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8006 [6]Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8012 [12]Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
ELEG 2201Digital Circuits and Computing Systems
Not for students who have taken ENGG2020.
ELEG 2202Fundamentals of Electric Circuits
Not for students who have taken BMEG2300.
ELEG 2310Principles of Communication Systems
Prerequisite: ENGG2030 or ESTR2206.Not for students who have taken ESTR2300 or ENGG2310 or IERG2310.
ELEG 2601 [2]Technology, Society and Engineering Practice
Not for students who have taken ENGG2601 or MASE2601.
ELEG 2602 [1]Engineering Practicum
Not for students who have taken ENGG2602.
ELEG 2700Introduction to Electronic System Design
Not for students who have taken ENGG1100 or ESTR1000.
ELEG 3103Robotic Perception and Intelligence
Not for students who have taken MAEG3060 or ESTR3408 or ESTR3216;Prerequisite: ENGG2030 or ESTR2206 or with the consent of the instructor.
ELEG 3201Microelectronic Devices and Circuits
Not for students who have taken ESTR3200;Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3202Analog Integrated Circuits
Not for students who have taken ELEG3210.Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3207Introduction to Power Electronics
Pre-requisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3213Fundamentals of Applied Electromagnetics
Not for students who have taken ELEG3203 or ESTR3214.
ELEG 3214Antennas and Wave Propagation for Wireless Communications
Co-requisite: ELEG3213 or ESTR3214 or consent of the instructor.
ELEG 3301Principles of Semiconductor Devices
Not for students who have taken ELEG2510 or ESTR3204.
ELEG 3302Fundamentals of Photonics
Not for students who have taken ELEG3010.
ELEG 3303Introduction to Optical Communications
Not for students who have taken ELEG3320 or ESTR3206.
ELEG 3503Introduction to Digital Signal Processing
Not for students who have taken ELEG3410.Prerequisite: ENGG2030 or ESTR2206 or consent of the instructor.
ELEG 3601Introduction to Electric Power Systems
Pre-requisite: (ELEG2202 or BMEG2300) and (ENGG1310 or ENGG2520 or ESTR1003), or with consent of the instructor.
ELEG 3701Embedded Systems Design
Not for students who have taken ELEG2401 or IERG3060 or IERG3810;Pre-requisite: (ELEG2201 and ELEG2202)or with the consent of the instructor.
ELEG 3710Electronic Product Design and Development
Not for students who have taken ELEG3700.
ELEG 3910 [2]Undergraduate Research in Electronic Engineering
ELEG 4211CMOS Digital Integrated Circuits Design
Not for students who have taken ELEG4201 or ELEG4260.
ELEG 4214RF Circuits for Wireless Systems
Not for students who have taken ELEG4203 or ELEG4204 or ELEG4213 or ESTR4206 or ESTR4208 or ESTR4220 or ESTR4222.Pre-requisite: ELEG3203 or ELEG3213 or ESTR3214 or consent of the instructor.
ELEG 4215Power Converter Circuits
Not for students who have taken ELEG4205.Prerequisite: ELEG3202 or consent of the instructor.
ELEG 4216Design Methodology of Modern Digital Circuits
Not for students who have taken ELEG3205.
ELEG 4311Physics and Technology of Semiconductor Devices
Not for students who have taken ELEG4301 or ELEG4510 or ESTR4210 or ESTR4216.Prerequisites: ELEG3301 or ESTR3204 or consent of the instructor.
ELEG 4312Micro-optic Devices and Systems
Not for students who have taken ELEG4302.
ELEG 4313Integrated Photonics: Theory, Design and Practice
ELEG 4511Digital Signal Processing and Applications
Not for students who have taken ELEG4501 or ESTR4212 or ESTR4218.Pre-requisite: ELEG3503 or consent of the instructor.
ELEG 4512Digital Image Processing
Not for students who have taken ELEG4502 or IERG4160.
ELEG 4701Intelligent Interactive Robot Practice
Pre-requisite: CSCI1120 or ESTR1100 Introduction to Computing Using C++.
ELEG 4998Final Year Project I
ELEG 4999Final Year Project II
Pre-requisite: ELEG4998.
ELEG 5020Advanced Topics in Integrated Circuits and Systems
For students in MPhil-PhD Electronic Engineering.
ELEG 5030Advanced Topics in Wireless Communications
For students in MPhil-PhD Electronic Engineering.
ELEG 5040Advanced Topics in Signal Processing
For students in MPhil-PhD Electronic Engineering.
ELEG 5050Advanced Topics in Solid State Technology
For students in MPhil-PhD Electronic Engineering.
ELEG 5060Applied Functional Analysis and Approximation Theory
For students in MPhil-PhD Electronic Engineering and MSc Electronic Engineering.
ELEG 5150Processing of Functional Materials
For ELEG RPG & TPG students.
ELEG 5280Analog-Digital ASIC Design
For ELEG major and minor undergraduate and ELEG RPg and TPg students as elective course;Not for students who have taken ELEG5201.
ELEG 5301Photonic Integrated Circuits
For ELEG RPG & TPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5773.
ELEG 5421Audio Signal Processing
For ELEG PG students.For ELEG UG major and minor as elective.Students should have knowledge of Linear Algebra, Probability, C/C++/Python, pattern recognition or machine learning.UG students should have taken ENGG1120, ENGG2760, CSCI1120 or equivalent.
ELEG 5491Introduction to Deep Learning
For ELEG RPG & TPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5040.
ELEG 5520Advanced Topics in Optoelectronics
For students in MPhil-PhD Electronic Engineering.The student should have prior knowledge of semiconductor devices or optoelectronics at the junior undergraduate level before taking this course.
ELEG 5550Micro- and Nano-Fabrication Laboratory
For ELEG RPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5771.
ELEG 5600Advanced Perception for Intelligent Robotics
Elective Course for ELEG RPG, TPG, and senior undergraduate students;Pre-requisite: ELEG3103 or equivalent, or permission of instructor (for UG students only).
ELEG 5620Electronic Engineering Seminar
For students in MPhil-PhD Electronic Erg.
ELEG 5723CMOS Analog IC Design
For ELEG RPG and TPG students as elective course;Not for students who have taken ELEG5210.
ELEG 5731Radio Frequency and Wireless Systems
For students in MSc Electronic Engineering.
ELEG 5753Solar Cells and Beyond for Low-carbon Energy
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5755Optical Communications and Interconnects
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5757Intelligent Wearable Electronics
For students in MSc Electronic Engineering.
ELEG 5758VLSI Digital Signal Processing
For students in MSc Electronic Engineering.
ELEG 5759Innovation, Technology and Management in Modern Engineering
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5760Machine Learning for Multimedia Applications
For students in MSc Electronic Engineering;Not for students who have taken ENGG5202 or ELEG5491.
ELEG 5761Power Converters and Their Grid Applications
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5762Neuromorphic Electronics: Materials, Devices and Circuits for Brain-Like Computation
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5763Processor Design with RISC-V
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5764Artificial Intelligence IC Design
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5765Fundamentals of Automotive Integrated Circuits
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5766AI in Medical Image Analysis
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5768CMOS Radio Frequency Integrated Circuits Design
For students in MSc Electronic Engineering.
ELEG 5769Mixed-signal Integrated Circuit Design
For students in MSc Electronic Engineering.
ELEG 5770Advanced Semiconductor Packaging
For students in MSc Electronic Engineering.
ELEG 5771Micro/Nano-Chip Manufacturing Technology
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg:Not for students who have taken ELEG5550.
ELEG 5772Audio Signal Processing
For ELEG PG students.Students should have knowledge of Linear Algebra, Probability, C/C++/Python, pattern recognition or machine learning;Not for students who have taken ELEG5421.
ELEG 5773Photonic Chip Design and Emerging Applications
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg;Not for students who have taken ELEG5301.
ELEG 5802Research and Development Project
For students in MSc Electronic Engineering.
ELEG 5902Electronic Engineering Internship
For students in MSc Electronic Engineering.
ELEG 8003Thesis Research
For students in MPhil-PhD Electronic Engineering.
ELEG 8006 [6]Thesis Research
For students in MPhil-PhD Electronic Engineering.
ELEG 8012 [12]Thesis Research
For students in MPhil-PhD Electronic Engineering.
ENGG 1820 [1]Engineering Internship
ENGG 3802 [1]Introduction to Engineering Entrepreneurship
ENGG 3803 [2]Engineering Entrepreneurship Development Project
Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor.

(b)Stream 1: Embedded Systems12 units

Elective Courses: Choose at least 6 units from the following6 units

AIST4050, BMEG3111, 3420, 4220, CENG3430/ESTR3100, CENG4480, 5030, CSCI3260, 3280, 3310, CSCI4430/ESTR4120, CSCI5680, IERG4300/ESTR4300, MAEG3060/ESTR3408, MAEG4040/ESTR4414

Show 20 courses
CourseTitleTerm 1Term 2Enrolment information
AIST 4050Embodied Intelligence: Algorithms and Applications
Prerequisite: AIST1000.
BMEG 3111 [2]Medical Instrumentation and Design
Not for students who have taken BMEG3101 or ELEG3101 or ESTR3210 or ESTR3601 or ESTR3603.
BMEG 3420Medical Robotics
BMEG 4220Wearable Biomedical Devices and Personalized Healthcare
CENG 3430Rapid Prototyping of Digital Systems
Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100.
ESTR 3100Rapid Prototyping of Digital Systems
Not for students who have taken CENG3430.Pre-requisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent.For senior-year entrants, the pre-requisite will be waived.
CENG 4480Embedded System Development and Applications
Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived.
CENG 5030Energy Efficient Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 3260Principles of Computer Graphics
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 3280Introduction to Multimedia Systems
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
ESTR 4120Data Communication and Computer Networks
Not for students who have taken IERG3310 or CSCI4430 or ESTR3310.Pre-requisite: CSCI3150 or CENG3150 or ESTR3102.
CSCI 5680Advanced Topics in Flash Memory Technology
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
IERG 4300Web-scale Information Analytics
Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300.
ESTR 4300Web-scale Information Analytics
Not for students who have taken CSCI5510 or ENGG4030 or IERG4300.
MAEG 3060Introduction to Robotics
Not for students who have taken ESTR3408 or ELEG3103.
ESTR 3408Introduction to Robotics
Not for students who have taken MAEG3060 or ELEG3103.
MAEG 4040Mechatronic Systems
Not for students who have taken ESTR4414.
ESTR 4414Mechatronic Systems
Not for students who have taken MAEG4040.

Courses Eligible for Remaining Units

Remaining units can be chosen from the following: AIST/CENG/CSCI/ELEG courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803)

Show 175 courses
CourseTitleTerm 1Term 2Enrolment information
AIST 2010Introduction to Computer Music: From Analysis to Algorithmic Music
Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102.
AIST 2601 [2]Technology, Society and Engineering Practice
Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602.
AIST 2602 [1]Engineering Practicum
Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602.
AIST 3010 [2]Numerical Optimization
Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114.
AIST 3020Introduction to Computer Systems
Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004).
AIST 3030Numerical Optimization
Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114.
AIST 3110Music Information Retrieval
Pre-requisite/Co-requisite: AIST2010 or CSCI3280.
AIST 3120Introduction to Natural Language Processing
Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
AIST 3510Human-computer Interaction
Not for students who have taken SEEM3510.
AIST 4010Foundation of Applied Deep Learning
Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108.
AIST 4020Agentic AI and LLM Serving
Prerequisite: AIST3020 or CSCI3150 or ESTR3102.
AIST 4030Structured Data Modeling and Graph Neural Network
Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320.
AIST 4040Mathematical Foundations of Deep Learning
Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112).
AIST 4050Embodied Intelligence: Algorithms and Applications
Prerequisite: AIST1000.
AIST 4060 [2]AI-Native Software Engineering
Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844.
AIST 4998Final Year Project I
AIST 4999Final Year Project II
Prerequisite: AIST4998.
AIST 5020Trustworthy Artificial Intelligence
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
AIST 5030Generative Artificial Intelligence
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030.
AIST 5040PhysAI and GenAI for Natural Science
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
AIST 5050Optimization for Large Language Models
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CENG 2010 [1]Digital Logic Design Laboratory
Prerequisite: ENGG2020 or ESTR2104.
CENG 2030Fundamentals of Embedded Systems
Pre-requisite: ENGG1110 or ESTR1002.
CENG 2400Embedded System Design
Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100.
CENG 3420Computer Organization and Design
Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived.
CENG 3430Rapid Prototyping of Digital Systems
Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100.
CENG 4120Computer-aided Design for Very Large Scale Integrated Circuits
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CENG 4480Embedded System Development and Applications
Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived.
CENG 4998Final Year Project I
CENG 4999Final Year Project II
Prerequisite: CENG4998.
CENG 5030Energy Efficient Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CENG 5270EDA for Physical Design of Digital Systems
For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN).
CENG 5280Quantum Computer Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CSCI 2040 [2]Introduction to Python
Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080.
CSCI 2100Data Structures
Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived.
CSCI 2510Computer Organization
Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2520Data Structures and Applications
Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2720Building Web Applications
Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2730Introduction to Blockchain Technologies and Applications
Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102.
CSCI 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software Engineering
Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction to Operating Systems
Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102.
CSCI 3160Design and Analysis of Algorithms
Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440).
CSCI 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles of Programming Languages
Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived.
CSCI 3190Introduction to Discrete Mathematics and Algorithms
Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals of Artificial Intelligence
Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent.
CSCI 3250 [2]Computers and Society
Not for students who have taken ENGG2601.
CSCI 3251 [1]Engineering Practicum
Not for students who have taken ENGG2602.
CSCI 3260Principles of Computer Graphics
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 3270 [2]Advanced Programming Laboratory
1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104.
CSCI 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals of Machine Learning
Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001.
CSCI 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific Computing
Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520).
CSCI 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational Learning Theory
Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440.
CSCI 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical Computational Geometry Algorithms
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5030Machine Learning Theory
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704.
CSCI 5120Advanced Topics in Database Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010.
CSCI 5150Machine Learning Algorithms and Applications
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580.
CSCI 5210Advanced Computer Graphics and Visualization
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5350Advanced Topics in Game Theory
For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728.
CSCI 5370Quantum Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5390Advanced GPU Programming
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5440Theory of Cryptography
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5540Machine Learning Systems
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5550Advanced File and Storage Systems
For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering.
CSCI 5600Advanced Topics in Distributed Systems
For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735.
CSCI 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced Topics in Graph Mining
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5640Natural Language Processing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5650Graph Neural Networks
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5660Advanced Topics of AI for Life Sciences
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5670Computational Imaging Systems and Algorithms
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670.
CSCI 5680Advanced Topics in Flash Memory Technology
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5690Automated Reasoning about Software Systems
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5700Advanced Topics in Software Testing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CSCI 6500 [1]Seminars for M.Phil. Studies
For students in MPhil-PhD Computer Science & Engineering.
CSCI 7600 [1]Seminars for Ph.D. Studies
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8003Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8006 [6]Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8012 [12]Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
ELEG 2201Digital Circuits and Computing Systems
Not for students who have taken ENGG2020.
ELEG 2202Fundamentals of Electric Circuits
Not for students who have taken BMEG2300.
ELEG 2310Principles of Communication Systems
Prerequisite: ENGG2030 or ESTR2206.Not for students who have taken ESTR2300 or ENGG2310 or IERG2310.
ELEG 2601 [2]Technology, Society and Engineering Practice
Not for students who have taken ENGG2601 or MASE2601.
ELEG 2602 [1]Engineering Practicum
Not for students who have taken ENGG2602.
ELEG 2700Introduction to Electronic System Design
Not for students who have taken ENGG1100 or ESTR1000.
ELEG 3103Robotic Perception and Intelligence
Not for students who have taken MAEG3060 or ESTR3408 or ESTR3216;Prerequisite: ENGG2030 or ESTR2206 or with the consent of the instructor.
ELEG 3201Microelectronic Devices and Circuits
Not for students who have taken ESTR3200;Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3202Analog Integrated Circuits
Not for students who have taken ELEG3210.Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3207Introduction to Power Electronics
Pre-requisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3213Fundamentals of Applied Electromagnetics
Not for students who have taken ELEG3203 or ESTR3214.
ELEG 3214Antennas and Wave Propagation for Wireless Communications
Co-requisite: ELEG3213 or ESTR3214 or consent of the instructor.
ELEG 3301Principles of Semiconductor Devices
Not for students who have taken ELEG2510 or ESTR3204.
ELEG 3302Fundamentals of Photonics
Not for students who have taken ELEG3010.
ELEG 3303Introduction to Optical Communications
Not for students who have taken ELEG3320 or ESTR3206.
ELEG 3503Introduction to Digital Signal Processing
Not for students who have taken ELEG3410.Prerequisite: ENGG2030 or ESTR2206 or consent of the instructor.
ELEG 3601Introduction to Electric Power Systems
Pre-requisite: (ELEG2202 or BMEG2300) and (ENGG1310 or ENGG2520 or ESTR1003), or with consent of the instructor.
ELEG 3701Embedded Systems Design
Not for students who have taken ELEG2401 or IERG3060 or IERG3810;Pre-requisite: (ELEG2201 and ELEG2202)or with the consent of the instructor.
ELEG 3710Electronic Product Design and Development
Not for students who have taken ELEG3700.
ELEG 3910 [2]Undergraduate Research in Electronic Engineering
ELEG 4211CMOS Digital Integrated Circuits Design
Not for students who have taken ELEG4201 or ELEG4260.
ELEG 4214RF Circuits for Wireless Systems
Not for students who have taken ELEG4203 or ELEG4204 or ELEG4213 or ESTR4206 or ESTR4208 or ESTR4220 or ESTR4222.Pre-requisite: ELEG3203 or ELEG3213 or ESTR3214 or consent of the instructor.
ELEG 4215Power Converter Circuits
Not for students who have taken ELEG4205.Prerequisite: ELEG3202 or consent of the instructor.
ELEG 4216Design Methodology of Modern Digital Circuits
Not for students who have taken ELEG3205.
ELEG 4311Physics and Technology of Semiconductor Devices
Not for students who have taken ELEG4301 or ELEG4510 or ESTR4210 or ESTR4216.Prerequisites: ELEG3301 or ESTR3204 or consent of the instructor.
ELEG 4312Micro-optic Devices and Systems
Not for students who have taken ELEG4302.
ELEG 4313Integrated Photonics: Theory, Design and Practice
ELEG 4511Digital Signal Processing and Applications
Not for students who have taken ELEG4501 or ESTR4212 or ESTR4218.Pre-requisite: ELEG3503 or consent of the instructor.
ELEG 4512Digital Image Processing
Not for students who have taken ELEG4502 or IERG4160.
ELEG 4701Intelligent Interactive Robot Practice
Pre-requisite: CSCI1120 or ESTR1100 Introduction to Computing Using C++.
ELEG 4998Final Year Project I
ELEG 4999Final Year Project II
Pre-requisite: ELEG4998.
ELEG 5020Advanced Topics in Integrated Circuits and Systems
For students in MPhil-PhD Electronic Engineering.
ELEG 5030Advanced Topics in Wireless Communications
For students in MPhil-PhD Electronic Engineering.
ELEG 5040Advanced Topics in Signal Processing
For students in MPhil-PhD Electronic Engineering.
ELEG 5050Advanced Topics in Solid State Technology
For students in MPhil-PhD Electronic Engineering.
ELEG 5060Applied Functional Analysis and Approximation Theory
For students in MPhil-PhD Electronic Engineering and MSc Electronic Engineering.
ELEG 5150Processing of Functional Materials
For ELEG RPG & TPG students.
ELEG 5280Analog-Digital ASIC Design
For ELEG major and minor undergraduate and ELEG RPg and TPg students as elective course;Not for students who have taken ELEG5201.
ELEG 5301Photonic Integrated Circuits
For ELEG RPG & TPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5773.
ELEG 5421Audio Signal Processing
For ELEG PG students.For ELEG UG major and minor as elective.Students should have knowledge of Linear Algebra, Probability, C/C++/Python, pattern recognition or machine learning.UG students should have taken ENGG1120, ENGG2760, CSCI1120 or equivalent.
ELEG 5491Introduction to Deep Learning
For ELEG RPG & TPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5040.
ELEG 5520Advanced Topics in Optoelectronics
For students in MPhil-PhD Electronic Engineering.The student should have prior knowledge of semiconductor devices or optoelectronics at the junior undergraduate level before taking this course.
ELEG 5550Micro- and Nano-Fabrication Laboratory
For ELEG RPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5771.
ELEG 5600Advanced Perception for Intelligent Robotics
Elective Course for ELEG RPG, TPG, and senior undergraduate students;Pre-requisite: ELEG3103 or equivalent, or permission of instructor (for UG students only).
ELEG 5620Electronic Engineering Seminar
For students in MPhil-PhD Electronic Erg.
ELEG 5723CMOS Analog IC Design
For ELEG RPG and TPG students as elective course;Not for students who have taken ELEG5210.
ELEG 5731Radio Frequency and Wireless Systems
For students in MSc Electronic Engineering.
ELEG 5753Solar Cells and Beyond for Low-carbon Energy
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5755Optical Communications and Interconnects
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5757Intelligent Wearable Electronics
For students in MSc Electronic Engineering.
ELEG 5758VLSI Digital Signal Processing
For students in MSc Electronic Engineering.
ELEG 5759Innovation, Technology and Management in Modern Engineering
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5760Machine Learning for Multimedia Applications
For students in MSc Electronic Engineering;Not for students who have taken ENGG5202 or ELEG5491.
ELEG 5761Power Converters and Their Grid Applications
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5762Neuromorphic Electronics: Materials, Devices and Circuits for Brain-Like Computation
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5763Processor Design with RISC-V
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5764Artificial Intelligence IC Design
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5765Fundamentals of Automotive Integrated Circuits
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5766AI in Medical Image Analysis
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5768CMOS Radio Frequency Integrated Circuits Design
For students in MSc Electronic Engineering.
ELEG 5769Mixed-signal Integrated Circuit Design
For students in MSc Electronic Engineering.
ELEG 5770Advanced Semiconductor Packaging
For students in MSc Electronic Engineering.
ELEG 5771Micro/Nano-Chip Manufacturing Technology
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg:Not for students who have taken ELEG5550.
ELEG 5772Audio Signal Processing
For ELEG PG students.Students should have knowledge of Linear Algebra, Probability, C/C++/Python, pattern recognition or machine learning;Not for students who have taken ELEG5421.
ELEG 5773Photonic Chip Design and Emerging Applications
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg;Not for students who have taken ELEG5301.
ELEG 5802Research and Development Project
For students in MSc Electronic Engineering.
ELEG 5902Electronic Engineering Internship
For students in MSc Electronic Engineering.
ELEG 8003Thesis Research
For students in MPhil-PhD Electronic Engineering.
ELEG 8006 [6]Thesis Research
For students in MPhil-PhD Electronic Engineering.
ELEG 8012 [12]Thesis Research
For students in MPhil-PhD Electronic Engineering.
ENGG 1820 [1]Engineering Internship
ENGG 3802 [1]Introduction to Engineering Entrepreneurship
ENGG 3803 [2]Engineering Entrepreneurship Development Project
Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor.

(c)Stream 2: VLSI Design and EDA12 units

Elective Courses: Choose at least 6 units from the following6 units

CENG3430/ESTR3100, CENG4120, 5030, 5270, 5280, ELEG3202, 3301, 4211, 4311

Show 10 courses
CourseTitleTerm 1Term 2Enrolment information
CENG 3430Rapid Prototyping of Digital Systems
Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100.
ESTR 3100Rapid Prototyping of Digital Systems
Not for students who have taken CENG3430.Pre-requisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent.For senior-year entrants, the pre-requisite will be waived.
CENG 4120Computer-aided Design for Very Large Scale Integrated Circuits
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CENG 5030Energy Efficient Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CENG 5270EDA for Physical Design of Digital Systems
For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN).
CENG 5280Quantum Computer Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
ELEG 3202Analog Integrated Circuits
Not for students who have taken ELEG3210.Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3301Principles of Semiconductor Devices
Not for students who have taken ELEG2510 or ESTR3204.
ELEG 4211CMOS Digital Integrated Circuits Design
Not for students who have taken ELEG4201 or ELEG4260.
ELEG 4311Physics and Technology of Semiconductor Devices
Not for students who have taken ELEG4301 or ELEG4510 or ESTR4210 or ESTR4216.Prerequisites: ELEG3301 or ESTR3204 or consent of the instructor.

Courses Eligible for Remaining Units

Remaining units can be chosen from the following: AIST/CENG/CSCI/ELEG courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803), IERG4300/ESTR4300

Show 177 courses
CourseTitleTerm 1Term 2Enrolment information
AIST 2010Introduction to Computer Music: From Analysis to Algorithmic Music
Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102.
AIST 2601 [2]Technology, Society and Engineering Practice
Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602.
AIST 2602 [1]Engineering Practicum
Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602.
AIST 3010 [2]Numerical Optimization
Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114.
AIST 3020Introduction to Computer Systems
Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004).
AIST 3030Numerical Optimization
Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114.
AIST 3110Music Information Retrieval
Pre-requisite/Co-requisite: AIST2010 or CSCI3280.
AIST 3120Introduction to Natural Language Processing
Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
AIST 3510Human-computer Interaction
Not for students who have taken SEEM3510.
AIST 4010Foundation of Applied Deep Learning
Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108.
AIST 4020Agentic AI and LLM Serving
Prerequisite: AIST3020 or CSCI3150 or ESTR3102.
AIST 4030Structured Data Modeling and Graph Neural Network
Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320.
AIST 4040Mathematical Foundations of Deep Learning
Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112).
AIST 4050Embodied Intelligence: Algorithms and Applications
Prerequisite: AIST1000.
AIST 4060 [2]AI-Native Software Engineering
Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844.
AIST 4998Final Year Project I
AIST 4999Final Year Project II
Prerequisite: AIST4998.
AIST 5020Trustworthy Artificial Intelligence
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
AIST 5030Generative Artificial Intelligence
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030.
AIST 5040PhysAI and GenAI for Natural Science
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
AIST 5050Optimization for Large Language Models
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CENG 2010 [1]Digital Logic Design Laboratory
Prerequisite: ENGG2020 or ESTR2104.
CENG 2030Fundamentals of Embedded Systems
Pre-requisite: ENGG1110 or ESTR1002.
CENG 2400Embedded System Design
Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100.
CENG 3420Computer Organization and Design
Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived.
CENG 3430Rapid Prototyping of Digital Systems
Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100.
CENG 4120Computer-aided Design for Very Large Scale Integrated Circuits
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CENG 4480Embedded System Development and Applications
Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived.
CENG 4998Final Year Project I
CENG 4999Final Year Project II
Prerequisite: CENG4998.
CENG 5030Energy Efficient Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CENG 5270EDA for Physical Design of Digital Systems
For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN).
CENG 5280Quantum Computer Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CSCI 2040 [2]Introduction to Python
Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080.
CSCI 2100Data Structures
Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived.
CSCI 2510Computer Organization
Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2520Data Structures and Applications
Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2720Building Web Applications
Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061.
CSCI 2730Introduction to Blockchain Technologies and Applications
Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102.
CSCI 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software Engineering
Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction to Operating Systems
Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102.
CSCI 3160Design and Analysis of Algorithms
Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440).
CSCI 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles of Programming Languages
Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived.
CSCI 3190Introduction to Discrete Mathematics and Algorithms
Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals of Artificial Intelligence
Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent.
CSCI 3250 [2]Computers and Society
Not for students who have taken ENGG2601.
CSCI 3251 [1]Engineering Practicum
Not for students who have taken ENGG2602.
CSCI 3260Principles of Computer Graphics
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 3270 [2]Advanced Programming Laboratory
1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104.
CSCI 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals of Machine Learning
Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001.
CSCI 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific Computing
Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520).
CSCI 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational Learning Theory
Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440.
CSCI 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical Computational Geometry Algorithms
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5030Machine Learning Theory
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704.
CSCI 5120Advanced Topics in Database Systems
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010.
CSCI 5150Machine Learning Algorithms and Applications
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580.
CSCI 5210Advanced Computer Graphics and Visualization
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5350Advanced Topics in Game Theory
For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728.
CSCI 5370Quantum Computing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5390Advanced GPU Programming
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering.
CSCI 5440Theory of Cryptography
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5540Machine Learning Systems
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5550Advanced File and Storage Systems
For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering.
CSCI 5600Advanced Topics in Distributed Systems
For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735.
CSCI 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced Topics in Graph Mining
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5640Natural Language Processing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5650Graph Neural Networks
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN).
CSCI 5660Advanced Topics of AI for Life Sciences
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5670Computational Imaging Systems and Algorithms
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670.
CSCI 5680Advanced Topics in Flash Memory Technology
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5690Automated Reasoning about Software Systems
For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering.
CSCI 5700Advanced Topics in Software Testing
For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN.
CSCI 6500 [1]Seminars for M.Phil. Studies
For students in MPhil-PhD Computer Science & Engineering.
CSCI 7600 [1]Seminars for Ph.D. Studies
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8003Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8006 [6]Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
CSCI 8012 [12]Thesis Research
For students in MPhil-PhD Computer Science & Engineering.
ELEG 2201Digital Circuits and Computing Systems
Not for students who have taken ENGG2020.
ELEG 2202Fundamentals of Electric Circuits
Not for students who have taken BMEG2300.
ELEG 2310Principles of Communication Systems
Prerequisite: ENGG2030 or ESTR2206.Not for students who have taken ESTR2300 or ENGG2310 or IERG2310.
ELEG 2601 [2]Technology, Society and Engineering Practice
Not for students who have taken ENGG2601 or MASE2601.
ELEG 2602 [1]Engineering Practicum
Not for students who have taken ENGG2602.
ELEG 2700Introduction to Electronic System Design
Not for students who have taken ENGG1100 or ESTR1000.
ELEG 3103Robotic Perception and Intelligence
Not for students who have taken MAEG3060 or ESTR3408 or ESTR3216;Prerequisite: ENGG2030 or ESTR2206 or with the consent of the instructor.
ELEG 3201Microelectronic Devices and Circuits
Not for students who have taken ESTR3200;Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3202Analog Integrated Circuits
Not for students who have taken ELEG3210.Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3207Introduction to Power Electronics
Pre-requisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ELEG 3213Fundamentals of Applied Electromagnetics
Not for students who have taken ELEG3203 or ESTR3214.
ELEG 3214Antennas and Wave Propagation for Wireless Communications
Co-requisite: ELEG3213 or ESTR3214 or consent of the instructor.
ELEG 3301Principles of Semiconductor Devices
Not for students who have taken ELEG2510 or ESTR3204.
ELEG 3302Fundamentals of Photonics
Not for students who have taken ELEG3010.
ELEG 3303Introduction to Optical Communications
Not for students who have taken ELEG3320 or ESTR3206.
ELEG 3503Introduction to Digital Signal Processing
Not for students who have taken ELEG3410.Prerequisite: ENGG2030 or ESTR2206 or consent of the instructor.
ELEG 3601Introduction to Electric Power Systems
Pre-requisite: (ELEG2202 or BMEG2300) and (ENGG1310 or ENGG2520 or ESTR1003), or with consent of the instructor.
ELEG 3701Embedded Systems Design
Not for students who have taken ELEG2401 or IERG3060 or IERG3810;Pre-requisite: (ELEG2201 and ELEG2202)or with the consent of the instructor.
ELEG 3710Electronic Product Design and Development
Not for students who have taken ELEG3700.
ELEG 3910 [2]Undergraduate Research in Electronic Engineering
ELEG 4211CMOS Digital Integrated Circuits Design
Not for students who have taken ELEG4201 or ELEG4260.
ELEG 4214RF Circuits for Wireless Systems
Not for students who have taken ELEG4203 or ELEG4204 or ELEG4213 or ESTR4206 or ESTR4208 or ESTR4220 or ESTR4222.Pre-requisite: ELEG3203 or ELEG3213 or ESTR3214 or consent of the instructor.
ELEG 4215Power Converter Circuits
Not for students who have taken ELEG4205.Prerequisite: ELEG3202 or consent of the instructor.
ELEG 4216Design Methodology of Modern Digital Circuits
Not for students who have taken ELEG3205.
ELEG 4311Physics and Technology of Semiconductor Devices
Not for students who have taken ELEG4301 or ELEG4510 or ESTR4210 or ESTR4216.Prerequisites: ELEG3301 or ESTR3204 or consent of the instructor.
ELEG 4312Micro-optic Devices and Systems
Not for students who have taken ELEG4302.
ELEG 4313Integrated Photonics: Theory, Design and Practice
ELEG 4511Digital Signal Processing and Applications
Not for students who have taken ELEG4501 or ESTR4212 or ESTR4218.Pre-requisite: ELEG3503 or consent of the instructor.
ELEG 4512Digital Image Processing
Not for students who have taken ELEG4502 or IERG4160.
ELEG 4701Intelligent Interactive Robot Practice
Pre-requisite: CSCI1120 or ESTR1100 Introduction to Computing Using C++.
ELEG 4998Final Year Project I
ELEG 4999Final Year Project II
Pre-requisite: ELEG4998.
ELEG 5020Advanced Topics in Integrated Circuits and Systems
For students in MPhil-PhD Electronic Engineering.
ELEG 5030Advanced Topics in Wireless Communications
For students in MPhil-PhD Electronic Engineering.
ELEG 5040Advanced Topics in Signal Processing
For students in MPhil-PhD Electronic Engineering.
ELEG 5050Advanced Topics in Solid State Technology
For students in MPhil-PhD Electronic Engineering.
ELEG 5060Applied Functional Analysis and Approximation Theory
For students in MPhil-PhD Electronic Engineering and MSc Electronic Engineering.
ELEG 5150Processing of Functional Materials
For ELEG RPG & TPG students.
ELEG 5280Analog-Digital ASIC Design
For ELEG major and minor undergraduate and ELEG RPg and TPg students as elective course;Not for students who have taken ELEG5201.
ELEG 5301Photonic Integrated Circuits
For ELEG RPG & TPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5773.
ELEG 5421Audio Signal Processing
For ELEG PG students.For ELEG UG major and minor as elective.Students should have knowledge of Linear Algebra, Probability, C/C++/Python, pattern recognition or machine learning.UG students should have taken ENGG1120, ENGG2760, CSCI1120 or equivalent.
ELEG 5491Introduction to Deep Learning
For ELEG RPG & TPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5040.
ELEG 5520Advanced Topics in Optoelectronics
For students in MPhil-PhD Electronic Engineering.The student should have prior knowledge of semiconductor devices or optoelectronics at the junior undergraduate level before taking this course.
ELEG 5550Micro- and Nano-Fabrication Laboratory
For ELEG RPG students, ELEG undergraduate major and minor students as elective course;Not for students who have taken ELEG5771.
ELEG 5600Advanced Perception for Intelligent Robotics
Elective Course for ELEG RPG, TPG, and senior undergraduate students;Pre-requisite: ELEG3103 or equivalent, or permission of instructor (for UG students only).
ELEG 5620Electronic Engineering Seminar
For students in MPhil-PhD Electronic Erg.
ELEG 5723CMOS Analog IC Design
For ELEG RPG and TPG students as elective course;Not for students who have taken ELEG5210.
ELEG 5731Radio Frequency and Wireless Systems
For students in MSc Electronic Engineering.
ELEG 5753Solar Cells and Beyond for Low-carbon Energy
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5755Optical Communications and Interconnects
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5757Intelligent Wearable Electronics
For students in MSc Electronic Engineering.
ELEG 5758VLSI Digital Signal Processing
For students in MSc Electronic Engineering.
ELEG 5759Innovation, Technology and Management in Modern Engineering
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5760Machine Learning for Multimedia Applications
For students in MSc Electronic Engineering;Not for students who have taken ENGG5202 or ELEG5491.
ELEG 5761Power Converters and Their Grid Applications
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5762Neuromorphic Electronics: Materials, Devices and Circuits for Brain-Like Computation
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5763Processor Design with RISC-V
For students in MPhil-PhD Electronic Erg and MSc Electronic Engineering.
ELEG 5764Artificial Intelligence IC Design
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5765Fundamentals of Automotive Integrated Circuits
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5766AI in Medical Image Analysis
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg.
ELEG 5768CMOS Radio Frequency Integrated Circuits Design
For students in MSc Electronic Engineering.
ELEG 5769Mixed-signal Integrated Circuit Design
For students in MSc Electronic Engineering.
ELEG 5770Advanced Semiconductor Packaging
For students in MSc Electronic Engineering.
ELEG 5771Micro/Nano-Chip Manufacturing Technology
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg:Not for students who have taken ELEG5550.
ELEG 5772Audio Signal Processing
For ELEG PG students.Students should have knowledge of Linear Algebra, Probability, C/C++/Python, pattern recognition or machine learning;Not for students who have taken ELEG5421.
ELEG 5773Photonic Chip Design and Emerging Applications
For students in MSc Electronic Engineering and MPhil-PhD Electronic Erg;Not for students who have taken ELEG5301.
ELEG 5802Research and Development Project
For students in MSc Electronic Engineering.
ELEG 5902Electronic Engineering Internship
For students in MSc Electronic Engineering.
ELEG 8003Thesis Research
For students in MPhil-PhD Electronic Engineering.
ELEG 8006 [6]Thesis Research
For students in MPhil-PhD Electronic Engineering.
ELEG 8012 [12]Thesis Research
For students in MPhil-PhD Electronic Engineering.
ENGG 1820 [1]Engineering Internship
ENGG 3802 [1]Introduction to Engineering Entrepreneurship
ENGG 3803 [2]Engineering Entrepreneurship Development Project
Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor.
ESTR 4300Web-scale Information Analytics
Not for students who have taken CSCI5510 or ENGG4030 or IERG4300.
IERG 4300Web-scale Information Analytics
Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300.

Explanatory Notes

1.AIST/BMEG/CENG/CSCI/EEEN/ELEG/ENER/ENGG/ESTR/FTEC/IERG/MAEG/SEEM courses at 2000 and above level will be included in the calculation of Major GPA for honours classification, excluding courses in Faculty Package and Foundation courses.
[a]i) JUPAS admittees without HKDSE Mathematics Extended Modules I or II are required to take ENGG1040 before they can take ENGG1125.ii) JUPAS admittees with the following HKDSE results do not need to take ENGG1040 and therefore will not be invited for the Mathematics Placement Test: - Level 5** in Mathematics Extended Module I; or - Level 5* or above in Mathematics Extended Module II.iii) Non-JUPAS admittees with the following public examination results do not need to take ENGG1040 and therefore will not be invited for the Mathematics Placement Test: - Grade 6 or above in IB Mathematics Analysis and Approaches (HL); or - Grade 7 in IB Mathematics Applications and Interpretation (HL); or - Grade A* in GCE-AL Further Mathematics.iv) Other admittees except those specified above, are required to attend a Mathematics Placement Test. Students who fail or are absent from the Placement Test will be required to take ENGG1040 before they can take ENGG1125.
[b]The Physics course shall be taken in accordance with students’ HKDSE results or placement test results as follows:i) Students who have attained Level 4 or above in HKDSE Mathematics (Compulsory Part) AND Level 4 or above in Physics or Level 5 or above in Combined Science with Physics Component shall take ENGG1310/ESTR1003 or PHYS1110.ii) Students with HKDSE results but did not attain the academic levels as stated in (i) shall take PHYS1003.iii) Students without HKDSE results shall sit for the placement test arranged by the Department of Physics. Students who pass the placement test shall take ENGG1310/ESTR1003 or PHYS1110. Students who fail or are absent from the placement test shall take PHYS1003.
[c]Students who fail ENGG1125 in Term 1 will have to retake the course in Term 2. The pre-assigned ENGG1130 in Term 2, will therefore be dropped.
[d]Students who have declared to specialize in the ELITE Stream will be required to complete 6 units of ESTR4998 and 4999 to substitute for CENG4998 and 4999.
[e]Details of the entrance and coursework requirements, and declaration procedures for the ELITE Stream can be found at the ELITE website (www.erg.cuhk.edu.hk/erg/elite). Non-ELITE Engineering students may be allowed to take ESTR courses. Students are required to seek approval from their respective Major Programmes for using ESTR courses taken to fulfill the Major Programme Requirement. Details are available at the ELITE website.
[f]Students can use up to 9 units of courses which have been taken to fulfill the requirements of items 1 to 4 above to fulfill the elective requirements of the ELITE Stream. Item 3(b) Research Component Courses will not be included in these 9 units. A full list of ESTR courses is available at the ELITE website.
[g]Students can use AIST/BMEG/CENG/CSCI/EEEN/ELEG/ENGG/IERG/MAEG/SEEM research postgraduate courses at 5000 level to substitute for ESTR courses at 3000 or 4000 level, subject to the approval of the Stream Director and the Associate Dean (Education).
[h]The requirement of at least 3 units of Engineering courses at 5000 level is a requirement for the ELITE Stream only. It should not be interpreted as a requirement of the Major Programme.