circuitos combinacionales

26
CIRCUITOS COMBINACIONALES 1

Upload: elmer-mendoza

Post on 23-Jun-2015

226 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Circuitos combinacionales

CIRCUITOS COMBINACIONALES

1

Page 2: Circuitos combinacionales
Page 3: Circuitos combinacionales

Luis Rincón Córcoles

José Ignacio Martínez Torre

Susana Borromeo

Cristina Conde Vilda

Ángel Serrano Sánchez de León

Estructura y Tecnología de Computadores (ITIG)

2

Tema 6. Circuitos combinacionales y puertas lógicas

Programa

1. Introducción.

2. Puertas lógicas básicas.

3. Análisis y síntesis de circuitos combinacionales.

4. Bloques combinacionales estándares principales.

4.1. Sumadores y restadores.

4.2. Decodificadores.

4.3. Multiplexores.

4.4. Desplazadores.

4.5. Dispositivos Lógicos Programables (Memorias ROM).

5. Bibliografía.

Conceptos básicos: circuito combinacional, puertas lógicas básicas (AND, OR,

NOT, NAND, NOR, XOR, XNOR), análisis de circuitos, síntesis de circuitos,

bloques combinacionales estándares (sumador/restador, decodificador,

multiplexor, desplazador, memorias ROM).2

3

Tema 6. Circuitos combinacionales y puertas lógicas

Page 4: Circuitos combinacionales

1. Introducción

En los circuitos combinacionales la salida Z en un determinado instante

de tiempo t

i sólo depende de X en ese mismo instante de tiempo t

i

, es

decir que no tienen capacidad de memoria y que se puede obviar la variable

de tiempo t.

Z(t) = F(X(t)) Z = F(X)

X F Z

Ejemplo: Sumador

Los circuitos combinacionales que vamos a estudiar son:

Puertas lógicas

Bloques combinacionales

Sumadores y restadores.

Decodificadores y multiplexores.

Desplazadores.

Dispositivos lógicos programables (ROM).

4

Tema 6. Circuitos combinacionales y puertas lógicas

2. Puertas Lógicas

Puerta Lógica: Circuitos electrónicos compuestos por resistencias, diodos y

transistores que realizan las distintas operaciones booleanas.

Vamos a estudiar circuitos lógicos con el convenio de lógica positiva:

Nivel H (5 voltios) Û 1 y Nivel L (0 voltios) Û 0.

Las puertas lógicas básicas son:

AND.

OR.

NOT.

Page 5: Circuitos combinacionales

NAND.

NOR.

XOR.

XNOR.3

5

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: AND

Tabla de verdad

1 1 1

1 0 0

0 1 0

0 0 0

A B Z

Z = A AND B = A · B

6

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: OR

Tabla de verdad

1 1 1

1 0 1

0 1 1

0 0 0

A B Z

Z = A OR B = A + B4

7

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: NOT

Z = NOT A = A

1 0

Page 6: Circuitos combinacionales

0 1

A Z

Tabla de verdad

8

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: NAND

Tabla de verdad

1 1 0

1 0 1

0 1 1

0 0 1

A B Z

Z = A NAND B = (A · B)5

9

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: NOR

Tabla de verdad

1 1 0

1 0 0

0 1 0

0 0 1

A B Z

Z = A NOR B = (A + B)

10

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: XOR

Tabla de verdad

1 1 0

1 0 1

Page 7: Circuitos combinacionales

0 1 1

0 0 0

A B Z

Z = A XOR B = A Å B6

11

Tema 6. Circuitos combinacionales y puertas lógicas

Puertas Lógicas Básicas: XNOR

Tabla de verdad

1 1 1

1 0 0

0 1 0

0 0 1

A B Z

Z = A XNOR B = A Å B

12

Tema 6. Circuitos combinacionales y puertas lógicas

3. Análisis de Circuitos Combinacionales

Análisis: Obtención de las funciones de conmutación que describen el

comportamiento del circuito, expresando la salida en función de las

entradas.

Ejemplo:

Z=(X2X1 + X1X0 + X2X1X0

)

X2

X2

X1

X1

X1

X0

Page 8: Circuitos combinacionales

X0

X2X1

X1X0

X2X1X07

13

Tema 6. Circuitos combinacionales y puertas lógicas

Síntesis: Suma de Productos

Síntesis: Materializar un circuito a partir de la función de conmutación. Es

inmediato generarlo con puertas AND-OR-NOT en forma de suma de

productos a partir de dicha función.

