SystèmesDigitaux. Cours 4

Documents pareils
Systemesdigitaux. Cours 5

Système binaire. Algèbre booléenne

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Les opérations binaires

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

Conversion d un entier. Méthode par soustraction

Algèbre binaire et Circuits logiques ( )

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

IFT1215 Introduction aux systèmes informatiques

GPA770 Microélectronique appliquée Exercices série A

Codage d information. Codage d information : -Définition-

Logiciel de Base. I. Représentation des nombres

IV- Comment fonctionne un ordinateur?

Informatique Générale

Concevoir son microprocesseur

Electronique Numérique

Cours Premier semestre

VIII- Circuits séquentiels. Mémoires

V- Manipulations de nombres en binaire

IFT2880 Organisation des ordinateurs et systèmes

I- Définitions des signaux.

Les fonctions logiques

Représentation des Nombres

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Représentation d un entier en base b

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

MegaStore Manager ... Simulation de gestion d un hypermarché. Manuel du Participant

CHAPITRE VI ALEAS. 6.1.Généralités.

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

2.4 Représentation graphique, tableau de Karnaugh


Manipulations du laboratoire

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels

Licence Sciences et Technologies Examen janvier 2010

Une version javascript sera disponible directement dans le cours prochainement.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

CONFIGURATION ET UTILISATION

La mémoire. Un ordinateur. L'octet. Le bit

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

GUIDE POUR LE PLEXTALK Linio Pocket - LECTEUR DE Podcasts -

QUESTION 1 {2 points}

ProCod. Manuel d utilisation. Software de programmation pour codeurs absolus TWK modèles CRF et DAF CRF DF 08 / 10

BCI - TPSP - Processeurs et Architectures Numériques

RESUME DE COURS ET CAHIER D'EXERCICES

Circuits RL et RC. Chapitre Inductance

CODAGE DES SMS. 2 Commandes «AT» 25 3 Matériels utilisés 55 4 Interfacer un téléphone GSM 73 5 Réalisations électroniques 101

Esterel The french touch star touch esterel advance

DM 1 : Montre Autoquartz ETA

Calculons avec Albert!

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Microprocesseur + Logiciel

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Organisation des Ordinateurs

Acquisition et conditionnement de l information Les capteurs

Les réseaux cellulaires

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

Fiche pédagogique : ma famille et moi

Algorithme. Table des matières

Projet # 3 Serrure à deux clés

Algorithmique et programmation : les bases (VBA) Corrigé

Les nombres entiers. Durée suggérée: 3 semaines

Créez des étiquettes avec Microsoft Word et Excel (Versions Windows 10 et 11)

Vers l'ordinateur quantique

> Mettre une croix dans les cases correspondantes Répondre aux deux consignes

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96

T500 DUAlTACH. JAQUET T500 DualTach Instrument de mesure et de surveillance équipé de 2 entrées fréquence TACHYMETRE 2 CANAUX

Transmissions série et parallèle

Compte bancaire ou assurance vie? 5. Amortissement direct ou indirect?

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Architecture de l ordinateur

Compter à Babylone. L écriture des nombres

Architecture des ordinateurs Introduction à l informatique

Le calcul du barème d impôt à Genève

Cours d Informatique

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

COMMUNICATION ENTRE DEUX ORDINATEURS PAR LASER MODULE EN CODE MORSE OU BINAIRE.

LES ORDRES PERMANENTS

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Progressons vers l internet de demain

Logique séquentielle

Cours Informatique 1. Monsieur SADOUNI Salheddine

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Activité 1. Compter les points Écriture binaire des nombres. Résumé. Liens pédagogiques. Compétences. Âge. Matériel

ReadCard Guide Utilisateur

Défi 1 Qu est-ce que l électricité statique?

LA SECURITE DES CARTES A BANDE MAGNETIQUE

Modules d automatismes simples

Patentamt JEuropaisches. European Patent Office Numéro de publication: Office européen des brevets DEMANDE DE BREVET EUROPEEN

A l aide de votre vous pouvez visiter un site web!

avec des nombres entiers

