Una expresión booleana puede ser correcta para todas las entradas y aun así producir un pulso breve e inesperado mientras cambia una entrada. Eso es un riesgo lógico: las señales internas cambian en momentos distintos por los retardos de las puertas. Un mapa de Karnaugh ayuda a detectar un riesgo estático común, pero la minimización normal no elimina automáticamente estos riesgos.
Este ejemplo desarrolla un riesgo estático 1, muestra por qué el término de consenso redundante lo elimina en una red SOP de dos niveles y explica cuándo considerar el caso equivalente en circuitos POS.
Qué significa un riesgo estático
Un riesgo estático 1 ocurre cuando la salida debería permanecer en 1 durante la transición de una sola entrada, pero un retardo breve puede hacer que baje a 0. La función booleana tiene el valor correcto antes y después del cambio; el pulso aparece únicamente en la implementación física porque las señales atraviesan las puertas con retardos de propagación distintos.
El riesgo estático 0 es el caso dual en una implementación POS de dos niveles: la salida debería permanecer en 0, pero puede subir brevemente. Estos nombres describen comportamientos específicos durante una transición; no todos los pulsos de un circuito se resuelven del mismo modo.
Ejemplo resuelto: F = AB + A′C
Considera la función F(A,B,C) = AB + A′C, que vale 1 en los minterms 1, 3, 6 y 7: F = Σm(1,3,6,7). Los dos términos producto cubren esos 1:
- A′C cubre los minterms 1 y 3, donde A = 0 y C = 1.
- AB cubre los minterms 6 y 7, donde A = 1 y B = 1.
Mantén B = 1 y C = 1 mientras A cambia. Con A = 0, A′C vale 1; con A = 1, AB vale 1. La salida debería permanecer en 1 en ambos extremos. Sin embargo, si A′C se apaga antes de que AB se encienda, ambos términos pueden valer momentáneamente 0 y producir un pulso bajo corto.
El mapa K y el término de consenso
En un mapa K de tres variables, los minterms 3 (A = 0, B = 1, C = 1) y 7 (A = 1, B = 1, C = 1) son adyacentes: solo cambia A. Los grupos mínimos de A′C y AB cubren estas celdas por separado, por lo que ningún término producto permanece activo durante toda la transición.
Añade el grupo que cubre los minterms 3 y 7, que corresponde a BC:
Según el teorema de consenso, BC es redundante desde el punto de vista lógico en AB + A′C: no cambia ninguna salida de la tabla de verdad. Físicamente, une la transición porque B y C permanecen en 1 mientras A cambia, así que la ruta BC mantiene activa la salida. La expresión resultante es mayor que la SOP mínima, pero evita este riesgo de transición en una red SOP de dos niveles.
En el mapa K, esto añade un grupo superpuesto para que cada par adyacente de 1 que deba permanecer alto durante el cambio de una sola entrada comparta al menos un implicante. El grupo es redundante para la equivalencia booleana, pero útil para cubrir la transición. Es un objetivo distinto de minimizar términos y literales. Consulta por qué se permiten los grupos superpuestos y el teorema de consenso (en inglés).
Cuándo importa evitar riesgos
Analiza los riesgos cuando un pulso breve pueda observarse o afectar otra parte del circuito, especialmente en rutas de control asíncronas o señales combinacionales que puedan cambiar el estado sin esperar un reloj. Un diseño síncrono quizá tolere ciertos pulsos combinacionales si desaparecen antes del tiempo de establecimiento del registro receptor, pero eso debe comprobarse con los requisitos de temporización, no suponerse.
- Identifica las transiciones en las que cambia exactamente una entrada y la salida debe seguir en 1 (para SOP) o en 0 (para POS).
- Comprueba si cada par de celdas adyacentes está cubierto conjuntamente por un implicante de la implementación.
- Si un par no comparte un término, añade el grupo de consenso redundante correspondiente y vuelve a comprobar la tabla de verdad y las condiciones de temporización.
Límites y siguientes pasos
Este ejemplo trata un riesgo estático en un circuito de dos niveles durante el cambio de una sola entrada. Los cambios simultáneos de varias entradas, las rutas reconvergentes, la factorización multinivel y los riesgos dinámicos requieren análisis temporal adicional. Un minimizador booleando devuelve una expresión equivalente según su objetivo de minimización; no sustituye el análisis de riesgos ni la verificación de temporización del circuito.
Repasa las implementaciones de dos y varios niveles (en inglés) y compáralas con el método de cobertura mínima. La guía de lógica combinacional y secuencial (en inglés) explica dónde encajan los mapas K.