Computer Engineering

Bachelor’s Degree


Bachelor of Engineering in Computer Engineering

Study Plan

Year 1 – Semester I

Group Code
Course CodeSubjectCredits
G* MUGE 101General Education for Human Development2 (1-2-3)
G* MUGE 102Social Studies for Human Development3 (2-2-5)
G** MUGE 103Science of Arts for Human Development2 (1-2-3)
G**** LAEN 103-105English Level 1-33 (2-2-5)
CSCMA 115Calculus3 (3-0-6)
CSCPY 110Physics Laboratory I1 (0-3-1)
CSCPY 151General Physics I3 (3-0-6)
CEGCO 111Computer Programming3 (2-3-5)
REGCO 100Introduction to Computer Engineering1 (0-3-1)
Total 19 (13-15-32)

Year 1 – Semester II

Group Code
Course CodeSubjectCredits
G* MUGE 101General Education for Human Development2 (1-2-3)
G* MUGE 102Social Studies for Human Development3 (2-2-5)
G** MUGE 103Science of Arts for Human Development2 (1-2-3)
G**** LAEN 104-106English Level 2-43 (2-2-5)
CSCCH 115General Chemistry3 (3-0-6)
CSCCH 118Chemistry Laboratory1 (0-3-1)
CSCMA 165Ordinary Differential Equations3 (3-0-6)
CSCPY 120Physics Laboratory II1 (0-3-1)
CSCPY 152General Physics II3 (2-3-5)
CEGIE 101Basic Engineering Practice2 (1-3-3)
REGCO 112Programming Techniques3 (2-2-5)
Total 21 (15-18-35)


Year 2 – Semester I

Group Code
Course CodeSubjectCredits
G* LATH 100Art of Using Thai Language for Communication3 (2-2-5)
CEGME 220Engineering Mechanics3 (3-0-6)
CEGCO 200Mathematics for Computer Engineering3 (3-0-6)
CEGCO 201Discrete Mathematics3 (3-0-6)
CEGEE 213Electric Circuit Analysis3 (3-0-6)
REGCO 202Numerical Methods and Applications3 (3-0-6)
REGCO 213Programming Paradigms3 (3-0-6)
Total 21 (20-2-41)


Year 2 – Semester II

Group Code
Course CodeSubjectCredits
GGeneral Education Elective: Humanities and Social Science2 (2-0-4)
G* LATH 100Art of Using Thai Language for Communication3 (2-2-5)
GEGEE 204Statistics Probability and Random Variables3 (3-0-6)
GEGEE 240Engineering Electronics3 (3-0-6)
GEGEE 241Engineering Electronics Laboratory1 (0-3-1)
REGCO 203Statistical Methods for Data Analysis2 (2-0-4)
REGCO 221Data Structures and Algorithms3 (3-0-6)
REGCO 231Digital Circuit Design3 (3-0-6)
REGCO 232Digital Circuit Design Laboratory1 (0-3-1)
REGCO 252System Programming3 (3-0-6)
Total 21 (19-6-40)


Year 3 – Semester I

Group Code
Course CodeSubjectCredits
G*General Education Elective: Humanities and Social Science2 (2-0-4)
GEGID 300Philosophy, Ethics and Laws for Engineers1 (1-0-2)
REGCO 321Database Systems3 (3-0-6)
REGCO 333Computer Architecture3 (3-0-6)
REGCO 334Microprocessor and Interfacing3 (3-0-6)
REGCO 341Software Engineering3 (3-0-6)
REGCO 371Signals and Systems3 (3-0-6)
REGCO 372Data Communication and Computer Networks3 (3-0-6)
Total 21 (21-0-42)

Year 3 – Semester II

Group Code
Course CodeSubjectCredits
GGeneral Education Elective: Languages3 (3-0-6)
REGCO 332Embedded Systems3 (3-0-6)
REGCO 343Software Design3 (3-0-6)
REGCO 351Operating Systems3 (3-0-6)
REGCO 392Project Seminar I1 (0-3-1)
GEGCO/EGEEEngineering Elective3 (3-0-6)
GEGCOComputer Engineering Elective3 (3-0-6)
Total 19 (18-3-37)

Year 3 – Semester Summer

