School of Engineering · ANU College of Engineering Computing & Cybernetics
This course provides an introduction to the design and analysis of Embedded Systems. Embedded Systems are at the heart of almost all modern technologies; Smart Phones to televisions, cars to intelligent light bulbs. They are one of the most important disciplines in Electronic Engineering and require a unique set of technical and analysis skills to design effectively. This course assist students in developing the knowledge and skills to design and implement embedded systems to control real-world applications using modern hardware, software and communication technologies. Since a real time system is subject to important temporal constraints, this course is precisely about understanding where processing time is spent and what a designer can do in order to achieve real-time processing systems. Some solutions are Multiprocessors, accelerators, custom instructions, specialized hardware. Also, during this course, response time measurements of interrupts are studied, such as for example: the influence of dynamic memories, cache memories, compilation flags. Interrupts response time measurements, task commutations and synchronizations primitives are carried out on an embedded system based on an FPGA. In addition, the course includes the study of embedded systems management models through polling, interrupts and using a real time kernel with its task management and synchronization primitives. An Accelerator designed in Verilog makes it possible to facilitate the optimization of functions through hardware on an FPGA. Cross development tools are used. This course is specifically aimed at providing practical experience through a team-based embedded system design and implementation project. Students will be required to undertake the design of an embedded system to reliably perform a designated task, such as controlling a device. They will be required to follow the steps associated with sound engineering design methodology, starting from clearly defining the problem, developing necessary technical specifications and system level design to the design of the subsystems and communication interfaces, integration and testing. The course includes some instructions in design methodology, tools and technical aspects relevant to the project.
Labs HDL
Learning outcomes 1, 2, 3
Major Project
Learning outcomes 1, 2, 3, 4, 5
Exam
Learning outcomes 1, 2, 3, 4, 5
- 2 hours of lectures per week. - 6 hours of labs per week. - 2 hours of tutorials per week. Work Integrated Learning Projects
1- Peter j. Ashenden: Digital Design An Embedded Systems Approach Using Verilog, Elsevier, 2008. 2- Ron Sass, Andrew G. Schmidt: Embedded Systems Design with Platform FPGAs, Elsevier, 2010. 3- Pong P. Chu: FPGA Prototyping by SystemVerilog Examples: Xilinx MicroBlaze MCS SoC Edition 2nd Edition, Wiley, 2018. Preliminary Reading 1- Waidyasooriya, Hasitha Muthumala, Hariyama, Masanori, Uchiyama, Kunio: Design of FPGA-Based Computing Systems with OpenCL, Springer, 2018. 2-Peter Athanas: Embedded Systems Design with FPGAs, Springer, 2013. 3-Donald G. Bailey: Design for Embedded Image Processing on FPGAs, Wiley, 2011. 4-Richard Zurawski: Embedded Systems Handbook, CRC Press, 2009.