Chapitre 1 I:\ Soyez courageux!

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

MODE D EMPLOI DU LOGICIEL LIGNES DE TEMPS A partir du film La Mort aux trousses d Alfred Hitchcock

SCL LOGICIEL DE CONTROL

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Exprimer ce coefficient de proportionnalité sous forme de pourcentage : 3,5 %

TP a Notions de base sur le découpage en sous-réseaux

Transcription:

SystèmesDigitaux Cours 4

Types de circuits Il existe2 types de circuits: Circuits combinatoires Circuits séquentiels Avec les circuits combinatoires, la sortie ne dépend QUE de l entrée D autres ontune sortie qui ont une mémoire: Ils peuvent aussi dépendre des valeurs précédentes On appelle ça des circuits séquentiels Pour l instant, on se concentre sur les circuits combinatoires

Circuits combinatoires Les circuits vus jusqu à présent sont tous combinatoires Il existecependantdes composantesclassiquesqui méritent une attention particulière On se concentre sur ces composantes là aujourd hui On va passer au traversde chacun et explorer ce qu on peut faire avec... Commençons par un petit rappel...

Retour en arrière La porteou-exclusif(xor) fait le travail suivant: P Q SORTIE 0 0 0 0 1 1 1 0 1 1 1 0 Il donne 1 quand les entrées sont différentes Le XOR est utilise dans plusieurs systèmes importants... Allons voir quelques exemples d application...

Détectiond erreur Quand on envoiedes données, il se peut qu il y ait erreur S ily en a, on peutretransmettre Comment détecters il y a erreuroupas? Un bit de parité On peutenvoyer l informationet ajouter1 bit Cebit nous aideraà savoir sila donnée estbonne ou pas Information Bit de parité

Detection d erreur La parité peut etrepaireou impaire: Çaveutdire que le nombre de 1 sera pair/impair Si on choisissait pair... On envoie l informationet on comptele nombre de 1 Si le nombre de 1 estpair, on ajouteun 0 Si le nombre de 1 estimpair, on ajoute 1 pour que ça devienne pair Ex: on veut envoyerla séquence1001011 Avec parité paire: 10010110 et impaire 10010111

Additionneur On se sertaussi des XOR dans les additionneurs (et soustracteurs): 0+0=0 0+1=1 1+0=1 1+1=0 (avec retenuede 1) Pour additionner 2 termesde 1 bit, j aibesoin d un XOR À la sortie, j ai1 sommeet 1 retenue On appelle ça un demi-additionneur

Additionneur On peut écrirele tableau de véritéde l additionneur: P Q Somme Retenue 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 C est ce qu on appelle un demi-additionneur La somme estun XOR et la retenueest un ET: Alors, on saitcomment additionner P et Q de 1 bit

Additionneur Comment fait-on pour additionner 2 bits? On additionne les premiers bits: on génère une somme Une retenue peut être générée On additionne les deuxièmesbits avec la retenue du premier bit On doitdonc additionner 3 termes: 1 bit de chaque termeet la retenue du bit précédent

Additionneur Notre additionneur devrait avoir 3 entrées: 1 bit pour P, 1 bit pour Q et une retenue en entrée Notre additionneur devraitavoir2 Somme et retenue P Q C IN S C OUT 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

Additionneur En analysant plus en details, on seraitcapable de dessiner un circuit: P Q C IN S C OUT 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

Additionneur Pour les additionneurs à N bits, c estpareil: La sortie du 2 e bit génère aussiune retenue qui est transmiseau 3 e bit La sortie du 3 e bit génère aussiune retenue qui est transmiseau 4 e bit Le seulbit qui n apas de retenue en entrée c estle premier

Propagation de retenue Ça nous donne la configuration d additionneur de base Additionneur à propagation de retenue ( Carry-ripple adder ) On voit que la retenue se propage d un étageà l autre Pour avoir plus de bits, on ajoute d autres étages...

Propagation de retenue L additionneur à propagation de retenueà 2 grandes caractéristiques: Petite taille Lent On choisit cegenre de circuit quand la vitesse n est pas très importante Pourquoi dit-on que c est lent?