Group Code
Course CodeSubjectCredits
TEGCO 390Engineering Training1 (0-16-1)
Total 1 (0-16-1)

Year 4 – Semester I

Engineering Training 

Group Code
Course CodeSubjectCredits
REGCO 490Project Seminar II1 (0-3-1)
EEGCOComputer Engineering Elective3 (3-0-6)
EEGCOComputer Engineering Elective3 (3-0-6)
FFree Elective3 (3-0-6)
Total 10 (9-3-19)

For Cooperative Education

Group Code
Course CodeSubjectCredits
REGCO 493Cooperative Education8 (0-40-8)
Total 8 (0-40-8)

For Distinction Program

Group Code
Course CodeSubjectCredits
REGCO 490Project Seminar II1 (0-3-1)
EEGCOComputer Engineering Elective3 (3-0-6)
EEGCOComputer Engineering Elective3 (3-0-6)
FFree Elective3 (3-0-6)
EEGCO 6xxComputer Engineering Elective3 (3-0-6)
Total 13 (12-3-25)

Year 4 – Semester II

Group Code
Course CodeSubjectCredits
GEGIE 335Cost Analysis and Budgeting3 (3-0-6)
REGCO 495Capstone Computer Engineering Project3 (0-9-3)

Engineering Training 

Group Code
Course CodeSubjectCredits
FFree Elective3 (3-0-6)
Total 9 (6-9-15)

For Cooperative Education

Group Code
Course CodeSubjectCredits
FFree Elective3 (3-0-6)
FFree Elective3 (3-0-6)
Total 12 (9-9-21)

For Distinction Program

Group Code
Course CodeSubjectCredits
FFree Elective3 (3-0-6)
EEGCO 602Operation Research2 (2-0-4)
EEGCO 6xxComputer Engineering Elective3 (3-0-6)
Total 14 (11-9-25)




คณะวิศวกรรมศาสตร์ มหาวิทยาลัยมหิดล
25/25 ถนนพุทธมณฑล สาย 4 ศาลายา จ. นครปฐม 73170
ที่ตั้งภาควิชา : ตึก 3  ชั้น 2  ห้อง 6267

โทรศัพท์ (02) 889-2138 ต่อ 6251-2
โทรสาร (02) 889-2138 ต่อ 6259

จันทร์ – ศุกร์ 8.30 – 16.30

Department of Computer Engineering

Faculty of Engineering, Mahidol University
25/25 Phuttamonthon 4 Rd. Salaya Nakorn Pathom 73170
Location : No.3 Bldg, 2nd Fl, 6267 room

Tel. (662) 889-2138 ext. 6251-2
Fax. (662) 889-2138 ext. 6259

Mon – Fri 8:30A.M. – 4:30P.M.

Social Info


Course Description

Core Courses

SCCH 115 General Chemistry

Atomic structure, periodic table, chemical bonding, gases, liquids, solids, solutions, colloids, chemical thermodynamics, chemical kinetics, chemical equilibria, ionic equilibria, electrochemistry

SCCH   118     Chemistry Laboratory

General techniques in chemistry, simple experiment in qualitative and quantitative analysis, some experiments that are related to lectures

SCMA  115     Calculus

Limits, continuity, derivatives of algebraic functions, logarithmic functions, exponential functions, trigonometric functions, inverse trigonometric functions and hyperbolic functions, applications of differentiation, indeterminate forms, techniques of integration, improper integrals, applications of integration, numerical evaluation of derivatives and integrals, calculus of real- valued functions of two variables, algebra of vectors in three-dimensional space, calculus of vector-valued functions and applications, straight lines, planes and surfaces in three-dimensional space

SCMA  165     Ordinary Differential Equations

Complex variables, introduction to ordinary differential equations, linear first order differential equations, nonlinear first order differential equations, applications of first order equations, second order linear equations, applications of second order equations, high order linear equations, systems of linear equations, matrices, determinants, vector spaces, linear transformations, solving linear algebraic problems by numerical methods, applications in engineering

SCPY   110     Physics Laboratory I

Basic Physics experiments relating to Physics curriculums taught to the first year students in each faculty

SCPY 120 Physics Laboratory II

Intermediate level of experiments designed to accompany some topics in General Physics I, II (SCPY151, 152)

