Top Banner
Marco Antonio Bueno Gasca & Ricardo Montero Cortés | Diseño Digital en VHDL | 24 de abril de 2013 Practica 1. VHDL Estructura y comportamiento. BLANCA G. DE LA PEÑA VALENCIA
16

Práctica_1_VHDL_Estructúra

Jan 22, 2016

Download

Documents

Nicholas Clark
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Práctica_1_VHDL_Estructúra

Marco Antonio Bueno Gasca & Ricardo Montero Cortés | Diseño Digital en VHDL | 24 de abril

de 2013

Practica 1. VHDL Estructura y comportamiento.

BLANCA G. DE LA PEÑA VALENCIA

Page 2: Práctica_1_VHDL_Estructúra

PÁGINA 1

Introducción.

2.5.2 Descripción por flujo de datos.

La descripción por flujo datos indica la forma en que los datos se pueden transferir de una señal a otra

sin necesidad de declaraciones secuenciales (if-then-else). Este tipo de descripciones permite definir el

flujo que tomarán los datos entre módulos encargados de realizar operaciones. En este tipo de

descripción se pueden utilizar dos formatos: mediante instrucciones when-else (cuando-si no) o por

medio de ecuaciones booleanas.

Process (a, b) begin If (a = '0' and b = '0') then

Fl <= '0 ‘; Else

Fl <= ' 1’;

End i f;

End process;

a) Descripción por flujo de datos mediante when-else

A continuación se muestra el código del comparador de igualdad de dos bits descrito antes. Nótese que

la diferencia entre los listados 2.2 y 2.3 radica en la eliminación del proceso y en la descripción sin

declaraciones secuenciales (if-then-else).

Begin

c <= '1' when (a = b) else '0'; (asigna a C el valor de 1 cuando a=b si no vale 0).

End f_datos;

En VHDL se manejan dos tipos de declaraciones: secuenciales y concurrentes.

Una declaración secuencial de la forma if-then-else se halla en el listado dentro del proceso, donde su

ejecución debe seguir un orden para evitar la pérdida de la lógica descrita. En cambio, en una declaración

concurrente esto no es necesario, ya que no importa el orden en que se ejecutan.

b) Descripción por flujo de datos mediante ecuaciones booleanas Otra forma de describir el circuito comparador de dos bits es mediante la obtención de sus ecuaciones booleanas.

Begin c <= (a (1) xnor b (l) and a (0) xnor b (0)) ;

End booleana; La forma de flujo de datos en cualquiera de sus representaciones describe el camino que los datos siguen al ser transferidos de las operaciones efectuadas entre las entradas a y b a la señal de salida c.

Begin f <= ((a or b) xnor (c and b));

End compuertas;

Page 3: Práctica_1_VHDL_Estructúra

PÁGINA 2

Ejercicio 1.

Ilustración 1. Contexto del comparador de 4 bits, con comentários.

Ilustración 2. Compilación del cuerpo en Aldec Active-HDL Student Edition.

La compilación se hizo de la siguiente manera ir a barra de estado, dar clic en Desing > Compile,

después se guardó el archivo. Ahora procederemos a crear la simulación en ondas, nos vamos a la

barra de herramientas y en el iconito a lado el de un disquet, (New wavefrom).

Comentarios

Compilación.

Page 4: Práctica_1_VHDL_Estructúra

PÁGINA 3

Ilustración 3. Simulación del comparador de 4 Bits.

Ahora, pasando al ispLeaver, vamos a crear el archivo gal, para la compuerta en ISIS Proteus.

Ilustración 4. Creando el Fuse Map, para la creación de la gal en el ISIS.

Run las Waves

Compilación en ispLEVER.

Page 5: Práctica_1_VHDL_Estructúra

PÁGINA 4

Page 6: Práctica_1_VHDL_Estructúra

PÁGINA 5

Ilustración 5. La creación de la compuerta GAL, mandando a llamar las preposiciones .sym

Page 7: Práctica_1_VHDL_Estructúra

PÁGINA 6

