diseÑo electronico
TRANSCRIPT
INTRODUCCIÓN
Warp R6.3 de Cypress Semiconductor es una de las tantas herramientas existentes
para el diseño con lógica programable la cual permite procesar varios tipos de entrada
de datos (esquemática y compilador estándar de VHDL y la combinación de ambas) lo
cual la hace muy funcional.
En la actualidad es uno de estándares más usados en la industria, ya que presenta la
característica de optimizar los diseños con rapidez y precisión utilizando muy poca área
del circuito.
WarpR6.3 permite la grabación de distintas familias de dispositivos lógicos
programables, como pueden ser: PLD, CPLD y FPGA. Así durante el curso se utilizará el
SPLD PALCE22V10 el cual esta construido internamente con flip-flops, además de un
arreglo AND-OR. Cada sección de un SPLD se denomina macro celda, que es un circuito
que contiene una función de lógica combinacional de suma de productos y un flip-flop
opcional.
VHDL
los lenguajes de descripcion de hardware(VHDL) proporcionan medios eficaces para el
diseño asistido por computadora(CAD) de redes logicas digitales. el VHDL es solo un
leguaje de alto nivel que permite describir todas las caracteristicas importantes de una
red logica de complejidad arbitraria
MATERIAL Y EQUIPO EMPLEADO
Una computadora equipado donde se encuentre instalado el paquete
Computacional
Warp R6.3.
Proteus 7 profesional versión actual
Librerías GAL 16v8 para proteus
DESARROLLO
I. Crear un Proyecto en VHDL
1.1.- Una vez dentro de Windows hacer click en el botón de Inicio, seleccionar
Programas > Cypress > Warp R6.3 > Galaxy. Después de abrir este programa se
procederá a realizar un proyecto nuevo.
Figura 1.1: Inicio de Programa Galaxy
1.2.- Después de abrir el programa Galaxy, seleccionar File > New (figura 1.2).
Figura 1.2: Opción New del menú File
I.3. Luego aparecerá otra ventana como la que se muestra en la figura 1.3. Esta
ventana permitirá crear un proyecto con el que se podrá programar un
dispositivo y se deberá seleccionar la segunda opción Project [Target –
Device].
Figura 1.3: Opción Project [Target-Device] del menú New
1.4.- Después de seleccionar la opción (Project [Target – Device] ) aparecerá otra
ventana (figura 1.4), aquí se deberá de seleccionar en Project Type la opción de VHDL;
a continuación se tiene que asignar un nombre al proyecto, por ejemplo el nombre de
practica1. En el segundo cuadro de texto se selecciona el directorio donde se guardará
el proyecto, se puede hacer un directorio nuevo desde esa misma ventana con solo
escribir el nombre, por ejemplo a:\practica1, o también se tiene la opción de buscar
una carpeta ya existente en la opción Browse. Cuando se termina de especificar los
nombres y el lugar donde se guardará, hacer click en el botón de Siguiente.
Figura 1.4: Ventana Project Información
1.5.- Al hacer esto, aparecerá una ventana nueva con el título Add Files to Project
(figura1.5), ésta se usa cuando ya se tienen archivos que se quieran agregar al
proyecto nuevo. Como esta es la primer practica no es necesario especificar nada en
esta ventana, solo se debe hacer click en el botón Siguiente.
Figura 1.5: Ventana Add Files to Project
1.6.- La siguiente ventana (figura 1.6) tiene el título de Select Target Device, esta
ventana es muy importante ya que en esta se selecciona el PLD en el que se va a
trabajar. Los PLD’s mas usuales son los mas pequeños (16V8, 22V8 ó 22V10), los cuales
aparecen en la ventana como SPLD; seleccionar C22V10. Para observar la siguiente
opción se hace doble click sobre este texto, a continuación aparece una lista de los
SPLD´s más comunes, se selecciona el SPLD que se desee e inmediatamente aparecerá
una lista donde hay varios tipos del mismo SPLD. Aquí es muy importante que se
seleccione un SPLD que tenga un encapsulado tipo PDIP para que luego de
programarlo se pueda montar sobre un protoboard; seleccionar PALCE22V10 10PC/PI.
En la parte de debajo de esta misma ventana aparece información del SPLD que se
selecciona; después de seleccionar el SPLD adecuado hacer click en Finalizar.
Figura 1.6: Ventana para seleccionar el tipo de dispositivo
1.7.- Al realizar lo anterior, aparecerá una ventana donde se pregunta si se quiere
guardar el nuevo proyecto, aquí solo se deberá hacer click en Sí.
1.8.- Al terminar de hacer esto ya se tiene un nuevo proyecto donde se encuentra
suficiente información para que el compilador pueda generar el archivo *.jed. Ahora se
debe agregar el código que se compilará, para esto seleccionar File > New > Text File
también se puede agregar al hacer click sobre el icono de New Text File.
Figura1.7 Programa de compilado en galaxi warp 6.3
Figura1.8 Programa de compilado en QUARTUS II
II. GAL
Matriz lógica genérica (Generic array logic) fueron desarrolladas por Lattice Semiconductor.
Una GAL permite implementar cualquier expresión en suma de productos con un número de
variables definidas. El proceso de programación consiste en activar o desactivar cada celda
E2CMOS con el objetivo de aplicar la combinación adecuada de variables a cada compuerta
AND y obtener la suma de productos.
Las celdas E2CMOS activadas conectan las variables deseadas o sus complementos con las
apropiadas entradas de las puertas AND. Las celdas E2CMOS están desactivadas cuando una
variable o su complemento no se utiliza en un determinado producto. La salida final de la puerta
OR es una suma de productos. Cada fila está conectada a la entrada de una puerta AND, y
cada columna a una variable de entrada o a su complemento. Mediante la programación se
activa o desactiva cada celda E2CMOS, y se puede aplicar cualquier combinación de variables
de entrada, o sus complementos, a una puerta AND para generar cualquier operación producto
que se desee. Una celda activada conecta de forma efectiva su correspondiente fila y columna,
y una celda desactivada desconecta la fila y la columna.
Las celdas se pueden borrar y reprogramar eléctricamente. Una celda E2CMOS típica puede
mantener el estado en que se ha programado durante 20 años o más. Las macroceldas lógicas
de salida (OLMCs) están formadas por circuitos lógicos que se pueden programar como lógica
combinacional o como lógica secuencial. Las OLMCs proporcionan mucha más flexibilidad que
la lógica de salida fija de una PAL.
Figura 1.9 (GAL 16v8) en proteus
III. MULTIPLEXORES:
Los multiplexores son circuitos de mediana escala de integración. Se definen como
bloques de 2n entradas, n líneas de control y una única salida, donde n es un número
entero positivo.
Para el diseño de circuitos combinacionales usando multiplexores, vamos a utilizar un
ejemplo:
Tomando la siguiente tabla de verdad:
Se acomodan los términos en el mapa de Karnaugh
El habilitador (strobe o enable) se coloca en GND para que el multiplexor se active.
El diagrama queda de la siguiente manera
Después de la compilar el programa se simulo en proteus para simular en proteus es
necesario tener el archivo .jed
El paso final es tomar el archivo con extensión .jed y programarlo en el GAL usando un programador de GALs. Dicho archivo se generó en el último proceso (Create Fuse Map) con el proceso marcado como JEDEC File. Dicho archivo JEDEC se guarda en el directorio del proyecto.
Condición cuando sel_0 =0 sel_1=0 la sal=E1
Condición cuando sel_0=1 sel_1=1 la salida E4
CODIGO EN VHDL
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity mux41 is
port(
sel: in std_logic_vector ( 1 downto 0 );
e1: in std_logic ;
e2: in std_logic ;
e3: in std_logic ;
e4: in std_logic ;
sal: out std_logic );
end;
architecture RONCALLA of mux41 is
begin
process(e1,e2,e3,e4,sel)
begin
case sel is
when "00"=>sal<=e1;
when "01"=>sal<=e2;
when "10"=>sal<=e3;
when "11"=>sal<=e4;
when others=>null;
end case;
end process;
end RONCALLA;
IV. CONCLUSIONES
Los objetivos propuestos al inicio de la realización del proyecto fueron cumplidos satisfactoriamente, gracias a que a lo largo de éste se realizaron pruebas repetidamente para que cada parte del prototipo funcionara de manera correcta.
El diseño final del se facilitó con la ayuda de las herramientas de WARP GALAXI que existen hoy en día. Se modificó el diseño repetidas veces con mucha facilidad, ya que se cambiaron constantemente algunos materiales que hicieron.
TRABAJOS A FUTURO
Ya finalizado ete proyecto, se espera haber conseguido simular, que futuros a estudiantes tengan deseos de participar, ya sea mejorando el funcionamiento del mismo proyecto o utilizándolo para otras tareas.
UNIVERSIDAD NACIONAL DEL ALTIPLANO – PUNO
FACULTAD DE INGENIERIA MECANICA ELECTRICA, ELECTRONICA Y SISTEMAS
ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA
DISEÑO ELECTRONICO
TITULO
SIMULACION DE PLD GAL16V8 EN PROTEUS
PRESENTADO POR:
QUISPE RONCALLA Victor Raul 071165
ESTOFANERO YUCRA Elar Joel 063812
DOCENTE: ING. GAVINO JOSE FLORES CHIPANA
PUNO, CU. Junio DEL 2012