Академический Документы
Профессиональный Документы
Культура Документы
Las empresas que más desarrollo tiene en este campo son Xilinx, Cypress y
Atmel, aunque existen compañías en el mercado desarrollando aplicaciones
similares pero no tienen la misma aceptación.
Primero necesitamos tener algo que resolver, en este caso una función lógica
dada por .
entity nombre is
*entity son todos los elementos que forman de manera
port (var1,var2, varn: in tipo_dato;
individual o conjunto un sistema digital. (sumador,
var_salida: out tipo_dato); comparador, compuertas, flip flops, etcétera)
end nombre;
begin
proceso
condiciones de operación
Generalmente aquí va el cuerpo del programa y se aplican los conocimientos de
end condición; diseño digital basada en un lenguaje de programación utilizando directamente el
end proceso; hd descrito, de ahí el nombre de lenguaje.
end funcional;
Como ya tenemos una función lógica definida ahora realizaremos nuestro programa.
library ieee;
use ieee.std_logic_1164.all;
entity funcion1 is
port(a,b,c: in std_logic;
F: out std_logic);
end funcion1;
architecture compuertas of funcion1 is
begin
F<=((not a and b) or (a and not c));
end compuertas;
Se deberá crear un archivo con extensión .jed o jedec (joint electronic device
engineering council) dependiendo de la aplicación y este será el que carguemos en
el programador.
Ahora veremos el ejemplo de cómo generar todas las funciones lógicas básicas con
ese mismo GAL 22V10A.
Se requiere un programa que realice las funciones and, or, not a, not b,
nand, nor, xor y xnor similar al programado en wincupl.
library ieee;
use ieee.std_logic_1164.all;
entity funciones is
port (a,b: in std_logic;
f1,f2,f3,f4,f5,f6,f7,f8: out std_logic);
end funciones;
architecture compuertas of funciones is
begin
f1<= not a;
f2<= not b;
f3<= a and b;
f4<= a or b;
f5<= a nand b;
f6<= a nor b;
f7<= a xor b;
f8<= a xnor b;
end compuertas;