Undergraduate Courses
SEEL4273: CAD with HDL
This course introduces students to the use of computer-aided-design (CAD) tools and hardware description language (HDL) for the design of complex digital systems. Students will use CAD tools to model, design, analyze, synthesize, implemetn, and verify systems that are specified using the Register Transfer Level (RTL) methodology. Systems verification methods using scripts and testbenches will be introduced. Memory controller design and interfacing will be covered, including the use of RAM, ROMs, FIFOs, and external memory.
SEBB4163: Advanced Computer Programming and Data Structure
This course discusses programming problems and the C++ programming to solve such problems using object oriented programming approach (OOP). From this course, the students will be equipped with skills of advanced C++ programming language to solve moderate to advanced problems that relate with biomedical engineering or healthcare application using OOP approach. It will also covers some basic data structure such as list structure and tree structure. The course covers the following syllabus: Introduction to objects, fast recap of C language syntax, data abstraction, class and object implementation, object initialization and cleanup, function and operator overloading, constants, inline functions, name controls, etc. This course covers hands-on tutorial to expose the students to some modern C++ Integrated Development Environment (IDE) for biomedical and healthcare application development. This course also applies the group design project. The students will be divided in groups to propose a group project to solve complex problems that related with biomedical engineering or healthcare application. Before attending this course, the students should have prior knowledge in C programming language, number representation (binary, octal, hexadecimal, decimal), signed/unsigned number arithmetic (1’s compliment and 2’s compliment), and simple logic functions (AND, OR, XOR, NOT, etc).
SEBB4153: Electronic CAD Digital System Design
This course presents design methods to construct digital systems, which consist of both combinational circuit and sequential circuit. Topics include: (1) Computer-Aided Design (CAD) tools for design and simulation, (2) Verilog Hardware Description Languages (HDL) for synthesis and simulation, and (3) algorithm to architecture design using register transfer level (RTL) design approach. In this course, some of the important features of Verilog HDL will be discussed, e.g. operators, datatypes, concurrent vs. sequential statements, blocking vs. non-blocking statement, always vs. initial, sensitivity list etc. The dataflow, structural, and behavioural modelling techniques will be discussed and relate how they are used to design a synthesizable logic circuit using RTL design approach, including from algorithm-to-architecture step-by-step design process which involves algorithmic state machine (ASM) flowchart, RTL control sequence table, and eventually derive the datapath and control unit (finite state machine) design. The use of test benches to exercise and verify the correctness of hardware models will also be described. Practical experience is gained by implementing various designs on a FPGA prototyping board.
SEBB4083: Artificial Intelligence
This course introduces students to the fundamentals of strong and weak artificial intelligence (AI). It discusses the theoretical and practical aspects of artificial neural networks. Techniques of AI such as machine learning with decision trees, rule-based systems using natural type of rules based on fuzzy logic. Amongst topics that will be covered are introduction to representation with symbolic logic, artificial vision, and artificial consciousness. This course will give students an appreciation of its philosophical understanding leading towards strong AI. Students will be given problem sets and hands-on simulation in developing a model of cognitive system to effectively solve real world problems.
SEBB4012: Professional Biomedical Engineering Practice
This course highlights to students the profession of engineering, engineer’s roles and responsibilities, and impact of the work of engineer on society and to mankind, particularly in the field of biomedical engineering. Students are introduced to the relevant acts, regulations, standards and engineering ethics. The elements of EAC accreditation and Washington Accord are also discussed. Based on ethical theories, principles, code of engineering ethics, acts and standards the students will analyze biomedical engineering issues and cases. With the knowledge learned, the student would be able to apply the principles to real world situations. The students will perform group work and project, and will do group presentation in class.
SWB4043: Clinical Engineering
This course introduces students to major principles of clinical engineering as part of the preparation for industrial training. The scope of clinical engineering covers pre-market, market and post-market life-cycle of medical devices as well as risk and personnel management. These include procurement planning, incident investigation, equipment management, productivity, cost effectiveness, information systems integration, and patient safety activities. Students will also be exposed to the related law, standard and regulation for medical devices. Other than that, principle of medical devices will also be discussed in the course.
SEBB3043: Biomedical Instrumentation & Measurement
The aim of this course is to introduce the students with biomedical measurement systems and biomedical instrumentation. The architecture of electronic instruments used to measure physiological parameters is addressed, as well as the analysis of major process functions integrated in these instruments.
SKEE3223: Microprocessor
This course introduces the principles and applications of microprocessors. Topics emphasized are processor architecture, assembly and HLL language and fundamentals of interfacing in a microprocessor-based embedded system. This course emphasizes on the understanding the fundamentals of microprocessor operation, writing coherent and errorfree assembly and HLL language programs, and designing basic interfacing circuits. With the knowledge learned, the student would be able to design microprocessor-based systems using assembly language and HLL programs completely with confidence.
SEBB3033: Microprocessor Systems
This course introduces the principles and applications of microprocessors. Topics emphasized are embedded microprocessor architecture and organization in detail incorporation with High Level Language (HLL), as well as fundamentals of designing and interfacing in a microprocessor-based embedded systems. This course emphasizes on understanding the fundamentals of microprocessor operation, writing coherent and error-free HLL programs, and designing basic interfacing circuits for microprocessor-based embedded systems which targeted for biomedical or health care application using HLL completely with confidence.
SEBB2033: Computer Programming for Biomedical Engineer
As a fundamental subject, this course equips the students with theory and practice on basic programming and problem solving techniques by using the structured approach. From this course, the students will be equipped with skills of basic C/C++ programming to solve simple to moderate problems that related with biomedical engineering or healthcare application. The course covers the following syllabus: Introduction to Computers and Programming, problem solving techniques (e.g. Pseudo code, behavioural flowchart, structural block diagram), preprocessor directives, constants and variables, data types, input and output operations, text files, control structures: sequential, selection and loop, built-in and user-defined functions, one dimensional and multi- dimensional arrays, and pointers. This course covers hands-on tutorial to expose the students to some modern C/C++ Integrated Development Environment (IDE) and advanced microprocessor/microcontroller kits for embedded programming application development. This course also applies the concept of CDIO (Conceive-Design-Implement-Operate). The students will be divided in groups to propose a group project to solve complex problems that related with biomedical engineering or healthcare application. Before attending this course, the students should have prior knowledge in basic number representation (binary, octal, hexadecimal, decimal), signed/unsigned number arithmetic (1’s compliment and 2’s compliment), and simple logic functions (AND, OR, XOR, NOT, etc).
SWB 2063: Basic Electronics
First course in the field of electronics, consisting of basic electronic devices such as the diode, the bipolar junction transistor, and the field effect transistor. Course content will include the devices’ basic structure, biasing and basic applications.
SEEU1223: Digital Electronics
This course teaches the fundamental principles of digital electronics. From signal concepts and number systems and codes, it then proceeds to logic gates, their relationship to Boolean algebra, logic simplification, and the integration of gates to form digital circuits. It covers both combinational and sequential logic circuits, with emphasis on circuit design and analysis. Intel Quartus Prime software tool is used in this course for design and simulation of digital circuits.
SKEE1103: C Programming for Engineers
This course introduces students to basic programming concepts and problem-solving techniques, targeted to both desktop software applications and embedded system applications. The course begins with an introduction of computer structures and abstraction level of programming languages, before moving on to C programming concepts (editing, compiling, and debugging). Programs will be modeled with high level programming constructs (sequence, selection, looping) along with problem solving techniques (pseudocode and flowchart). Students will apply these ideas to arithmetic expressions, bit manipulations, arrays, strings, structures, pointers, user-defined functions, and basic C library functions with different datatypes (int, float, double, char). This course covers hands-on exercise to expose the students to some modern Integrated Development Environment (IDE) for application development. By the end of the course, students should be able to develop a C program targeted to solve the engineering problems and run the programs on a single board computer to show their understanding.
SEEU1063: Electronic Devices
This is the first course in the field of electronics and an introduction course to semiconductor devices used in today’s electronics, such as diode, bipolar junction transistor, and field effect transistor. The course content includes the devices’ basic structure, biasing, and basic applications. The goal is to develop an excellent understanding of the operation capabilities and limitation of the devices so that the students will be able to use these devices effectively in analog and digital circuit design.
Graduate Courses
MMBC1153: Cardiovascular Engineering
Cardiovascular Engineering integrates physiology, cell and molecular biology, bioelectricity and biomechanics to describe, understand, and re-engineer the cardiovascular systems. The objective of this course is to provide the students with tools for modeling and understanding of cardiovascular disease monitoring and treatment, and for designing appropriate systems and devices for diagnosis and intervention.
MMBC1033: Medical Informatics
This course provides students with the organization of medical information, the effective management of information using computer technology, and the impact of such technology on medical research, education, and patient care. The course explores techniques for assessing current information practices, determining the information needs of health care providers and patients, developing interventions using computer technology, and evaluating the impact of those interventions.