Course objective is to equip students with basic skills to address the design of digital systems comprising hardware and software components. These systems are increasingly relevant today for modern computer engineering systems interacting with the environment, and include Embedded, Cyber-physical, Edge, and IoT systems.
Emphasis is placed on the design and use or reuse of hardware and software components with standard and well-documented interfaces, adopting methodologies and patterns widely used in research and industry. Within the course, these components are then integrated into architectures suitable for specific case studies. Thereby, the course promotes development of problem solving skills, including partitioning in sub-problems, mapping of functions onto hardware and software components, adoption of proper methodologies to address sub-problems and individual component design.
A design project is assigned to students (typically in pairs), which will be guided in its development using hardware and software components provided by the instructor. This project will help the acquisition of skills and increase student’s self-confidence in designing hardware, software, and mixed technology digital systems. Students will be able to leverage these skills in advanced courses offered in the Computer Engineering Master degree classes as well as on the job.
At the end of the course, students will be able to directly apply the learned techniques in the following contexts:
- Design of combinational and sequential circuits using elementary components and functional modules such as registers, counters, memories, programmable logic devices;
- Acquisition and processing of different types of signals for sensor interfacing to digital systems;
- Using microcontrollers for sensor data acquisition, local processing, and data transmission via wireless network;
- Design of dedicated embedded or cyber-physical systems by decomposition into functional modules and function allocation to appropriate components according to suitable performance metrics.