Ejemplo: Z= x2 + x1

x0 + x3

x2

x0+ x2

x1

x0

14

Tema 6. Circuitos combinacionales y puertas lógicas

La síntesis de un sistema combinacional en forma de suma de productos

mediante puertas NAND es directa materializando todos los operadores

que aparecen en la expresión de conmutación con puertas NAND y se

añaden inversores en los términos formados por único literal.

Ejemplo: Z= x2 + x1

x0 + x3

x2

x0+ x2

x1

x0= x2

· x1

Page 9: Circuitos combinacionales

x0

· x3

x2

x0

· x2

x1

x0

Tma

. Morgan

Síntesis: Puertas NAND (e inversores)8

15

Tema 6. Circuitos combinacionales y puertas lógicas

La síntesis de un sistema combinacional en forma de productos de sumas

mediante puertas AND-OR-NOT es directa materializando los operadores

que aparecen en la expresión de conmutación con sus puertas lógicas

equivalentes.

Ejemplo: Z= x2

(x1+x0

)(x3+x2+x0

)(x2+x1+x0

)

Síntesis: Producto de Sumas

16

Tema 6. Circuitos combinacionales y puertas lógicas

La síntesis de un sistema combinacional en forma de productos de sumas

mediante puertas NOR es directa materializando los operadores que aparecen

en la expresión de conmutación con sus puertas NOR y añadiendo inversores en

los términos formados por un único literal.

Ejemplo: Z= x2

Page 10: Circuitos combinacionales

(x1+x0

)(x3+x2+x0

)(x2+x1+x0

)= x2+(x1+x0

)+(x3+x2+x0

)+(x2+x1+x0

)

Tma

. Morgan

Síntesis: Puertas NOR (e inversores)9

17

Tema 6. Circuitos combinacionales y puertas lógicas

4. Bloques combinacionales estándares

Las materializaciones en forma de redes de puertas básicas no son adecuadas

cuando la complejidad del diseño es grande.

• En estos casos se realiza diseño jerárquico y modular, y no

materializaciones mediante redes de puertas básicas (gran propensión a

errores).

Ese diseño jerárquico y modular se puede llevar a cabo si se dispone de

módulos que realicen funciones más complejas que las puertas básicas y que

permitan dividir el diseño en partes más sencillas.

Los módulos que vamos a estudiar en lo que queda de tema son:

sumador/restador, decodificador, multiplexor, desplazador, ROM. Otro módulo

que estudiaremos en temas posteriores es la ALU.

18

Tema 6. Circuitos combinacionales y puertas lógicas

4.1. Sumadores: semisumador elemental

El semisumador (half adder) es un circuito que suma dos bits de entrada a y

b y devuelve un bit de resultado sy un bit de acarreo cout

Page 11: Circuitos combinacionales

.

Cronograma

Circuito con puertas lógicas

+ Sum

CarryOut

a

b

cout = a·b

s = a Å b

Tabla de verdad

s

1 1 1 0

1 0 0 1

0 1 0 1

0 0 0 0

c s b out

a

S

S10

19

Tema 6. Circuitos combinacionales y puertas lógicas

Sumador elemental completo

El sumador completo (full adder) es un circuito que suma dos bits de entrada

a y b más un acarreo de entrada cin

y devuelve un bit de resultado s y un bit

de acarreo cout

.

Tabla de verdad

Cronograma

Page 12: Circuitos combinacionales

cOUT = a·b + a·cIN+b·cIN

s = a Å b Å cIN

+

ce

cs

s

a b

cIN

cOUT

S

S

1 1 1 1 1

1 1 0 1 0

1 0 1 1 0

1 0 0 0 1

0 1 1 1 0

0 1 0 0 1

0 0 1 0 1

0 0 0 0 0

c s out

c b in

a

20

Tema 6. Circuitos combinacionales y puertas lógicas

Sumador de n bits con propagación de acarreo en serie

Circuito con sumadores elementales

+

n n

A B

Page 13: Circuitos combinacionales

S

cs

ce

n

+

ce

cs

s

a b

+

ce

cs

s

a b

+

ce

cs

s

a b

a0

b0

a1

b1

bn-1

an-1

s0

s1

sn-1

c ...

Page 14: Circuitos combinacionales

n-1

c-1

Se construye asociando n sumadores

elementales completos (full adder) que

reciben y procesan todos ellos los datos en

paralelo. El acarreo se propaga en serie de

un sumador a otro.11

21

Tema 6. Circuitos combinacionales y puertas lógicas

