Embedded system design
CS-476
Media
Overview
When/where:
Tuesdays: 11:00-13:00 INF-3 (theory)
Tuesdays: 13:00-15:00 INF-3 (practical works)
Material:
In this course we will provide you with a Gecko5Education FPGA-board that contains the Virtual prototype that we are going to work on. To be able to also work at home, you can take the board home.
Grading:
The grading scheme consists of:
- PW2: 15%
- PW4: 17.5%
- PW6: 17.5%
- Final project with presentation and demo: 50%
The final grade will be determined by:
FG = 1 + ROUND(result_in_% * 5 * 4)/4
Minimal requirements:
To be able to use the system you should have 2 USB ports.
As we also have a HDMI-output, we provide you with a hdmi-video-grabber that presents itself as a webcam to your laptop.
How to work:
All practical exercises will be performed in groups of 2 students. Bigger groups as 2 students are not allowed.
We provide all required software installed on the machines in INF-3, and on a VDI-images, however, it is also possible to install the software on your local machine (see below).
References:
- Fundamentals of System-on-Chip Design on Arm Cortex-M Microcontrollers
- Computer Architecture, John L. Hennessy, David A. Patterson
- OpenRisc
Software:
- Your favorite code-editor (for example Visual Studio Code).
- A RS232 communication program (for example Cutecom for linux and Coolterm for Macos/Windows)
- The OpenRISC gcc-cross-compile toolchain (see below). Important: Use the one on this page, as it contains modifications that are not in the standard version!
- The ''convert_or32'' (see below) that you can compile with any c-compiler for your system.
- The open source OSS CAD Suite (see below).
The team:
- Theo Kluter (responsable) ties.kluter@epfl.ch
- Canberk Sönmez (TA) canberk.sonmez@epfl.ch
Questions and answers:
Of course during the course hours, but we also use an ED-discussion forum (see link below).
VDI-infrastructure:
You can connect with VMware Horizon (note: outside of the EPFL-network you need a VPN-connection) to vdi.epfl.ch.
For windows users:
The easiest way to use the tools on windows is to either:
1) Use a dual-boot system, or
2) Use wsl.
To use wsl (Windows-subsystem For Linux), use following instructions:
1) open a powershell as administrator
2) execute:
3) execute:
4) reboot your machine
5) open a powershell as administrator
6) install windows wsl with
7) follow the instructions here
8) reboot windows
9) open a wsl shell
10) open a powershell as administrator.
11) attach the Gecko5Education board to your computer
12) in the powershell type
13) Look for the BUSID for the device:
"0403:6010 USB Serial Converter A, USB Serial Converter B"
14) in the powershell type (where you replace BUSID by the info found in the previous step):
usbipd bind --force --busid BUSID
usbipd attach --wsl --busid BUSID
15) In your wsl window you should now see the Gecko5Education by typing
16) now you can continue with the instructions for linux in your wsl window
- Announcements (Forum)
- GNU gcc-cross-compile toolchain for the OpenRISC (unzip and read the Readme.txt file) (File)
- Convert_or32 utility (unzip and read the README-file) (File)
- The complete source code of the Virtual Prototype (File)
- The OSS CAD Suite (go to "Releases" to download) (URL)
- udev file for linux systems (place in /etc/udev/rules.d) (File)
- Theory session: (Text and media area)
- Slides as used during the course (please do not print these, use handout or memo for that) (File)
- Handout version of the slides (File)
- Memo version of the slides (File)
- Practical session: Forming groups and when wanted ... (Text and media area)
- Theory session: (copy) (copy) (Text and media area)
- Slides as used during the course (please do not print these, use handout or memo for that) (File)
- Handout version of the slides (File)
- Memo version of the slides (File)
- Recording first hour (File)
- Recording second hour (File)
- Recording third hour (File)
- Practical session: Simulation, test-benching and F... (Text and media area)
- counter with testbench for simulation assignment (File)
- PW1 description (File)
- Possible solution for PW1 (File)
- Theory session: (Text and media area)
- Slides as used during the course (please do not print these, use handout or memo for that) (File)
- Handout version of the slides (File)
- Memo version of the slides (File)
- Recording of the second hour (File)
- Practical session (First graded pw): Custom instru... (Text and media area)
- PW-2 description (part1) (File)
- Programs and support files for building firmwares (contains grayscale) (File)
- Theory session: (copy) (copy) (copy) (Text and media area)
- Slides as used during the course (please do not print these, use handout or memo for that) (File)
- Handout version of the slides (File)
- Memo version of the slides (File)
- Recording first hour (File)
- Recording second hour (File)
- Practical session: Custom instructions part 2 (Text and media area)
- Select your group here (Group choice)
- PW-2 description (part2) (File)
- Theory session: (copy) (copy) (copy) (copy) (Text and media area)
- Slides as used during the course (please do not print these, use handout or memo for that) (File)
- Handout version of the slides (File)
- Memo version of the slides (File)
- Recording of the first hour (File)
- Recording of the second hour (File)
- Practical session: GPIO (Text and media area)
- PW-3 description (File)
- gecko5.lpf (File)
- Sample solution for the grayscale custom instruction (File)
- Theory session: (copy) (copy) (copy) (copy) (copy) (Text and media area)
- Slides as used during the course (please do not print these, use handout or memo for that) (File)
- Handout version of the slides (File)
- Memo version of the slides (File)
- Recording of the first hour (File)
- Recording of the secnd hour (File)
- Practical session (second graded PW): DMA (Text and media area)
- PW3 sample solution (File)
- Select here your group for PW4 (Group choice)
- PW-4 description (File)
- Theory session: (copy) (copy) (copy) (copy) (copy) (copy) (Text and media area)
- Practical session: DMA: see last week (Text and media area)
- No lecture and no practical work this week (Text and media area)
- PW4 sample solution (updated 29-04-2025 13:11) (File)
- Practical session (Third graded PW [4 hours]): Str... (Text and media area)
- OV7670 datasheet (File)
- streaming.zip (File)
- PW6 description (File)
- Select here your group for PW6 (Group choice)
- Sample solution to PW6 (File)
- Time to work on your project (Text and media area)
- Project requirements: You are allowed to choose yo... (Text and media area)
- Schematic of the GECKO5Education board. (File)
- Complete pin-definition file of the GECKO5Education (File)
- Select here your group for the final project (Group choice)
- Time to work on your project (Text and media area)
- Information on the final presentations: Please mak... (Text and media area)