Ejercicio 2.

Ilustración 6. Insertando When-else en el contexto.

Ilustración 7. Compilación del contexto when-else.

La compilación se hizo de la siguiente manera ir a barra de estado, dar clic en Desing > Compile,

después se guardó el archivo. Ahora procederemos a crear la simulación en ondas, nos vamos a la

barra de herramientas y en el iconito a lado el de un disquet, (New wavefrom).

Compilación

Comentarios

Page 8: Práctica_1_VHDL_Estructúra

PÁGINA 7

Ilustración 8. Simulación del contexto de Active.

Después pasamos a ispLEVER, y creamos la compilación para el Fuse Map.

Ilustración 9. Compilación para crear el archivo GAL en ISIS.

Run las Waves

Compilación en ispEAVER.

Page 9: Práctica_1_VHDL_Estructúra

PÁGINA 8

Page 10: Práctica_1_VHDL_Estructúra

PÁGINA 9

Ilustración 10. La creación del circuito.

Ilustración 11. Se puede comparar con la simulación de waves del active.

Page 11: Práctica_1_VHDL_Estructúra

PÁGINA 10

Ejercicio 3.

Ilustración 12. Creación de comentarios.

Ilustración 13. Compilación del contexto de Active.

La compilación se hizo de la siguiente manera ir a barra de estado, dar clic en Desing > Compile,

después se guardó el archivo. Ahora procederemos a crear la simulación en ondas, nos vamos a la

barra de herramientas y en el iconito a lado el de un disquet, (New wavefrom).

C

o

m

e

n

t

a

ri

o

s

Compilaciones.

Page 12: Práctica_1_VHDL_Estructúra

PÁGINA 11

Ilustración 14. Realización de las Waves.

Ilustración 15. Zoom, para ver las waves.

Run las Waves

Page 13: Práctica_1_VHDL_Estructúra

PÁGINA 12

Ilustración 16. Cuando estén en 1, todos prenden en 1.

Ilustración 17. Creación del ispLEVER.

Ahora, obtendremos la datasheet para el ISIS.

Compilación en ispLEAVER, y la

creación del Fuse Map para ISIS

Page 14: Práctica_1_VHDL_Estructúra

PÁGINA 13

Page 15: Práctica_1_VHDL_Estructúra

PÁGINA 14

Page 16: Práctica_1_VHDL_Estructúra

PÁGINA 15

Conclusión.

Ricardo Montero Cortez.

“La programación es un tema nuevo y de gran importancia para nuestra carrera de electrónica, pues

por medio de ella podremos crear circuitos con las características que deseemos.

Actualmente comenzamos a familiarizarnos con los entornos de programación en estos

lenguajes, pues cada lenguaje en sí, es diferente y requiere atención específica a la hora de utilizarlos,

por medio de la práctica lograremos el manejo con facilidad de las herramientas de los lenguajes y

podremos hacer infinidad de programas en los circuitos.

Las estructuras que comenzamos a utilizar nos hacen darnos cuenta que podemos realizar

una serie de instrucciones y ejecutar tareas específicas.”

Marco Antonio Bueno Gasca.

“El presente trabajo planteó como objetivo primario el de estudiar el algoritmo ACTIVE y utilizar el

lenguaje de descripción de hardware ispLEVER para describir algunas de sus arquitecturas.

Como objetivo secundario se propuso simular las descripciones realizadas modificando los

parámetros de interés: ancho de palabra y número de iteraciones, para determinar la exactitud que

se obtiene en los resultados. La simulación se llevó a cabo con ISIS Proteus.”

Bibliografía.

- VHDL: El Arte de Programar Sistemas Digitales Por Jessica Alcalá Jara, David G. Maxinez,

Editorial: Continental Edición: Primera, Año: 2003, Pág 29 – 35.

- R. de J. Romero-Troncoso, Electrónica Digital y Lógica Programable, Ed. Universidad de Gto,

México, 2007.

- R. de J. Romero-Troncoso, Sistemas digitales con VHDL, Ed. Legaria, México, 2004.