SCPY   151     General Physics I

Mechanics of system of particles, rigid bodies, rotation rolling and precession, simple harmonic motion, damped oscillation, forced oscillation and resonance, mechanical waves, wave function, waves on strings, standing waves, sound waves and loudness, pressure with in fluids, surface tension, streamline, Bernoulli’s equation, viscosity, Poiseuille’s law, heat and temperature, heat capacity, heat transfer, system of ideal gases, the first law of thermodynamics, heat engines and refrigerator, entropy and the second law, basic statistical mechanics and the third law, electric field and Gauss’s law, electric potential, capacitors, direct current circuits, magnetic field, Biot- Savart equation, Ampere’s law, induction, Faraday’s law, electromotive force, inductors,  alternating current circuits, Maxwell’s equation and electromagnetic waves

SCPY 152 General Physics II

Nature of light, polarization, reflection and refraction, images forming from reflected and refracted light, lens and optical instruments, interference and diffraction of light, special relativity, relativistic speed, relativistic momentum and energy, duality of particle and wave, particle wave mechanics by Schrodinger, examples of particle waves, wave packet and Heisenberg’s uncertainty principle, basic of quantum mechanics, angular momentum and spin, physics of atoms and molecules, crystalline solids and energy band theory, semi-conducting materials, LASER and MASER, NANO technology, semiconductor electronics, nature of the atomic nucleus, decay processes, nuclear models, nuclear radiations, nuclear reactions, detection of radiation and protection, nuclear applications and physics of elementary particles

EGIE          101       Basic Engineering Practice

Basic production engineering processes, equipments or tools used in fitting operation, safety in fitting operations

EGEE   213     Electric Circuit Analysis

*Prerequisite: SCPY 152 

Circuit elements, resistive circuits, Kirchhoff’s laws, node and mesh analysis, source transformation, superposition, Thevenin and Norton’s theorems, properties of capacitor and inductor, first-order and second-order circuits, AC steady-state response, phasor diagram, AC power, power factor correction, three-phase circuit, operational amplifier, frequency response

EGEE   240     Engineering Electronics

*Prerequisite: EGEE 213

Semiconductor devices; device current-voltage and frequency characteristics; analysis and design of diode circuits; analysis and design of BJT, MOS, CMOS and BiCMOS transistor circuits; biasing amplifier circuits; transistor amplifier circuits; operational amplifier and its applications; power supply module

EGEE   241     Engineering Electronics Laboratory

*Prerequisite:  EGEE 240

Laboratory works on electric circuits to illustrate the topics covered in EGEE 240

EGME  220     Engineering Mechanics

*Students must pass the SCPY 151 or decision of the instructor

Statics: force systems; resultant; equilibrium; friction; principle of virtual work, and stability,

Introduction to dynamics

EGCO  111          Computer Programming

Introduction to computer concepts; computer components, hardware and software, hardware and software interaction; electronic data processing (EDP) concepts; introduction to program design and implementation using a high-level language; types and expressions, iterative and conditional control statements, functions, boolean logic, array, and record structures

EGCO  200     Mathematics for Computer Engineering

Engineering applications of ordinary differential equations, system of linear differential equations, linear algebra, mathematical induction, sequences and series of numbers, Taylor series expansions of elementary functions, power series solutions of differential equations, Laplace transformation, vector integral calculus, line integral, volume integral, polar coordinate, calculus of real-valued functions of several variables, Green’s theorem, surface integrals, divergence theorem of Gauss, Stokes’s theorem, engineering applications

EGCO  201     Discrete Mathematics

Propositional logic; mathematical reasoning; basic set theory; relations and functions; sequences and summation; number theory; counting; probability theory; graph theory; trees

Required Courses

EGCO  100   Introduction to Computer Engineering

Introduction to computer engineering; computer systems; hardware and software; operating system; opensource technology: Linux; fundamental of computer network, Internet and World Wide Web (WWW); practical exercises with office application

EGCO  112     Programming Techniques

Prerequisite: EGCO 111

 programming; software-bug prevention, debugging, testing, and source-code maintenance; scope/lifespan of variables; pointers; basic data structure, linked list, binary tree, stack, queue; applications; data abstraction; analysis of algorithms; error handling; object-oriented programming concept

