forked from tanchou/Verilog
Add README and project documentation for FPGA and ESP32 integration
This commit is contained in:
90
Semaine_1/README.md
Normal file
90
Semaine_1/README.md
Normal file
@@ -0,0 +1,90 @@
|
||||
# Verilog
|
||||
|
||||
## Semaine 1
|
||||
|
||||
### Jour 1
|
||||
|
||||
**Matin :**
|
||||
- Exercices HDLbits :
|
||||
- Vectors
|
||||
- Modules : hierarchy
|
||||
- Procedures (commencé)
|
||||
|
||||
**Après-midi :**
|
||||
- Exercices HDLbits :
|
||||
- Procedures
|
||||
- More Verilog features
|
||||
- Circuits
|
||||
- Début de la mise en place de l’environnement :
|
||||
- Téléchargement de oss-cad (toolchain) pour simuler et synthétiser le Verilog HDL
|
||||
- Essais sur des modules Verilog
|
||||
|
||||
---
|
||||
|
||||
### Jour 2
|
||||
|
||||
**Matin :**
|
||||
- Exercices HDLbits :
|
||||
- Latches & Flip-flops
|
||||
- Lecture de documentation
|
||||
|
||||
**Après-midi :**
|
||||
- Exercices HDLbits :
|
||||
- Counters
|
||||
- Difficultés sur la mise en place de l’environnement avec des outils open source :
|
||||
- Téléchargement et installation du driver open source pour le Tang Nano avec Z-Diag
|
||||
|
||||
---
|
||||
|
||||
### Jour 3
|
||||
|
||||
**Matin :**
|
||||
- Lecture de documentation sur le capteur ultrasonique
|
||||
- Implémentation du fonctionnement du capteur pour tester du code en simulation
|
||||
|
||||
**Après-midi :**
|
||||
- Implémentation du module de mesure de distance via le capteur
|
||||
- Implémentation du module de conversion distance → affichage sur 6 LEDs (type capteur de recul)
|
||||
- Implémentation du module top combinant les deux modules précédents (système de radar de recul)
|
||||
- Installation du logiciel propriétaire Gowin FPGA
|
||||
- Prise en main du logiciel avec des programmes simples
|
||||
- Premier montage du capteur sur breadboard
|
||||
- Refonte du module de mesure (capteur avec un seul fil bidirectionnel) + mesure continue
|
||||
- Programmation sur FPGA fonctionnelle
|
||||
- Lecture de documentation sur les LEDs WS2812
|
||||
- Implémentation des modules + testbench
|
||||
- Échec
|
||||
|
||||
---
|
||||
|
||||
### Jour 4
|
||||
|
||||
**Matin :**
|
||||
- Lecture de documentation sur le protocole UART (série)
|
||||
- Implémentation :
|
||||
- `uart_tx` (transmission + encodage) + testbench
|
||||
- `uart_rx` (réception + décodage) + testbench
|
||||
- `uart_tx_rx` (communication complète) + testbench
|
||||
- Explication : relier TX du module A au RX du module B et inversement. Pour envoyer des données, inscrire un byte dans `data_in` et donner une impulsion sur `start`. Pour recevoir, attendre que `valid` passe à 1.
|
||||
|
||||
- Préparation d’un `top-module` pour transmettre la distance mesurée par le capteur au PC via UART
|
||||
|
||||
**Après-midi :**
|
||||
- Implémentation d’un module combinant capteur + transmission UART pour envoyer la distance au PC
|
||||
- Essai réussi : données envoyées via TX depuis le FPGA, reçues par un script Python
|
||||
- Création d’un module UART bidirectionnel :
|
||||
- Depuis le PC, on envoie un chiffre entre 0 et 5 → la LED correspondante toggle sur le FPGA
|
||||
- Le FPGA renvoie l’état actuel
|
||||
- De nombreux bugs
|
||||
- Lecture de code exemple trouvé sur GitHub, résolution partielle des problèmes
|
||||
|
||||
---
|
||||
|
||||
### Jour 5
|
||||
|
||||
- Lecture de code tiers
|
||||
- Essais de différents codes
|
||||
- Réflexion sur la conception du projet final :
|
||||
- Utilisation d’un ESP32 avec le Tang Nano 20K
|
||||
|
||||
---
|
Reference in New Issue
Block a user