# Workshop | Introduction aux FPGA
> Workshop d'introduction à la conception de circuits intégrés sur FPGA. Ce workshop sera présenté durant la conférence "leHACK 2022".

[[_TOC_]]

# I. Introduction 
FPGA, ASIC, HDL, circuits logiques, ces mots ne vous disent probablement rien bien que supportant le fonctionnement de bon nombre de vos équipements électronique et informatique.

L'objectif de ce Workshop est donc de vous introduire quelques notions de conception de circuits intégrés ainsi que l'outillage utilisé durant la phase d'ingénierie.

## 1. Objectifs
Ce Workshop étant prévu pour vous faire découvrir le fonctionnement d'un FPGA et de ses avantages, les objectifs sont assez simples :
 - Comprendre la différence entre un circuit intégré dédié (FPGA, ASIC) et un micro-contrôleur.
 - Comprendre l'architecture générale d'un FPGA.
 - Pouvoir utiliser les logiciels de simulation et de synthétisation.
 - Écrire ses premiers design de circuit intégré en langage VHDL.
 - Exploiter les entrés / sorties du FPGA
 - Rock'n'roll baby ?

## 2. Structure du Workshop
Ce workshop se présente sous la forme de mini travaux pratiques associés à diverses ressources documentaire. L'idée étant de vous faire manipuler très rapidement pour que vous ne passiez pas toute votre nuit à lire de la documentation.

Chaque exercice sera donc structuré comme suit : 
1. Explication de l'exercice et des objectifs à réaliser.
2. Petit morceau de théorie sur les instructions à utiliser.
3. Les différentes étapes de l'exercice.
4. Ma solution pour l'exercice et les explications qui vont avec.

De plus, je ferais le plus souvent possible des parallèles avec le développement logiciel pour vous présenter les ressemblances et différences avec la conception de circuit intégré.

## 3. Ressources et matériel
Pour ce workshop, un  certain nombre de ressources vous seront mises à disposition.
Ces ressources sont présentées sous la forme de PDF, document texte et page web. Chaque ressource est accessible depuis internet et / ou en [archive](/archives/) dans ce dépôt git.

D'un point de vu matériel, vous aurez à disposition les composants suivants : 
 - Carte d'évaluation FPGA : BeMicro Max 10, Arrow ( [page produit](https://www.arrow.com/en/products/bemicromax10/arrow-development-tools), [documentation](https://static6.arrow.com/aropdfconversion/d01957aa0e408e3a60ba0fd34cf1639a41cad5d1/bemicrom10_getting_started.pdf))
 - Joystick (2 axes + un bouton poussoirs)
 - Servomoteur 9g

 