EGCO  202     Numerical Methods and Applications

General principles of numerical calculations; accuracy estimation in numerical calculations; roots of polynomial and nonlinear functions; systems of linear algebraic equations; interpolation; differential equations and integration; numerical solution of ordinary differential equations; curve fitting and approximation of functions; application of numerical methods for engineering problems

EGCO  203     Statistical Methods for Data Analysis

Tools for statistical calculation; design of experiments and the methods for collection and presentation of data; descriptive statistics; elementary probability and normal distributions; estimation of parameters; hypothesis testing; analysis of variance; regression and correlation analysis of frequencies; non-parametric methods

EGCO  213     Programming Paradigms

Introduction to programming paradigms and programming languages; fundamental programming concepts: data types, basic programming statements, functions, memory management; object-oriented programming, concurrent programming, event-driven programming, functional programming

EGCO  221     Data Structures and Algorithms

Analysis of algorithms; abstract data type; linear data structures: linked lists, stacks, queues; non-linear data structures: trees, hash tables, graphs; sorting and searching algorithms; recursion, divide and conquer, dynamic programming, greedy algorithms; introduction to NP-completeness

EGCO  231 Digital Circuit Design

Digital circuit design, basic gates, boolean algebra, combination logic circuit design (e.g. decoder, encoder, multiplexer, and comparator circuits); logic minimization, number systems, binary codes, flip-flops and register; counter circuits, synchronous and asynchronous circuit design; A/D and D/A converters; memory organization

EGCO  232    Digital Circuit Design Laboratory

Digital circuit design laboratory, taken in conjunction with EGCO 231: introduction to digital systems laboratory; basic gates’ operations, boolean algebra, design of adder and subtractor circuits, encoder and decoder circuits; multiplexer and demultiplexer circuits; design of sequential circuits

EGCO  252 System Programming

Basic concepts of system programming; fundamental concepts in process management, concurrency and communication; signals, thread, thread synchronization, semaphores; inter- process communication, connection-oriented communication and connectionless communication

EGCO  321     Database Systems

Data model: entity-relationship, relational; logical and physical database design, query language, data dependencies and normalization, transaction, crash recovery, concurrency control, database security, internet databases

EGCO  332 Embedded Systems

Design and prototype embedded products (for example, PDA, Transaction Terminals, and Industrial PC Controller); processors, chipsets, busses, and I/O devices for high-end embedded systems; embedded operating systems; device drivers and applications for embedded systems; customization of programmable logic devices (CPLD and FPGA) with hardware description language (HDL) for optimal implementation of various industrial applications

EGCO  333 Computer Architecture

Computer components: design of logic circuits; working of and designing register level components used in computer systems; data representation in computer systems; clock signal; datapath design; design of control unit using microprogram (CISC architecture) and logic circuit (RISC architecture); working of computer of each architecture; performance enhancement; pipeline systems of computer; memory systems; principles and working of cache memory; input-output system design; fundamentals of serial and parallel communication; parallel processing architecture; SISD, SIMD, MISD, and MIMD computer architectures; fault tolerance

EGCO  334 Microprocessor and Interfacing

Introduction to microprocessor, microprocessor architecture and instruction set; addressing modes, assembly language, memory interfacing; interrupts and direct memory access; interfacing with I/O devices, microprocessor‘s interfacing programming and applications

EGCO  341 Software Engineering

Software life cycle; need and specification; large-scale software development; scheduling, developing, constructing, testing and maintenance of software system; object-oriented analysis  and design; software reuse; documentation; management of software project; case study of software system in the market

EGCO  343 Software Design

Introduction to software design paradigms; software design fundamentals; system and software requirements; software design tools, and computer aided for software design; business process modeling (BPM); user experience (UX) design; software architecture; service-oriented architecture (SOA); microservices architecture; software project management

EGCO  351     Operating Systems

Contemporary concepts of computer operating systems; Thread; CPU scheduling; definition and details of harmonizing cooperating process; system resources management; deadlock handling; main memory management and design; virtual memory management; auxiliary memory management; file systems; protection and security; introduction to distributed operating systems

EGCO  371 Signals and Systems