Délai Rappel: Les porteslogiques sont faites de transistors On regarde la sortie du premier inverseur Il y a un certain délaientre l entrée et la sortie Il y a donc toujours un delai entre l entree et la sortie d une porte logique...

Délai Cedélai dépend de: La taillede la porte: ilexistedes portesqui donnent plus de courant (plus rapides) La capacitéà commander: plus de grille de transistors, plus de capacité, moins c est rapide Évidemment: le nombre de portes à traverser Petit délai Plus gros délai Plus gros délai

Délai On retourneà notreadditionneur de 4 bits Pour avoirsomme1, ilfautqu onattende que C OUT du premier additionneur arrive. Pour avoirsomme3, ilfautqu onattende que C OUT du 3 e, qui doitattendre le 2 e qui doitattendrele 1 er... Si j avais 16 bits à additionner, le délai peut devenir long...

Délai L additionneur est un des éléments importants On se sertde çapartoutdans les microcontrôleurset pour le traitement de signaux Les chercheurs ont essayé de l améliorer... Comment réduire le temps de propagation? Il existe plusieurs techniques: Carry look-ahead Carry-save... Sachez simplement que c est un enjeu important...

Soustracteur Il existe 2 grandes familles de soustracteurs: La version classique La version en complémentà 2 Dans la version classique, on procède comme avec l additionneur: On fait la table de vérité: A-B A B Difference Emprunt 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 0 Ça fait un demi-soustracteur

Soustracteur Pour le rendreplus complet, on doit ajouter une 3 e entrée: L emprunt de l étage précédente BIN A B Difference BOUT 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 1 C est le soustracteur complet On peut faire son circuit avec Karnaugh si on le voulait...

Soustracteur On peut connecter des soustracteurs complets ensemble comme avec les additionneurs Et c estla chaîne de retenue(d emprunt) qui risque de prendre beaucoup de temps... Parlons maintenant de l autre méthode...

Soustracteur L autreoption c estle complémentà 2 Imaginons qu on veuille faire A-B: On pourraitprendre B et l additionner à A -B devraitêtre en complémentà 2 Comment mettre B en complément à 2? On inverse les bits Et on additionne 1 Ça s implante bien avec un additionneur...

Soustracteur L idéeest doncd additionner A et ( B) 1) Pour avoir B, on fait le complémentà 1 (inversion) 2) On additionne 1 au complémentà 1 pour avoir un complémenta 2 (CIN 0 =1) 3) Et on additionne normalement... 2) 1) 3)

Overflow Quand on additionne/soustrait 2 nombres il peut arriver1 de 2 choses: Tout peut fonctionner normalement OU, le résultatfinal pourraitne pas être bon Ceciest dû à un phénomene appelé overflow En français: Débordement Si la réponse prend plus d espace que cequi luiest alloué, il peut y avoir overflow

Overflow Ex: En additionnant 2 nombres de 2 bits non signés: (01) 2 +(01) 2 =(10) 2 Le resultatest2, cequi estbon Ex: En additionnant 2 nombres de 2 bits non signés (11) 2 + (11) 2 =(110) 2 (maisj aidroita 2 bits!) Le résultatme donnerait(10) 2 qui n estpas la bonne réponse: on dira qu il y a overflow

Overflow Dans un nombrenon-signé, un overflow se produit quand le résultat est trop gros: S ily a une retenue au DERNIER bit (plus significatif), ily a overflow Sinon, iln y en a pas... Pour les nombressignés, il faut y réfléchirun peu plus...

Overflow Prenonsun casavec 3 bits... -1 + -2 J additionne en complément à 2 Donc(111) 2 + (110) 2 On convertitet çadonne -3... c estbon Mêmes ily a une retenueau dernier bit, la réponse est bonne! Cet indicateur n est peut-être pas bon

Overflow Prenonsun autre-2 + -3 L addition devrait me donner -5 On additionne en complémentà 2: Il y a une retenue... Maisje retrouve 3 à la place de -5. La retenue au dernier bit ne semble pas être très bon...

