Semester 9


Course: Embedded Systems



Course Code: E
Course Level: Post-Gratuate
Obligatory/Elective: Elective
Semester: 9
Division:
Group:
ECTS Credits: 5
Hours Per Week: 4
Website:
Language:
Content:
Course title Embedded Systems
Course code Y10
Course type Compulsory
Course level Undergraduate (first cycle)
Year of studies 4th, 5th
Semester 7th, 9th
ECTS Credits 5
URL eclass.uowm.gr/courses/ICTE192/
arch.icte.uowm.gr/courses/embedded/
Hours per week 4 (2 hours theory & 2 hours laboratory)
Course content Embedded Computing Principles. CPU instruction sets. Design, development and programming of digital embedded systems. Design requirements. Software and hardware analysis of typical embedded problems. Memory Hierarchy. Algorithmic transformations. Software and hardware application development. Real Time Operating Systems. Integration levels (vlsi, fpga, asic, asip). System Modeling using VHDL and UML. Performance and Power consumption optimization. Peripherals and interconnections. Embedded multiprocessor and accelerators. Input/Output Mechanisms. Interrupts. Exceptions. ARM Architecture.
Laboratory assignments in assembly language programming and C for popular embedded processors and micro-controllers and VHDL for System-On-chip design.
Expected learning outcomes and competences to be acquired Upon successful completion of this course, students will be able to demonstrate knowledge and understanding of:
  • the embedded systems and their specific requirements,
  • the economics of the embedded system design,
  • the interconnection networks,
  • the hardware software codesign,
  • the hardware accelerators,
  • the popular embedded systems architecture and organization,
  • the real time operating systems,
  • the hard and soft deadlines,
  • the performance of the embedded systems,
  • the input/output mechanisms,
  • the fundamental peripherals of an embedded system.
From the laboratory assignments, students will gain the abilities to:
  • create and program embedded systems, according to the design requirements,
  • program micro-controllers and peripherals (arduino & shields),
  • understand the flexibility of the FPGA and utilize it in projects of embedded systems,
  • create and optimize applications in terms of low power consumption and high performance,
  • familiarize themselves with the ARM and TI integrated development environments,
  • fully utilize the VHDL to describe modules of embedded systems,
  • use the FPGA for application development,
  • design an embedded system using soft-cores,
  • design a system-on-chip (SoC),
  • master the DTSE methodology for application optimization,
  • use and glue together multiple intellectual property cores,
  • co-design hardware (VHDL) and software (C).
Prerequisites Computer Architecture, Digital Design (not compulsory)
Teaching methods Lectures, Powerpoint slides, Lecture Notes, in class quizzes, e-class, automated examination system i-exams, opencourses video lectures, laboratory exercises, semester group project.
Assessment methods Written final theory & laboratory exam 40%, 12 weekly laboratory exercises 30%, 1 semester team project 30%.
Language of instruction Greek
Recommended bibliography
  • [3409]: Οι Υπολογιστές ως Συστατικά Στοιχεία, Wayne Wolf ( Book link )
  • [64314]: Ψηφιακή Σχεδίαση με VHDL, Peter J Ashenden ( Book link )
  • [22758441]: Computer Architecture, McLoughli ( Book link )
  • [22762722]: Embedded Systems Hardware for Software Engineers, Lipiansky ( Book link )
  • [33094780]: Computer Organization and embedded systems, Hamacher C, Vranesc Z., Zaky S., Manjikian N. ( Book link )
Learning Outcomes:
Pre-requirements:
Teaching Methods:
Validation:
Suggested Books:
Lecturer: Dasygenis Minas