Réalisez un multiplieur

Dans ce chapitre nous allons réaliser un multiplieur.

Réalisez un multiplieur



Principe

Illustrons le processus de multiplication par un exemple basé sur deux entiers non signés de 4 bits, A[0..3] et B[0..3].


Exemple

Voici par exemple la multiplication de A et B, où A=6 et B=7 et le résultat A x B=42.

Comme pour une multiplication décimale, on commence par multiplierA[0..3] par B[0] (c'est-à-dire 0b0110 x 1), puis A[0..3] par B[1]A[0..3] par B[2] et enfin  A[0..3] par B[3].

Le résultat est ensuite fabriqué par une série d'additions élémentaires mises en cascades les unes après les autres.


Dans l'exemple ci-dessous, on notera que les retenues des additions des 4 nombres de 4 bits ne sont pas inscrites sur la figure pour raison de lisibilité, mais elles sont bien prises en compte au moment de l'addition.

Principe de la multiplication binaire illustré par un exemple

Principe de la multiplication binaire illustré par un exemple


Implémentation logique

La multiplication des nombres entiers A et B peut être mise en œuvre en utilisant des circuits de multiplication binaires élémentaires assemblés sous forme de matrices.

Dans chaque cellule de multiplication, l’idée principale est de calculer le produit P = Ai x Bj (qui correspond à une porte AND) et d’ajouter la somme précédente et la retenue précédente. La prochaine somme est propagée vers le bas, tandis que la prochaine retenue est connectée à la cellule de multiplication située à gauche.

Cellule de multiplication élémentaire à base de porte AND et additionneur complet

Cellule de multiplication élémentaire à base de porte AND et additionneur complet

La cellule de multiplication élémentaire doit vérifier la table de vérité donnée ci-dessous.

Table de vérité de la multiplication élémentaire

Table de vérité de la multiplication élémentaire

La cellule peut être composée d'une cellule d'additionneur complet et d'une porte AND, comme indiqué dans le schéma du dessous.

Schéma de principe de l'addition 1 bit avec DSCH

Schéma de principe de l'addition 1 bit avec DSCH

Une fois le multiplieur élémentaire validé, nous le transformons en un seul symbole qui encapsule la fonction AND et la fonction addition "Fadd", pour faciliter la construction de structures à plusieurs bits.

Multiplieur 4 bits

L'implémentation d'une multiplication de deux nombres de 4 bits est proposée ci-dessous. Le circuit multiplie l'entrée A (clavier supérieur) avec l'entrée B (clavier inférieur) qui produit un résultat P sur 8 bits. Dans la simulation logique, l'affichage 8 bits est configuré en mode décimal pour faciliter l'interprétation du résultat.

Multiplication de A et B (4 bits), résultat sur 8 bits

Multiplication de A et B (4 bits), résultat sur 8 bits

Dans la configuration de simulation proposée, A=7 et B=6, le résultat qui combine les 8 sorties binaires en un seul afficheur produit la valeur entière non signée 42.

Du point de vue topologique, la donnée B est propagée verticalement sur l'ensemble des cellules, la donnée A horizontalement, les produits se trouvant alors sur le bord droit pour le poids faible P[0..3] et sur le bord inférieur pour le poids fort P[4..7]. Chaque bloc réalise une multiplication binaire.

Topologie du multiplieur

Topologie du multiplieur 4 x 4 bits


Dans ce chapitre vous avez appris à concevoir un circuit de multiplication élémentaire.

Vous allez pouvoir maintenant implémenter et simuler à l'aide du logiciel DSCH n'importe quelle opération combinatoire (addition, soustraction, multiplication) de nombres entiers.


Modifié le: samedi 28 décembre 2019, 13:05