Overflow En essayant beaucoup d exemples, on viendrait à la conclusion suivante: Pour ne PAS avoirde overflow, ilfautque les 2 DERNIÈRES retenues soient égales Donc, sila dernière retenue est0, celled avantdevrait être 0 Si la dernière retenue est1, celled avantdevraitêtre1 Si les 2 dernièresretenuessont différentes, il y aura overflow

Addition de BCD On utilise parfois les nombresbinaires pour exprimer des nombres décimales: Chaquedécimalepeutallerde 0 a 9 (4 bits) Avec 4 bits, ily a 15 possibilités... 6 de cesvaleursne seront pas utilisées( on ne les comprend pas ) On appelle ca BCD ( binary coded decimals ) Pour exprimerdes nombresa 2 chiffres (décimales) on utilise 8 bits: Par exemple: (76) 10 serait(0111 0110) 2 7 6

Addition de BCD Comment fait-on pour additionner 2 BCD? Prenons l exemple de 3+6: L addition normale fonctionne Prenons maintenant 4+7: En BCD, 1011 ne représente rien L addition normale ne fonctionne pas toujours pour BCD

Addition de BCD Mais qu est-ceque çadevraitdonner en BCD? En décimale, 4+7 devraitdonner (11) 10 Donc: (0001 0001) 2 à la place de (1011) 2 En regardant les chiffres, on peut voirqu il y a une différencede 6 entre 0001 0001 et 1011 Faisons un autretest: J additionne 8+6... Ça aurait du être 0001 0100

Addition de BCD La solution sembleêtred additionner 6 au résultat final Maispas en tout temps! Seulementquandla sommeestplus que 9 Il faut donc: 1) Additionner les termes normalement 2) Voir sic estplus grand que 9 3) Si oui, ilfautajouter6 a la réponse 4) Sinon, on ne fait rien..

Addition de BCD Comment faire pour détectersi c estplus que 9? S 3 S 2 S 1 S 0 00 01 11 10 00 01 11 1 1 1 1 10 1 1 Est-ceque c esttout? Qu arrive-t-il quand on additionne 9+9? S + 3S2 S3S1 Le résultatest18 et cen estpas dansla table de Karnaugh Heureusement, quand c est plus que 15, l additionneur donne COUT=1

Addition de BCD Diagramme inspire du livre(p.141) Si c est plus que 15 Si c est entre 9 et 15 On additionne 6 à la reponse...

Multiplicateur La multiplication estune opération qui demande du temps et des ressources C est habituellement une séquence d additions Quand l une des entrées estune puissance de 2, ça peut faciliter le travail de beaucoup Allons voir pourquoi

Multiplicateur Prenonsle chiffre3 en utilisant 6 bits: 000011 Si je multipliais par 2, j aurais6: 000110 Si je multipliais par 4, j aurais12: 001100 Si je multipliais par 8, j aurais24: 011000 Voit-on quelque chose de particulier?

Multiplicateur Unemultiplication par une puissance de 2 n implique un décalagede n versla gauche Une multiplication de 2 impliqueun décalagede 1 Une multiplication de 4 impliqueun décalagede 2 Une multiplication de 8 impliqueun décalagede 3... Si cen est pas une puissance de 2, les choses se compliquent.

Multiplicateur Faisons une multiplication en binaire pour voir la procédure On multiplie (101) 2 par (11) 2 : On considère le termedu bas à droite On le multipliepar chaque termedu haut On passe au prochain termeà sagauche On le multipliepar chaque termedu haut MAIS la sortie estdecalée de 1 On passe au prochain... Voyons comment implémenter ce genre de choses...

Multiplicateur Essayons de multiplier 101 par 1 bit: Si le bit est0, la sortie est000 Si le bit est1, la sortie est101 Unefaçonsimple de faire cecircuit c estavec une porteet Essayons ça avec 2 bits...

Multiplicateur Essayons de multiplier 101 par 2 bits: Si le bit à droiteest 0, çadonne 000 Si le bit à droiteest 1, çadonne 101 Par la suite, on décalela sortie versla gauche et on considèrele 2 e bit: Si le bit à droiteest 0, çadonne 000 Si le bit à droiteest 1, çadonne 101 Finalement, on additionne

