L’objectif de ce TP consiste à écrire un programme permettant de concevoir des circuits logiques combinatoires (CLCs) et d’en calculer la table de vérité (partie bonus).
Un CLC est un ensemble de composants interreliés, comprenant des entrées de circuit, des sorties de circuit et des portes logiques. Une porte logique est une composante qui reçoit un signal, en entrée, et produit un signal résultat, en sortie. Le signal produit par la porte logique dépend du signal reçu en entrée et de sa table de vérité. Pour une combinaison donnée de signaux en entrée, la porte produit invariablement une seule et même sortie.
Dans ce travail pratique, nous disposons d’un ensemble de base de portes logiques : la porte ET, la porte OU, la porte XOR (OU Exclusif) et la porte NOT (Négation). Ce travail consiste à créer une librairie permettant de concevoir un circuit en y ajoutant une combinaison de composants de circuit (entrées de circuit, portes logiques et sorties de circuit) et en spécifiant les liaisons entre les différentes composantes. Une liaison permet à un signal de se propager d’une composante du circuit vers une autre.
Une fois le circuit conçu, un ensemble de fonctions de la librairie permettront de :
- Vérifier la validité du circuit conçu : il existe plusieurs critères pour établir la validité d’un circuit et la plupart sont déjà prises en compte par la conception. Cependant, il restera un critère à vérifier et qui sera de s’assurer que toutes les composantes sont reliées entre-elles.
- Propager un signal reçu sur les entrées du circuit pour calculer le signal en sortie du circuit.
Ce projet consiste à concevoir un programme de simulation de circuits logiques. Les circuits pourront inclure des portes logiques de base.
- Implémentation de circuits logiques spécifiques selon les spécifications fournies.
- Simulation et vérification du comportement des circuits conçus.
- Validation des conceptions avec des jeux de tests appropriés.
Pour travailler avec ce projet de circuits logiques, suivez ces étapes :
- Clonez ce dépôt sur votre machine locale.
- Codez votre projet, une version d'essai est fournie par le professeur.
- Développez et concevez vos circuits logiques.
- Documentez vos conceptions et résultats obtenus.
- Testez vos circuits avec différents jeux de tests pour vérifier leur bon fonctionnement.
L'organisation du projet est la suivante :
README.md
: Le fichier que vous lisez actuellement.docs/
: Documentation du projet, manuels d'utilisation, schémas, etc (si applicable).LICENSE
: La licence du projet (par exemple, MIT License).
Ce projet est sous licence [Insérer ici la licence de votre choix, par exemple, MIT License]. Consultez le fichier LICENSE
pour plus de détails.