Bloques Combinacionales

Bloques Combinacionales 1. 2. 3. 4. 5. 6. 7. 8. Comparadores Sumadores y Semisumadores Multiplexores Demultiplexores Codificadores Decodificadores C...
3 downloads 2 Views 1MB Size
Bloques Combinacionales

1. 2. 3. 4. 5. 6. 7. 8.

Comparadores Sumadores y Semisumadores Multiplexores Demultiplexores Codificadores Decodificadores Convertidores de código Generadores /comprobadores de paridad Memorias ROM y Dispositivos PLA Buffer triestado

Circuitos combinacionales 

Cuando se conectan puertas lógicas entre sí, sin que haya almacenamiento, el circuito resultante se califica como combinacional.

Dr. Oscar Ruano 2011-2012

¿Por qué módulos estándar? 







Cualquier sistema combinacional puede implementarse como un sistema de 2 niveles: AND-OR Teóricamente es posible implementar cualquier sistema recurriendo a este modelo sistemático Utilizar esto para sistemas complejos, es muy costoso en tiempo y a veces imposible de implementar una network de 2 niveles debido a propiedades inherentes en las puertas lógicas: 

FAN IN: define el máximo número de inputs que una puerta lógica puede aceptar



FAN OUT: define el máximo número de inputs que la salida de una puerta lógica puede alimentar.

Estos motivos hacen que los sistemas complejos se implemente de forma jerárquica o modular. Dr. Oscar Ruano 2011-2012

Comparadores

Comparador Básico

Dr. Oscar Ruano 2011-2012

Especificación de un comparador 

Especificación en alto nivel



Codificación:

Dr. Oscar Ruano 2011-2012

Especificación de un comparador 

Función:



Ecuación:

Dr. Oscar Ruano 2011-2012

Sumadores y Semisumadores 

Suma de dos números

Dr. Oscar Ruano 2011-2012

Sumadores y Semisumadores 

Ecuación:

Dr. Oscar Ruano 2011-2012

Sumadores y Semisumadores

Dr. Oscar Ruano 2011-2012

Semisumador elemental 

El semisumador (half adder) es un circuito que suma dos bits de entrada ai y bi y devuelve un bit de resultado zi y un bit de acarreo ci.

Dr. Oscar Ruano 2011-2012

Sumador completo 

El sumador completo (full adder) es un circuito que suma dos bits de entrada ai y bi más un acarreo de entrada ci-1 y devuelve un bit de resultado zi y un bit de acarreo ci

Dr. Oscar Ruano 2011-2012

Sumador completo (full adder) BCin

00

01

11

10

0

0

1 1

0

11

1

1

0

11

0

BCin

00

01

11

10

0

0

0

1

0

1

0

1

1

1

A

A

∑ = ABC + ABC + ABC + ABC =

(

) ( ) = C ( A ⊕ B ) + C (A ⊕ B ) = ( A ⊕ B ) ⊕ C

= C AB + AB + C AB + AB =

Cout = AB + ACin + BCin Cout = AB + ABCin + A BCin =

(

)

= AB + Cin AB + AB = = AB + Cin( A ⊕ B )

Dr. Oscar Ruano 2011-2012

Sumador completo compuesto de semisumadores

Dr. Oscar Ruano 2011-2012

Sumador en paralelo de 4 bits (nibble) 

Un sumador de 4 bits se implementa mediante 4 full adders. Dependiendo del método elegido para manejar los acarreos el sumador puede ser  

acarreo serie acarreo anticipado

Dr. Oscar Ruano 2011-2012

Ejemplo de aplicación

Dr. Oscar Ruano 2011-2012

Sumador paralelo con acarreo serie 

Se construye asociando n sumadores elementales completos (full adder) que reciben y procesan todos ellos los datos en paralelo, si bien el acarreo se propaga en serie de un sumador a otro (circuito lento)

Dr. Oscar Ruano 2011-2012

Ejemplo de retardo acarreo serie

Dr. Oscar Ruano 2011-2012

El tiempo de retardo considerado es el tiempo de suma del caso peor

Sumador de acarreo anticipado

Dr. Oscar Ruano 2011-2012

Sumador de acarreo anticipado 



El sumador Paralelo con Acarreo Anticipado (Look Ahead Carry, LAC) es muy rápido porque evita el overhead de propagación del acarreo a costa de una penalización en área. No se basa en las ecuaciones directas para Ci+1 y Si, sino en dos funciones adicionales llamadas de generación (Gi) y de propagación (Pi), para cada bit ‘i’ (i = 0, 1, 2…) 

Generación de Acarreo: tiene lugar cuando el sumador completo genera internamente un acarreo de salida. Solo cuando ambos bits son 1 se genera acarreo

Gi = AiBi



Propagación de Acarreo: tiene lugar cuando el acarreo de entrada se transmite como acarreo de salida. Solo cuando un de los bits de entrada es 1 se propaga el acarreo i i i