Multiplicateur Voiciun schéma du circuit: L équationestcopiée 2 foispour que ce soitplus compréhensible

Comparateur Dans plusieurs genres de systèmes, on aura besoin de comparer 2 valeurs: Pensez à une montre electronique: les secondes doivent compter jusqu à 60 avant de recommencer Comment déterminersiune valeur estplus petite, égale ou plus grande qu une certaine valeur? On utilise un comparateur

Comparateur Il estpossible de faire çaavec une table de Karnaugh: On veut comparer 2 nombresde 2 bit: 4 éléments Pour comparer 2 nombresde 3 bits: 6 éléments... c est déjà plus grosque cequ onestcapable de faire! Heureusement, il y a d autresfaçons de faire: 1) Soustractionet voir sila différence estplus petite, égaleou plus grandeque 0 2) Utiliser une autre structure Explorons l option #2

Comparateur La méthode de raisonnerc estd y alleravec une certaine méthodologie: On regarde le bit qui représente le plus groschiffre ( bit le plus significatif ou MSB: most significant bit) Si l una 1 et l autre a 0, celuiavec 1 estplus gros S ilssontégaux, on passe au prochain Si l una 1 et l autre a 0, celuiavec 1 estplus gros S ils sont égaux, on passe au prochain... On traduit en termes plus spécifiques...

Comparateur On compare 2 nombres de 4 bits: A et B A estcompose de A 3 A 2 A 1 A 0 B estcompose de B 3 B 2 B 1 B 0 On va commencer par comparer A 3 et B 3 S ilssontegaux, on passe a A 2 et B 2 S ilssontegaux, on passe a A 1 et B 1 S ilssontegaux, on passe a A 0 et B 0

Comparateur Pour voirs ils sontégaux, on peut utiliser le NON-OU-Exclusif(XNOR): A B XNOR 0 0 1 0 1 0 1 0 0 1 1 1 Pour A=B, ilfautque tousles bits soientégaux A 3 doitêtreégala B 3 ET A 2 doitêtreégalà B 2 ET...

Comparateur Pour voirsi A > B, on peut utiliser un raisonnement semblable: Si A 3 =1 et B 3 =0, A estplus grand Et s ilssontégaux, on passe au prochain bit On continue jusqu à la fin A 3 =1 et B 3 =0 A 3 =B 3 =0 et A 2 > B 2

Comparateur Si les deux sont égaux, les 2 premiers bits sont égaux, on doit aller voirle 3 e : Et finalement, on vavoir le 4 e bit siles 3 autressont égaux. À la fin, toutesles parties serontconnectéespar un OU Il suffitque l une de cesconditions soitvraie pour que A>B A 3 =B 3 =0, A 2 =B 2 =0 et A 1 > B 1 A 3 =B 3 =0, A 2 =B 2 =0, A 1 =B 1 et A 0 > B 0

Exemple(seul) Refaitesla mêmeanalyse pour un comparateurà 2 bits pour voirsi A < B

Exemple(seul) Pour que A < B, il faut que B 1 =1 et A 1 =0 S ils sont égaux, il faut voirle prochain bit: Si B 0 =1 et A 0 =0, ilsera plus grand Rappel: maisçac estseulementsia 1 =B 1...

Comparateur Chose intéressante(à revoir seul quand vous aurez du temps): Un XNOR estun XOR inverse Un XOR estdefini par A B+AB DansA > B on a besoinde AB DansA < B on a besoinde A B Et dansles 3 cas, on a besoinde XNOR Si on construisait notrexnor avec des ET/OU, on pourrait recycler plusieurs parties...

Comparateur À la place d utiliser une portexnor toute faite, on peut utiliser ceci: On peutaccédera A B pour A < B et à AB pour A > B En plus on peutaussiaccéderà A XNOR B Çaréduitle nombre de composantesquandon veut un comparateurqui fait A=B, A>B et A<B en mêmetemps