Restadores binarios

Restar en C2: al minuendo se suma el complemento a 2 del sustraendo:

Para complementar el sustraendo, invertimos todos sus bits e

introducimos un 1 en el acarreo de entrada del sumador menos significativo.

Por este procedimiento también había que invertir el acarreo de salida.

Esto funciona tanto para binario puro como para complemento a 2 (en

complemento a 2 el acarreo se desprecia, y habría que detectar el posible

desbordamiento de otro modo).

+

ce

cs

s

a b

+

ce

cs

s

a b

+

ce

Page 15: Circuitos combinacionales

cs

s

a b

a0

b0

a1

b1

bn-1

an-1

s0

s1

sn-1

...

cn-1

'1'

22

Tema 6. Circuitos combinacionales y puertas lógicas

Sumador/restador

Podemos unir los circuitos anteriores y construir uno que haga sumas y restas en

función de una señal de control SUMADOR / RESTADOR DE n BITS.

Op = 0 OPERACIÓN DE SUMA

Op = 1 OPERACIÓN DE RESTA

+

ce

cs

s

a b

+

ce

Page 16: Circuitos combinacionales

cs

s

a b

+

ce

cs

s

a b

a0

b0

a1

b1

bn-1

an-1

s0

s1

sn-1

...

cn-1

+

ce

cs

s

a b

sn-1

bn-2

an-2

Op

Ejercicio 7 (Tema 5):

Page 17: Circuitos combinacionales

Å =

Å =

12

23

Tema 6. Circuitos combinacionales y puertas lógicas

4.2. Decodificadores

Un decodificador (o decodificador de n a 2

n

) es un módulo combinacional con n

entradas y 2

n salidas, además de una señal de activación (Enable) de entrada.

El decodificador activa la salida i-ésima cuando se presenta la combinación binaria

i en las entradas, siempre y cuando el módulo esté activo (enable=1): se activa la

salida correspondiente al número binario codificado en la entrada.

24

Tema 6. Circuitos combinacionales y puertas lógicas

Ejemplo: Decodificador de 4 a 16.13

25

Tema 6. Circuitos combinacionales y puertas lógicas

Síntesis de funciones con decodificadores

Un decodificador permite materializar todos los minterms de una función de n

variables.

Por lo tanto se puede usar para sintetizar cualquier función de n variables

Page 18: Circuitos combinacionales

expresada como suma de minterms sin más que usar un decodificador de n a

2

n y una puerta OR con tantas entradas como sumandos tenga la

expresión de la función.

26

Tema 6. Circuitos combinacionales y puertas lógicas

Ejemplo: diseño de las funciones f1

,f2

y f3 mediante decodificadores.14

27

Tema 6. Circuitos combinacionales y puertas lógicas

4.3. Multiplexores

Un multiplexor (o multiplexor de 2

n a 1) es un módulo combinacional con 2

n

entradas y 1 salida, además de una señal de activación y n señales de control.

El multiplexor conecta una de las 2

n entradas a la salida. Esta entrada se

selecciona con la palabra de control S (n bits).

28

Tema 6. Circuitos combinacionales y puertas lógicas

Ejemplo: Multiplexor de 4 entradas (de 4 a 1).15

29

Tema 6. Circuitos combinacionales y puertas lógicas

Síntesis de funciones con multiplexores

Un único multiplexor de 2

n a 1 permite materializar cualquier función de

conmutación de n variables. La expresión de una función como suma de

productos consiste en la suma de los minterms mi para los que la FC, f(i), toma

Page 19: Circuitos combinacionales

valor cierto, es decir:

Obviando E (enable), esta expresión coincide con la expresión del multiplexor

si se identifican: xi = f(i) " i=0, ..., 2

n

-1, (sn-1

, ..., s0

) =(an-1

, ..., a0

). En resumen,

debemos conectar:

• Las entradas de la función (an-1

,…, a0

) a las entradas de control del

multiplexor (sn-1

,...,s0

) .

• El valor f(i) que toma la función con la entrada de datos xi del multiplexor:

0 conexión a tierra (GND).

1 conexión a fuente de alimentación (VCC).

30

Tema 6. Circuitos combinacionales y puertas lógicas16

31

Tema 6. Circuitos combinacionales y puertas lógicas

4.4. Desplazadores

Un desplazador (shifter) es un módulo combinacional con n+2 entradas de

datos y n salidas, además de una señal de activación y señales de control.

El desplazador puede mover o no

bits a derecha e izquierda en

