Top Banner
MANUAL. Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 Objetivo1: conocer cómo funciona la tarjeta Objetivo2: Comprender como se construyen sistemas digitales con el KIT basys2 y software xilinx Objetivo3: activar el reloj INTRODUCCION. Cómo funciona la tarjeta basys2 Es una tarjeta FPGA que permite diseñar miles de compuertas, solo programando hardware mediante VHDL.
30

(Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Sep 30, 2018

Download

Documents

vuongduong
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: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

MANUAL. Practica 1 Diseño de sistemas digitales

(telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11

Objetivo1: conocer cómo funciona la tarjeta

Objetivo2: Comprender como se construyen sistemas digitales con el KIT basys2 y software xilinx

Objetivo3: activar el reloj

INTRODUCCION. Cómo funciona la tarjeta basys2 Es una tarjeta FPGA que permite diseñar miles de compuertas, solo programando hardware

mediante VHDL.

Page 2: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

¿Que tiene?

Page 3: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer
Page 4: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Cada elemento, ya sea switchs, leds y push botom(o pulsadores), se les asigna un pin para que se

enlace. La asignación de pines de acuerdo al elemento, se observa a continuación.

Page 5: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Experimento 1.

Al final se espera: Que el alumno aprenda a utilizar el software y hardware para un ejemplo

sencillo.

Objetivo: Programar una compuerta AND, las dos entradas estarán asignadas a dos push botom

(para el push botom 0 le corresponde el pin G12 , y el push botom 1 le corresponde el pin C11),

ambos utilizaremos y la salida la conectaremos a un led, se escoge el LD0 con pin M5.

Tenemos que tener instalado Xilinx, y Diligent Adept.

Page 6: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

(Todos los programas Xilinx ise 8.2i, después submenú: Project navigator)

Debe aparecer así, sino en menú File selecciona “Close Projet”

1) Crear un nuevo proyecto

2) Le llamamos ejemplo 1, y next.

3) Configurar la tarjeta basys2, de esta manera. Next.

Page 7: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

4) Seleccionamos NEW SOURCE

5) Seleccionamos de la izquierda la opción “VHDL Module” y nombramos el archivo:

ejemplo1, luego NEXT.

Page 8: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

6) Como es una AND la que vamos a realizar, las entradas le llamamos A y B y la salida C

7) Estos valores se insertan a continuación, también se debe seleccionar si es entrada (in) o

salida (out), después NEXT

Page 9: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

8) Después finish, next, next, finish. Y te queda esta pantalla.

9) De esta pantalla seleccionamos la pestaña: ejemplo1.vhd

10) Aparece el código a continuación y comentarios con líneas de color verde.

Page 10: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

11) Entonces solo trabajaremos en esta parte del código. Quitemos los comentarios que están

de color verde. (los comentarios se crean con dos guiones). Debe quedar así.

Page 11: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

12) En entity se declaran los puertos de entrada y salida, esta entidad se le pone un nombre

aquí se le llama: ejemplo1.

13) En Architecture se coloca el comportamiento de nuestro circuito, dadas las entradas y

salidas de la entidad. El comportamiento de nuestro proyecto es una “and”.

Asi es que se coloca entre begin y End, lo siguiente:

C<=Aand B;

Para asignar se utiliza <=

“ and “ es una palabra reservada

Al final de cada comando se escribe punto y coma.

observemoslo :

14) Chequemos sintaxis, dentro de sources (izquierda en medio), debe estar seleccionado

synthesize, y en process(abajo izquierda) dentro del menú “synthesize” esta “check

syntax” doble click.

Page 12: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Guardamos

Y tenemos en el recuadrado de abajo que salen varios avisos que se está compilando, y si

no está equivocado saldrá exitosamente “successfully”

Page 13: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Si estuviese equivocado checa con cuidado el código, letras mayúsculas deben ir en

mayúscula, punto y coma al final. Y vuelve a checar la sintaxis.

Ya sabiendo que está bien escrito el programa procedemos con asignar pines; en process

se escoge menú “, user constraint”. Adentro tenemos “assign Package Pins” y aparece

caja de dialogo donde se escribirán los valores de los pines. (Una caja de dialogo

intermedia para crear UCF, se debe decir “yes”)

Page 14: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Los nombres de los pines los dijimos al inicio que se sacaron de la tarjeta o de la tabla de

asignación de pines dada. Habíamos quedado entrada “A” el pin “C11” en la entrada ”B”

el pin ”g1” y en el led “C “ de pin ” m5”.

Ahora se guarda y cierra, estamos otra vez en la ventana anterior y ahora lo que se hace es

darle DOBLE click a tres cosas 1) sinthesize 2) Implement Design y 3) generate

programming File, en los iconos de