Discrete linear systems, discrete signals, sampling processes and theorems, linear difference equations, Discrete-time Fourier Transforms (DTFT), Fast-Fourier Transform (FFT), Laplace and Z transform of discrete signals and its inverse, pulse transfer functions, mapping from S-plane to Z- plane, stability and minimum phases, physical reliability of H(Z), digital filter design, structures for discrete-time systems, and stochastic process; additional information about the DSP hardware supported by numerous manufacturers e.g. Texas Instruments, Analog Devices, and Motorola

EGCO  372     Data Communication and Computer Networks

Introduction to data communication; network topology; OSI and TCP/IP model; ethernet fundamental; principle of physical layer; principle of data transmission and data link control protocol; circuit switching and packet switching; principle of transport layer; principle of network layer; routing fundamentals and protocol; TCP/IP protocol and IP addressing; application layer and wireless network

EGCO  392 Project Seminar I

Seminars and discussions on topics in computer engineering, supervised by the faculty; introduction to research methodology; implementing a simple test case to presentation and discussion of interesting topics in computer engineering

EGCO  490 Project Seminar II

*Prerequisite: EGCO 392

Write a project proposal for an approved topic, for further research and implementation in the Capstone Computer Engineering Project course

EGCO  495     Capstone Computer Engineering Project

*Prerequisite: EGCO 392 

Capstone computer engineering projects that incorporate the knowledge gained from various courses in this curriculum in order to develop a workpiece and controlled by teachers in the department; the project must be completed; a complete project report and an oral examination

Elective Courses

EGCO  375 Internetworking Technologies I

Theoretical and practical aspects of routing and switching technologies, including internetworking models, internet protocol, routing technologies, switching technologies, virtual local area network, wide area network, and traffic management; laboratory work

EGCO  475     Internetworking Technologies II

*Prerequisite: EGCO 375 

Theoretical and practical aspects of advanced routing and switching technologies, including advanced IP addressing, advanced routing, multicast routing, IPv6, advanced spanning tree concepts; inter-VLAN routing, gateway redundancy technologies, wireless client access, voice over IP concepts, security in a switched Network; laboratory work

EGCO  476     Cryptography and Network Security

*Prerequisite: EGCO 372 

Introduction to the basic theories and techniques of cryptography; symmetric and asymmetric encryption; cryptanalysis techniques; the security in computer network; security threats and vulnerabilities; authentication mechanisms; identification schemes; security in operating system and application; firewall; the intrusion detection system

EGCO  477     Penetration Testing and Prevention

*Prerequisite: EGCO 372 

Process of penetration testing; collection and analysis of computer network vulnerabilities; tools for penetration testing; ethics of penetration testing processes; summarizing and reporting the result from penetration testing; planning and design of the prevention systems to protect computer network form vulnerabilities

EGCO  478 Introduction to Digital Forensics

Introduction to the basic of digital forensics; data collection and investigation from the operating system such as Windows and UNIX; computer files system storage; collecting and analyzing network traffic; data analysis and validation; digital forensic tools

EGCO  404     Theory of Computation

Introduction to structure of languages and characteristic of languages: formal languages, regular languages and non-regular languages; context-free grammar and context-free languages; describe the characteristic of state machines used to check the membership of languages: finite state machines, transducers, state transition machines, non-deterministic finite state machines, push-down state machines and Turing machines; advanced theory of computation: Kleene’s theorem, recursively enumerable languages, decision problems

EGCO  425 Data Mining

Knowledge discovery in database; data preparation, data visualization, and data transformation; clustering, association analysis, classification and ensembled classification; metrics and evaluation; data warehouse, online analytical processing (OLAP); effects of data mining, current technology and trend, applications of data mining

EGCO  466   Big Data Processing

Theory and techniques for managing big data, managing big data; distribution system for big data, relationship analysis for big data, big data visualization, trends and applications for big data

EGCO  467     Natural Language and Speech Processing

Algorithms for the processing of linguistic information and the underlying computational properties of natural languages; morphological, syntactic, and semantic processing from a linguistic and an algorithmic perspective, modern quantitative techniques in NLP: using large corpora, statistical models for acquisition, representative systems

EGCO  301     Computer Graphics

Principles of computer graphics, the graphic systems and models, graphic programming, graphic devices and their controls; color model, geometric objects and transformations, viewing, shading, clipping, hidden-surface removal

