• ECTS

    5 crédits

  • Composante

    Faculté des Sciences

Description

Ce cours aborde un éventail large de connaissances allant des fondements de la logique booléenne jusqu’à l’architecture de Systèmes sur puces (SoC : Systems-on-Chips), en passant par les flots de synthèse logiques, l’architecture de processeurs et des bases sur les aspects logiciels embarqués. Le VHDL, langage de description matériel, occupe également une place importante dans cette UE et sera étudié en cours et utilisé en TP, ainsi que dans le cadre d’un projet « Systèmes embarqués ».

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

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 modelling / simulation purposes. Labs include hands-on VHDL exercices (design of a simple stack processor), and an “Embedded system” student project makes it possible to deepen knowledge in the area.

 

Lire plus

Objectifs

Ce cours a pour objectif l’acquisition d’un solide bagage sur les systèmes numériques, leur implantation matérielle et les aspects logiciels.

 

L’UE comprend également un TP ainsi qu’un projet système embarqués :

 

TP (10,5h)

Ici l’idée serait clairement de se familiariser avec 2 technologies:

            - Les microcontrôleurs (STM32 ou RISC-V) avec une approche performance et temps réel

            - Les FPGA via le VHDL car c’est incontournable, et on peut aller vers une étude de cas sur de l’accélération (toujours CNN :-)

 

Projet (10,5h)

Le projet pourrait être un peu « à la carte » avec des formules plus généralistes (microcontroleurs et FPGA) et des sujets plus orientés architecture d’ordinateurs. C’est modulable à mon avis.

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

This course has for objective to provide students with a solid background on digital systems and their hardware implementation, alongside software basics.

The lecture will cover the following topics:

 

Lecture

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, busses, cache memories, instruction pipeline, interfaces

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

6- Fundamentals of operating systems

 

The course further includes Labs and part-time student projects:

 

Labs (10,5h)

Hands-on exercices with

            - VHDL basics, simulation

            - Logic synthesis (ASIC) 

            - FPGA prototyping (optional)

 

Projects (10,5h)

Projects topic decided upon course start. Possible topics cover microcontrollers, compute accelerator implementation and exploitation for 32-bit processors etc.

 

 

 

 

 

Lire plus

Pré-requis nécessaires

Bases en électronique analogique, logique booléenne.

 

 

Pré-requis recommandés* :

Connaissance de la logique CMOS, langage C.

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

Fundamentals of electronics and Boolean logic.

 

 

 

Pré-requis recommandés* :

CMOS logic, C language.

 

Lire plus

Syllabus

Le cours abordera les aspects suivants :

 

1- fondements de la logique: circuits séquentiels et combinatoires

2- architectures de base: machine d’états finis, registres à décalages, chemins de données, mémoires etc.

3- langage de description matériel: le VHDL pour la modélisation, la simulation et la synthèse logique

4- architecture d’ordinateurs: de la machine de Von Neumann aux architectures de processeurs modernes
            - Les microcontrôleurs

            - étude de jeu d’instructions standards (MIPS32, RISC-V)

            - architectures du système: mémoires, bus, mémoires caches, pipelines d’instruction, interfaces

5- architectures d’ordinateurs avancées: NUMA, cohérence de caches, mémoire partagée / distribuée, accélérateurs de calcul

6- notions de systèmes d’exploitation et de parallélisme

Lire plus

Informations complémentaires

CM : 21

TP : 10.5 + 10.5 (Projet)

Lire plus