Hide Advanced Options
Courses - Spring 2023
ENEB
Cyber-Physical Systems Engineering
ENEB304
(Perm Req)
Microelectronics and Sensors
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: Minimum grade of C- in ENEB302; and permission from the Cyber-Physical Systems Engineering program required.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
An overview of basic Internet of Things (IOT) architecture, core IOT hardware enablers, and IOT sensors and their implementation. This course covers commonly used analog amplifier designs and biasing, as well as characterization in the frequency and time domains. In addition, this course discusses the physical principles in RF communications as it relates to wireless personal and local networks (WPAN/WLAN) and short-range communication systems.
ENEB345
Probability & Statistical Inference
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: MATH141.
Restriction: Must be in the Embedded Systems & Internet of Things program; and must receive permission from the Embedded Systems & Internet of Things program.
This is a foundational course on probability and statistics for data science and connected embedded systems. This covers basic statistics and probability theory, including random variables, standard distributions, moments, law of large numbers and central limit theorem, sampling methods, estimation of parameters, testing of hypotheses. The course also includes the mathematical theory of randomness, and applications to big data analysis and analysis in the presence of uncertainty, and applications to machine learning algorithms.
ENEB352
(Perm Req)
Introduction to Networks and Protocols
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: Minimum grade of C- in ENEB341; and permission from the Cyber-Physical Systems Engineering program.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
An introduction to the principles of computer networking and covers the architecture and operation of the TCP/IP protocol stack. Topics will include fundamental networking concepts, the layers of the TCP/IP protocol stack, the packet structure and operation of each layer with detailed discussion on reliable data transfer, flow control, congestion control, routing algorithms, error detection, Local Area Networks (LANs), and multiple access protocols. The course will also cover wireless protocols relevant to Internet of Things (IoT) such as WLAN (IEEE 802.11), Zigbee (IEEE 802.15.4), and Bluetooth as well as some popular IoT application-layer and network-layer protocols including CoAP, AMQP, MQTT, XMPP and 6LoWPAN. As a part of the course work, the students will attend lab sessions where they will learn how to capture and analyze network traffic, how to configure networking functions on Linux systems, and how to operate and configure routers using Juniper Networks devices in a real-world lab environment.
ENEB353
(Perm Req)
Computer Organization for Embedded Systems
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: Minimum grade of C- in ENEB344 and ENEB354; and permission from the Cyber-Physical Systems Engineering program.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
Overview of the basic principles of computer organization and design with emphasis on low resource microcontrollers common in IoT applications. The topics include assembly and machine instructions, data-path and controller design, pipelining and memory hierarchy.
ENEB355
Algorithms in Python
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: Minimum grade of C- in ENEB340 and ENEB354; and permission from the Cyber-Physical Systems Engineering program.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
Credit only granted for: ENEB355 or ENBC322.
A study of fundamental algorithmic problem-solving techniques in Python for today's large-scale computer systems as well as microcontrollers. Algorithms are instructions for solving problems and data structures are strategies for organizing information on computers. Efficient algorithms require appropriate data structures, and vice versa. Students will learn about the algorithms and data structures that form the building blocks of Python programming language. Student will also learn to analyze the cost of algorithms, according to how their running time or space requirements grows as data size grows.
ENEB408B
Capstone Design Lab; Capstone Design Lab II
Credits: 3
Grad Meth: Reg, P-F, Aud
ENEB443
Hardware/Software Security for Embedded Systems
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: Permission from the Cyber-Physical Systems Engineering program; and minimum grade of C- in ENEB454.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
This course will provide an in-depth understanding of systems level software and hardware in designing industry-standard secured embedded systems. It aims to provide a comprehensive systems view of security, including hardware, platform software such as operating systems and integrated development environments, software development process, data protection protocols, and some aspects of cryptography. To goal is to expose students on how to develop embedded software and properly utilize platform components to ensure the highest levels of security.
ENEB453
Web-Based Application Development
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: ENEB340 and ENEB341.
Restriction: Must be in the Cyber-Physical Systems Engineering program; and permission of the Cyber-Physical Systems Engineering program.
Introduction to cloud computing, computer programming in the context of developing full-featured dynamic websites. Uses a problem-solving approach to teach basics of program design and implementation using JavaScript; relates these skills to the creation of dynamic websites; then explores both the potential and limits of web-based information sources for use in research. This course provides a practical introduction to full-stack web development using PHP and JavaScript. The course will start with HTML/CSS/JavaScript to cover the client-side of applications. Then, it will move on to the server-side with PHP and integrating with a MySQL database to create a complete web application.
ENEB455
Advanced FPGA System Design using Verilog for Embedded Systems
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: Minimum grade of C- in ENEB344 and ENEB340; and permission from the Cyber-Physical Systems Engineering program.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
A project-oriented course on digital system design using Verilog hardware description language (HDL) in an industry-standard design environment appropriate for embedded systems. Students will implement real-world designs in field programmable gate arrays (FPGAs) as well as test and optimize the FPGA. Students will also work in teams on multiple, medium-scale digital system design projects and make oral presentations and written reports.
ENEB456
Machine Learning Tools
Credits: 3
Grad Meth: Reg, P-F, Aud
Prerequisite: ENEB345 and ENEB346.
Restriction: Must be in the Cyber-Physical Systems Engineering program.
A broad introduction to machine learning and statistical pattern recognition tools. The course will teach students to model existing data and to forecast future behaviors, outcomes, and trends. It will be taught using the Azure Machine Learning Studio that provides an integrated, end-to-end data science and advanced analytics solution. It will enable students to prepare data, develop experiments, and deploy models at cloud scale. Topics include: supervised learning (Bayesian learning and classifier, parametric/non-parameteric learning, discriminant functions, support vector machines, neural networks, deep learning networks); unsupervised learning (clustering, dimensionality reduction, auto-encoders). The course will also discuss recent applications of machine learning, such as computer vision, data mining, autonomous navigation, and speech recognition. Hands-on: implementation of Tensorflow Algorithm on TPU board.