desplazamientos abiertos o

Page 20: Circuitos combinacionales

cerrados (rotaciones) bajo las

órdenes de las señales control.

32

Tema 6. Circuitos combinacionales y puertas lógicas

Aunque se pueden materializar mediante expresiones de conmutación a través

de puertas lógicas, la construcción habitual suele consistir en un conjunto de

multiplexores.17

33

Tema 6. Circuitos combinacionales y puertas lógicas

4.5. Dispositivos Lógicos Programables

Conjunto de circuitos integrados formados por cierto número de puertas

lógicas y/o módulos básicos y/o biestables cuyas conexiones pueden ser

personalizadas o programadas, bien sea por el fabricante o por el usuario.

Costes de producción bajos (fabricación de grandes tiradas).

Personalización de diseños por los usuarios (aumentan la confidencialidad).

Consumos medios, aunque hay familias especializadas en bajo consumo.

Velocidad intermedia.

Fiabilidad alta.

Tiempo de desarrollo muy bajo, sin dependencia de terceros.

Metodología sencilla.

Equipamiento sencillo.

Ejemplos:

• ROM (Read-only memory).

• PAL (Programmable Array Logic).

• PLA (Programmable Logic Array).

• FPGA (Field-Programmable Gate Array).

34

Tema 6. Circuitos combinacionales y puertas lógicas

Memorias ROM (Read-only memory)

Page 21: Circuitos combinacionales

• Memorias no volátiles y de acceso aleatorio.

• ROM y PROM sólo permiten lectura.

• La información se graba en el proceso de fabricación (ROM) o mediante un

proceso eléctrico posterior irreversible (PROM). Información inalterable.

• EPROM, EEPROM y Flash son memorias permanentes, pero pueden

borrarse mediante luz UV (EPROM) o elevadas corrientes eléctricas

(EEPROM y Flash).

• EPROM: se borran totalmente; EEPROM: se borran a nivel de palabra.

• Flash: se borran a nivel de bloque (mayor velocidad).

ROM EPROM Flash18

35

Tema 6. Circuitos combinacionales y puertas lógicas

Una memoria ROM (Read Only Memory - memoria de sólo lectura) es un

módulo combinacional con n entradas de direcciones y k salidas de datos,

además de una o varias señales de activación o selección.

Una memoria ROM es un circuito programable,

que se compone internamente de dos grupos

de puertas: un grupo de puertas AND (e

inversores) y un grupo de puertas OR.

El grupo de puertas AND están programadas

de antemano y conectadas de forma

inalterable, mientras que el grupo de puertas

OR son programables por el usuario.

36

Tema 6. Circuitos combinacionales y puertas lógicas

El grupo de puertas AND se puede ya entender como un decodificador de n a

2

n con el que se generan todos los minterms para cualquier función de n

variables (direcciones).

Page 22: Circuitos combinacionales

Ese decodificador (prefijado) junto a un grupo

de puertas OR programables permite

materializar cualquier función de n variables.

Cualquier salida de datos de la ROM

materializa la siguiente ecuación de

conmutación:

donde:

f

j

(i)=1 si existe la conexión (fila i, columna j) en el grupo OR

f

j

(i)=0 si no existe dicha conexión

grupo OR19

37

Tema 6. Circuitos combinacionales y puertas lógicas

Ejemplo: Materializar el comparador de

de dos palabras a={a1a0

} y b={b1b0

} que

cumple lo siguiente:

(Queda como ejercicio demostrarlo)

Seleccionamos las salidas que generan

los minterms de las funciones y

programar las conexiones en el grupo

OR para cada una de las salidas. Se

almacena directamente la tabla de

verdad.

38

Page 23: Circuitos combinacionales

Tema 6. Circuitos combinacionales y puertas lógicas

D.A. PATTERSON, J.L. HENNESSY. Estructura y Diseño de Computadores.

Reverté, 2000.

A. PRIETO, A. LLORIS, J.C. TORRES. Introducción a la Informática. 3ª

edición, McGraw-Hill, 2002.

J.M. ANGULO, J.GARCÍA. Sistemas Digitales y Tecnología de Computadores.

Paraninfo, 2002.

D.D. GAJSKI. Principios de diseño digital. Prentice Hall, 1997.

T.L. FLOYD. Fundamentos de sistemas digitales. Prentice Hall, 2000.

W. STALLINGS. Organización y Arquitectura de Computadores. 5ª edición,

Prentice Hall, 2000.

5. Bibliografía