Syllabus for Programming Embedded Systems

Programmering av inbyggda system

A revised version of the syllabus is available.

Syllabus

  • 5 credits
  • Course code: 1DT106
  • Education cycle: Second cycle
  • Main field(s) of study and in-depth level: Computer Science A1F, Technology A1F, Embedded Systems A1F

    Explanation of codes

    The code indicates the education cycle and in-depth level of the course in relation to other courses within the same main field of study according to the requirements for general degrees:

    First cycle

    • G1N: has only upper-secondary level entry requirements
    • G1F: has less than 60 credits in first-cycle course/s as entry requirements
    • G1E: contains specially designed degree project for Higher Education Diploma
    • G2F: has at least 60 credits in first-cycle course/s as entry requirements
    • G2E: has at least 60 credits in first-cycle course/s as entry requirements, contains degree project for Bachelor of Arts/Bachelor of Science
    • GXX: in-depth level of the course cannot be classified

    Second cycle

    • A1N: has only first-cycle course/s as entry requirements
    • A1F: has second-cycle course/s as entry requirements
    • A1E: contains degree project for Master of Arts/Master of Science (60 credits)
    • A2E: contains degree project for Master of Arts/Master of Science (120 credits)
    • AXX: in-depth level of the course cannot be classified

  • Grading system: Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
  • Established: 2016-03-08
  • Established by:
  • Revised: 2018-08-30
  • Revised by: The Faculty Board of Science and Technology
  • Applies from: Spring 2019
  • Entry requirements:

    120 credits including Computer Architecture and Operating Systems. Real Time Systems. Proficiency in English equivalent to the Swedish upper secondary course English 6.

  • Responsible department: Department of Information Technology

Learning outcomes

On completion of the course, the student should be able to:

  • Develop low-level embedded software using high level programming in e.g. C.
  • Explain the most important features of real-time operating systems, and their use in embedded software.
  • Use programming patterns that take into account limitations of embedded hardware platforms, e.g. memory size, processor capacity, and bandwidth.
  • Discuss basic mechanisms for establishing fault tolerance and recovery .
  • Explain basic approaches in validating the functionality of embedded software.

Content

The course covers the following areas: development environments for embedded software, resource aware programming, hardware programming, developing multi-threaded software, inter-process communication with shared memory and message passing, programming using real time operating systems, fault detection and testing, and fault tolerance and fault recovery.

Instruction

Lectures, lessons, assignments, and labs .

Assessment

The course is examined with exam and assignments, the theory part consists of 3 credits and the practical 2 credits.

If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the disability coordinator of the university.

Syllabus Revisions

Reading list

Reading list

Applies from: Autumn 2022

Some titles may be available electronically through the University library.

Reading list revisions