Embedded Systems

Description of the course


René Beuchat


Winter Semester

Practical Information

All you need to know to join the course is some knowledge (even weak) about logic design and microprocessors.


This course is oriented hardware and interfaces. It presents in details the different parts of an embedded system based on micro-controllers and/or FPGA.

  • The introductory part present the overall of the course and some recall on VHDL. Some low level element are presented.
  • The first section describe a specific microcontroller, this year the MSP430 familly, and some programmable interfaces. A simple Micro-controller is studied and it’s use emphasized in the course with the help of laboratories. The MSP430, a modern very low power micro-controller is used as practical study case.
  • The second section present the design of an embedded system on FPGA. FPGA hardcore and softcore embedded processors are described and used in laboratories. Conception methodology of some programmables interfaces architecture is put in application with practical works in VHDL on FPGA.
  • The third section explain the different parts of an embedded system, with standards parallel and serial bus, processor bus (asynchronous, synchronous) common and divergent characteristics. Main goal for this part is the comprehension of programmable interfaces.
  • The fourth section introduces an ARM9 processor interfaced with the FPGA4U board by a proprietary bus. This 32 bits RISC micro-controller allows to study a more complex embedded processor with more complex programmable interface. The ARM board control the FPGA. The FPGA is used as specific programmable interfaces for specific control.
  • The fifth and last section will be a mini-project combining the topics studied along the previous 3 sections. As example, this experiment allows the students to be able to design a master programmable interface on FPGA. A LCD display or a camera module is interfaced by a DMA controller on the FPGA, or a RF module is interfaced with the MSP430 and the FPGA can control it.

Groups of laboratories are associated with each main topics.
At the end of semester, students will be able to design an embedded system based on micro-controller and FPGA. Design parts in VHDL and program it in C.


  • Introduction and VHDL bases
  • Micro-controller and associated programmable interfaces
  • Micro-controller and FPGA Embedded Systems conception
  • FPGA based Embedded system
  • Hardcore/softcore processors
  • FPGA embedded processor, i.e. NIOS II
  • Memory organization, little/big endian
  • Synchronous/asynchronous bus, dynamic bus sizing
  • Processors bus
  • Design of Specialized Programmable Interfaces
  • Serial bus
  • Basic on graphical screen and CMOS camera
  • ARM9 processor and FPGA interface