martes, 21 de octubre de 2014

Lógica progamable (III): Ejemplo sencillo, síntesis de una GAL en lugar de 4 puertas

Este ejemplo espero que sea sencillo de entender, aunque requiere saber un poco de electrónica digital, pero no creo que sea difícil de entender. voy a hacer un diseño con tres puertas, y luego reemplazarlos por una GAL, el caso es extrapolable a cualquier tamaño de circuito.

Disponemos de cuatro señales de entrada, que llamaremos A, B, C y D. Voy a hacer un circuito que haga lo siguiente, sume el producto de A con B con el contrario del producto de C con D. El esquema sería el siguiente:



Necesitamos dos puertas AND, una NOT y una OR, por tanto usaremos tres chips, uno con 4 puertas AND del que usaremos solo 2, otro con 4 puertas NOT del que usaremos solo una, y otro con 8 puertas NOT del que usaremos solo una.

Seguro que mas de uno se pone y lo desarrolla con un solo tipo de puertas usando álgebra de Boole, ya que siempre se puede reducir AND a NOR y al contrario OR a NAND, pero eso es cargarse el ejemplo, y a mi me salen de todas formas 5 puertas mínimo.

Esto se puede simplificar usando un solo chip con una pequeña GAL con al menos 5 celdas AND/OR, usando solo una línea de código:

Pin A,B,C,D entrada ;
Pin S Salida;

S = (A AND B)  OR (NOT(C AND D));


Un solo chip y una ecuación en una línea de Abel, Verilog o VHDL, y a correr. Lo puedo meter en un chip de los que se fabriquen hoy día, y si mañana dejan de hacerlo, busco otro chip, le meto mi línea y a funcionar.

Mi descripción del funcionamiento (mi "programa fuente") es la síntesis del circuito, y luego cuando genero (lo que podemos llamar "compilar") es el desarrollo interno del circuito. Solo tengo que mantener mi definición, y generar (que no compilar) el circuito específico para el chip que quiero usar, y si cambia el chip solo tengo que volver a generar mi definición.

1 comentario:

  1. Hace tiempo que le tenía ganas al tema de las FPGA y similares, y viendo tus artículos, me acabo de decidir.
    Seguiré con muchas ganas los mismos, y si tengo alguna duda, espero poder contar contigo.

    Muchas gracias por estos artículos.

    ResponderEliminar