Faculty of Engineering 187 COMPUTER ENGINEERING (INTERNATIONAL PROGRAM) The Computer Engineering program was first established by Department of Computer Engineering, Faculty of Engineering, King Mongkut s University of Technology Thonburi, to offer a four year program leading to the bachelor of Engineering in Computer Engineering (International Program). The international program in Computer Engineering has a joint degree with two international universities : 1. Department of Computer Engineering in the Faculty of Engineering, University of Missouri Columbia (MU), the United State of America and 2. Department of Electronic System Engineering in the Faculty of Engineering, University of Regina (RU), Canada. The international program is intended to provide a solid foundation for students in order to cope with the rapidly changing computing field. In the first two years, emphasis is given on general science and basic engineering courses at KMUTT. Students can choose to study the remaining two years at either KMUTT, University of Missouri-Columbia (MU), or University of Regina (RU). To be eligible to transfer to the University of Missouri-Columbia or University of Regina, a student must: 1. Have completed the fourth semester at KMUTT. 2. Earn 2.75 or higher cumulative GPA. 3. Have a TOEFL score of 500 or higher. Courses completed at KMUTT and used towards a Bachelor of science degree in Computer Engineering or Computer Science at MU will be accepted if grade is C or better.students who spend their last two years in an affiliated university, they may receive two bachelors, one from KMUTT and one from MU or RU. Students who spend their last two years at KMUTT will solely receive a bachelor degree from KMUTT.
188 Faculty of Engineering COMPUTER ENGINEERING (INTERNATIONAL PROGRAM) PROGRAM TITLE Bachelor of Engineering Program in Computer Engineering (International Program) DEGREE TITLE FROM KMUTT Bachelor of Engineering (Computer Engineering) B. Eng. (Computer Engineering) DEGREE TITLE FROM UNIVERSITY OF MISSOURI COLUMBIA (MU)Bachelor of Science in Electrical and Computer Engineering B. S. (Electrical and Computer Engineering) DEGREE TITLE FROM UNIVERSITY OF REGINA (RU) Bachelor of Engineering in Electronic Systems Engineering B. Eng. (Electronic Systems Engineering) Note : Students who spend their last two years in an affiliated university, they may receive two bachelors, one from KMUTT and one from MU or RU, which is offered the bachelor degree from KMUTT and MU or RU. Students who spend their last two years at KMUTT will solely receive a bachelor degree from KMUTT. PROGRAM STRUCTURE 1. General Education Courses 35 Credits - Social Sciences and Humanities 13 Credits - Linguistics 9 Credits - Sciences and Mathematics 13 Credits 2. Field of Specialization Courses 103 Credits - Basic Engineering 21 Credits - Compulsory Computer Engineering 70 Credits - Elective Courses 12 Credits 3. Free Elective Courses 6 Credits Total Program Credits 144 Credits
Faculty of Engineering 189 Curriculum 1. General Education Courses 35 Credits 1.1 Social Sciences and Humanities 13 Credits SSC 101 Physical Education 1 (0-2 - 2) SSC 210 Man and Ethics for Quality of Life 3 (2-2 - 6) SSC 260 Introduction to Social Sciences 3 (3-0 - 6) SSC 290 Environment and Development 3 (3-0 - 6) SSC xxx Social Science and Humanities Elective 3 (3-0 - 6) The student select 1 Course from the following Courses SSC 162 Society and Culture 3 (3-0 - 6) SSC 211 General Philosophy 3 (3-0 - 6) SSC 212 Introduction to Ethics 3 (3-0 - 6) SSC 213 Introduction to Logic 3 (3-0 - 6) SSC 214 Ethics and Reasoning 3 (3-0 - 6) SSC 221 History of Civilization 3 (3-0 - 6) SSC 231 General Psychology 3 (3-0 - 6) SSC 241 Principle of Political Science 3 (3-0 - 6) SSC 251 Principles of Jurisprudence 3 (3-0 - 6) SSC 261 Human and Society 3 (3-0 - 6) SSC 271 Managerial Accounting 3 (3-0 - 6) SSC 272 Production Cost 3 (3-0 - 6) SSC 281 Economics 3 (3-0 - 6) SSC 291 Man and Environment 3 (3-0 - 6) SSC 311 Buddhist Philosophy 3 (3-0 - 6) SSC 331 Human Relations 3 (3-0 - 6) SSC 333 Industrial and Organizational Psychology 3 (3-0 - 6) SSC 334 Psychology of Adjustment 3 (3-0 - 6) SSC 335 Managerial Psychology 3 (3-0 - 6) SSC 336 Art and Living 3 (3-0 - 6) SSC 351 Labour Law 3 (3-0 - 6) SSC 371 Marketing 3 (3-0 - 6) SSC 372 Personnel Management 3 (3-0 - 6) SSC 373 Management for Small and Medium Enterprises 3 (3-0 - 6) 1.2 Linguistics 9 Credits LNG 101 Fundamental English I 3 (2-2 - 6) LNG 102 Fundamental English II 3 (2-2 - 6) LNG 103 Fundamental English III 3 (2-2 - 6) LNG 104 Content based Language Learning I 3 (2-2 - 6) Note : 1. Student must earn core courses 9 credits. 2. Student must to pass a Placement Test to divide two group. Group A: LNG 101, LNG 102 and LNG 103 Group B: LNG 102, LNG 103 and LNG 104
190 Faculty of Engineering 1.3 Sciences and Mathematics 13 Credits MTH 101 Calculus and Analytic Geometry I 3 (3-0 - 6) MTH 102 Calculus and Analytic Geometry II 3 (3-0 - 6) CHM 103 Fundamental Chemistry 3 (3-0 - 6) PHY 103 General Physics I 3 (3-0 - 6) PHY 191 General Physics Laboratory I 1 (0-3 - 2) 2. Field of Specialization Courses 103 Credits 2.1 Basic Engineering 21 Credits CPE 100 Computer Programming for Engineers 3 (2-2 - 6) MTH 201 Linear Algebra and Vector Calculus 3 (3-0 - 6) MTH 202 Differential Equations 3 (3-0 - 6) MTH 302 Statistics for Engineers 3 (3-0 - 6) MEE 111 Engineering Drawing 3 (2-3 - 4) PRE 290 Industrial Organization and Management 3 (3-0 - 6) PRE 380 Engineering Economics 3 (3-0 - 6) 2.2 Compulsory Computer Engineering 70 Credits CPE 101 Computer Workshop 2 (0-4 - 4) CPE 102 Discrete Mathematics for Computer Engineers 3 (3-0 - 6) CPE 130 Algorithms and Data Structures 3 (3-0 - 6) CPE 200 Signals and Systems 3 (3-0 - 6) CPE 210 Digital Circuit Design I 3 (3-0 - 6) CPE 211 Digital Circuit Design II 3 (3-0 - 6) CPE 212 Digital Circuit Laboratory 2 (0-4 - 4) CPE 220 Electronic Circuit Analysis 3 (3-0 - 6) CPE 221 Basic Electronics for Computer Engineers 3 (3-0 - 6) CPE 230 Numerical Analysis for Computer Engineer 3 (2-2 - 4) CPE 231 Principle of Programming Languages 3 (3-0 - 6) CPE 310 Computer Architectures 3 (3-0 - 6) CPE 311 Microprocessor Based System Design 3 (3-0 - 6) CPE 312 Computer System and Interfacing Lab. 2 (0-4 - 4) CPE 320 Automatic Control Systems 3 (3-0 - 6) CPE 321 Basic Electronics Laboratory 2 (0-4 - 4) CPE 330 Operating Systems 3 (3-0 - 6) CPE 331 Software Engineering 3 (3-0 - 6) CPE 332 Database Systems 3 (3-0 - 6) CPE 333 Computer Graphics 3 (3-0 - 6) CPE 340 Principles of Communications 3 (3-0 - 6) CPE 341 Data Communications and Computer Networks 3 (3-0 - 6) CPE 342 Data Communications Laboratory 2 (0-4 - 4) CPE 400 Computer Engineering Project I 1 (0-2 - 3) CPE 401 Computer Engineering Project II 3 (0-6 - 9) CPE 300 Industrial Training 2 (S/U)
Faculty of Engineering 191 2.3 Elective Courses 12 Credits CPE 451 Selected Topics in Computer Engineering I 3 (3-0 - 6) CPE 452 Selected Topics in Computer Engineering II3 (3-0 - 6) CPE 460 Introduction to VLSI Technology 3 (3-0 - 6) CPE 461 VLSI System Design 3 (3-0 - 6) CPE 462 Network Synthesis for Analog VLSI 3 (3-0 - 6) CPE 463 Analog VLSI for Signal Processing I 3 (3-0 - 6) CPE 464 Analog VLSI for Signal Processing II 3 (3-0 - 6) CPE 465 Digital Signal Processing I 3 (3-0 - 6) CPE 466 Digital Signal Processing II 3 (3-0 - 6) CPE 467 Fast Transform for Digital Signal Processing 3 (3-0 - 6) CPE 470 Parallel and Distributed Processing 3 (3-0 - 6) CPE 471 Embedded System Design 3 (3-0 - 6) CPE 480 Formal Software Specification and Verifications 3 (3-0 - 6) CPE 481 Object-Oriented Design 3 (3-0 - 6) CPE 482 System Analysis and Design 3 (3-0 - 6) CPE 483 Compiler Design 3 (3-0 - 6) CPE 484 Computation Theory 3 (3-0 - 6) CPE 485 Digital Image Processing and Computer Vision 3 (3-0 - 6) CPE 486 Natural Language Processing 3 (3-0 - 6) CPE 487 Source Coding for Multimedia System 3 (3-0 - 6) CPE 488 Artificial Intelligence 3 (3-0 - 6) CPE 490 Principle of Wireless Communications 3 (3-0 - 6) CPE 491 Mobile and Personal Communications 3 (3-0 - 6) CPE 493 Error Control Coding for Digital Communication 3 (3-0 - 6) CPE 494 Computer and Information Security 3 (3-0 - 6) 3. Free Elective Courses 6 Credits XXX xxx Free Elective 3 (3-0 - 6) XXX xxx Free Elective 3 (3-0 - 6) At least six credits of free electives can be chosen from any course offered by King Mongkut s University of Technology Thonburi.
192 Faculty of Engineering STUDY PLAN? First Year First Semester Cr (Le - Pr - SS) CHM 103 Fundamental Chemistry 3 (3-0 - 6) CPE 100 Computer Programming for Engineers 3 (2-2 - 6) LNG 102 Fundamental English II 3 (2-2 - 6) CPE 101 Computer Workshop 2 (0-4 - 4) MTH 101 Calculus and Analytic Geometry I 3 (3-0 - 6) PHY 103 General Physics I 3 (3-0 - 6) PHY 191 General Physics Laboratory I 1 (0-3 - 2) Total 18 (13-11 - 36) Hours / Week = 60 Second Semester Cr (Le - Pr - SS) CPE 102 Discrete Mathematics for Computer Engineers 3 (3-0 - 6) CPE 130 Algorithms and Data Structures 3 (3-0 - 6) LNG 103 Fundamental English III 3 (2-2 - 6) MEE 111 Engineering Drawing 3 (2-3 - 4) MTH 102 Calculus and Analytic Geometry II 3 (3-0 - 6) SSC 210 Man and Ethics for Quality of Life 3 (2-2 - 6) Total 18 (15-7 - 34) Hours / Week = 56? Second Year First Semester Cr (Le - Pr - SS) CPE 210 Digital Circuit Design I 3 (3-0 - 6) CPE 220 Electronic Circuit Analysis 3 (3-0 - 6) CPE 230 Numerical Analysis for Computer Engineer 3 (2-2 - 4) LNG 104 Content based Language Learning I 3 (2-2 - 6) MTH 201 Linear Algebra and Vector Calculus 3 (3-0 - 6) PRE 380 Engineering Economics 3 (3-0 - 6) Total 18 (16-4 - 34) Hours / Week = 54
Faculty of Engineering 193 Second Semester Cr (Le - Pr - SS) CPE 200 Signals and Systems 3 (3-0 - 6) CPE 211 Digital Circuit Design II 3 (3-0 - 6) CPE 212 Digital Circuit Laboratory 2 (0-4 - 4) CPE 221 Basic Electronics for Computer Engineers 3 (3-0 - 6) CPE 231 Principle of Programming Languages 3 (3-0 - 6) MTH 202 Differential Equations 3 (3-0 - 6) SSC 210 Physical Education 1 (0-2 - 2) Total 18 (15-6 - 36) Hours / Week = 57? Third Year First Semester Cr (Le - Pr - SS) CPE 310 Computer Architectures 3 (3-0 - 6) CPE 320 Automatic Control Systems 3 (3-0 - 6) CPE 321 Basic Electronics Laboratory 2 (0-4 - 4) CPE 340 Principles of Communications 3 (3-0 - 6) SSC 260 Introduction to Social Sciences 3 (3-0 - 6) MTH 302 Statistics for Engineers 3 (3-0 - 6) Total 17 (15-4 - 34) Hours / Week = 53 Second Semester Cr (Le - Pr - SS) CPE 311 Microprocessor Based System Design 3 (3-0 - 6) CPE 312 Computer System and Interfacing Lab. 2 (0-4 - 4) CPE 330 Operating Systems 3 (3-0 - 6) CPE 331 Software Engineering 3 (3-0 - 6) CPE 332 Database Systems 3 (3-0 - 6) CPE 341 Data Communications and Computer Networks 3 (3-0 - 6) Total 17 (15-4 - 34) Hours / Week = 53
194 Faculty of Engineering Summer Session Cr (Le - Pr - SS) CPE 300 Industrial Training 2 (S/U)? Fourth Year First Semester Cr (Le - Pr - SS) CPE 342 Data Communications Laboratory 2 (0-4 - 4) CPE 400 Computer Engineering Project I 1 (0-2 - 3) CPE xxx Computer Engineering Elective I 3 (3-0 - 6) CPE xxx Computer Engineering Elective II 3 (3-0 - 6) PRE 290 Industrial Organization & management3 (3-0 - 6) SSC 290 Environment and Development 3 (3-0 - 6) XXX xxx Free Elective 3 (3-0 - 6) Total 18 (15-6 - 37) Hours / Week = 58 Second Semester Cr (Le - Pr - SS) CPE 401 Computer Engineering Project II 3 (0-6 - 9) CPE 333 Computer Graphics 3 (3-0 - 6) CPE xxx Computer Engineering Elective III 3 (3-0 - 6) CPE xxx Computer Engineering Elective IV 3 (3-0 - 6) SSC xxx Social Science or Humanities Elective 3 (3-0 - 6) XXX xxx Free Elective 3 (3-0 - 6) Total 18 (15-6 - 39) Hours / Week = 60
Faculty of Engineering 195 COURSE DESCRIPTIONS CPE 100 Computer Programming for Engineers 3 (2-2 - 6) Prerequisite : none Lecture: Introduction to the components of a computer system and program development including flowcharts, data and structure variables, mathematical and logical operations, input/output, user interfacing, structured programming, decisions and repetitive loop structures, subprograms with functions and procedures, structure type declarations, arrays, records, file processing. Lab: Design, development and testing of programs to solve case problems related to that given in the lectures. CPE 101 Computer Workshop 2 (0-4 - 4) Prerequisite : none Workshop experience in electronics and computer components. Issues covered include how electronic components work, soldering techniques, circuit board design and assembly, computer simulation of electronic circuits, assembly of personal computers, the functions of each computer component, fault detection, computer board and memory installation, software and network systems installation. CPE 102 Discrete Mathematics for Computer Engineers Prerequisite : none 3 (3-0 - 6) Basics of logic, relations, mathematical reasoning and logical reasoning, prepositional logic, and predicate logic. Introduction to logic programming, graphs, trees, finite automata, context-free language, and the Turing machine. Introduction to the complexity analysis of algorithms. and to number theory. CPE 130 Algorithms and Data Structures 3 (3-0 - 6) Prerequisite : CPE 100 Introduction to data representation and structure, array, linked-listed, stacks and queues, trees, graphs, analysis of algorithms, recursion, sorting and searching algorithms, hashing, heap tree, binary search tree, AVL tree, breadth first search, dept first search, string processing, and data compression. CPE 200 Signals and Systems 3 (3-0 - 6) Prerequisite : MTH 201 Introduction to signal and system. Continuous -time signals and systems: mathematical representation of signals, frequency-domain representation of signals, time-
196 Faculty of Engineering domain representation of systems, transform-domain representation of systems and continuous-time system architecture. Discrete-time signals and systems: mathematical representation of signals, frequency-domain representation of signals, time-domain representation of systems, transformdomain representation of systems and discrete-time system architecture. CPE 210 Digital Circuit Design I 3 (3-0 - 6) Prerequisite : none Review of Number systems, codes, logic gates, Boolean algebra, logic functions, multi-level combinational logic and simplification, flip-flops and related devices, sequential logic design and optimization, types of registers and counters including design and implementation, programmable and steering logic, PALs and PLAs, multiplexers and selectors, logic design in computer simulation program. CPE 211 Digital Circuit Design II 3 (3-0 - 6) Prerequisite : CPE 210 Integrated-circuit logic families TTL, ECL, MOS, CMOS. Flip-flops timing consideration, flip-flop synchronization, arithmetic circuits, binary adder, subtractor and multiplier, Arithmetic Logic Unit (ALU) design, interfacing with the analog systems, D/A and A/D conversions, MSI logic circuits, introduction to microprocessor and embedded system design. CPE 212 Digital Circuit Laboratory 2 (0-4 - 4) Prerequisite : CPE 210 Experiments on digital circuit design using both simulation programs and actual circuits. The experiments consist of basic logic gates, clock generation circuits, counter circuits, encoder circuits, decoder circuits, shift register current, arithmetic circuits, multiplexer and demultiplexer circuits, digital to analog and analog to digital circuit design and implementation of Field Programmable Gate Array (FPGA) circuits. CPE 220 Electric Circuit Analysis 3 (3-0 - 6) Prerequisite : MTH 101 Electrical units and definitions, fundamental laws, natural response, forced response, complete response, power, RMS value, network function and network theory, frequency response, complex locus, resonance, mutual
Faculty of Engineering 197 inductance and transformer, Fourier analysis, Laplace transform and polyphase circuit. CPE 221 Basic Electronics for Computer Engineers Prerequisite : CPE 220 3 (3-0 - 6) Introduction to semiconductor devices. Characteristics and models of P-N junction diode, bipolar junction transistor (BJT), field effect transistor (FET). DC biasing and AC small signal analysis of BJT and FET amplifiers. Multistage amplifier, frequency response consideration, large signal amplifier, feedback amplifier and oscillator, differential amplifier, operational amplifier and some useful circuits, basic DC power supply. CPE 230 Numerical Analysis for Computer Engineers Prerequisite : CPE 100 3 (2-2 - 4) Number and error analysis, root of equations, systems of linear algebraic equations, curve fitting, numerical differentiation and integration, and ordinary differential equations. Design and implementation on a digital computer and using application programs. CPE 231 Principles of Programming Languages 3 (3-0 - 6) Prerequisite : CPE 100 The four major programming paradigms including structured (imperative) programming with Pascal and C, object-oriented programming with C++ and Java, functional programming with Lisp and Scheme, and logic programming with Prolog are covered. Programming assignments in C, C++, Java, Prolog, and Lisp are given. Concepts of assembly language, interpreters, compilers, context free grammar, and program correctness proof methods are also covered. CPE 300 Industrial Training 2 (0-35 -0) Practical training in a company or industry during the summer for at least six weeks. CPE 310 Computer Architectures 3 (3-0 - 6) Prerequisite : CPE 210 Introduction to computer architecture, computer design methodology, processor organization, control unit, memory system and I/O systems. CPE 311 Microprocessor Based System Design 3 (3-0 - 6) Prerequisite : CPE 310 Microprocessor architecture, internal operations, structure of microprocessors, memory and Input/Output interfacing. Assembly language programming. Application of microprocessors to physical control and data communications.
198 Faculty of Engineering CPE 312 Computer System and Interfacing Laboratory Prerequisite : CPE 312 2 (0-4 - 4) Experiments on microcomputer and microcontroller interfacing with physical devices. Special projects on microcontroller applications. CPE 320 Automatic Control Systems 3 (3-0 - 6) Prerequisite : CPE 200 Transfer functions, block diagrams and signal flow graphs. Mathematical modeling of physical systems. Time-domain analysis of control systems, the root-locus technique, the frequency-domain analysis of control systems. Time and frequency-domain compensations of control systems. Introduction to state-variable analysis for modern control systems. CPE 321 Basic Electronics Laboratory 2 (0-4 - 4) Prerequisite : CPE 221 Using some electronic measuring equipment with safety considerations to experiment on some useful electronic circuits that coincide with the CPE 220 course. CPE 330 Operating Systems 3 (3-0 - 6) Prerequisite : CPE 310 Theoretical aspects of Operating systems: memory management, process management, I/O management, and information management. Issues on Job Control Language, Assembler, Loader, and Linker are covered. Some operating systems, compilers, interpreters and utilities are studied in detail. CPE 331 Software Engineering 3 (3-0 - 6) Prerequisite : CPE 330 The six stages of the software lifecycle: requirements analysis, specifications, design implementation, testing, and maintenance. Classic software engineering papers. Emphasis will be placed on software measurement, project management, and various design paradigms such as object-oriented design and real-time systems design. CPE 332 Database Systems 3 (3-0 - 6) Prerequisite : CPE 230 Introduction to the logical and physical organization of databases, data base storage structure, memory devices management, hierarchies and V.M. addressing and indexing techniques. Physical representation of large structures. Data base design approaches, design principles, normal forms, data independence, and relational databases. Class projects will involve the actual implementation of a relatively large database project.
Faculty of Engineering 199 CPE 333 Computer Gr aphics 3 (3-0 - 6) Prerequisite : MTH 201 Introduction to the algorithms and hardware used in computer graphics, both 2-D and 3-D. Topics include the drawing of lines and other graphical primitives, offlinetransformations, line and polygon clipping techniques, 3-D viewing, representation of curves and surfaces, solid modeling, hidden surface removal algorithms, object linear transformations, illumination and shading models, ray tracing, and animation. CPE 340 Principles of Communication 3 (3-0 - 6) Prerequisite : CPE 200 Introduction to modern communication systems, linear systems and digital signaling, baseband pulse and digital signaling, bandpass signaling principles and circuits. Also included are topics in AM and FM systems, and bandpass digital signaling. The standards and terminology for computer communications are covered with the analysis of case studies on present-day communication systems. CPE 341 Data Communications and Computer Networks Prerequisite : CPE 310 3 (3-0 - 6) Protocols and Standards, Introduction to Data Communication and Computer Network, Basic Concepts and OSI Model, Signals, Encoding and Modulating, Transmission Media, Multiplexing, Error Detection and Correction, Data Link Control/Protocols, Local Area Networks (LAN): Ethernet, Token Bus, Token Ring, Fiber Distributed Data Interface, Switching Theory: Circuit Switching, Packet Switching and Message Switching, Integrated Services Digital Network (ISDN), Networking and Internetworking Devices, etc. Network Security. CPE 400 Computer Engineering Project I 1 (0-2 - 3) Prerequisite : none Students work in groups of 1-3 persons under the supervision of faculty members. Each group is encouraged to develop and design a systematic method to investigate and solve computer and information technology related problems that demand theoretical backing. The objective is to have students gain experience in systems development for a relatively large size project. CPE 401 Computer Engineering Project II 3 (0-6 - 9) Prerequisite : CPE 400 Continuation and the completion of the project initiated in CPE 400.
200 Faculty of Engineering CPE 451 Selected Topics in Computer Engineering I 3 (3-0 - 6) Topics of current interest in Computer Engineering. CPE 452 Selected Topics in Computer Engineering II 3 (3-0 - 6) Topics of current interest in Computer Engineering. CPE 460 Introduction to VLSI Technology 3 (3-0 - 6) Prerequisite : CPE 313 Integrated Circuit design technology, basic electronics and overview of the fabrication processes. Introduction to symbolic design, designing Leaf-Cell devices. NMOS and CMOS device characteristics. Introduction to VLSI CAD tools, designing modulelevel devices, clocking, simulation and timing verification, power and ground routing, data buses and control signal routing, placing and connecting I/O pads. Case studies of some integrated circuit building blocks are covered. CPE 461 VLSI System Design 3 (3-0 - 6) Prerequisite : CPE 460 Overview of VLSI technology, problem analysis and solutions. Hierarchical decomposition of concurrent systems, control strategies, floor planning, CMOS and NMOS design differentiation, design methodology using advanced IC CAD tool set, combination logic minimization, synthesis, RAM and ROM design, finite state machine realization, clock design, high drive circuitry and boot-strapping techniques, module generation, data path design and synthesis. Testability and testing in integrated circuits. Interfacing to a foundry. CPE 462 Network Synthesis for Analog VLSI 3 (3-0 - 6) Prerequisite : CPE 320 Network functions and their reliability, filter concepts, approximation, sensitivity analysis, passive network synthesis, active network synthesis and the effect of real operational amplifiers on active filters. Introduction to current-mode network synthesis. CPE 463 Analog VLSI for Signal Processing I 3 (3-0 - 6) Prerequisite : CPE 220 and CPE 320 Integrated circuit devices and modeling. Bipolar, CMOS, BiCMOS, technologies. Basic current mirror and single
Faculty of Engineering 201 stage amplifier. Basic OpAmp design and compensation. Voltage reference circuit analysis and design CPE 464 Analog VLSI for Signal Processing II 3 (3-0 - 6) Prerequisite : CPE 462 and CPE 463 Comparator, sample and hold, and switched capacitor circuit. Fundamentals of data converters. Voltage-mode and current-mode continuous-time filters. CPE 465 Digital Signal Processing I 3 (3-0 - 6) Prerequisite : MTH 302 The representation, analysis and design of discrete time signals and systems. Z-Transforms and the Discrete Fourier Transforms. The Fast Fourier Transform (FFT) algorithm. Time and frequency domain design techniques for recursive (IIR) and non-recursive (FIR) systems. Additional topics include parametric signal modeling, power spectrum estimation, and applications to speech and image processing. CPE 466 Digital Signal Processing II 3 (3-0 - 6) Prerequisite : CPE 465 Topics in digital signal analysis and filtering including hardware implementation, speech synthesis and recognition, multidimensional transforms, random-signal concepts, design methods and computer aids for analysis and design. CPE 467 Fast Transform for Digital Signal Processing Prerequisite : CPE 420 3 (3-0 - 6) The concepts and theories of digital signal transformations needed for frequency analysis and joint time-frequency analysis including their applications: Fourier Transform, Discrete Fourier Transform, Fast Fourier Transform, Discrete Cosine Transform, Short-Time Fourier Transform, and Wavelet Transform. CPE 470 Parallel and Distributed Processing 3 (3-0 - 6) Prerequisite : CPE 310 This course describes fundamental methods by which parallel programs are assembled. Important concepts for program design, such as, partitioning, mapping, and granularity are discussed. Concepts will be applied to both shared memory and distributed memory systems. CPE 471 Embedded Systems 3 (3-0 - 6) Prerequisite : CPE 310 This courses describes embedded processors and real-time environment. Concepts of real-time system modeling, fault tolerant systems, data-acquisition systems, and microprocessor-based control systems are also discussed.
202 Faculty of Engineering Case studies on current issues related to embedded systems are also covered. CPE 480 Formal Software Specification and Verifications Prerequisite : CPE 102 3 (3-0 - 6) Prepositional Logic, First-order Logic, Graphs and Trees, Correctness Proof of Programs, Proof of the termination of programs, Formal software development from specifications, and Model Checking. Some case studies and tools for software verification will be discussed. CPE 481 Object-Oriented Design 3 (3-0 - 6) Prerequisite : none This course presents practical approaches to Object Oriented design. Materials include O-O concepts: objects and classes, inheritance, abstraction, polymorphism, and encapsulation, tools for conceptual design, software development life cycle, problem solving, O-O modeling techniques, and analysis. CPE 482 System Analysis and Design 3 (3-0 - 6) Prerequisite : none Software engineering principles are covered include all the phases of software development: analysis, design, testing, implementation, and maintenance. Issues on systems analysis and design are emphasized. The course covers topics in project management, software project size measurement, defect measurement, and software quality control. CPE 483 Compiler Design 3 (3-0 - 6) Prerequisite : CPE 231 An introduction to the design and implementation of a program parser by token analysis and syntax verification for a given grammar. Object code generation techniques are covered with issues including creating symbol tables, memory allocation, control functions, I/O list, error checking, and optimization. CPE 484 Computational Theory 3 (3-0 - 6) Prerequisite : CPE 102 Regular expression, deterministic language and automata, context-free grammars, syntax trees, Turing machine, complexity analysis, and program correctness proofs. CPE 485 Digital Image Processing & Computer Vision Prerequisite : MTH 201 3 (3-0 - 6)
Faculty of Engineering 203 Low-level, mid-level, high-level image processing and computer vision will be studied. Low-level image processing will cover image acquisition, image formats, compression, image enhancement, filtering, edge/contour finding, and feature extraction. Mid-level image processing will cover finding lines/circles/general 2-D shapes, image segmentation, texture segmentation, stereo correspondence, image search & retrieval, contour matching, and computing optical flow for motion sequences. Computer vision will also cover shape from stereo, motion, shading, texture, and other modules. High-level processing will include an introduction to the concepts of pattern recognition, object recognition models, neural networks, and scene interpretation methods. Optimization techniques including stochastic methods will be covered in detail including linear regression, gradient descent, simulated annealing, Gibbs Sampler, and Genetic algorithms. CPE 486 Natural Language Processing 3 (3-0 - 6) Prerequisite : none Introduction to natural language processing and its application. Structural analysis of natural languages. Semantic interpretation. Grammar writing for computer to build parsers for various languages. Review of current natural language processing systems for information technology. CPE 487 Source Coding for Multimedia Systems 3 (3-0 - 6) Prerequisite : none Introduction to source coding, differential pulse code modulation, block coding, synthesis/analysis coding, redundancy-reduction coding. History of multimedia systems, issues in multimedia authoring, basics of digital audio, basics of video, image compression, video compression, and audio compression. CPE 488 Artificial Intelligence 3 (3-0 - 6) Prerequisite : CPE 130 Introduction to the definition and theoretical aspects of artificial intelligence. Symbolic processing and conclusion metho ds. Applications of artificial intelligence to natural language processing, industrial robots, expert systems, and others. Expert systems development tools, LISP programming, and PROLOG programming. CPE 490 Principles of Wireless Communications 3 (3-0 - 6) Prerequisite : CPE 200
204 Faculty of Engineering Electromagnetic wave in space, antennas and propagation, ground wave propagation, sky wave propagation, space wave propagation in the troposphere, antenna arrays, statistical distributions, the diversity principle, and electrical noise in radio systems. CPE 491 Mobile and Personal Communications 3 (3-0 - 6) Prerequisite : CPE 490 Introduction to wireless communication systems, cellular concepts, mobile radio propagation, modulation techniques for mobile radio, equalization, diversity techniques, channel coding, speech coding, multiple access techniques, and mobile communication standards. CPE 492 Data Communications 3 (3-0 - 6) Prerequisite : CPE 200 Signals and spectra, fundamentals of statistical decision theory, formatting and baseband transmission, bandpass modulation and demodulation, communications link analysis, modulation and coding trade-off, synchronization, multiplexing, multiple access communication systems, spread-spectrum techniques, encryption and decryption. CPE 493 Error Control Coding for Digital Communication Prerequisite : CPE 341 3 (3-0 - 6) Error Control Coding (ECC), linear algebra for coding, linear block codes, cyclic codes, Goppa - BCH Codes, finite geometry codes, convolutional codes, and burst error codes. Information theory, combining modulation and coding, and applications of ECC. CPE 494 Computer and Information Security 3 (3-0 - 6) Prerequisite : CPE 341 Cryptography, cryptographic protocols, models of access control, program security, database security, email security, firewalls, internet and electronic commerce security, intrusion detection, secure system engineering methodologies.