EGCO  486 Image Processing

Image processing systems, visual perception and mathematical image models, sampling and quantization, image transformation; Fourier transform convolution and correlation, image enhancement; histogram equalization, image smoothing, image sharpening, homomorphic image models

EGCO  487     Computer Vision                   

Introduction to programming for computer vision; fundamentals of computer vision, 3D geometrical transformations; stereo imaging, perspective camera, camera calibration, camera imaging model, image registration, wavelet transform, 3D modeling; image segmentation, feature detection and matching, face recognition, object recognition, content-aware image resizing

EGCO  405       Mechatronics

The mechatronic system as an integration of mechanical, electrical, the computer and control system engineering; mechatronic devices such as hard drive or others; laboratories or projects will be the core of the course; electronic feedback, power amplifier, digital logic, encoder interfacing, motor control, sensor and real time control

EGCO  461 Artificial Intelligence

Foundations of artificial intelligence; solving problems by searching, knowledge representation, first-order logic, inference in first-order logic, planning, probabilistic reasoning systems; introduction to Prolog, natural language processing, genetic algorithm, and machine learning techniques

EGCO  463 Pattern Recognition

Preprocessing for data recognition: features extraction, classification or linear techniques for recognition; parametric and nonparametric techniques; Bayesian classifiers, methods, neural networks, hybrid method, learning techniques; applications in pattern recognition

EGCO  465     Fuzzy Sets and Neural Networks

Basic principles of fuzzy logic, fuzzy numbers, fuzzy sets, fuzzy relations, fuzzy rules and reasoning, the fuzzy inference systems, the fuzzy system design, structure and feature of various artificial neural networks, supervised and non-supervised learning, classification, fuzzy techniques and neural networks application in engineering

EGCO  431 Internet of Things

IoT architectures, communication technologies for IoT; technologies behind IoT, IoT platform; how they are integrated to form IoT systems

EGCO  426     Web Application Architecture

*Prerequisite: EGCO 321 

Fundamental concepts of Web application development from a managerial perspective; extensible markup language (XML) and hypertext markup language (HTML) technology; fundamental principles of architecture, process, and elements of Web applications; Web services application development; mobile applications such as geographical information systems and social networks

EGCO  427     Web Programming

*Prerequisite: EGCO 321 

Semi-structured data models for the web (such as XML), semi-structured data management, associated query languages and query systems for web data; query processing and optimization over semi-structured data as well as over multiple distributed sources; data integration over the Web, warehousing of web data; mappings from relational and object-oriented database servers to web data; discussions on some novel data-intensive applications on the web such as electronic commerce, digital libraries, and distance education relating to web database issues

EGCO  428         Mobile Device Programming

Fundamental of the mobile device programming; concept of mobile device technology; basic mobile device programming; user-interface design; database connection; remote sensors controlling; mobile web services; develop a prototype for the mobile device application for with notification services

EGCO  451 Cloud Computing

Fundamental concepts of cloud computing; fundamental principles of the cloud architecture, web applications development on cloud; web services on cloud, service models for cloud computing; virtualization technology for cloud computing, computing services, cloud computing services

EGCO  380-389   Selected Topics in Computer Engineering (…)

Selected topics in current computer engineering technologies, which could be offered by the department or propose to be offered by other departments; the title of the topic is indicated in the parenthesis part of the course title

EGCO  393-399    Special Topics in Computer Engineering (…)

Special topics in current computer engineering technologies, which could be offered by the department or propose to be offered by other departments; the title of the topic is indicated in the parenthesis part of the course title

EGCO  390 Engineering Training

Practical training in an industrial factory or an organization with computer-related systems, computer control systems, or systems using computer processing; the training with the minimum period of 240 hours, takes place in the summer semester; students must present a paper to the department, including the report of the training outcome from the employer; the training evaluation will be graded as satisfactory (“S”) or unsatisfactory (“U”).

EGCO  493 Cooperative Education

The integration and adaptation of all classroom knowledge into the real practice in corporate environment; gain working experience and teamwork experience under the supervision of mentors from the companies and advisors from the department, in order to prepare the students for transition from school to work after graduation; the evaluation will be graded as satisfactory (“S”) or unsatisfactory (“U”).