Embedded Software Design

2018/2019

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, EDF
    • schedulability criteria
  • Foundations of algorithms
    • Iteration
    • Induction
    • Recursion
  • Search and sort algorithms
    • Arrays
    • Linked lists
    • Trees
    • Simple sorting algorithms

This course shall be coordinated with the FPGA course which may have influence on assembly language learning.

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.
https:/​/​www.en.tech.aau.dk/​education-programmes/​Education+and+Programmes/​

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