Comparateur Pour un comparateurde 2 bits, çadonne ceci:

Décodeur Imaginons un garde de securité qui contrôle l accès à 4 portes: Les portes mènent à une section différente d un hotel Si le signal de contrôle est 0 c estverrouillé et 1 c est déverrouillé Pour contrôler4 portes, ila besoinde 4 signaux(donc, 4 boutons) Si on le mettait dans un hôtel avec 64 portes, il aurait besoin de 64 boutons...

Décodeur À la place de faire ça, on pourrait assigner un numéro binaire à chaque porte: 00 estla porte1 01 estla porte2 10 estla porte3 11 estla porte4 On aurait besoin de 2 boutons à la place de 4 Avec l autre exemple de 64 portes, on n aurait besoin que de 6 boutons (64=2 6 )

Décodeur La question est donc celle-ci Comment transformer 00,01,10,11 en 0001, 0010, 0100, 1000 pour contrôler les portes? En termestechniques: comment transformer un nombre binaire en one-hot? Réponse: en utilisant un décodeur La fonctiondu décodeur estde transformer un nombre binaire en one-hot one-hot : nombre binaire contenant des 0 partout sauf à UNE seule place...

Décodeur Si le décodeuravait N entrees, il aura toujours 2 N sorties L entrée est un nombre binaire La sortie aura toujoursun SEUL 1 estles autresseront des 0 Le 1 sera à la position qui correspond à l entrée

Décodeur On peut implanter un décodeuravec la logique suivante: La 1 re sortie sera 1 quand l entréeest00 La 2 e sortie sera 1 quandl entrée est01 La 3 e sortie sera 1 quandl entrée est10 La 4 e sortie sera 1 quandl entrée est11

Fonctions logiques avec décodeur Le décodeur offre une facon facile d implanter des circuits Tous les minterms sont disponibles On n a qu àprendre ceuxqui nous intéressentet faire un OU logique Pour faire un XOR, par exemple, on s intéresse aux minterms A B et AB... On les connecteà un OU et on a terminé...

Exemple(seul) Implantez la fonction SOMME d un additionneur avec un décodeur3 a 8 Vousavez le droitd utiliserun décodeur et une porte OU

Exemple(seul) On commence avec la table de verité On dessine le décodeuravecles sorties A B C SOMME 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 Ce sontles sorties qu on doit faire entrer dans le OU

Exemple(seul) Le circuit final ressembledonc à:

Encodeur L encodeurfait l opérationinverse du décodeur: Il prendun code one-hot et le transformeen code binaire Donc, l entrée a une longueur de 2 N et la sortie a une longueur de N

Encodeur On peut determiner son circuit comme ceci: Considéronsl ordre du haut versle bas : A 0 A 1 A 2 A 3 Quandl entréeest1000, la sortie est00 Quandl entréeest0100, la sortie est01 Quandl entréeest0010, la sortie est10 Quandl entréeest0001, la sortie est11 a 0 a 1 a 2 f 1 f 0 a 3

Encodeur Avec cetteinformation, on peut dire que Le MSB qui esten position du haut est: H MSB = A 2 + A 3 Le LSB qui esten position du bas est: B LSB = A 1 + A 3 Cegenre de système fontionne bien quand les règles sont respectéess: Les entrées doivent être en one-hot Doncun seul 1 et le resteest 0 Ce n est pas toujours le cas...

Encodeurde priorité Imaginez un systeme de communication qui relie 1 opérateur central à 4 stations Service d urgence (1000) Sécurité(0100) Entretien(0010) Cuisine (0001) a 0 a 1 a 2 a 3 Lors d un appel, le systemegénèreun nombre binaire pour dire qui connecter à l opérateur Plusieurs appels peuvent arriver en même temps Ex: Si la sécurite appelle, le nombre binaire 01 entre dans le système...

Encodeurde priorité Si la sécuritéet l entretienappellaient en même temps: H MSB A 2 + A 3 = B LSB A 1 + A3 Le MSB et le LSB seraient1: 11 Çanous connecteraità la cuisine! = A 0 : Urgence A 1 : Securité A 2 : Entretien A 3 : Cuisine Il y a donc un problèmesi çafonctionnait commeça... Le problème est l hypothèse que les entrées seront toutes one-hot