En la tercera opción te muestra esto, solo ciérralo.

Page 15: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Finalmente, si todo salió bien tendremos la pantalla siguiente.

Sino checa los numero de pines si coinciden a lo pedido.

Si todo sale bien, ya se genero un archivo .bit dentro del folder donde se ubica este

programa que hicimos.

Ahora vamos a descargarlo a la tarjeta basys2:

Requerimos el software de Adept de Diligent ya instalado, requerimos abrirlo.(todos los

programas, Diligent, Adept,se llama Adept ).

Si no está conectada la tarjeta ni prendida, te saldrá así:

Page 16: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Tenemos dos opciones, para ambas, conectar la tarjeta al USB y además el power (switch

de encendido que esta a la izquierda) de la tarjeta basys2, lo pones en ON.

Opción 1 escoges connect: la opción de “basys2”

Opcion2 Cierra la aplicación, y se vuelve a abrir ya con todo conectado y prendido.

(Si estuviese conectado pero apagado solo se debe inicializar la cadena , dándole click al

botón:” Initialize Chain”)

Page 17: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Después buscamos en el browser nuestro archivo BIT

Page 18: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Se escoge ejemplo1.bit

Se acepta esto cada vez que salga (dos veces)

Page 19: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Y ahora solo programar y probar la tarjeta. Si se descargo bien a la tarjeta se mostrara lo

siguiente. (Si fallo el programa, checa, esta prendida la tarjeta?

Checa los pines si se grabaron adecuadamente.)

Page 20: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Ya se descargó a la tarjeta exitosamente. Solo resta probar en la tarjeta moviendo los dos

switch dados y checar que con los dos switch en ON se prende el led específico

únicamente.

En xilinx se escoge la opción CERRAR PROYECTO: “ Close project”.(NO close solo). En el

menú FILE.

Siempre recuerda al terminar cerrar proyecto.

En la tajeta Basys2, después de utilizarla solo apaga el switch de power.

FIN practica 1

Ejercicio: realiza una OR con entrada en el swith5 y switch 6 y que se prenda el led1.

Antes de empezar un proyecto nuevo checa que esté cerrado algún proyecto, en menú

FILE y submenu: “ Close project”

Page 21: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Practica 2. Conectando el reloj a un LED.

En la basys2 se tiene un reloj interno de 50mhz, si lo conectamos directamente a un led, el

parpadeo de prender y apagar que produce el reloj en un tiempo determinado será

imperceptible para los ojos. De manera que debemos realizar un divisor de frecuencias,

produciendo retardos de tiempo con un contador y al final conectarle el LED.

PARTE 1:

Primero se programara directamente y checaremos que el LED no se nota el parpadeo.

Entramos a Xilinx, vhdl modulo, como entrada será clk y salida un LED.

A la entrada solo se activa el reloj interno con el pin B8.

A la salida para el LED escogeremos el LED7 con pin G1

Page 22: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer
Page 23: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer
Page 24: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer
Page 25: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

YES

Page 26: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Resultado final: se prende solo el led 7 y se mantiene prendido todo el tiempo.

AL final, por favor apara el switch de la tarjeta.

Termina parte 1.

Page 27: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

PARTE 2. Realizar el divisor de frecuencias.

Como entrada se tiene el reloj interno con pin b8, llamado CLK

Internamente tendremos un bloque donde ya se creó un retardo a propósito, al final de

ese retardo se le conectara el led.

A la salida del retardo se le conectara el LED7 con pin g1, Llamado LED.

En la parte interna se producirá un retardo o “delay”, con un ciclo.

La variable que estará variando será CLK, ya que a esta tenemos conectado el reloj

interno.

Si en el reloj se tiene una transición de cero a 1, entonces solo se verificara si ya se llego a

un tiempo dado, si es así, entonces se realiza una cuenta, pero si no, se reinicializa el

conteo; sumándole un uno a la variable: cuenta. Entonces después de lo que haya

pasado, solo se verifica si cuenta es menor que la mitad del reloj (25 mil), si es así, prende

Led, sino apaga Led.

Page 28: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

Por otro lado se intenta con el código siguiente que se mantenga prendido a la mitad del

tiempo y se apague la otra mitad.

Checa de respuesta que al pasar el programa a la tarjeta, se prendera y apagara

automaticamente el led designado.

Page 29: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer

F= 50 000 000 hz si queremos a 10hz frec. Sa.l/frec. Ent. =2x10 e-8 es la cuenta

Page 30: (Practica 1 Diseño de sistemas digitales) · Practica 1 Diseño de sistemas digitales (telecomunicaciones) con KIT basys2 Xilinx FCHE-MAIC 26/10/11 ... Project navigator) Debe aparecer