ABEL

ABEL es la abreviatura de Advanced Boolean Expression Language. Es un lenguaje de descripción de hardware y un conjunto de herramientas de diseño para programar dispositivos lógicos programables ( PLDs).

Características

ABEL permite describir un diseño concurrentemente mediante tablas de verdad o ecuaciones lógicas. Ejemplos:

...

X=.X.
Truth_Table    //tabla de verdad
 ([A, B, C] -> Out)  //variables
  [0, 0, 0] -> 1;    //valores de las entradas y salidas
  [0, 0, 1] -> 0;
  [1, X, X] -> 1;
END

...

Out= (!A & B) # (B & C);      //ecuación lógica

También permite la programación secuencial con máquinas de estados. Ejemplo:

...

state_diagram sreg
  state S0:
     goto S1 with { Out=1; }
  state S1:
     if (A & B) then S0 with { Out=0; }

...

end

Otra opción que permite es definir vectores de test (patrones de entradas y salidas) que pueden ser programados en el hardware. La estructura de los vectores de test es similar a la de las tablas de verdad.

Other Languages