¿Cómo generar la red de puerta más corta / más pequeña / más barata para un conjunto de funciones?

0

Para hacer esto lo más genérico: tengo un conjunto de entradas I0, I1, ..., In , salidas O0, O1, ... Om y verdad tablas que dan los valores deseados para cada Oi para todas las combinaciones de entrada.

Ejemplo: sumador completo

I0 I1 I2 O0 O1
 0  0  0  0  0
 0  0  1  0  1
 0  1  0  0  1
 0  1  1  1  0
 1  0  0  0  1
 1  0  1  1  0
 1  1  0  1  0
 1  1  1  1  1

Ahora sé cómo usar un diagrama de Karnaugh para generar términos mínimos para cada salida y construirlos con puertas NOT, AND y OR. Pero en realidad solo tengo puertas con 2, 3, 4 u 8 entradas, por lo que para más entradas, las puertas deben estar encadenadas en un árbol que conduce a muchas puertas y rutas de señal largas, y también tengo más tipos de puertas para aprovechar.

Por lo tanto, mi pregunta es : ¿Cómo puedo generar una red de puerta utilizando cualquier tipo de puertas optimizadas para la ruta más corta (la más rápida), la cantidad mínima de puertas / cables (la más fácil de ensamblar) o la cantidad mínima? de 7400 chips de la serie (me estoy quedando sin espacio :). Teniendo en cuenta los límites de fanout también sería bueno.

¿Hay algo mejor que Brute forzando a todas las redes de puertas posibles a ver si alguna de ellas da el resultado correcto?

Nota: el objetivo objetivo sería algo que pueda manejar al menos 16 entradas y 16 salidas.

    

0 respuestas

Lea otras preguntas en las etiquetas