Module: Structure machine 2 Mohammed Fethi KHALFI [email protected] Chapitre 2 : La logique combinatoire Université Djilali Liabés- Sidi Bel Abbes Introduction La donnée de base manipulée par la machine est le bit qui ne peut prendre que deux valeurs: 0 et 1. Les transistors constituent les circuits physiques de la machine.1,4 milliards de transistors pour le Core i7 Ces circuits physiques sont construits à partir de circuits logiques, c'est-à-dire de circuits intégrés spécialisés, destinés à réaliser des opération arithmétiques et logiques. Tout ordinateur est donc conçu à partir de circuits intégrés qui ont tous une fonction spécialisée (décodage, multiplexage, encodage, comparaison, opérations arithmétiques (addition, soustraction, ...)) 2 Les circuits combinatoires Objectifs Apprendre la structure de quelques circuits combinatoires souvent utilisés ( demi additionneur , additionneur complet,……..). Apprendre comment utiliser des circuits combinatoires pour concevoir d’autres circuits plus complexes. 3 1.Les Circuits combinatoires Un circuit combinatoire est un circuit numérique dont les sorties dépendent uniquement des entrées. Si=F(Ei) Si=F(E1,E2,….,En) E1 S1 E2 S2 .. En Circuit combinatoire .. Sm Schéma Bloc • C’est possible d’utiliser des circuits combinatoires pour réaliser d’autres circuits plus complexes. 4 Exemple de Circuits combinatoires Voici une liste des principales fonctions standards combinatoires : 1. 2. 3. 4. 5. 6. 7. DemiAdditionneur Additionneur complet Comparateur Multiplexeur Démultiplexeur Encodeur Décodeur 5 Additionneur • Pour réaliser des additions binaire de 2 nombres A et B de n bits on décompose un circuit en deux parties: ∎ Un circuit correspondant à l’addition des bits de poids faible a0 et b0 (il n’y a pas de retenue propagée à prendre en compte) ---- Demi_Additionneur ∎ Un circuit correspondant à l’addition des bits de poids supérieur ai et bi (prendre en compte la retenue ri-1 propagée depuis le rang i-1) ---- Additionneur_Complet 6 Demi Additionneur 7 7 DemiAdditionneur Le demi additionneur est un circuit combinatoire qui permet de réaliser la somme arithmétique de deux nombresA et B chacun sur un bit. A la sotie on va avoir la somme S et la retenu R (Carry). On parle de « demi-add » car on ne prend pas en compte une retenue en entrée. A B S DA R 8 8 Pour trouver la structure ( le schéma ) de ce circuit on doit en premier dresser sa table de vérité •La table de vérité associée : A 0 0 1 1 B 0 1 0 1 R 0 0 0 1 S 0 1 1 0 De la table de vérité on trouve : R A.B S A.B A.B A B 9 R A.B S A.B A.B 10 R A.B S A B A S B R 11 L’additionneur complet pour additionner deux bits situés au milieu d'un mot, il faut aussi prendre en compte la retenue provenant de l'addition du bit précédent et propager sa retenue au bit suivant 12 L’additionneur complet En binaire lorsque on fait une addition, Il faut en fait tenir compte de la retenue des bits de poids inférieurs. r4 + r3 r2 r1 r0= 0 a4 a3 a2 a1 b4 b3 b2 b1 + ri-1 a i bi ri si r4 s4 s3 s2 s1 13 3.1 Additionneur complet 1 bit L’additionneur complet un bit possède 3 entrées : ◦ ai : le premier nombre sur un bit. ◦ bi : le deuxième nombre sur un bit. ◦ ri-1 : le retenue entrante sur un bit. Il possède deux sorties : ◦ Si :la somme ◦ Ri la retenue sortante ai bi ri-1 Full Adder Si Ri 14 Table de vérité d’un additionneur complet sur 1 bit ai bi ri-1 r i si 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 Si Ai .Bi .Ri 1 Ai .Bi .Ri 1 Ai .Bi .Ri 1 Ai .Bi .Ri 1 Ri Ai Bi Ri 1 Ai Bi Ri 1 Ai Bi R i 1 Ai Bi Ri 1 15 Si on veut simplifier les équations on obtient : Si Ai .Bi .Ri 1 Ai .Bi .R i 1 Ai .B i .R i 1 Ai .Bi .Ri 1 Si Ai .(Bi .Ri 1 Bi .R i 1 ) Ai .(Bi .R i 1 Bi .Ri 1) Si Ai (B R )) A .(B R ) i i 1 i i i 1 Si A B R i i i 1 Ri Ai Bi Ri 1 Ai Bi Ri 1 Ai Bi R i 1 Ai Bi Ri 1 Ri Ri 1.( Ai .Bi Ai .Bi ) Ai Bi (R i 1 i Ri 1 ) Ri Ri 1.(Ai Bi ) Ai Bi 16 3.3 Schéma d’un additionneur complet R i Ai .Bi R i 1.(Bi Ai ) Si Ai Bi R i 1 Ai Bi Ri-1 Si Ri 17 R A.B S A B A S B R 11 •On remarque que X etY sont les sorties d’un demi additionneur ayant comme entréesA et B •On remarque que Z etT sont les sorties d’un demi additionneur ayant comme entrées X et Ri-1 Y AI BI RI Demi Add X T Demi Add RI-1 Z S1I8 Additionneur sur 4 bits Un additionneur sur 4 bits est un circuit qui permet de faire l’addition de deux nombres A et B de 4 bits chacun ◦ A(a3a2a1a0) ◦ B(b3b2b1b0) En plus il tient en compte de la retenu entrante En sortie on va avoir le résultat sur 4 bits ainsi que la retenu ( 5 bits en sortie ) Donc au total le circuit possède 9 entrées et 5 sorties. Avec 9 entrées on a 29=512 combinaisons !!!!!! Comment faire pour représenter la table de vérité ????? Il faut trouver une solution plus facile et plus efficace pour concevoir ce circuit ?0 19 •Lorsque on fait l’addition en binaire , on additionne bit par bit en commençant à partir du poids fiable et à chaque fois on propage la retenue sortante au bit du rang supérieur. L’addition sur un bit peut se faire par un additionneur de 1 bits. + r3 a4 b4 r2 a3 b3 r1 a2 b2 r0 = 0 a1 b1 r4 s 4 r3 s 3 r2 s 2 r1 s 1 r4 s4 s3 s2 s1 Résultat final 20 3.4.1 Additionneur 4 bits ( schéma ) R0=0 A3 B3 A4 B4 R2 R3 ADD4 R4 S4 ADD3 S3 A2 B2 ADD2 S2 A1 B1 R1 ADD1 S1 21 22 Le Comparateur C’est un circuit combinatoire qui permet de comparer entre deux nombres binaire A et B. Il possède 2 entrées : ◦ A :sur un bit ◦ B :sur un bit A Comparateur B Il possède 3 sorties ◦ fe : égalité ( A=B) ◦ fi : inférieur ( A < B) ◦ fs : supérieur (A > B) 1 bit fi fe fs 23 Comparateur sur un bit A B fs fe fi 0 0 0 1 0 0 1 0 0 1 fs A.B 1 0 1 0 0 fi AB 1 1 0 1 0 fe AB AB A B fs fi 24 Schéma d’un comparateur sur un bit fs A.B fi AB fe fs fi A fs fe B fi 25 Next … 49