Encodeurde priorité Pour résoudrele problème, on utilise un encodeur de priorité: On ne fait plus semblantque c estdu one-hot On ditque çapeutêtre n importequoi, MAIS ily a une priorité à respecter... L urgence sera plus importante que la sécurité La sécurité sera plus importante que l entretien L entretien sera plus importante que la cuisine

Encodeurde priorité Ce genre de chose s implante bien... A 3 A 2 A 1 A 0 MSB LSB 1 0 0 0 0 0 X 1 0 0 0 1 X X 1 0 1 0 X X X 1 1 1 A 3 A 2 A 1 A 0 00 01 11 10 00 1 1 1 01 1 1 1 11 1 1 1 10 1 1 1 A 3 A 2 A 1 A 0 00 01 11 10 00 1 1 01 1 1 1 11 1 1 1 10 1 1 H MSB = A 1 + A 0 B LSB = A + 2 A1 A0

Multiplexeur Un multiplexeur est un sélectionneur: Il sélectionnequelle entrée vapasser à la sortie On pourrait simplifier le diagramme et montrer quelque chose du style: Multiplexeur 2 à 1 Multiplexeur 4 à 1 Évidemment, ce n est pas aussi simple

Multiplexeur On utilise un signal de sélection pour indiquer quelle entrée passe à la sortie Entree0 Entree1 Sel 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1 Sortie

Multiplexeur Voicila table de veritéd un multiplexeur 2 à 1 SEL E 1 E 0 00 01 11 10 0 0 1 1 0 1 0 0 1 1 MUX = SEL E + SEL 0 E 1 Ça nous permetde trouverson circuit...

Fonctions avec multiplexeurs Tout commeles décodeurs, il estpossible d implanter des fonctions avec des MUX On peut implanter une fonction de N variables si notremux a N lignes de sélection C està dire que notre MUX a 2 N entrées Ex: Pour 4 entrées, il y a 2 lignes de sélection On peutimplanter une fonctionà 2 entrées avec un multiplexeur 4-à-1

Fonctions avec multiplexeurs Il est même possible d implanter des fonctions à N entrées avec N-1 sélections Çafait que notre design sera plus efficace La dernière façon était facile: On mettaitsoit 0 ousoit 1 selonla table de verité Cette fois, on va mettren-1 entrées aux sélections La dernière entrée sera parmiles entrées du MUX Il fautjouer un peuavec pour que çamarche...

Exemple Concevezune portexor à 2 entrées avec un MUX 2-à-1.

Exemple On met une des entrées à la sélectionet on voit ce qu il manque: Si A=0 et B=0, la sortie doitêtre0 Ce0 peutsoitêtre un vrai0, ouêtre égalàb On ne le saitpas... continuons... Si A=0 et B=1, la sortie doitêtre1 On saitmaintenantque l entrée 0 doitêtreb

Exemple On continue le raisonnement: Donc: Si A=1 et B=0, la sortie doitêtre1 Ce1 peutsoitetre 1 oul inversede B On ne le saitpas... on continue... Si A=1 et B=1, la sortie doitêtre0 Ca ne peutetreque l inversede B

Exemple(seul) Implantez la fonction à 3 entrées qui calculela retenue dans une addition Utilisezun MUX 4-à-1

Exemple(seul) Pour 3 entrées, on a besoin d un mux à 2 sélections (4 à 1 commedans la question) On va utiliser A et B dansla sélectionet C sera aux entrées A B C C OUT 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1

Exemple(seul) Quand A=0 et B=0, on a toujours 0. Entree0 sera 0 Quand A=0 et B=1, la sortie estégaleà C. Entree1 sera donc connectéà C Quand A=1 et B=0, la sortie estégaleà C Entree2 sera aussiconnectéà C Quand A=1 et B=1, la sortie esttoujours 1. Entree3 sera 1

Exemple(seul) Le circuit final ressemblera à ceci: