Computer Systems
The Computer Systems theme targets students who like to understand how low-level systems software manages and operates computer hardware (CPU, storage, network, I/O, etc.), with a focus on embedded systems that monitor and control real-world machinery. The theme integrates three courses: Real-time Systems, which addresses the scheduling of tasks under time constraints, Embedded Systems Laboratory, a project-based course in which teams of students write the software to control an in-house developed quadcopter (drone), and Smart Phone Sensing, which provides basic signal processing knowledge (including Bayesian reasoning and ML) suited for execution on a smart phone. All three courses involve actual hardware and require advanced programming and debugging skills to complete successfully.
Year 1 |
|||
Quarter 1 |
Quarter 2 |
Quarter 3 |
Quarter 4 |
Software Architecture | Core course | Responsible Computer Science | Research course |
Core course | Theme 1 | Theme 1 | Theme 1 |
Core course | Theme 2 | Theme 2 | Theme 2 |
Credits: each course in a theme is 5EC, so each theme is 15EC.
Students choose 2 themes, each of which has 3 courses in the 2nd, 3rd and 4th quarters of the 1st year. For this theme, you will take the following courses:
Q2 - Real-time Systems
The course equips students with an understanding of fundamental concepts and terminology of real-time systems, enables them to construct task schedules under real-world constraints, analyse the timing behaviour of a systems and discuss effects of hardware and software interferences on the timing behaviour of systems. In lab sessions, students learn to identify parameters of a scheduling scheme, derive the system specification from a given implementation, evaluate the scheduling overheads of an implementation, and implement event-based scheduling policies on a microcontroller.
Q3 - Embedded Systems Laboratory
This multi-disciplinary course comes with a lab project where teams of four students develop an embedded control unit for a tethered electrical model quad rotor aerial vehicle (Quadrupel drone), provide stabilization such that it can hover and fly, with only limited user control. The control algorithm must be mapped onto a PCB holding, a modern RF SoC interfacing a sensor module, and the motor controllers. The students will be exposed to simple physics, signal processing, sensors, actuators , and basic control principles.
Q4 - Smart Phone Sensing
The course provides an introduction to the current research trends in the area of smartphones. The course is based on a programming project, where students collaborate in pairs to develop a smartphone application. To prepare for the project, students are familiarized with the signals and data that smartphones can gather and the mathematical tools necessary to process this data. During the lectures the latest research papers from this emerging field are analysed to understand how techniques from algorithms, signal processing and machine learning are used to develop exciting smartphone applications.