P = A ⊕B

Dr. Oscar Ruano 2011-2012

Sumador de acarreo anticipado

La limitación mas importante es que a medida que aumenta el número de etapas (bits), la ecuación de acarreos se hace más larga aumentando así la complejidad del sistema. Dr. Oscar Ruano 2011-2012

Sumador de acarreo anticipado

Dr. Oscar Ruano 2011-2012

Sumador/restador binario para números de 4 bits en Ca2 

Para números en complemento a 2, la substracción se implementa con el mismo hardware, negado el sustraendo; el 1 se suma poniendo a 1 el acarreo inicial

Dr. Oscar Ruano 2011-2012

Generación del segundo operando

Dr. Oscar Ruano 2011-2012

Sumador/restador de 16 bits en ca2

Dr. Oscar Ruano 2011-2012

Sumador BCD 

Suma números codificados en BCD y genera otro BCD

Dr. Oscar Ruano 2011-2012

Decodificadores

Dr. Oscar Ruano 2011-2012

Decodificador de n entradas

Dr. Oscar Ruano 2011-2012

Decodificador de 2 entradas

Dr. Oscar Ruano 2011-2012

Decodificador 4 bits Salida Activa a nivel Bajo

Dr. Oscar Ruano 2011-2012

Codificadores

Dr. Oscar Ruano 2011-2012

Codificadores: Decimal-BCD

Dr. Oscar Ruano 2011-2012

Convertidores de Código 

Los convertidores de código son circuitos lógicos combinacionales que permiten el paso de un código a otro.

Dr. Oscar Ruano 2011-2012

Convertidores de Código

Dr. Oscar Ruano 2011-2012

Conversor BCD a 7-segmentos

Dr. Oscar Ruano 2011-2012

Conversor BCD a decimal Un decodificador BCD a decimal convierte el código BCD en uno de los 10 posibles dígitos decimales.

Dr. Oscar Ruano 2011-2012

Multiplexor de 2n entradas

Dr. Oscar Ruano 2011-2012

Multiplexor de 2 a 1

Dr. Oscar Ruano 2011-2012

Multiplexor de 2 a 1

Dr. Oscar Ruano 2011-2012

Multiplexor de 2 a 1

Dr. Oscar Ruano 2011-2012

Multiplexores 4 a 1

Y = D0S1’S0’+ D1S1’S0+ D2S1S0’+ D3S1S0

Dr. Oscar Ruano 2011-2012

Multiplexor como generador de funciones lógicas 

Sirven para generar funciones lógicas combinacionales en forma de Suma de Productos

Dr. Oscar Ruano 2011-2012

Demultiplexores (DEMUX)

Dr. Oscar Ruano 2011-2012

Generadores y comprobadores de paridad

Dr. Oscar Ruano 2011-2012

Generadores y comprobadores de paridad Paridad Par:

PO = I 0 ⊕ I1

Paridad Impar:

PE = ( PO)' = ( I 0 ⊕ I1)'

Dr. Oscar Ruano 2011-2012

Memorias ROM 

Tipos de memoria: 

Mask-programmed ROM  



EPROM (erasable programmable ROM)  



Se graba con un programador Se borra con luz ultravioleta

EEPROM (electrically erasable PROM)  



Los datos son permanentes Económicamente posible en grandes cantidades debido al alto coste del diseño

Se borra con pulsos eléctricos Se pudee reprogramar 100 a 1000 veces

Flash memoria 

Similar a EEPROM pero se puede escribir sin necesidad de programador Dr. Oscar Ruano 2011-2012

Líneas externas de una ROM

Líneas de datos

Dr. Oscar Ruano 2011-2012

Tabla de datos

Dr. Oscar Ruano 2011-2012

Almacenamiento de la información

Dr. Oscar Ruano 2011-2012

Estructura de una ROM

Dr. Oscar Ruano 2011-2012

Estructura de una ROM

Dr. Oscar Ruano 2011-2012

Bloques de una ROM

Dr. Oscar Ruano 2011-2012

Programmable-Logic-Arrays (PLAs) 



Módulo combinacional que proporciona una implementación NOT-AND-OR para generación de funciones. Por niveles:   

 

NOT: provee la capacidad de complementar las distintas señales de input AND: provee la capacidad de generar los productos OR: provee la capacidad de generar las sumas

Una PLA por lo tanto implementa sumas de productos Como en el caso de las ROMs la programación de una PLA puede hacerse durante el proceso de fabricación (mask-programmed PLA) o bien sobre el “field” (field-programmable PLA o FPLA)

Dr. Oscar Ruano 2011-2012

Estructura de una PAL

NOTA: Los puntos fuertes de la figura indican aquellas conexiones que han sido programadas para una determinada función Dr. Oscar Ruano 2011-2012

Buffer tri-estado 

http://www.cs.umd.edu/class/spring2003/cms c311/Notes/CompOrg/tristate.html

Dr. Oscar Ruano 2011-2012