Upload
whendy-garcia
View
638
Download
3
Embed Size (px)
Citation preview
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 1/15
Active-HDL
Introducción a VHDL
Entre los circuitos integrados que se utilizan en el diseño digital se encuentran,
según su escala de integración o número de compuertas, los SSI, MSI, LSI, VLSI,
ULSI, GSI., algunos de ellos permiten ser programados por el usuario, entre estos
están los PLD, los mismos se utilizan en muchas aplicaciones para reemplazar a los
circuitos SSI y MSI. Entre los dispositivos que se clasifican como PLD están: los PAL,
PLA, GAL, CPLD y FPGA. Estos dispositivos para su programación requieren un
software, un hardware representado en un prototipo, el cual se programa luego de
realizar la síntesis del circuito usando lenguaje de descripción de hardware (HDL).
Entre los lenguajes de descripción de hardware se encuentran Verilog y VHDL.
VHDL es un acrónimo que resulta de la combinación de VHSIC y HDL, que
significan Very High Speed Integrated Circuit (Circuito Integrado de Muy Alta
Velocidad) y Hardware Description Language (Lenguaje de Descripción de Hardware),
respectivamente. Se trata de un lenguaje diseñado a iniciativa del departamento de
defensa de Estados Unidos, basado en el lenguaje de programación Ada. En 1986 el
departamento de defensa de E. U. transfirió los derechos a IEEE, con la intención de
que fuera más ampliamente aceptado por la industria, desde 1987, IEEE se ha
encargado de la publicación y actualización del estándar VHDL.
Active-HDL es un programa bajo ambiente Windows orientado al diseño y la
simulación de integrados FPGA. Se pueden usar los lenguajes Verilog o VHDL.
Desde el escritorio acceda al programa a través del ícono Active-HDL 7.2SE ó en
Inicio>Programas> Active-HDL 7.2SE.
La pantalla inicial será como la de la siguiente figura:
A continuación aparecerá una pantalla que permitirá abrir un proyecto ya existente o crear
uno nuevo. Seleccione Crete new workspace y haga click en OK.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 2/15
Al seleccionar la creación de un nuevo proyecto, aparece la herramienta New Design
Wizard, que permite, comenzar un diseño con Active-HDL. Aquí puede darse el nombre del
proyecto (en este ejemplo se nombrará practica0), Se creará una carpeta donde se almacenará
y seleccionará la librería (por defecto tendrá el mismo nombre del diseño):
El siguiente cuadro de diálogo permite especificar los contenidos del diseño que se
crea. De estas opciones seleccionamos Create an empty design with design flow. Luego, hay
que seleccionar el botón Siguiente.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 3/15
En Block Diagram Languaje se selecciona: “Default HDL lenguaje” y en Default Languaje se
selecciona “VHDL”.
Luego, al activar el botón Flow Settings Aparecerá la pantalla de configuración. En ésta, se
deben seleccionar las herramientas de síntesis HDL e implementación.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 4/15
Una vez realizados los ajustes, se debe seleccionar la Familia SPARTAN 3E y hacer click en
el botón OK, se observará una pantalla con las características seleccionadas, y al hacer click en
el botón Siguiente, aparecerá la pantalla donde se le dará el nombre al diseño y el directorio
de su ubicación.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 5/15
Del lado izquierdo se tiene la ventana “Design Browser”, donde se muestran los
contenidos del diseño como por ejemplo, los archivos, las librerías, el estado de los archivos,
entre otros.
La ventana de la derecha llamada manager design flow permite incluir el programa ya sea
en su forma de código VHDL (Bloque HDE) diagrama de estados (FSM) o diagrama de bloques
(BDE)
Seleccione el ícono BDE para dibujar el diseño en diagrama de bloques. A continuación
aparecerá el asistente que ayudara a crear el diagrama de bloques inicial donde se
seleccionará el lenguaje a generar, el nombre del archivo, entidad y arquitectura (Estos son
opcionales)
Luego se asignan la cantidad y tipo de entradas y salidas de la siguiente forma:
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 6/15
A continuación en la ventana de diagrama de bloques aparecerán las señales de entrada y
salida, entonces activando de la barra de herramientas el ícono Show simbols toolbox o desde
la barra de menú View>Simbols Toolbox , aparecerá una ventana a la derecha con el menú
basado en compuertas lógicas. Seleccionando la adecuada y arrastrando el símbolo respectivo
a la ventana de diagrama se construirá el sistema buscado.
Una vez dibujado el diseño, se procede a compilarlo posicionando el ratón en el
archivo compuertas.bde mostrado en la ventana Design Browser y seleccionando la opción
Compilar o F11.
En la ventana inferior se mostrará la información de las acciones que se efectúen a lo
largo de las compilaciones, síntesis, simulaciones e implementaciones.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 7/15
Desde la barra de herramientas se puede activar el icono que permite generar el
código en VHDL
SINTETIZANDO EL PROYECTO: Síntesis consiste en reducir una descripción de alto nivel abstracción a un nivel de
compuerta que pueda ser implementado en el circuito. Dicho de otra manera, síntesis es el
proceso mediante el cual una descripción es convertida en un listado de conexiones (netlist)
entre las compuertas, registros, multiplexores, etc. de un CPLD o FPGA.
Desde la ventana manager design flow se procede a configurar las opciones de síntesis
para posteriormente sintetizar el proyecto.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 8/15
Active el botón de opciones de síntesis. Se abrirá una ventana donde se seleccionará el
archivo “compuertas” como Top Level Unit, se activará “VHDL” en Simulation Output Format
y se seleccionará la tarjeta BASYS2 3s250ecp132 en el menú Device. Finalmente se activará
Ok.
Para sintetizar se debe activar el ícono Syntesis y luego de que esta haya finalizado,
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 9/15
IMPLEMENTANDO EL PROYECTO:
Desde la ventana manager design flow se procede a configurar las opciones de
implementación para posteriormente implementar el proyecto.
Seleccione Custom constraint file y busque activando el botón Browse el archivo
basys2board.ucf
Seleccione Translate y marque Allow Unmatched LOC Consraints. Posteriormente
haga click en las flechas de navegación para observar más opciones.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 10/15
En la pestaña Bitstream desmarque DoNot Run Bitgen y en la pestaña Startup Options
seleccione JTAG Clock.
Finalmente haga click en Ok.
En la ventana Design Manager Flow haga click en el ícono de implementación y cuando ésta se
haya completado haga click en Close.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 11/15
Para programar el Spartan 3E en la tarjeta BASYS2 se deben adaptar las señales a y b de
entrada de ejemplo a los pines de conexión ; igualmente para la salida. Para ella se agregará un
archivo compuertas_top al diseño de la siguiente forma:
Desde la ventana Design manager Flow seleccione el ícono BDE. Aparecerán las siguientes
pantallas que ya fueron descritas anteriormente.
Asigne el nombre compuertas_top. El nombre de la entidad y arquitectura son
opcionales.
Posteriormente se deben definir los nombres de las entradas y salidas según la tarjeta
a usar. Para la BASYS2 los interruptores se denominan SW(7) a SW(0) y los leds se denominan
LD(7) a LD(0). Como se van a usar dos entradas, se creará una entrada tipo arreglo de 2
elementos llamada sw(1:0) y una salida también tipo arreglo de tres elementos ld(2:0).
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 12/15
Al aparecer los terminales en el espacio de trabajo el paso próximo es seleccionar de la
paleta de herramientas “symbols toolbox” en el submenú “practica0” el símbolo
correspondiente al sistema recién creado y arrastrarlo al espacio de trabajo
Luego se trazan las conexiones de la entrada SW y de la salida LD (el color marrón de
trazo grueso representa un bus.
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 13/15
A continuación se conecta cada entrada y salida con el bus respectivo:
Ahora, para definir el bit del bus al cual pertenece cada entrada y cada salida se hace
doble click en cada línea y se escribe el nombre respectivo:
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 14/15
Una vez finalizada la asignación de entradas y salidas se compila compuertas_top.bde
En opciones de síntesis se selecciona el archivo compuertas_top.bde como Top level
unit. Se sintetiza, se implementa y se procede a almacenar el archivo .bit generado en la
tarjeta usando el programa Adept de la compañía Digilent.
Al conectar la tarjeta, encenderla y abrir el programa Adept aparecerá una
ventana como la que sigue:
UC GUIA ACTIVE-HDL 7.2 STUDENT EDITION.
W.G. 1_2012 Página 15/15
Desde la dirección: C:\My_Designs\practica0\practica0\implement\ver1\rev1
se selecciona el achivo compuertas_top.bit . Se activa el botón Program. En ese instante
comenzará la programación. al finalizar el programa correrá de forma inmediata.
Observe: a= sw0 y b= sw1 están en 11.
Ld0, que corresponde con el inverso de a esta en 0,
ld1 que corresponde a la compuert AND vale en ese momento 1
ld2, que corresponde a la xor vale 0.