Download - Cours Elec Num 3

Transcript
  • 7/31/2019 Cours Elec Num 3

    1/15

    66

    Partie 3Logique combinatoire

    67

    Circuits logiques combinatoiresCircuits logiques combinatoires

    La transmission de donnes ncessite frquemment des oprationsde conversion, de transposage et daiguillage. On utilise pourcela des circuits combinatoires .

    Circuit combinatoire = circuit dont ltat de sortie dpenduniquement de ltat de ses entres

    pas de mmorisation

    plus facile tudier

    Exemples : dcodage, codage, transcodage, multiplexage,dmultiplexage, addition, multiplication, comparaison, ...

  • 7/31/2019 Cours Elec Num 3

    2/15

    68

    TranscodageTranscodage

    Un transcodeur transforme une information disponible enentre sous forme donne (gnralement un code) en la mme

    information, mais sous une autre forme (gnralement un autrecode).

    Trois types de transcodeurs :

    . . .

    2 N

    e n

    t r

    e s

    code binaireN bits

    2 N

    s o r

    t i e

    s

    .

    .

    .

    code binaireN bits

    code binaireN2 bits

    code binaireN1 bits

    codeur dcodeur transcodeur

    69

    DDcodeurscodeurs

    Le dcodeur tablit une correspondanceentre un code dentre (exprim en binaire)et une sortie! Si le code dentre est 1101 2 = 13 10,cest la sortie n 13 qui sera active

    en gnral, une seule sortie peut treactive la fois

    en gnral, le nombre de sorties vaut 2 N

    certains dcodeurs sont conus pour avoirleur sortie active au niveau bas (sortiedsactive = niveau haut)

    2 N

    s o r

    t i e s

    .

    .

    .

    code binaire

    N bits

  • 7/31/2019 Cours Elec Num 3

    3/15

    70

    DDcodeurscodeurs

    Exemple : dcodeur 3 bits 74F138 (dcodeur 1 parmi 8)

    entres devalidation

    (EN = enable)

    sortie active = tat basA : bit de poids faible

    71

    DDcodeurscodeurs

    diagramme logique du 74F138

  • 7/31/2019 Cours Elec Num 3

    4/15

    72

    DDcodeurscodeurs

    Certains dcodeurs nutilisent pas toute la gamme des 2 N codesdentre possibles.

    Exemple : dcodeur BDC - dcimal 74LS424 entres (pour coder 0 9) et 10 sorties (0 9)

    inutilis

    73

    DDcodeurscodeurs

    Exemple dapplication : excution squentielle de programmesdans un lave-vaisselle

    La plupart des dcodeurs du commerce sont de type 1-parmi-8(3 bits), 1-parmi-16 (4 bits), ou 1-parmi-10 (BDC-dcimal)

    Il est ais de les combiner pour dcoder davantage dentres

    compteurbinaire dcodeur

    codebinaire prlavage

    cycle 1

    cycle 2

    essorage

    horloge

  • 7/31/2019 Cours Elec Num 3

    5/15

    74

    DDcodeurscodeurs

    Accroissement de capacit de dcodage par assemblage dedeux dcodeurs 3 bits pour raliser un seul dcodeur 4 bits

    A

    B

    C

    AB

    C

    ABCD

    X0

    X7

    X8

    X15

    75

    CodeursCodeurs

    Le codeur (ou encodeur) possde possde plusieurs entres,dont une seule est active la fois. Il fournit en sortie le codebinaire correspondant.

    En gnral, il possde 2 N entres et N sorties

    Exemple : codeur lmentaire 2 bits

    110001010010100100

    001000 ABZ0Z1Z2Z3

    . . .

    2 N

    e n

    t r

    e s

    code binaireN bits

    ! 1

    ! 1

    Z0Z1Z2Z3

    A

    B

  • 7/31/2019 Cours Elec Num 3

    6/15

    76

    CodeursCodeurs

    Pour viter les conflits, les codeurs fixent gnralement un ordrede priorit parmi les entres. La priorit est habituellement

    donne au bit de poids le plus lev = codeur prioritaire

    11xxx101xx1010x100001000

    ABZ0Z1Z2Z3

    BA

    BA

    110001010010100100001000

    ABZ0Z1Z2Z3

    codeur non prioritaire codeur prioritaire

    77

    CodeursCodeurs

    Exemple : codeur proritaire 3 bits 74F148

    Application : clavier dune calculatrice = un code binaire est misen fonction de la touche active

    entrescomplmentes =

    un niveau BASactive lentre

  • 7/31/2019 Cours Elec Num 3

    7/15

    78

    CodeursCodeurs

    Ralisation dun codeur prioritaire 4 bits par assemblage de deuxcodeurs 3 bits

    79

    TranscodeurTranscodeur

    Le transcodeur convertit un code en un autre.Par exemple binaire vers BCD.

    Exemple : transcodeur pour BCD pour affichage septsegments

    code binaireN2 bits

    code binaireN1 bits

    ABCD

    trans-codeur

    chaquesegment

    VCC

    a

    d

    b

    c e

    f

    g

  • 7/31/2019 Cours Elec Num 3

    8/15

    80

    TranscodeurTranscodeur

    Table de vrit du transcodeur BCD - affichage 7 segments

    00011001001

    00000000001

    1001110111001000000110

    01001001010

    00011010010

    00001101100

    00100100100

    10011111000

    10000000000

    gf edcba ABCDa

    d

    b

    c e

    f

    g

    81

    MultiplexeurMultiplexeur

    Le multiplexeur (MUX) est un slecteur de donnes quiaiguille des donnes de provenances diverses vers une seulesortie. Lentre slectionne est dfinie par son adresse.

    sortie

    2 N

    e n

    t r

    e s

    adresse(N bits)

  • 7/31/2019 Cours Elec Num 3

    9/15

    82

    MultiplexeurMultiplexeur

    Exemple : multiplexeur 2 entres (2-vers-1)

    Applications1) conversion parallle-srie : des informations disponibles sur des

    entres en parallle sont mises en srie

    2) matrialisation de fonctions logiques

    &

    &

    ! 1

    I0

    I1

    S

    ZI1

    I0

    Z

    I10

    I00

    ZS

    Z

    83

    MultiplexeurMultiplexeur

    Toute fonction logique de N variables est ralisable avec unmultiplexeur de N-vers-1

    Exemple : matrialiser la fonction donne par la table de vrit

    10011101

    0110

    10110111

    001001000000XS0S1S2

    I0I1I2I3I4I5I6I7

    S2 S1 S0

    X

    VCC

  • 7/31/2019 Cours Elec Num 3

    10/15

    84

    MultiplexeurMultiplexeur

    Exemple : multiplexeur 8-vers-1 74F151

    symbolelogique

    diagramme logique

    table de vrit

    85

    DDmultiplexeurmultiplexeur

    Le dmultiplexeur ralise la fonction inverse dun MUX : ilaiguille une seule entre vers une parmi plusieurs sorties.

    Les dmultiplexeurs sont surtout utiliss dans les conversionssrie - parallle.Ils peuvent aussi faire office de dcodeur.

    entre 2 N

    s o r

    t i e

    s

    adresse(N bits)

  • 7/31/2019 Cours Elec Num 3

    11/15

    86

    DDmultiplexeurmultiplexeur

    Exemple : dmultiplexeur (dcodeur) 8-vers-1 74HC138

    symbolelogique

    table de vrit

    le mme circuit peutservir de dcodeur

    87

    ComparateurComparateur

    Le comparateur compare deux nombres binaires non signs etfournit code dsignant lequel des deux est le plus grand

    Ex comparaison de deux nombres : on commence par le MSB

    0 1 0 1 1 1 1 1 P

    0 1 0 1 1 0 1 1 Q

    74HC85 : comparateur 4 bits

  • 7/31/2019 Cours Elec Num 3

    12/15

    88

    ComparateurComparateur

    Table de vrit du 74HC85

    89

    ComparateurComparateur

    Exemple : comparer deux nombresde 2 bits avec un comparateur 4 bits

    Comparateur de nombres 8 bits

    IA>BIA=BIABZA=BZAB IA=B IABZA=BZAB IA=B IABXA=BXA

  • 7/31/2019 Cours Elec Num 3

    13/15

    90

    Comparateur 24 bitsComparateur 24 bits

    91

    Additionner en binaireAdditionner en binaire

    Laddition de deux nombres binaires fait intervenir quatrenombres: le cumulande, le cumulateur, la somme et le report.

    Exemple : 19 10 + 9 10 = ?

    1 0 0 1 1

    0 1 0 0 1

    1 1 0 1 00 0 0 1 1

    +

    0 1 1 1 0 0

    cumulande

    cumulateur

    report

    somme

    1 9

    0 9

    1 80 1

    +

    0 2 8en base 2 en base 10

  • 7/31/2019 Cours Elec Num 3

    14/15

    92

    Additionneur 1 bitAdditionneur 1 bit

    Un additionneur complet ralise laddition de deux bits A et B,plus le report Cin , en produisant le rsultat S et le bit de report

    Cout

    S = A B CinCout = AB + CIN(A B)

    93

    AdditionneurAdditionneur 4 bits4 bits

    Pour additionner N bits, il suffit de mettre N additionneurs encascade

  • 7/31/2019 Cours Elec Num 3

    15/15

    94

    Additionneur 74LS83Additionneur 74LS83

    B3 B2B1B0 A3A2A1A0B3B2B1B0 A3A2A1A0

    S7 S6 S5 S4 S3S2 S1 S0C8

    C4 C0

    raliser une addition 8 bits