Embedded Software Design

2019/2020

Prerequisite/Recommended prerequisite for participation in the module

The module builds on knowledge gained in Imperative Programming

Content, progress and pedagogy of the module

Contents:

  • Machine language
  • Assembler
  • Number theory/Number representation
  • State machines
  • System SW: compiler, linker, loader
  • Device drivers
  • Kernel / RTOS
  • Analysis and design of SW for embedded systems
  • Scheduling:
    • round robin, fixed priorities
    • schedulability criteria
  • Foundations of algorithms
    • Iteration
    • Induction
    • Recursion
  • Search and sort algorithms
    • Arrays
    • Linked lists
    • Trees
    • Simple sorting algorithms

Learning objectives

Knowledge

  • Operating systems, incl.
    • Inter Process Communication (IPC)
    • Access to peripherals
    • Task dispatching

Skills

  • Application of various scheduling principles
  • Application of Inter Process Communication

Competences

  • Design of multi-tasking programs on given operating systems.
  • Design of operating systems, incl.
    • Memory consumption
    • Context switch overhead
    • Pipelining
    • Interrupt handling
  • Design and implementation of software systems on application level

Type of instruction

Lectures with assignment and self-study

Exam

Exams

Name of examEmbedded Software Design
Type of exam
Written or oral exam
ECTS5
AssessmentPassed/Not Passed
Type of gradingInternal examination
Criteria of assessmentAs stated in the Joint Programme Regulations.

Facts about the module

Danish titleDesign af indlejret software
Module codeESNEITB4K2
Module typeCourse
Duration1 semester
SemesterSpring
ECTS5
Language of instructionEnglish
Empty-place SchemeYes
Location of the lectureCampus Aalborg
Responsible for the module

Organisation

Study BoardStudy Board of Electronics and IT
DepartmentDepartment of Electronic Systems
FacultyTechnical Faculty of IT and Design