Encodeur

Un encodeur effectue le travail inverse du décodeur: lorsqu’une de ses \(2^n\) (ou moins) entrées est activée, il donne le code binaire correspondant sur ses \(n\) sorties vues comme un vecteur binaire. Le circuit ne nécessite pas vraiment d’entrée pour \(D_0\).

Encodeur 3 bits. Encodeur 3 bits

Tableau 10 : Tableau de vérité pour l'encodeur 3 bits
$$D_0$$ $$D_1$$ $$D_2$$ $$D_3$$ $$D_4$$ $$D_5$$ $$D_6$$ $$D_7$$   $$x$$ $$y$$ $$z$$
1 0 0 0 0 0 0 0   0 0 0
0 1 0 0 0 0 0 0   0 0 1
0 0 1 0 0 0 0 0   0 1 0
0 0 0 1 0 0 0 0   0 1 1
0 0 0 0 1 0 0 0   1 0 0
0 0 0 0 0 1 0 0   1 0 1
0 0 0 0 0 0 1 0   1 1 0
0 0 0 0 0 0 0 1   1 1 1

Cette configuration d’encodeur exige qu’une seule entrée soit activée à la fois. Activer plus d’une entrée ne correspond en effet à rien de valide: comment donner un sens à une telle combinaison au moyen d’un vecteur de \(n\) bits? Les sorties produites alors seront des vecteurs binaires sans signification.

Encodeur à priorité

Un encodeur à priorité met en oeuvre une priorité entre les entrées. S’il y a plus d’une entrée 1 en même temps, la sortie sera celle qui correspond à l’entrée active qui a la plus grande priorité. Voici le tableau de vérité pour un encodeur 2 bits à priorité, dans lequel on a ajouté une sortie \(V\) qui indique la validité des sorties. Si aucune entrée n’est active, \(V=0\) et les sorties \(x\) et \(y\) ne doivent pas être prises en compte.

Lorsque des entrées sont activées, c’est celle qui a le plus grand indice qui est prioritaire.

Tableau 11 : Tableau de vérité pour encodeur 2 bits à priorité
$$D_0$$ $$D_1$$ $$D_2$$ $$D_3$$   $$x$$ $$y$$ $$V$$
0 0 0 0   X X 0
1 0 0 0   0 0 1
X 1 0 0   0 1 1
X X 1 0   1 0 1
X X X 1   1 1 1

Diag-K pour x. Diag-K pour \(x\)

Diag-K pour y. Diag-K pour \(y\)

En simplifiant, on trouve les expressions suivantes:

\[x = D_2 + D_3\] \[y = (D_1 D_2^\prime) + D_3\] \[V = D_0 + D_1 + D_2 + D_3\]

Encodeur 2 bits à priorité, en P de S. Encodeur 2 bits à priorité, en P de S

Puisque le terme \(x = D_2 + D_3\) est déjà calculé pour \(x\), on peut le réutiliser pour construire le terme pour \(V\), tel qu’illustré ci-dessous, ce qui évite d’utiliser une porte OU à quatre entrées.

Encodeur 2 bits à priorité avec ré-utilisation d'un des termes. Encodeur 2 bits à priorité avec ré-utilisation d’un des termes


Sous-module précédent:
Sous-module suivant: