FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Tema 3: CIRCUITOS DE CONMUTACIÓN:
ANÁLISIS Y DISEÑO DE CIRCUITOS COMBINACIONALES
Contenido
* Puertas y circuitos de conmutación. Puertas lógicas integradas: tipos y parámetros de conmutación. * Análisis lógico de circuitos combinacionales.
* Objetivos y conceptos básicos en el diseño de circuitos de conmutación.
* Pasos en el proceso de diseño. Obtención de tablas de verdad a partir de otras descripciones. * Realizaciones en dos niveles. Método de reducción mediante el mapa de Karnaugh.
* Funciones incompletamente especificadas. Bibliografía
- M. Morris Mano y Charles R. Kime: Caps. 2 y 3 - V. P. Nelson et al: Caps. 2 y 3
- C.H. Roth: Caps 5, 6, 7, 8 - J. Wakerly: Caps. 3 y 4
FC
Análisis y Diseño Combinacional
Encapsulados de Circuitos Integrados
DIP o SOIC Muesca Identificador pin 1 Chip Encapsulado de plástico Pin
Encapsulados para Montajes Superficiales
Pines
FC
Análisis y Diseño Combinacional
Cable
Pad
Core
FC
Análisis y Diseño Combinacional
[Hennessy & Patterson] Obleas de 6 pulgadas
80 dados de 1.6 x 1.0 cm2
246 dados de 0.86 x 0.6 cm2 Intel 80486
FC
Análisis y Diseño Combinacional
Microfotografía del
primer circuito integrado comercial
Un biestable con 4 transistores y 2 resistencias (Fairchild 1961)
FC
Análisis y Diseño Combinacional
Procesador MIPS 4000 con 1.3Mtransistores Dado de 1.5 x 1.1 cm2
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Númer o de terminales I/O Longitud de puerta (nm) 350 60 Número de Transistores por chip (x106) ´ Ár ea del c h ip (m m 2 ) ASIC Microprocesador Microprocesador ASIC
FC
Análisis y Diseño Combinacional
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Tema 3: CIRCUITOS DE CONMUTACIÓN:
ANÁLISIS Y DISEÑO DE CIRCUITOS COMBINACIONALES
Contenido
* Puertas y circuitos de conmutación. Puertas lógicas integradas: tipos y parámetros de conmutación. * Análisis lógico de circuitos combinacionales.
* Objetivos y conceptos básicos en el diseño de circuitos de conmutación.
* Pasos en el proceso de diseño. Obtención de tablas de verdad a partir de otras descripciones.
* Realizaciones en dos niveles. Método de reducción mediante el mapa de Karnaugh. * Funciones incompletamente especificadas.
Bibliografía
M. Morris Mano y Charles R. Kime: Caps. 2 y 3; P. Nelson et al: Caps. 2 y 3; C.H. Roth: Caps 5, 6, 7, 8; J. Wakerly: Caps. 3 y 4; C. Baena et al: Caps. 3y 4
ANÁLISIS Y DISEÑO COMBINACIONAL
OBJETIVOS Y CONCEPTOS BÁSICOS EN EL DISEÑO DE C.C.
Diseño o síntesis
: Dada la D
ESCRIPCIÓN FUNCIONAL, obtener el C
IRCUITOObjetivos
:
• Encontrar un proceso de diseño válido para cualquier función combinacional • El circuito debe ser ÓPTIMO frente a algún criterio de diseño
• El proceso debe ser lo más sistemático posible
Criterios de diseño
:
Son posibles muchos criterios realistas (reducir retraso o consumo, o aumentar la testabilidad o robustez o fiabilidad,...) pero aquí adoptamos el siguienteCriterio de coste:
1. Reducir el número de puertas 2. Reducir el número de conexiones
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Restricciones y Redefinición del Criterio de coste
Restricciones:
• Independencia de tecnologías, empaquetados o librerías de celdas • Disponibles las entradas en doble rail (x, x)
• No se consideran limitaciones de fan-in ni de fan-out
• Circuitos en dos niveles de puertas: AND-OR y OR-AND Redefinición del Criterio de coste:
1. Reducir el número de puertas ⇒ Menor número de términos-P (Expresiones sp) Menor número de términos-S (Expresiones ps) 2. Reducir el número de conexiones ⇒ Menor número de literales
ANÁLISIS Y DISEÑO COMBINACIONAL
PROCESO DE DISEÑO: Pasos en el proceso de diseño
1. De la primera descripción, obtener alguna descripción formal
2. De la descripción formal, obtener la descripción formal adecuada al
procedimiento que se va a usar:
• Mapas de Karnaugh
• Σ(mi) o Π(Mi) para Quine-McCluskey • Otros (Εsp/Εps para Tysson, etc.)
3. Aplicar el procedimiento y obtener la
Εsp (Εps) óptimaFC
ANÁLISIS Y DISEÑO COMBINACIONAL
Obtención de tablas de verdad a partir de otras descripciones
Guías para obtener la primera descripción formal:
• Determinar las variables (booleanas) de entrada y especificar el significado de sus valores 0 y 1
• Igual, para las variables (booleanas) de salida
• Obtener alguna descripción formal. Para ello elegir la más adecuada a la descripción del enunciado
• De esa descripción, obtener el mapa de Karnaugh (o, si se usa otro método, la descripción formal correspondiente)
ANÁLISIS Y DISEÑO COMBINACIONAL
Ejemplo 1
Una información de 3 bits debe ser enviada mediante mensajes con paridad par. Obtenga la función que genera el bit de paridad par.
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Ejemplo 2
Se reciben grupos de 4 bits que corresponden a un mensaje con paridad par. Determine la función “E”, la cual indica si el mensaje es erróneo.
ANÁLISIS Y DISEÑO COMBINACIONAL
Ejemplo 3
Un producto viene en cajas con 4 paquetes, con 3 unidades cada uno de ellos.
Determine la función lógica que indique el número mínimo de paquetes a abrir ante una solicitud de N unidades (0 < N < 12).
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Ejemplo 4
Ana ve la televisión (TV) los días festivos, si es antes de las 11 de la noche y no es un reality show. También la ve los días laborables si ha terminado sus deberes, pero nunca desde las 11 de la noche en adelante. Determine una función que indique cuándo Ana ve la TV.
ANÁLISIS Y DISEÑO COMBINACIONAL
Tema 3: CIRCUITOS DE CONMUTACIÓN:
ANÁLISIS Y DISEÑO DE CIRCUITOS COMBINACIONALES
Contenido
* Puertas y circuitos de conmutación. Puertas lógicas integradas: tipos y parámetros de conmutación. * Análisis lógico de circuitos combinacionales.
* Objetivos y conceptos básicos en el diseño de circuitos de conmutación.
* Pasos en el proceso de diseño. Obtención de tablas de verdad a partir de otras descripciones.
* Realizaciones en dos niveles. Reducción mediante el mapa de Karnaugh. * Funciones incompletamente especificadas.
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
REALIZACIONES EN DOS NIVELES
IMPLICANTES/IMPLICADAS
IMPLICACIÓN/CUBRIMIENTO: Para dos funciones F y G de las mismas variables,
G implica a F si y sólo si todos los 1’s de G son también 1’s de F • O sea, “G(x) ⊆ F(x)” ⇔ “∀x/ G(x) = 1 ⇒ F(x) = 1”
• También se dice que F cubre a G o que G está cubierta por F
• Ejemplos: 00 01 11 10 0 1 0 0 0 1 1 1 1 1 F 00 01 11 10 0 1 0 0 0 1 0 1 0 1 G cab cab 00 01 11 10 0 1 0 0 1 1 0 0 1 0 H ab c G ⊆ F H ⊆ F
ANÁLISIS Y DISEÑO COMBINACIONAL
• ¿Y lo dual?: “Todos los 0’s de G* son también 0’s de F*”,
¿dedicamos otra definición a este caso, como “G* 0-implica a F*” ( G* ⊆0 F*)? • No vamos a hacer el desarrollo dual (implica ≡ ⊆1 y 0-implica ≡ ⊆0) por ser
innecesariamente complejo, aunque perderemos algo de rigor (ver abajo).
• En adelante sólo usaremos la definición de implicación dada (implica ≡ ⊆ ≡ ⊆1)
Para funciones completamente especificadas, si una función F1 implica a otra F2, entonces es totalmente correcto decir, o bien que F2 0-implica a F1, o bien que F2 está implicada por F1 -esto es, que “todos los 0’s de F2 son también 0’s de F1”. En el ejemplo de las funciones anteriores se observa que G implica a F [esto es F está implicada por G] y que F 0-implica a G:
Completamente especificadas: “ G ⊆1F” ⇒ “F ⊆0 G”
El siguiente ejemplo muestra que eso no es correcto para funciones incompletamente especificadas:
00 01 11 10 0 1 0 d d 1 0 d 1 0 F3 ab c 00 01 11 10 0 1 d d 0 1 0 1 1 0 F4 ab c F3 ⊆ F4 0
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Definiciones básicas para una función F
Implicada
, I
0I0 es una implicada de F si y sólo si: 1) I es un término suma
2) I está implicada por F, F ⊆ I
Implicante, I
I es una implicante de F si y sólo si: 1) I es un término producto 2) I implica a F, I ⊆ F
EJEMPLOS para la función H(abcd): 00 01 11 10 ab cd 00 01 11 10 1 1 0 0 0 1 1 0 0 0 1 1 0 0 1 1 H 00 01 11 10 ab cd 00 01 11 10 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 b·c·d 00 01 11 10 ab cd 00 01 11 10 1 1 1 1 1 1 1 1 0 0 1 1 0 0 1 1 a + c b·c·d es Implicante de H a + c es Implicada de H
Ejercicio. Verifique que las siguientes expresiones no son ni implicantes ni implicadas de H:
ANÁLISIS Y DISEÑO COMBINACIONAL
Orden de las Implicantes (igual para
implicadas
)
Orden Número de 1’s que cubren
Nº de literales F de n vbles.
Ejemplos 5 vbles. Implicante Cuántas hay:
0 (mintérminos) 1 = 20 n a·b·c·d·e 32 1 2 = 21 n - 1 a·b·d·e 80 2 4 = 22 n - 2 a·b·e 80 3 8 = 23 n - 3 b·e 40 4 16 = 24 n - 4 b 10 5 32 = 25 n - 5 1 1 k 2k n - k
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Ejemplos de (Implicantes e implicadas)
00 01 11 10 ab c 0 1 00 01 11 10 ab c 0 1 00 01 11 10 ab c 0 1 a+b+c a·b·c a a a·c a+c a·b a+b b·c b+c c c b b
Los mapas de 4 variables contienen varios mapas de 3
00 01 11 10 ab cd 00 01 11 10 00 01 11 10 ab cd 00 01 11 10 00 01 11 10 ab cd 00 01 11 10
ANÁLISIS Y DISEÑO COMBINACIONAL
00 01 11 10 cd 00 01 11 10 00 01 11 10 ab cd 00 01 11 10 00 01 11 10 ab cd 00 01 11 10 00 01 11 10 ab cd 00 01 11 00 01 11 10 ab cd 00 01 11 00 01 11 10 ab cd 00 01 11 abFC
ANÁLISIS Y DISEÑO COMBINACIONAL
00 01 11 10 000 001 011 010 110 111 101 100 00 01 11 10 000 001 011 010 110 111 101 100 00 01 11 10 000 001 011 010 110 111 101 100 00 01 11 10 000 001 011 010 110 111 101 100
ANÁLISIS Y DISEÑO COMBINACIONAL
00 01 11 10 ab cde 000 001 011 010 110 111 101 100 00 01 11 10 000 001 011 010 110 111 101 100 00 01 11 000 001 011 010 110 111 101 100FC
ANÁLISIS Y DISEÑO COMBINACIONAL
...y más definiciones de implicantes
* Implicante prima de F, IP:
Es una Implicante de F que no está cubierta por ninguna otra Implicante de F
* Mintérmino distinguido de F:
Un mintérmino de F es distinguido si sólo es cubierto por una sola Implicante Prima
* Implicante prima esencial de F:
Una IP de F es esencial si cubre a algún mintérmino distinguido
00 01 11 10 ab cd 00 01 11 10 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 F 00 01 11 10 ab cd 00 01 11 10 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 F a·b·d es I, pero no IP: a·b·d ⊆ a·b 1 : mint. distinguido IPs esenciales
ANÁLISIS Y DISEÑO COMBINACIONAL
Expresión suma de productos óptima
TEOREMA:
La expresión suma de producto óptima de una función F se obtiene sumando-OR un conjunto de implicantes primas (IPs) de F de forma que:
1. Contenga al menor número de IPs que cubran completamente a F 2. Contengan el menor número de literales
PROPIEDADES
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Expresión producto de sumas óptima
* Es una extensión dual de lo referido para la suma de productos: 1
↔ 0; sumas ↔ productos
Implicante
↔ Implicada [informalmente,
implicantes de 0’s]* Los otros conceptos son comunes: agrupaciones de celdas, IP esencial, expresión mínima,...
Expresión óptima
ANÁLISIS Y DISEÑO COMBINACIONAL
Procedimiento mediante mapas de Karnaugh
* Sobre el mapa-K, seleccionar todas las IP’s esenciales
* Seleccionar el menor número de IP’s para cubrir la función, eligiendo para ello las de mayor orden
* Escribir la expresión sp resultante
∗∗∗∗∗ No dibujar todas las IP’s, sino sólo las que se necesiten
* Ejemplo: F = Σ (0, 2, 3, 4, 5, 10, 11, 13, 14, 15) 00 01 11 10 ab cd 00 01 1 1 1 1 00 01 11 10 ab cd 00 01 1 1 1 1
1º
2º
3º
F = a·c + b·c + a·c·d + b·c·dFC
ANÁLISIS Y DISEÑO COMBINACIONAL
Realizaciones dos niveles
∗ Las realizaciones en 2 niveles tienen muchas estructuras distintas. Las básicas son: 1. Cubriendo los 1’s de F: F = Fsp = P1 + P2 + P3 + ... ; con Pn = x · y · ...
Estructuras AND-OR; NAND-NAND; AND-wiredOR
2. Cubriendo los 0’s de F: F = Fps = S1 · S2 · S3 · ... ; con Sn = x + y + ... Estructuras OR-AND; NOR-NOR; OR-wiredAND
∗ Siendo G = F (los 1’s de G son los 0’s de F y los 0’s de G son los 1’s de F): 3. Obteniendo Gsp (cubrir los 0’s de F como si fueran implicantes de 1’s):
F = NOT (G) ⇒ Estructuras AND-OR-INV (AOI), AND-NOR, NAND-AND 4. Obteniendo Gps (cubrir los 1’s de Fcomo si fueran implicadas -implicantes de 0’s-):
ANÁLISIS Y DISEÑO COMBINACIONAL
FUNCIONES INCOMPLETAMENTE ESPECIFICADAS
∗ Las celdas Φ se usan como más conviene:
∗∗ Se incluyen para formar las agrupaciones de mayor orden (≡ con más celdas) ∗∗ No hay que cubrirlas (aunque puede hacerse)
∗ Ejemplo: F = Σ (1, 13, 14, 15) + d(5, 8, 12) 00 01 11 10 ab cd 00 01 11 10 0 0 - -1 - 1 0 0 0 1 0 0 0 1 0 F
Fsp = a·b + a·c·d ⇒ 5 y 12 se hacen 1
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
CUESTIONES FINALES
Realización de funciones de múltiples salidas
* Las funciones de múltiple salida dependen de las mismas variables. Los circuitos tienen varias
1.- Cada función se optimiza por separado
2.- Si resultan implicantes comunes, hay que compartirlas
...
... ... ... ...
salidas que dependen de las mismas entradas.
⇒ Se ahorran puertas compartiendo implicantes
** ¿Qué hacer? Usaremos el método aproximado siguiente:
... 00 01 11 10 F ab c 0 1 1 1 0 0 1 1 1 0 00 01 11 10 G ab c 0 1 0 0 1 1 0 1 1 1 F G b c a a >1 & >1
ANÁLISIS Y DISEÑO COMBINACIONAL
Eliminación de las restricciones de único rail, fan-in y fan-out
∗ Siempre se obtiene la forma sp/ps mínima y se corrige sobre ese circuito
Único rail:
Se usa un INV para x
x x x
Fan-in limitado Fan-out limitado
Se usan buffers
Se asocian puertas para formar una del mismo tipo lógico:
Asociativas (AND, OR):
...
No-asociativas (NAND, NOR): Hay que formar el circuito en
FC
ANÁLISIS Y DISEÑO COMBINACIONAL
Realizaciones con Circuitos Integrados SSI/MSI
∗ Los circuitos integrados comerciales SSI/MSI tienen varias puertas del mismo tipo: Por ejemplo: el CI 74’00 tiene 4 puertas NAND de 2 entradas
∗ Si, p. ej. sólo se utilizan dos NAND-2, sobrarán otras dos puertas (el 50% del CI) ∗∗ Hay que buscar reutilizar las puertas de los CI’s, esto es, hacer el mayor número de
operaciones con las puertas de los CI’s que se hayan utilizado ya Ejemplo: En único rail
F = a·b + a·c a b c 1 F & & & & ¼ 7400 ¼ 7400 ¼ 7400 ¼ 7400 Sólo un 7400
ANÁLISIS Y DISEÑO COMBINACIONAL
Otras formas de obtener las expresiones óptimas
∗ Los mapas-K sólo son útiles para hacer a mano funciones de pocas variables (<6) ∗ Las formas sp/ps se pueden obtener mediante otros procedimientos como:
1.- Método Tabular o de Quine-McCluskey 2.- Método de Tisson o basado en el consenso
∗ Otras formas en dos niveles universales, como la de Reed-Muller para AND-XOR ∗ Son muy importantes las formas multiniveles (más de 2 niveles):
∗∗ Formas suma de productos de sumas [de productos de sumas de...]