15 / 63 · Concept
De la table de vérité au MUX et au développement de Shannon
Déduire la logique de sélection et décomposer une fonction quelconque à l'aide de MUX.
Les leçons sont gratuites. Inscrivez-vous pour enregistrer vos progrès.
Déduire l'équation de sélection
Pour produire a quand sel=0 et b quand sel=1, multipliez chaque entrée par sa condition de sélection et réunissez les résultats par OR.
Avec , seul a reste ; avec , seul b reste. Si a=b, modifier sel ne change pas la sortie. Pour détecter une erreur de sélection, il faut donc impérativement des données différentes.
Le chemin bleu correspond à l'entrée choisie. Rendez a et b différents, puis changez sel. Avec des valeurs égales, une sélection mal câblée est difficile à distinguer en observant seulement la sortie.
y = sel ? b : a
Un MUX décompose n'importe quelle fonction logique
Pour une fonction booléenne F, appelons les sous-fonctions obtenues en fixant s respectivement à 0 et à 1.
C'est le développement de Shannon. s ? F1 : F0 décompose une fonction en deux parties. Pour , choisir a comme sélection donne et : un MUXMultiplexeur Circuit combinatoire reliant une entrée parmi plusieurs à la sortie selon une sélection. La correspondance entre bits de sélection et numéro d'entrée doit être spécifiée. et une inversionNégation L'opération NOT échange 0 et 1. Une barre au-dessus d'une expression applique NOT à toute l'expression qu'elle couvre. En savoir plus réalisent XOR.
Sélection 4-vers-1 et priorité
Sélectionner une entrée parmi quatre avec deux bits demande deux étages de MUX 2-vers-1. En revanche, if (req0) ... else if (req1) ... privilégie la première requête lorsque plusieurs sont actives. Sélection par adresse et sélection prioritaire sont des problèmes différents.
assign y = sel[1] ? (sel[0] ? d3 : d2)
: (sel[0] ? d1 : d0);Dans un arbre équilibré idéal de entrées, le chemin compte m étages. Le retard physique dépend aussi des arrivées, des charges et du câblage. Décomposer la fonction fournit des candidats de réalisation, pas une preuve de retard optimal.
Essayez vous-même
Réalisez par un MUX utilisant a comme sélection. Quelles sont ses deux entrées de données ?
Lire l’explication
Pour , ; pour , . Donc assign f = a ? b : c;. Calculez d'abord les sous-fonctions pour ne pas inverser les données correspondant aux sélections 0 et 1.