Course Description
Sophomore

ECE210 Data Structure

Prerequisite: PCO152 C Programming. Introductory course in data structure and algorithm analysis. Topics include stacks, queues, lists, trees, graphs, sorting algorithms, hashing, and search structures.
ECE213 Programming Language Theory
Prerequisite: ECE210 Date Structure. Topics include syntax and semantics, lexer and parser, introduction to polymorphism, typing theory, class and inheritance, functional programming and logic programming.
ECE214 Programming Techniques
ECE241 Statistics
Prerequisite: HSN162 Engineering Mathematics 1. Topics include probability theory, sampling distributions, estimation, tests as decision rules, and regression analysis.
ECE242 Discrete Mathematics
This course introduces mathematics related to computer and computer science. Topics include logic and proofs, sets and relations, analysis of algorithms, graph theory, trees and their applications, e.g., network models, combinatorial circuits, finite state machines and automata, etc.
ECE251 Basic Electric Circuit Analysis 1
Prerequisite: HSN163 Physics 1, HSN164 Physics 2, HSN162 Engineering Mathematics 1. Introductory course in electric circuit theory. Topics include resistive circuits, dependent sources, analysis methods, network theorems, energy-storage elements, RC and RL Circuits, 2d -order circuits, sinusoidal excitation and phasors, AC steady-state analysis.
ECE253 Basic Electric Circuit Analysis 2
Prerequisite: ECE251 Basic Electronic Circuit Analysis 1. The second part of the introductory course in circuit analysis. Topics include AC steady-state power, complex frequency, frequency response, transformers, Fourier transforms, and Laplace transforms.
ECE257 Digital Logic Design
Introduce basic concepts and issues for design and synthesis of digital system and design small and medium size digital circuits.
ECE258 Digital Logic Lab
Introduce basic concepts and issues for design and synthesis of digital system and design small and medium size digital circuits via lab experiments.
ECE261 Electromagnetics
Prerequisite: HSN164 Physics 2, HSN 162 Engineering Mathematics 1, HSN 260 Engineering Mathematics 2. Topics include vector algebra, coordinate systems and transformation, electrostatic fields, energy and potential, conductor, dielectric material and capacitance, and Poisson and Laplace equations.
ECE262 Electromagnetic Fields and Waves
Prerequisite: ECE261 Electromagnetics. The second part of introductory course in electromagnetics. Topics include Biot-Savart's law, amperes law, Stokes theorem, magnetic material, basic magnetic circuit analysis, magnetic force, time varying electromagnetic fields, Poynting theorem, plane wave reflection at the boundary surface, and transmission-line characteristics.


Junior

ECE311 Algorithm Analysis
Prerequisite: ECE210 Data Structure. Introductory course in algorithm analysis. Topics include methodologies for problem solving and complexity analysis techniques.
ECE313 Software Engineering
Prerequisite: ECE213 Programming Language Theory, ECE321 Operating System. Topics include software life cycle model, software development environment, project management, software requirements and specifications, software design and architecture, and software maintenance.
ECE314 Object-Oriented Programming Languages
Prerequisite: ECE213 Programming Language Theory. Introductory course in object-oriented processing. Topics include a survey of object-oriented programming concepts, and case studies on Java, C++, and Ada.
ECE315 Automata Theory
ECE320 Computer Architecture & Organization
ECE321 Operating System
Prerequisite: ECE2 IO Data Structure, ECE221 Computer Architecture and Organization. Topics include operating system structures, process management, storage management, protection and security, and distributed systems.
ECE322 System Programming
Prerequisite: ECE213 Programming Language Theory, ECE321 Operating System. Topics include C language, assembly language, function of system software, operating system and concept of simple compiler.
ECE323 Microprogramming
Prerequisite: ECE221 Computer Architecture and Organization. Topics include the architecture of 4-bit, 8-bit, and 16-bit microprocessor, the implementation of control sequencer by using microprogramming simulator, and design of assembly language instruction sets.
ECE324 Computer Design with VHDL
Prerequisite: ECE254 Digital Logic Design and Lab, ECE221 Computer Architecture and Organization. Topics focus on digital chips, including CPU, memory and 1/0 systems.
ECE341 Numerical Analysis
Prerequisite: HSN 162 Engineering Mathematics 1. Topics include linear/non-linear equation analysis, solution of simultaneous equation, interpolation, approximation, numerical differentiation and integration, and conversion decision and error analysis.
ECE351 Electronic Circuits I
ECE352 Electronic Circuits 2
Prerequisite: ECE252 Electronic Circuits 1. The second part of introductory course in electronic circuits. Topics include feedback, output stage and power amplifiers, analog integrated circuits, signal generators and waveform-shaping circuits.
ECE356 Electronic Circuits Lab I
ECE357 Electronic Circuits Lab 2
Prerequisite: ECE256 Electronic Circuits Lab 1. Topics include push-pull amplifier, differential amplifier, op amp circuits, nonlinear op amp circuits, active filters, Hartley oscillator, and mixers.
ECE362 Device Physics.
Topics include: Basic principles required to understand the operation of modem solid- state devices. Derivation of electrical characteristics of devices such as diodes, bipolar transistors, MOS transistors and LEDs. Applications to design of electronic circuits.
ECE371 Microprocessor Application I
Prerequisite: ECE221 Computer Architecture and Organization. Describe the internal architecture of a microprocessor, various instructions that the processor can execute, and how to sequence instructions to perform various functions. In the lab, write various small programs to test their understanding of the processor.
ECE373 Automatic Control
Prerequisite: ECE381 Signals and Systems. Introductory course in control theory. Topics include state-variable analysis, time domain analysis of control systems, root locus techniques, frequency domain analysis of control systems.
ECE381 Signals and Systems
Prerequisite: HSN 162 Engineering Mathematics 1, HSN 260 Engineering Mathematics 2. Introductory course for communications, signal processing, and control theory. Topics include properties of signals and systems, linear time-invariant system, continuous and discrete Fourier transform, Laplace transform, z-transform, and sampling theory.
ECE383 Principles of Communication
Prerequisite: ECE381 Signals and Systems. Introductory course in communication theory especially related to the analog communication systems. Topics include Fourier transform, frequency characteristics, the noise, amplitude modulation, frequency modulation, phase modulation, and pulse modulation.
ECE384 Introduction to Digital Signal Processing
Prerequisite: ECE381 Signals and Systems. Digital processing of analog signals. Offline and real-time processing for parameter, waveshape and spectrum estimation. Digital filtering and applications in speech, sonar, radar, data processing and two-dimensional filtering and image processing.


Senior

ECE411 Advanced Programming Languages
Prerequisite: ECE314 Object Oriented Programming Languages. Topics include ADA95, JAVA and C++.
ECE412 Compiler Theory
Prerequisite: ECE213 Programming Language Theory, ECE221 Computer Architecture and Organization, ECE317 Automata Theory. Introductory course for compiler design and implementation. Topics include lexical analysis and scamming, syntactic analysis and parsing, symbol table management, recursive decent parsing, syntax-directed translation, and intermediate code generation.
ECE430 Database
ECE432 Artificial Intelligence
ECE441 Image Processing
Prerequisite: ECE384 Introduction to Digital Signal Processing. A study of introductory techniques of image processing. Image formation and perception, digitalization, Fourier transform domain processing, restoration and tomographic reconstruction.
ECE442 Computer Graphics
Prerequisite: ECE210 Data Structure. Topics include computer graphics hardware architecture, graphics coordinate conversion, vectors and raster, textual mapping, ray tracing, surface modeling, shading, hidden line removal, and 2D and 3D graphics.
ECE451 Digital System Design
Prerequisite: ECE371 Microprocessor Application 1, ECE324 Computer Design with VHDL. Study the interfacing techniques of computer systems. Implement the interface board to control 1/0 equipment using computer like IBM PC. Focus on bus system of a computer and implementation of subsystem on the bus.
ECE452 Integrated Circuit Design
Prerequisite: ECE251 Basic Circuit Theory 1, ECE252 Electric Circuits 1. Study the techniques, characteristics, and performance of CMOS circuits and systems: CMOS technology and processing, Circuit characterization, Circuit properties and performance.
ECE453 Analog IC Design
Prerequisite: ECE351 Electronic Circuits 2. Topics include bias circuits, basic gain stages, operational amplifiers, wideband amplifiers, analog multipliers and modulators, and voltage- regulators.
ECE454 VLSI Design
Prerequisite: ECE452 Integrated Circuit Design. Study computer-aided VLSI design techniques, including building block layout, placement and routing algorithms, simulation, design verification and timing, digital synthesis techniques, and testing.
ECE461 Microwave Engineering
Prerequisite: ECE262 Electromagnetic Fields. Topics include Maxwell equation, transmission- line theory, S-parameters, impedance matching and tuning, microwave transmission-lines, power dividers, directional couplers, and hybrids, microwave resonators and filters, active microwave components.
ECE472 Digital Control
Prerequisite: ECE373 Automatic Control. Topics include discrete systems dynamics, sampled- data systems, mathematical representations of analog/digital and digital/analog conversions, open- and closed-loop systems, input-output relationships, state-space and stability analyses, time- and frequency-domain analyses and design and implementation of digital controllers.
ECE481 Digital Communication
Prerequisite: ECE383 Principles of Communication. The second part of the introductory course in communication theory related to digital communication. Topics include digital modulation (ASK, PSK, FSK), digital transmission, introductory information theory, channel coding theory, and the multiple access systems.
ECE483 Computer Networks
Prerequisite: ECE321 Operating System. Introduce the concept of layering and the functions of seven layers in computer networks, and describe Internet protocol and high-speed networks. Topics include OSI seven layers, MAC protocols, TCP/IP, and ATM.
ECE486 Problem Solving using Computer
ECE495 Seminar on New Technologies 1
ECE496 Seminar on New Technologies 2