24
LÓGICA COMBINACIONAL 0. Introducción 1. Puertas lógicas básicas 2. Tabla de Verdad y Función Lógica 3. Álgebra de Boole: leyes, reglas y teoremas DeMorgan 4. Retardos 5. Expresiones Canónicas 6. Símplificación por Karnaugh 7. Lógica universal: NAND, NOR 8. Multiplexores, Demultiplexores, Codificadores, Decodificadores 9. Sumadores y restadores. Carry/Borrow logic L L H En la electrónica digital se usan sólo dos niveles de tensión: •Nivel lógico alto (high) H •Nivel lógico bajo (low) L Dígitos binarios (bit): •Lógica positiva: ‘0’ = L ‘1’=H •Lógica negativa: ‘1’ = L ‘0’=H L H V V Hmin V DD V Lmax 0 V t transitorio ‘0’ ‘0’ ‘1’ V t ‘1’ ‘1’ ‘0’ V t INTRODUCCIÓN

Comb i Nacional

Embed Size (px)

DESCRIPTION

combinacionales

Citation preview

  • LGICA COMBINACIONAL

    0. In

    troducci

    n1. P

    uerta

    s lg

    icas b

    sica

    s2. T

    abla

    de

    Verd

    ad y F

    unci

    n L

    gica

    3.

    lgebra

    de B

    oo

    le: le

    yes, re

    gla

    s y teore

    mas D

    eM

    org

    an

    4. R

    eta

    rdos

    5. E

    xpre

    siones C

    an

    nica

    s6. S

    mplifica

    cin

    por K

    arn

    au

    gh

    7. L

    gica

    unive

    rsal: N

    AN

    D, N

    OR

    8. M

    ultip

    lexo

    res, D

    em

    ultip

    lexo

    res, C

    od

    ificad

    ore

    s, Deco

    difica

    dore

    s9. S

    um

    ado

    res y re

    stadore

    s. Carry/B

    orro

    wlo

    gicL

    L

    H

    En la

    ele

    ctrn

    ica d

    igita

    l se u

    san s

    lo d

    os n

    ivele

    s de te

    nsi

    n:

    Nive

    l lg

    ico a

    lto (h

    igh

    ) HN

    ivel l

    gico

    bajo

    (low

    ) L

    Dg

    itos b

    inario

    s (bit):

    Lg

    ica p

    ositiva

    : 0=

    L 1

    =H

    Lg

    ica n

    eg

    ativa

    : 1=

    L 0

    =H

    L H

    V

    VH

    min

    VD

    D

    VL

    ma

    x

    0

    V

    t

    transito

    rio

    0

    0

    1

    V

    t1

    1

    0

    V

    t

    INTRODUCCIN

  • Com

    bin

    acio

    na

    lin

    put

    outp

    ut=

    F(in

    put)

    nm

    Secu

    encia

    lin

    put

    outp

    ut=

    F(in

    put,sta

    te)

    nm

    Circu

    ito C

    om

    bin

    acio

    nal:

    Es u

    n circu

    ito sin

    mem

    oria

    Para

    una d

    ete

    rmin

    ada

    entra

    da, la

    salid

    a e

    s la m

    isma

    Circu

    ito S

    ecu

    encia

    l: E

    s un circu

    ito co

    n m

    em

    oria

    (esta

    do)

    Para

    una d

    ete

    rmin

    ada

    entra

    da, la

    salid

    a d

    ep

    end

    e d

    el e

    stado

    (depen

    de d

    e e

    ntra

    da

    s ante

    riore

    s)

    state

    INTRODUCCIN

    INTRODUCCIN

    Imple

    menta

    cion

    es

    Lg

    ica d

    iscreta

    (TT

    L 7

    4X

    X, C

    MO

    S 4

    000.

    )

    Lg

    ica p

    rogra

    mab

    le(F

    PG

    A, C

    PLD

    , PA

    L

    )

  • INTRODUCCIN

    Un circu

    ito d

    igita

    l com

    bin

    acio

    na

    lpue

    de d

    escrib

    irse co

    mo:

    abc

    o

    o=

    a*(b

    +c)

    a b c o

    0 X X 0

    1 1 X 1

    1 0 0 1

    1 0 1 0

    Circu

    itoD

    igita

    lC

    om

    bin

    acio

    na

    l

    Sch

    em

    atic

    Alg

    ebra

    Tru

    eT

    able

    PUERTAS LGICAS BSICAS

    ao=

    aa a

    0 1

    1 0

    NO

    T

    abo=

    a*b

    a b

    a*b

    0 0

    00 1

    01 0

    01 1

    1

    a b

    a*b

    0 X

    0X

    0 0

    1 1

    1A

    ND

    abo=

    a+

    b

    a b

    a+b

    0 0

    00 1

    11 0

    11 1

    1

    a b

    a+b

    0 0

    0X

    1 1

    1 X

    1

    OR

    (inclu

    sive O

    R)

    abo=

    a

    b

    a b

    a

    b0 0

    00 1

    11 0

    11 1

    0

    XO

    R(e

    xclusive

    OR

    )

    a

    ba=

    b 0

    a

    b1

    b a

    b

    0 a

    1 a

    b a

    *b0 0

    1 a

    b a

    +b

    1 1

    0 a

  • PUERTAS LGICAS BSICAS

    abo=

    a*b

    a b

    a*b

    0 0

    10 1

    11 0

    11 1

    0

    a b

    a*b

    0 X

    1X

    0 1

    1 1

    0N

    AN

    D

    abo=

    a+

    b

    a b

    a+b

    0 0

    10 1

    01 0

    01 1

    0

    a b

    a+b

    0 0

    1X

    1 0

    1 X

    0N

    OR

    abo=

    a

    b

    a b

    a

    b0 0

    10 1

    01 0

    01 1

    1

    a

    ba=

    b 1

    a

    b0

    XN

    OR

    NX

    OR

    b a

    b

    0 a

    1 a

    b a

    *b0 1

    1 a

    b a

    +b

    1 0

    0 a

    PUERTAS LGICAS BSICAS

    1

    Sm

    bolo

    s Sta

    ndard

    y AN

    SI/IE

    EE

    91-1

    98

    4:

    &&

    1 1

    =1

    =1

  • PUERTAS LGICAS BSICAS

    Equ

    ivale

    ncia

    s:

    aba*b

    aba*b

    aba*b

    aba*b

    x y x+y

    0 0

    1X

    1 0

    1 X

    0

    x=a

    y=b

    x+y

    a b

    a*b

    1 1

    1X

    0 0

    0 X

    0

    x y x+y

    0 0

    0X

    1 1

    1 X

    1

    a b

    a*b

    1 1

    0X

    0 1

    0 X

    1

    x=a

    y=b

    x+y

    aba+

    bab

    a+

    bx y x*y1 1

    0X

    0 1

    0 X

    1

    a b

    a+

    b0 0

    0X

    1 1

    1 X

    1

    x y x*y1 1

    1X

    0 0

    0 X

    0

    a b

    a+

    b0 0

    1X

    1 0

    1 X

    0

    x=a

    y=b

    x*y

    aba+

    bab

    a+

    bx=

    ay=

    b

    x*y

    PUERTAS LGICAS BSICAS

    Puerta

    s lg

    icas d

    e m

    s d

    e 2

    entra

    das

    a*b

    *c*d

    a b

    c d A

    ND

    1 1

    1 1

    10 X

    X X

    0X

    0 X

    X 0

    X X

    0 X

    0X

    X X

    0 0

    abcd

    abcd

    a*b

    *c*d

    a b

    c d N

    AN

    D1 1

    1 1

    00 X

    X X

    1X

    0 X

    X 1

    X X

    0 X

    1X

    X X

    0 1

    abcd

    a+

    b+

    c+d

    a b

    c d O

    R0 0

    0 0

    01 X

    X X

    1X

    1 X

    X 1

    X X

    1 X

    1X

    X X

    1 1

    abcd

    a+

    b+

    c+d

    a b

    c d N

    OR

    0 0

    0 0

    11 X

    X X

    0X

    1 X

    X 0

    X X

    1 X

    0X

    X X

    1 0

    abcd

    a

    b

    c

    da b

    c d X

    OR

    Nim

    par1

    1N

    par1

    0

    abcd

    a

    b

    c

    da b

    c d X

    NO

    RN

    par1

    1N

    impar1

    0

  • TABLA DE VERDAD / F. LGICA

    La ta

    bla

    de

    verd

    ad d

    e u

    na fu

    nci

    n l

    gica

    F se

    obtie

    ne e

    valu

    and

    oF

    para

    todas la

    s posib

    les co

    mbin

    acio

    nes d

    e e

    ntra

    da

    F(a

    ,b,c)=

    a+

    (b

    c)bc

    a

    F(1

    ,b,c)=

    1+

    (b

    c)=

    1=

    0

    F(0

    ,b,c)=

    0+

    (b

    c)=

    b

    c

    F(0

    ,0,c)=

    0

    c=c

    10

    b

    c0b

    cb

    c

    00c

    cc

    1cc

    c0

    F(0

    ,1,c)=

    1

    c=c

    a b c F

    0 0 0 1

    0 0 1 0

    0 1 0 0

    0 1 1 1

    1 0 0 0

    1 0 1 0

    1 1 0 0

    1 1 1 0

    LGEBRA DE BOOLE

    Co

    nju

    nto

    de L

    eye

    s y Re

    gla

    s, que p

    erm

    iten a

    na

    lizar/sim

    plifica

    run circu

    ito d

    igita

    l

    a+

    b=

    b+

    aa*b

    =b*a

    abba

    ==

    abba

    Ley a

    socia

    tiva (su

    ma y m

    ultip

    licaci

    n):

    Ley co

    nm

    uta

    tiva (su

    ma y m

    ultip

    licaci

    n):

    a+

    (b+

    c)=(a+

    b)+

    ca*(b

    *c)=(a

    *b)*c

    abbc

    a

    c=

    bc

    aab

    c=

    Ley d

    istributiva

    :

    a*(b

    +c)=

    a*b

    +a*c

    bc

    abc aa

    =

  • LGEBRA DE BOOLE

    Re

    gla

    s

    a+

    0=

    aa+

    1=

    1

    a*0

    =0

    a*1

    =a

    a+

    a=

    aa+

    a=

    1

    a*a

    =a

    a*a

    =0

    a=

    a

    aa

    0a

    11

    aa

    1a

    a0a1

    aa

    0a

    10

    aa

    a+

    a*b

    =a

    a+

    a*b

    =a+

    b(a

    +b)*(a

    +c)=

    a+

    b*c

    abab

    ac b

    bc

    a

    a

    b

    aa

    LGEBRA DE BOOLE

    Teore

    mas D

    eM

    org

    an

    a*b

    =a+

    b

    a+

    b=

    a*b

    aba*b

    aba+

    b =

    a*b

    aba+

    bab

    a*b

    = a

    +b

  • LGEBRA DE BOOLE

    Eje

    mplo

    : F

    1 (a,b

    ,c)=a*b

    + a

    *(b+

    c) + b

    *(b+

    c)

    a*b

    + a

    *(b+

    c) + b

    *(b+

    c)

    a*b

    + a

    *b +

    a*c +

    b*b

    + b

    *c

    a*b

    + a

    *c + b

    + b

    *c

    a*b

    + a

    *c + b

    a*c +

    b

    F1 (a

    ,b,c)=

    a*c +

    b

    abc

    ac

    b

    x+x=

    xx*x=

    x

    x+x*y=

    x

    x+x*y=

    x

    LGEBRA DE BOOLE

    Eje

    mplo

    : F

    2 (a,b

    ,c)=a*b

    + a

    *c + a

    *b*c

    a bc

    abc

    F2 (a

    ,b,c)=

    a+

    (b+

    c)

    a*b

    + a

    *c + a

    *b*c

    (a*b

    ) * (a*c) +

    a*b

    *c

    (a+

    b)*(a

    +c) +

    a*b

    *c

    a +

    b*c +

    a*b

    *c

    a +

    b*c =

    a+

    (b+

    c) = a

    *(b+

    c)

    F2 (a

    ,b,c)=

    a*(b

    +c)

    abc

    F2 (a

    ,b,c)=

    a+

    (b*c)

    Morg

    an

    Morg

    an

    (x+y)*(x+

    z)=x+

    y*z

    x+x*y=

    x

    abc

  • RETARDOS

    Reta

    rdos: L

    as p

    uerta

    s lg

    icas n

    ece

    sitan u

    n tie

    mpo (td ) p

    ara

    re

    accio

    nar a

    las e

    ntra

    das y p

    ropagar su

    salid

    a a

    las sig

    uie

    nte

    s

    abc

    a b c a*(b+c)

    0 X X 0

    1 1 X 1

    1 0 0 1

    1 0 1 0

    o=

    F(a

    ,b,c)

    =a*(b

    +c)

    o abcc

    cb+

    c

    b+

    cRETARDOS

    La fu

    nci

    n l

    gica

    F e

    s vlid

    a d

    esp

    us d

    e u

    n tie

    mp

    o tra

    nsito

    rioP

    ue

    de

    n a

    pare

    cer g

    litches

    para

    alg

    un

    as tra

    nsicio

    nes d

    e e

    ntra

    das

    abc

    a b c a*(b+c)

    0 X X 0

    1 1 X 1

    1 0 0 1

    1 0 1 0

    o=

    F(a

    ,b,c)

    =a*(b

    +c)

    o abcc

    cb+

    c

    b+

    c

    tdA

    ND

    tdO

    R +td

    AN

    Dtd

    NO

    T +td

    OR +

    tdA

    ND

    GLITCH

  • RETARDOS

    El tie

    mpo d

    e re

    tard

    o (td ) d

    epen

    de

    del n

    m

    ero

    de n

    ivele

    s l

    gico

    s (logic-d

    epth

    )C

    uan

    do t td

    (min

    ) la sa

    lida n

    o h

    a ca

    mbia

    do

    Cu

    an

    do td

    (min

    ) t

    td(m

    ax) la

    salid

    a p

    uede se

    r corre

    cta/in

    corre

    ctaC

    uan

    do t td

    (max) la

    salid

    a e

    s corre

    ctaN

    o tie

    ne m

    em

    oria

    : La sa

    lida n

    o d

    epe

    nd

    e d

    e e

    ntra

    das a

    nte

    riore

    s

    Com

    bin

    acio

    na

    lin

    put

    outp

    ut=

    F(in

    put)

    nm

    td

    i1i2

    i3i1

    i4i5

    i2

    F(i1 )

    F(i1 )

    F(i2 )

    input

    outp

    ut

    F(i2 )

    F(i3 )

    F(i4 )

    F(i5 )

    td(m

    in)

    td(m

    ax)

    EXPRESIONES CANNICAS

    Todas la

    s funcio

    nes b

    oo

    lean

    as

    pued

    en co

    nve

    rtirse a

    las

    exp

    resio

    nes ca

    nn

    icas:

    Un

    a S

    um

    a d

    e P

    roducto

    s/Min

    term

    s(S

    oP

    )F

    (a,b

    ) = [F

    (0,0

    )*a*b

    ] + [F

    (0,1

    )*a*b

    ] + [F

    (1,0

    )*a*b

    ] + [F

    (1,1

    )*a*b

    ]

    F(a

    ,b) =

    [F(0

    ,0)+

    a+

    b] * [F

    (0,1

    )+a+

    b] * [F

    (1,0

    )+a+

    b] * [F

    (1,1

    )+a+

    b]

    F(0,0) =

    [F(0,0)*1] +

    [F(0

    ,1)*0] +

    [F(1,0)*0] +

    [F(1,1)*0] =

    F(0,0

    )+0+

    0+

    0 =

    F(0,0

    )

    F(0,1) =

    [F(0,0)*0] +

    [F(0

    ,1)*1] +

    [F(1,0)*0] +

    [F(1,1)*0] =

    0+F

    (0,1)+0+

    0 = F

    (0,1)

    F(1,0) =

    [F(0,0)*0] +

    [F(0

    ,1)*0] +

    [F(1,0)*1] +

    [F(1,1)*0] =

    0+0+

    F(1,0)+

    0 = F

    (1,0)

    F(1,1) =

    [F(0,0)*0] +

    [F(0

    ,1)*0] +

    [F(1,0)*0] +

    [F(1,1)*1] =

    0+0+

    0+F

    (1,1

    ) = F

    (1,1)

    F(0,0) =

    [F(0,0)+

    0] * [F(0

    ,1)+

    1] * [F(1,0)+

    1] + [F

    (1,1)+1] =

    F(0,0)*1

    *1*1 =

    F(0,0

    )

    F(0,1) =

    [F(0,0)+

    1] * [F(0

    ,1)+

    0] * [F(1,0)+

    1] + [F

    (1,1)+1] =

    1*F

    (0,1

    )*1*1 =

    F(0,1

    )

    F(1,0) =

    [F(0,0)+

    1] * [F(0

    ,1)+

    1] * [F(1,0)+

    0] + [F

    (1,1)+1] =

    1*1

    *F(1,0)*1 =

    F(1,0

    )

    F(1,1) =

    [F(0,0)+

    1] * [F(0

    ,1)+

    1] * [F(1,0)+

    1] + [F

    (1,1)+0] =

    1*1

    *1*F

    (1,0) =

    F(1,0

    )

    F(a

    ,b)=

    (0

    F0 , 1

    F1 , 2

    F2 , 3

    F3 )=

    (0

    F0 , 1

    F1 , 2

    F2 , 3

    F3 )

    Un P

    rod

    ucto

    de S

    um

    as/M

    axte

    rms

    (PoS

    )

    Tra

    nsfo

    rmaci

    n e

    ntre

    SoP

    y PoS

  • = [0

    *a*b

    ] + [1

    *a*b

    ] + [1

    *a*b

    ] + [0

    *a*b

    ] =

    EXPRESIONES CANNICAS

    Eje

    mplo

    :a b

    a

    b0 0

    00 1

    11 0

    11 1

    0

    F(a

    ,b) =

    [F(0

    ,0)*a

    *b] +

    [F(0

    ,1)*a

    *b] +

    [F(1

    ,0)*a

    *b] +

    [F(1

    ,1)*a

    *b] =

    a b

    a

    b0 0

    00 1

    11 0

    11 1

    0

    F(a

    ,b) =

    [F(0

    ,0)+

    a+

    b] * [F

    (0,1

    )+a+

    b] * [F

    (1,0

    )+a+

    b] * [F

    (1,1

    )+a+

    b] =

    = a

    *b +

    a*b

    = [0

    +a+

    b] * [1

    +a+

    b] * [1

    +a+

    b] * [0

    +a+

    b] =

    = 0

    + [a

    *b] +

    [a*b] +

    0 =

    = (a

    +b) * (a

    +b)

    = (a

    +b) * 1

    * 1 * (a

    +b) =

    a b

    a

    b0 0

    00 1

    11 0

    11 1

    0

    a

    bab ab

    a

    bab ab

    ==

    =

    (1,2)

    =

    (0,3

    )

    ab

    a*b + a*b

    12

    ab

    (a+

    b) * (a

    +b)

    03

    F(i1 ,i2 ,..,in

    -1 ,in ) = [F

    (0,0

    ,P,0

    ,0)*i1 *i2 *P

    *in-1 *in ] +

    [F(0

    ,0,P

    ,0,1

    )*i1 *i2 *P*in

    -1 *in ] + P

    ++

    [F(1

    ,1,P

    ,1,0

    )*i1 *i2 *P*in

    -1 *in ] + [F

    (1,1

    ,P,1

    ,1)*i1 *i2 *P

    *in-1 *in ]

    EXPRESIONES CANNICAS

    Genera

    lizaci

    n p

    ara

    n e

    ntra

    das:

    F(i1 ,i2 ,..,in

    -1 ,in ) = [F

    (0,0

    ,P,0

    ,0)+

    i1 +i2 +

    P+

    in-1 +

    in ] * [F(0

    ,0,P

    ,0,1

    )+i1 +

    i2 +P

    +in

    -1 +in ] * P

    ** [F

    (1,1

    ,P,1

    ,0)+

    i1 +i2 +

    P+

    in-1 +

    in ] * [F(1

    ,1,P

    ,1,1

    )+i1 +

    i2 +P

    +in

    -1 +in ]

    N=

    2n-1

    F(i1 ,..in )=

    (0

    F0 , 1

    F1 , P

    , (N-1

    )FN

    -1 , NF

    N )=

    (0

    F0 , 1

    F1 ,P

    , (N-1

    )FN

    -1 , NF

    N )

    0F0

    1F1

    (N-1

    )FN

    -1

    NF

    N

    S0

    S1

    SN

    -1

    SN

    (S

    k )

    i1i2iN iN-1

    0F0

    1F1

    (N-1

    )FN

    -1

    NF

    N

    i1i2iN iN-1

    P0

    P1

    PN

    -1

    PN

    (P

    k )

  • EXPRESIONES CANNICAS

    abc

    F=

    a*(b

    +c)

    a b c F

    0 X X 1

    1 1 X 0

    1 0 c c

    a b c F

    0 0 0 1

    0 0 1 1

    0 1 0 1

    0 1 1 1

    1 0 0 0

    1 0 1 1

    1 1 0 0

    1 1 1 0

    F(a

    ,b,c)=

    (0

    ,1,2

    ,3,5) =

    (4,6

    ,7)

    (0

    ,1,2

    ,3,5) =

    a*b*c +

    a*b

    *c + a*b*c +

    a*b

    *c + a*b

    *c

    (4

    ,6,7) = (a+

    b+c) * (a+

    b+c) * (a+

    b+c)

    01235

    abc

    abc

    467

    abc

    ==

    SIMPLIFICACIN KARNAUGH

    Mto

    do siste

    mtico

    pa

    ra la

    simplifica

    cin d

    e S

    oP

    /PoS

    :M

    apa d

    e K

    arn

    au

    gh

    (cod

    ificaci

    n G

    ray)

    Agru

    par e

    n m

    nim

    o n

    m

    ero

    de la

    zos to

    dos lo

    s 1 (S

    oP

    ) 0 (P

    oS

    ) L

    azo

    s de

    l mxim

    o (g

    rupos 1

    6,8

    ,4,2

    ,1) d

    e ce

    ldas

    adya

    cente

    s (esq

    uin

    as y b

    ord

    es in

    cluid

    os)

    a b c F

    0 0 0 1

    0 0 1 1

    0 1 0 1

    0 1 1 1

    1 0 0 0

    1 0 1 1

    1 1 0 0

    1 1 1 0

    11

    11

    11

    0

    a

    1/0

    1/1

    0/1

    0/0

    b/c

    00

    01 0

    a

    1/0

    1/1

    0/1

    0/0

    b/c

    (0

    ,1,2

    ,3,5) =

    a*b*c +

    a*b

    *c + a*b*c +

    a*b

    *c + a*b

    *c = a

    + b*c

    (4

    ,6,7) = (a+

    b+c) * (a+

    b+c) * (a+

    b+c) =

    (a+b) * (a+

    c)

    Eje

    mplo

    : Funci

    n d

    e 3

    entra

    das

  • SIMPLIFICACIN KARNAUGH

    Para

    aqu

    ella

    s entra

    da

    s cuya

    salid

    a e

    s X (d

    ont

    care

    ), se p

    ued

    en

    tom

    ar o

    no X

    en la

    agru

    paci

    n d

    e 1

    (SoP

    ) 0 (P

    oS

    )

    Counte

    rM

    od. 1

    04

    Com

    para

    tor

    2

    a

    6

    a[3

    :0]

    o

    a[3:0] o

    3 2 1 0

    0 0 0 0 0

    0 0 0 1 0

    0 0 1 0 1

    ... 1

    0 1 1 0 1

    0 1 1 1 0

    ... 0

    1 0 0 1 0

    1 0 1 0 X

    ... X

    1 1 1 1 X

    11

    10/1

    XX

    XX

    1/1

    XX

    1/0

    11

    0/0

    1/0

    1/1

    0/1

    0/0

    a[1]/a[0]

    a[3]/a[2]

    00/1

    XX

    XX

    1/1

    XX

    00

    1/0

    00

    0/0

    1/0

    1/1

    0/1

    0/0

    a[1]/a[0]

    a[3]/a[2]

    o =

    a[1

    ]*a[0] +

    a[2

    ]*a[1] +

    a[2

    ]*a[1

    ]o = (a

    [2]+

    a[1]) * (a

    [2]+

    a[1

    ]+a[0

    ])

    Eje

    mplo

    : Funci

    n d

    e 4

    entra

    das, co

    n sa

    lida

    s X

    3*A

    ND

    -2 +

    1*O

    R-3

    1 O

    R-2

    + 1

    OR

    -3 +

    1 A

    ND

    -2

    LGICA UNIVERSAL

    Se p

    ue

    de im

    ple

    me

    nta

    r cualq

    uie

    r exp

    resi

    n b

    oo

    lea

    na

    usa

    nd

    oexclu

    sivam

    ente

    las p

    uerta

    s NA

    ND

    o la

    s NO

    R

    aa

    +a

    =a

    ab

    ab

    a+

    b=

    a*b

    ab

    a+

    ba

    +b

    ab

    a*b

    a*b

    aa

    *a=

    a

    ab

    a*b

    a*b

    ab

    ab

    a*b

    =a

    +b

    ab

    a+

    ba

    +b

  • LGICA UNIVERSAL

    abc

    def

    a*b

    a*b

    *c=a

    *b+

    c(a

    *b+

    c)*d=

    a*b*c+

    d

    e*f

    (a*b

    *c+d

    )*e*f=

    (a*b

    +c)*d

    +e

    *f

    ab

    def

    c

    a+

    b(a

    +b

    )+c=

    (a+

    b)*c

    e+

    f

    (a+

    b)*c+

    d=

    ((a+

    b)+

    c)*d

    ((a+

    b)+

    c)*d+

    e+

    f=((a

    +b)*c+

    d)*(e

    +f)

    Eje

    mplo

    : An

    lisis de la

    funci

    n l

    gica

    LGICA UNIVERSAL

    Eje

    mplo

    : Imple

    me

    nta

    cin N

    OR

    de o

    =c*(a

    +b)

    cba

    c*(a+

    b)

    c

    b

    a+

    b

    cba

    cb

    a+

    b

    c*(a+

    b)

    a+

    b

    a+

    b

    cc+

    (a+

    b)

    cba

    b

    a+

    b

    c+(a

    +b

    )

    c*(a+

    b)

  • LGICA UNIVERSAL

    Imple

    menta

    cin N

    AN

    D a

    partir d

    e S

    oP

    Imple

    menta

    cin N

    OR

    a p

    artir d

    e P

    oS

    F=

    Pa +

    Pb +

    P+

    Pj

    F=

    Pa *P

    b *P*P

    j

    F=

    Sa *S

    b *P*S

    j

    F=

    Sa +

    Sb +

    P+

    Sj

    F=

    Pa +

    Pb +

    P+

    Pj

    Pa

    Pb

    Pj

    (P

    k )

    Pa

    Pb

    Pj

    (P

    k )=

    (Pk )

    Sj

    Sb

    Sa

    (S

    k )

    Sj

    Sb

    Sa

    (S

    k )=

    (Sk )

    F=

    Sa *S

    b *P*S

    j

    LGICA UNIVERSAL

    Eje

    mplo

    : Imple

    me

    nta

    cin N

    AN

    D y N

    OR

    de o

    =c*(a

    +b)

    o =

    (a*c)+

    (b*c) =

    pa

    + p

    b=

    pa

    * pb=

    (a*c) * (b*c)

    o =

    (c)*(a+

    b) =

    sa

    * sb =

    sa

    + s

    b=

    (c) + (a

    +b) =

    (c) + (a

    +b)

    cba

    b

    a+

    b

    c+(a

    +b)

    c*(a+

    b)

    bca

    bb

    *c

    c

    a*c

    b*c * a

    *c

    b*c +

    a*c

  • d0

    d1

    01s

    ys y

    0 d0

    1 d1

    y = s*d

    0+

    s*d1

    d0

    d1

    00

    01s

    y

    2

    s[1:0] y

    0 0 d0

    0 1 d1

    1 0 d2

    1 1 d3

    y = s[1

    ]*s[0]*d

    0+

    s[1]*s[0

    ]*d1 +

    + s[1

    ]*s[0]*d

    2+

    s[1]*s[0

    ]*d3

    d2

    d3

    10

    11

    MULTIPLEXOR (MUX)

    MU

    X2

    MU

    X4

    La sa

    lida (y) e

    s sele

    cciona

    da (s) a

    una d

    e la

    s entra

    da

    s (di )

    MULTIPLEXOR (MUX)

    d0

    d1

    01

    d2

    d3

    01

    01s 2s[1:0

    ]

    y

    0 1

    Un M

    UX

    de n

    entra

    das, se

    pued

    e co

    nstru

    ir a p

    artir d

    e M

    UX

    ms

    simp

    les

    d0

    d1

    00

    01s

    y

    2

    d2

    d3

    1011 M

    UX

    4

    Un M

    UX

    de m

    -bits se co

    nstru

    ye co

    n m

    MU

    X

    d0

    d1

    01

    444

    y

    s

    01010101

    4y

    y[3:0]

    s

    44

    d0

    d1

    d0[3:0]

    d1[3:0]

    3210

    3210

    3210

  • DEMULTIPLEXOR (DEMUX)

    La e

    ntra

    da (d

    ) es se

    leccio

    na

    da (s) a

    una d

    e la

    s salid

    as (y

    i )

    y0

    y1

    01

    s

    ds y0y1

    0 d 0

    1 0 d

    DE

    MU

    X2

    y0

    = s*d

    y1

    = s*d

    d0

    d1

    00

    01

    s

    d

    2

    s[1:0] y0 y

    1 y

    2 y

    3

    0 0 d

    00

    0

    0 1 0

    d0

    0

    1 0 0

    0d

    0

    1 1 0

    00

    d

    d2

    d3

    10

    11

    DE

    MU

    X4

    y0

    = s[1

    ]*s[0]*d

    y1

    = s[1

    ]*s[0]*d

    y2

    = s[1

    ]*s[0]*d

    y3

    = s[1

    ]*s[0]*d

    Tam

    bi

    n e

    s posib

    le co

    nstru

    ir DE

    MU

    X d

    e n

    salid

    as a

    partir d

    eD

    EM

    UX

    ms sim

    ple

    s, y exte

    nd

    er e

    l nm

    ero

    de b

    its m en

    las

    entra

    das y sa

    lidas

    CODIFICADORES (COD)

    Co

    nve

    rsin

    de u

    n d

    ato

    de e

    ntra

    da a

    otro

    tipo d

    e d

    ato

    de m

    enor

    tam

    ao

    Dife

    rente

    s tipos d

    e C

    OD

    , depen

    die

    nd

    o d

    e lo

    s tipos d

    e d

    ato

    de

    entra

    da y sa

    lida3

    Enco

    der

    8 to

    3

    d1

    d2

    d3

    d4

    d5

    d6

    d7

    a

    d1 d

    2 d

    3d4 d

    5 d

    6 d

    7 a[2:0]

    00

    00

    00

    0000

    10

    00

    00

    0001

    01

    00

    00

    0010

    00

    10

    00

    0011

    00

    01

    00

    0100

    00

    00

    10

    0101

    00

    00

    01

    0110

    00

    00

    00

    1111

    Resto

    XXX

    a[0

    ]= d

    1 +d

    3 +d

    5 +d

    7

    a[1

    ]= d

    2 +d

    3 +d

    6 +d

    7

    a[2

    ]= d

    4 +d

    5 +d

    6 +d

    7

    Eje

    mplo

    : Cod

    ificador 8

    a 3

  • CODIFICADORES (COD)

    Eje

    mplo

    : Cod

    ificador co

    n p

    riorid

    ad 8

    a 3

    3

    d1

    d2

    d3

    d4

    d5

    d6

    d7

    a

    d1 d

    2 d

    3d4 d

    5 d

    6 d

    7 a[2:0]

    00

    00

    00

    0000

    10

    00

    00

    0001

    X1

    00

    00

    0010

    XX

    10

    00

    0011

    XX

    X1

    00

    0100

    XX

    XX

    10

    0101

    XX

    XX

    X1

    0110

    XX

    XX

    XX

    1111

    a[2

    ]= d

    7 +d

    6 +d

    5 +d

    4

    a[1

    ]=d

    7 +d

    6 +d

    5 *d4 *(d

    3 +d

    2 )

    a[0

    ]=d

    7 +d

    6 *[d5 +

    d4 *(d

    3 +d

    2 *d1 )]

    Prio

    rityE

    nco

    der

    8 to

    3

    DECODIFICADORES (DECOD)

    Co

    nve

    rsin

    de u

    n d

    ato

    de e

    ntra

    da a

    otro

    tipo d

    e d

    ato

    de m

    ayo

    r ta

    mao

    Dife

    rente

    s tipos d

    e D

    EC

    OD

    , depe

    nd

    iend

    o d

    e lo

    s tipos d

    e d

    ato

    de e

    ntra

    da y sa

    lida

    Eje

    mplo

    : Deco

    difica

    do

    r com

    ple

    to d

    e 3

    -bits

    3D

    eco

    der

    3 to

    8

    y1

    y2

    y3

    y4

    y5

    y6

    y7

    a

    y0

    a[2:0] y0 y

    1 y

    2 y

    3y4 y

    5 y

    6 y

    7

    000 1

    00

    00

    00

    0

    001 0

    10

    00

    00

    0

    010 0

    01

    00

    00

    0

    011 0

    00

    10

    00

    0

    100 0

    00

    01

    00

    0

    101 0

    00

    00

    10

    0

    100 0

    00

    00

    01

    0

    111 0

    00

    00

    00

    1

    y0 =

    a[2]*a

    [1]*a

    [0]

    y1 =

    a[2]*a

    [1]*a

    [0]

    y7 =

    a[2]*a

    [1]*a

    [0]

    P

  • Eje

    mplo

    : Deco

    difica

    do

    r BC

    D a

    7 se

    gm

    ento

    s

    DECODIFICADORES (DECOD)

    47-se

    gm

    ents

    Deco

    der

    bcdefg

    d

    ad[2:0] a b c de f g

    0000 1 1 1 1 1 1 0

    0001 0 1 1 0 0 0 0

    0010 1 1 0 1 1 0 1

    0011 1 1 1 1 0 0 1

    0100 0 1 1 0 0 1 1

    0101 1 0 1 1 0 1 1

    0110 0 0 1 1 1 1 1

    0111 1 1 1 0 0 0 0

    1000 1 1 1 1 1 1 1

    1001 1 1 1 0 0 1 1

    101X X X X X X X X

    11XX X X X X X X X

    a

    bcd

    e fg

    SUMADOR

    Re

    aliza

    la o

    pera

    cin a

    ritmtica

    sum

    a

    Sem

    i-sum

    ador (h

    alf-a

    dder). L

    a sa

    lida ca

    rry(c

    o ) perm

    ite e

    xten

    der

    la su

    ma a

    ms d

    e 1

    -bit

    aboc

    o

    a b

    coo

    0 0

    00

    0 1

    01

    1 0

    01

    1 1

    10

    Sum

    ad

    or co

    mple

    to (full-a

    dder). U

    na e

    ntra

    da d

    e ca

    rry(c

    i ) que se

    conecta

    a la

    co

    de la

    sum

    a d

    el b

    itante

    rior

    aboc

    oc

    i

    cia b

    coo

    0 0 0

    00

    0 0 1

    01

    0 1 0

    01

    0 1 1

    10

    1 0 0

    01

    1 0 1

    10

    1 1 0

    10

    1 1 1

    11

    o=

    a

    bc

    o =a*b

    aboc

    o

    o=

    a

    b

    ci

    co =

    a*b

    +(a

    +b)*c

    i

    co =

    a*b

    +(a

    b)*c

    i

    aboc

    o

    ci

    aboc

    o

    ci

  • SUMADOR

    El su

    mad

    or co

    mple

    to p

    ue

    de im

    ple

    menta

    rse ta

    mbi

    n co

    n d

    os

    sem

    i-sum

    adore

    s en se

    rie

    Un se

    mi-su

    mador p

    ue

    de o

    bte

    nerse

    con u

    n su

    mador co

    mp

    leto

    ,co

    necta

    nd

    o 0

    al ca

    rryde e

    ntra

    da

    o1

    o2

    co2

    co1

    ab

    ci

    o1 =

    a

    b

    co1 =

    a*b

    co2 =

    ci *o

    1 ==

    ci *(a

    b

    )

    o2 =

    ci

    o1 =

    =c

    i (a

    b)

    oco

    co =

    co1 +

    co2 =

    =a

    *b+

    ci *(a

    b

    )

    o=

    o2 =

    =a

    b

    ci

    aboc

    o0

    aboc

    o=

    SUMADOR

    Un su

    mad

    or co

    n a

    carre

    o e

    n se

    rie (rip

    ple

    -carry) d

    e n

    -bits se

    im

    ple

    me

    nta

    con n

    sum

    adore

    s, pro

    pag

    an

    do e

    l carry

    entre

    eta

    pas

    aboco

    ci

    aboco

    ci

    ab[3:0]

    aboco

    ci

    aboco

    ci

    aboco

    ci

    aboco

    ci

    a[3:0]

    b

    44

    4

    co

    o

    0

    0

    01

    23

    1

    1

    2

    2

    3

    3

    o[3:0]

    aboco

    ci

    aboco

    ci

    0

    Usa

    nd

    o m

    sum

    adore

    s de n

    -bits, se

    obtie

    ne u

    n su

    mad

    or d

    e

    (m*n

    )-bits

    aboc

    oc

    i

    444

    aboc

    oc

    i

    888

    444

    abci

    co o

    444

    abci

    co o

    88

    8

    a[7:0]

    b

    o coc

    i

    [3:0

    ]

    [3:0

    ]

    [7:4

    ]

    [7:4

    ]

    [7:4

    ][3

    :0]

    ab

    [7:0]

    o[7:0]

    co =

    co [n

    -1]

    ci [n

    ]=c

    o [n-1] (n

    1)

    ci [0

    ]=0

    co =

    co [m

    -1]

    ci [m

    ]=c

    o [m-1

    ] (m1

    )c

    i [0]=

    0

  • SUMADOR

    El p

    rob

    lem

    a d

    el su

    ma

    dor rip

    ple

    -carrye

    s el tie

    mpo d

    e re

    tard

    odeb

    ido a

    la se

    al d

    e ca

    rry

    aboco

    ci

    aboco

    ci

    ab[3:0]

    aboco

    ci

    aboco

    ci

    aboco

    ci

    aboco

    ci

    a[3:0]

    b

    44

    4

    co

    o

    0

    0

    01

    23

    1

    1

    2

    2

    3

    3

    o[3:0]

    aboco

    ci

    aboco

    ci

    0

    aba1b1

    b0

    a2

    b2

    a0

    o co

    co 1

    co 2

    o1

    o2

    4*td

    co 0

    o0

    4*td

    aboc

    oc

    i

    td

    ab0111

    0101

    0000

    0000

    1111

    1000

    o[0

    ]c

    i [1]=

    co [0

    ]

    0000

    o1100

    0111

    0111

    +0101

    011

    00

    0x7

    +0x5

    0x0

    C

    co

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    0 1

    1 1

    0c

    i

    SUMADOR

    1111

    +1000

    101

    11

    0xF

    +0x8

    0x1

    7

    co

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    1 0

    0 0

    0c

    iE

    jem

    plo

    :

    00101000

    10011011

    1111

    o[1

    ]c

    i [2]=

    co [1

    ]o[2

    ]c

    i [3]=

    co [2

    ]o[3

    ]c

    o =c

    o [3]

  • SUMADOR

    El su

    mad

    or p

    roduce

    la su

    ma d

    e n

    m

    ero

    s codifica

    dos e

    n b

    inario

    natu

    ral (u

    nsig

    ne

    d) o

    en co

    mple

    mento

    a 2

    (signe

    d)

    Sum

    a u

    nsig

    ne

    d=

    > C

    arry

    si co [n

    -1]=

    1 (c

    o =c

    o [n-1

    ])

    Sum

    a sig

    ned

    =>

    Ove

    rflow

    si co [n

    -1]

    ci [n

    -1]=

    1 (c

    i [n-1

    ]=c

    o [n-2

    ])

    Neg

    ative

    si o[n

    -1]=

    1E

    jem

    plo

    :

    -7+

    5-2

    1001

    +0101

    011

    10

    0x9

    +0x5

    0x0

    E

    co

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    0 0

    0 1

    0c

    i

    9+

    514

    1011

    +1110

    110

    01

    0xB

    +0xE

    0x1

    9

    co

    o[3

    :0]

    1 1

    1 0

    0c

    i

    11

    +149

    -5+

    -2-7

    5+

    5-6

    0101

    +0101

    010

    10

    0x5

    +0x5

    0x0

    A

    co

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    0 1

    0 1

    0c

    i

    5+

    510

    1011

    +1001

    101

    00

    0xB

    +0x9

    0x1

    4

    co

    o[3

    :0]

    1 0

    1 1

    0c

    i

    11

    + 94

    -5+

    -7+

    4

    Ca

    rry!!!11

    +14

    =9

    Ca

    rry!!!11

    +9

    =4

    Ove

    rflow

    !!!(-5

    )+(-7

    )=+

    4O

    verflo

    w!!!

    (+5

    )+(+

    5)=

    -6

    RESTADOR

    Re

    aliza

    la o

    pera

    cin a

    ritmtica

    resta

    , en b

    inario

    -natu

    ral

    Resta

    dor co

    mple

    to (su

    bstra

    cter). L

    a se

    al b

    orro

    w(b

    i , bo ) p

    erm

    ite

    exte

    nder la

    resta a

    ms d

    e 1

    -bit

    Substra

    ctor

    abob

    ob

    i

    bia b

    boo

    0 0 0

    00

    0 0 1

    11

    0 1 0

    01

    0 1 1

    00

    1 0 0

    11

    1 0 1

    10

    1 1 0

    00

    1 1 1

    11

    1011

    0101

    001

    10

    0xB

    0x5

    0x0

    6

    bo

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    0 1

    0 0

    0b

    i

    1000

    1011

    111

    01

    0x8

    0xB

    0x1

    D

    bo

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    1 1

    1 1

    0b

    i

    Substra

    ctor

    abob

    ob

    i

    444

    Sub

    stractor

    abobo

    bi S

    ubstractor

    abobo

    bi

    ab[3:0]

    Su

    bstractor

    abobo

    bi S

    ubstractor

    abobo

    bi

    Su

    bstractor

    abobo

    bi S

    ubstra

    ctor

    abobo

    bi

    a[3:0]

    b

    44

    4

    bo

    o

    0

    0

    01

    23

    1

    1

    2

    2

    3

    3

    o[3:0]

    Sub

    stractor

    abobo

    bi S

    ubstractor

    abobo

    bi

    0

  • RESTADOR

    Si lo

    s nm

    ero

    s van co

    difica

    dos e

    n co

    mple

    mento

    a 2

    , la re

    sta a

    -bpue

    de h

    ace

    rse co

    n u

    na su

    ma a

    +(-b

    )U

    n n

    m

    ero

    b e

    n a

    2 cam

    bia

    de sig

    no p

    as

    ndo

    lo a

    com

    ple

    mento

    a 1

    y sum

    and

    o +

    1

    0100

    1011

    b[3

    :0]

    b[3

    :0]

    0 1

    1 1

    ci

    a[3

    :0]

    b[3

    :0]

    o[3

    :0]

    0000

    +1011

    0110

    0

    b

    000

    0-bco

    1

    4

    44

    4

    +4=

    010

    0=

    0x4

    -4=

    110

    0=

    0xC

    -7=

    100

    1=

    0x9

    +7=

    011

    1=

    0x7

    1001

    0110

    b[3

    :0]

    b[3

    :0]

    0 0

    0 1

    ci

    a[3

    :0]

    b[3

    :0]

    o[3

    :0]

    0000

    +0110

    0011

    1

    abci

    oco

    RESTADOR

    b a

    a-b

    bo

    bi

    n

    nn

    nabc

    i

    oco

    b a

    ab

    co /b

    os/a

    nn

    nabc

    i

    oco

    Substra

    ctor

    abo=

    a-b

    bo

    bi

    nnn

    Un re

    stado

    r de n

    -bits se

    pued

    e co

    nstru

    ir a p

    artir d

    e u

    n su

    mador,

    neg

    an

    do u

    na e

    ntra

    da e

    invirtie

    nd

    o e

    l borro

    wde e

    ntra

    da y sa

    lida

    Un su

    mad

    or/re

    stador d

    e n

    -bits se

    pued

    e co

    nstru

    ir a p

    artir d

    e u

    n

    n

    ico su

    mador, y u

    na se

    al s/a

    para

    imple

    menta

    r resta/su

    ma

    n

    Adder

    Substra

    ctor

    abc

    o /bo

    s/a

    nnn

    o=

    ab

    Adder

    Substractor

    abc

    o0

    444

    o=a

    +b

    Adder

    Substractor

    abb

    o1

    444

    o=a

    -b

    s/a

    b

    01n-1

    01

    n-1

    nn

    b[n-1:0]

    c[n-1:0]

  • RESTADOR

    El re

    stador p

    roduce

    la re

    sta d

    e n

    m

    ero

    s codifica

    dos e

    n b

    inario

    natu

    ral (u

    nsig

    ne

    d) o

    en co

    mple

    mento

    a 2

    (signe

    d)

    Resta

    unsig

    ne

    d=

    > C

    arry

    si co [n

    -1]=

    0 (b

    o =c

    o [n-1

    ])

    Resta

    sign

    ed

    =>

    Ove

    rflow

    si co [n

    -1]

    ci [n

    -1]=

    1 (c

    i [n-1

    ]=c

    o [n-2

    ])

    Neg

    ative

    si o[n

    -1]=

    1E

    jem

    plo

    :

    -7-6-1

    1001

    +0101

    011

    11

    0x9

    +0x6

    0x0

    F

    co

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    0 0

    0 1

    1c

    i

    91

    015

    1111

    +0101

    101

    01

    0xF

    +0x6

    0x1

    5

    co

    o[3

    :0]

    1 1

    1 1

    1c

    i

    15

    105

    -1-6+

    5-7+

    5+

    4

    1001

    +1010

    101

    00

    0x9

    +0xB

    0x1

    4

    co

    o[3

    :0]

    a[3

    :0]

    b[3

    :0]

    1 0

    1 1

    1c

    i

    9

    54

    0010

    +0101

    010

    00

    0x2

    +0x6

    0x0

    8

    co

    o[3

    :0]

    0 1

    1 1

    1c

    i

    21

    08

    +2

    -6-8C

    arry!!!

    2-10

    =8

    Ove

    rflow

    !!!(+

    2)-(-6

    )=-8

    Ca

    rry!!!9

    -10=

    15

    Ove

    rflow

    !!!(-7

    )-(+5

    )=+

    4