Refer to the specific census and withdrawal dates for the semester(s) in which this module is offered.
Business, Engineering and Technology
On-campus block of classes
This module is about designing and developing embedded systems. The aim of this course is to provide the principles of doing embedded system development effectively in order to produce professional, highly maintainable and robust systems.
On completion of the module, students will be expected to be able to:
|1||Know the definition of what en embedded system is as well as general systems theory|
|2||Critically discuss hardware and software tools use in developing an embedded system in relation to general embedded system platforms|
|3||Describe the issues of coming up with new product concepts. The concept presentation. Best practices.|
|4||Explain the concepts/ structure of RISC architecture. Programming an ARM-based microprocessors. Addressing modes, using memory maps, etc. Writing a simple ARM assembly language program. Types of instructions, their mnemonics. Using GCC-ELF-AS, macros, labels, etc.|
|5||Explain and implement the concept of using memory mapped peripherals. In-line assembly. Bitwise operations and their C operators and ARM instructions. Volatile variables in C. Speed and code density. Use of interrupts vs. polling. Implementing interrupt service routines.|
|6||Identify and describe the general embedded system development, from the product specification phase, to maintenance, upgrade, and finally retirement.|
|7||Explain and implement the important real-time requirements and design issues within a dynamic environment.|
|8||Understand and implement On-chip Debugging Standards (JTAG) and In-Circuit Emulation (ICE).|
|9||Implement the above-mentioned techniques by means of computer programs and development boards|
Continuous assessment: 40%
Final project assessment: 60%
The module contributes to the realisation of the outcomes by giving an insight into an embedded system that has software embedded into hardware. This makes the system dedicated for an application or part of a larger system. There will be a combination of lectures that include interactive elements, practical assignments to include application aspects of embedded systems using a development board, tutorials in which students will do individual work (self-assessments; reflecting on learning aspects), group work (PowerPoint presentations on aspects of the module, role-play and group discussions), Moodle, for sharing learning aids, to help students test their own knowledge through informal quizzes, and to administer short formal tests and Flipped Classroom approach for aspects of the course. All outcomes will be assessed by means of tutorial work, quizzes, laboratory, class tests and a final examination.