• ECTS

    5 credits

  • Training Structure

    College of Sciences

Description

This course covers a broad range of topics, from the fundamentals of Boolean logic to the architecture of systems-on-chip (SoC), including logic synthesis flows, processor architecture, and the basics of embedded software. VHDL, a hardware description language, also plays a significant role in this course unit and will be studied in lectures and used in lab sessions, as well as in the context of an “Embedded Systems” project.

------------------------------------------------------------------------------------------------------------------------------------------------------------

This course covers a wide range of topics, from the fundamentals of Boolean logic to digital SoC (Systems-on-Chip) architecture, including digital design flows, computer architecture, and the basics of embedded software. VHDL will be covered in this course for both logic synthesis and modeling/simulation purposes. Lab sessions include hands-on VHDL exercises (design of a simple stack processor), and a student project on “Embedded Systems” allows students to deepen their knowledge in this area.

 

Read more

Objectives

The objective of this course is to provide students with a solid foundation in digital systems, their hardware implementation, and software aspects.

 

The EU also includes a practical training course and an embedded systems project:

 

Practical Training (10.5 hours)

The idea here would clearly be to become familiar with two technologies:

            - Microcontrollers (STM32 or RISC-V) designed for performance and real-time capabilities

            - FPGAs using VHDL, since it's a must, and we can move on to a case study on acceleration (still CNNs :-)

 

Project (10.5 hours)

The project could be somewhat “à la carte,” with more general topics (microcontrollers and FPGAs) and others more focused on computer architecture. In my opinion, it’s flexible.

------------------------------------------------------------------------------------------------------------------------------------------------------------

The objective of this course is to provide students with a solid foundation in digital systems and their hardware implementation, along with the basics of software.

The lecture will cover the following topics:

 

Reading

1- Fundamentals of Digital Logic: Combinational and Sequential Circuits

2- Basic constructs: finite-state machines, shift registers, data paths, memories, etc.

3- Hardware Description Language: VHDL for modeling, simulation, and logic synthesis

4- Computer Architecture: From the Von Neumann Machine to Modern Computer Architectures

            - Microcontrollers

            - standard instruction set architectures (MIPS32, RISC-V)

            - computer architecture: memory, buses, cache memory, instruction pipeline, interfaces

5-Advanced concepts: NUMA, cache coherence, shared/distributed memories, compute acceleration

6- Fundamentals of Operating Systems

 

The course also includes labs and part-time student projects:

 

Labs (10.5 hours)

Hands-on exercises with

            - VHDL basics, simulation

            - Logic synthesis (ASIC) 

            - FPGA prototyping (optional)

 

Projects (10.5 hours)

Project topics will be decided at the start of the course. Possible topics include microcontrollers, the implementation and use of compute accelerators for 32-bit processors, etc.

 

 

 

 

 

Read more

Mandatory Prerequisites

Fundamentals of analog electronics and Boolean logic.

 

 

Recommended prerequisites*:

Knowledge of CMOS logic and the C programming language.

-----------------------------------------------------------------------------------------------------------------------------------------------------------

Fundamentals of electronics and Boolean logic.

 

 

 

Recommended prerequisites*:

CMOS logic, C language.

 

 

Read more

Course Outline

The course will cover the following topics:

 

1. Fundamentals of Logic: Sequential and Combinational Circuits

2- Basic architectures: finite-state machines, shift registers, data paths, memories, etc.

3- Hardware description language: VHDL for logic modeling, simulation, and synthesis

4- Computer Architecture: From the Von Neumann Machine to Modern Processor Architectures
- Microcontrollers

            - Analysis of standard instruction sets (MIPS32, RISC-V)

            - System architectures: memory, buses, caches, instruction pipelines, interfaces

5- Advanced computer architectures: NUMA, cache coherence, shared/distributed memory, computing accelerators

6- Basics of Operating Systems and Parallelism

Read more

Additional Information

CM: 21

TP: 10.5 + 10.5 (Project)

Read more