• ECTS

    5 credits

  • Training structure

    Faculty of Science

Description

This course covers a wide range of topics, from the fundamentals of Boolean logic to the architecture of systems-on-chips (SoCs), including logic synthesis flows, processor architecture, and the basics of embedded software. VHDL, a hardware description language, also plays an important role in this course and will be studied in class and used in practical work, as well as in an "Embedded Systems" project.

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

This course covers a wide range of topics ranging from fundamentals of Boolean logic to digital SoC (Systems-on-Chips) architecture, including digital design flows, computer architecture, and embedded software basics. VHDL will be studied in this lecture, for both logic synthesis and modeling/simulation purposes. Labs include hands-on VHDL exercises (design of a simple stack processor), and an "Embedded system" student project makes it possible to deepen knowledge in the 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 TP and an embedded systems project:

 

Practical work (10.5 hours)

Here, the idea would clearly be to familiarize yourself with two technologies:

            - Microcontrollers (STM32 or RISC-V) with a focus on performance and real-time capabilities

            - FPGAs via VHDL, because it's essential, and we can move on to a case study on acceleration (still CNN :-)

 

Project (10.5 hours)

The project could be a bit "à la carte" with more general formulas (microcontrollers and FPGAs) and topics more focused on computer architecture. In my opinion, it's flexible.

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

This course aims to provide students with a solid background in digital systems and their hardware implementation, alongside software basics.

The lecture will cover the following topics:

 

Reading

1- Fundamentals of digital logic: combinatorial and sequential circuits

2- Basic constructs: Finite State Machines, shift registers, datapaths, 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 organization: memories, buses, cache memories, 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 are decided upon at the start of the course. Possible topics include microcontrollers, compute accelerator implementation and exploitation for 32-bit processors, etc.

 

 

 

 

 

Read more

Mandatory prerequisites

Fundamentals of analog electronics, Boolean logic.

 

 

Recommended prerequisites:

Knowledge of CMOS logic, C language.

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

Fundamentals of electronics and Boolean logic.

 

 

 

Recommended prerequisites:

CMOS logic, C language.

 

 

Read more

Syllabus

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 modeling, simulation, and logic synthesis


4- Computer architecture: from Von Neumann machines to modern processor architectures - Microcontrollers

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

            - system architectures: memories, buses, cache memories, instruction pipelines, interfaces

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

6- concepts of operating systems and parallelism

Read more

Additional information

CM: 21

TP: 10.5 + 10.5 (Project)

Read more