You are on page 1of 10

U NIVERSIDAD NACIONAL DE S AN AGUSTÍN DE

A REQUIPA

LABORATORIO 5
(D ESARROLLO DEL LABORATORIO 5)

Microelectrónica

Morales Moya Edward Anibal


Cruz Teves Carlos Ivan
Pacco Enriquez Jorge Armando

Profesor
Prof. PhD. Alexander B. Hilario T.

7 noviembre 2018
Índice general

1. Introducción 2

2. Procedimiento metodológico 3
2.1. Materiales y equipamientos . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Paso 1 - Generar el Codigo . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3. Paso 2 - Descripcion Estructural y Concurrente . . . . . . . . . . . . . . . 5
2.4. Paso 3 - Codigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.5. Paso 4 - Diagrama de Bloques . . . . . . . . . . . . . . . . . . . . . . . . 6
2.6. Paso 5 - Asignacion de pines . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.7. Paso 5 - simulacion en software . . . . . . . . . . . . . . . . . . . . . . . 7

3. Resultados 8

4. Conclusiones 9
4.1. Observaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1
Capítulo 1

Introducción

Este trabajo de basara en el uso del software vivado y poder generar una comunicacion
con la placa Nexys4 , se Utiliza la descripcion estructural en VHDL. La descripcion es-
tructural : Describe la entidad como un conjunto de componentes conectados entre sí por
señales.
El software vivado es producido por Xilinx para la síntesis y el análisis de diseños HDL,
reemplazando Xilinx ISE con características adicionales para el sistema en el desarrollo de
un chip y síntesis de alto nivel. Vivado representa una reescritura básica y una nueva concep-
ción del flujo de diseño completo (en comparación con ISE), y los revisores lo han calificado
como "bien concebido, estrechamente integrado, extremadamente rápido, escalable, fácil de
mantener e intuitivo".
Este informe se basa en el diseño utilizando el software Xilinx Vivado para crear un
sistema digital simple circuito usando Verilog HDL. Un flujo de diseño típico consiste en
crear modelo (s), creando restricción de usuario archivo (s), creando un proyecto de Vivado,
importando los modelos creados o generar modelos , asignando archivo (s) de restricción
creado (s), opcionalmente ejecutando simulación de comportamiento, sintetizando el diseño,
implementando el diseño, generando el flujo de bits, y finalmente verificar la funcionalidad
en el hardware descargando el generado archivo de flujo de bits. Pasará por el flujo de diseño
típico dirigido a la placa Nexys4.

Figura 1.1: software vivado

2
Capítulo 2

Procedimiento metodológico

En este capítulo se presenta el procedimiento que se realizó para alcanzar los objetivos de
la práctica. El experimento consta de hacer una codificacion VHDl, aprender como asignar
pins de entrada y salida del FPGA y cargar el Bitstream en la Nexys-4 Artix-7 FPGA Board
a travez de una memoria MicroSd.

2.1. Materiales y equipamientos


En seguida se listan los materiales y equipamientos usados para desarrollar la presente
práctica.

? Software Vivado 2016.1

? dispostivo o placa Nexys-4 Artix-7.

? 1 computador con sistema operativo Windows.

? Memoria microSD

El procedimiento para realizar la práctica se divide en pasos , los cuales se muestran en


seguida.

2.2. Paso 1 - Generar el Codigo


• Problema: Simulador de una memoria de acceso aleatorio. El circuito de la Figura 1 es
una memoria con 8 direcciones, cada direccion alacena un dato de 4 bits. Las posiciones de
memoria son implementadas por registros de 4 bits. Las se~nales resetn y clock son compar-
tidas por todos los registros. Los datos son escritos en (o leıdos de) uno de los registros.
• Escritura en la memoria: (wr rd = 1): La entrada de 4 bits Din se escribe en uno de
los registros. La señal address[2..0] selecciona el registro a ser escrito. Aquı, el display de 7
segmentos debe mostrar 0. Ejemplo: Si address = 101, entonces Din es escrito en el registro
5.
• Lectura de la memoria: (wr rd = 0): La salida del MUX aparece en el display de 7 seg-
mentos. La señal address[2..0] selecciona el registro de donde el dato es leıdo. Por ejemplo,
Si address = 010, entonces el dato en el registro 2 aparece en el display de 7 segmentos. Si
el dato en el registro 2 es 1010, el sımbolo A aparece en el display de 7 segmentos.

? Crear un nuevo proyecto ISE. Seleccionar el dispositivo: XC7A100T-1CSG324 Artix-


7 FPGA.

3
CAPÍTULO 2. PROCEDIMIENTO METODOLÓGICO 4

? Escriba el codigo VHDL para el circuito de la Figura 1. Crear un archivo separado para
i) Registro con habilitador, ii) MUX con habilitador, iii) Decodificador con habilitador,
iv) decodificador de 7 segmentos-hexadecimal y v) archivo principal.

? Escriba el test-bench VHDL para probar el circuito y pruebe al menos 8 escrituras


en la memoria y 8 lecturas de la memoria. Debe de generar una entrada de reloj de
100Mhz para las simulaciones.

? Realice la Functional Simulation y la Timing Simulation (Simulacion de comporta-


miento y temporal).

? Asignacion de entradas y salidas: Crear un archivo UCF. Use SW0 a SW7 en la placa
Nexys-4 DDR para las entradas, CLK100MHZ para la entrada clock, el pulsador CPU
RESET para resetN y el display de 7 segmentos para la salida.

? Generar el archivo bitstream.

? Descargar el bitstream en el FPGA.

Figura 2.1: RAM


CAPÍTULO 2. PROCEDIMIENTO METODOLÓGICO 5

2.3. Paso 2 - Descripcion Estructural y Concurrente

Figura 2.2: vista general de todo el codigo

2.4. Paso 3 - Codigo

(a) Parte1 (b) Parte2

(c) Parte3
Figura 2.3: Software vivado
CAPÍTULO 2. PROCEDIMIENTO METODOLÓGICO 6

2.5. Paso 4 - Diagrama de Bloques

(a) Parte1

(b) Parte2

(c) Parte3

(d) Parte4
Figura 2.4: Bloques
CAPÍTULO 2. PROCEDIMIENTO METODOLÓGICO 7

2.6. Paso 5 - Asignacion de pines

(a) Parte1 (b) Parte2

(c) Parte3
Figura 2.5: pines

2.7. Paso 5 - simulacion en software


Este paso ya es muy generico para probar si el codigo realmente cumplea la funcion que
se le especifica.

Figura 2.6: simulacion


Capítulo 3

Resultados

? En esta parte se observara la implementacion y comunicacion con la placa Nexys-4


Artix-7 , siendo las pruebas finales para la evaluacion respectiva frente al ingeniero la
cual se nos dio un ultimo plazo de presentacion. Ver figura

? Es importante usar el refresh despues de cargar un numero para poder ver el


numero cargado.

(a) Prueba1 (b) Prueba2 (c) Prueba3 (d) Prueba4

(e) Prueba4 (f) Prueba4 (g) Prueba4

(h) Prueba4
Figura 3.1: Pruebas Fisicas

8
Capítulo 4

Conclusiones

? Una aplicacion de este laboratorio puede ser una maquina expendedora.

? Para la elaboracion del codigo se utilizar la descripción estructural junto con la descrip-
ción concurrente en VHDL lo cual nos permite revisar y corregir cuando se requiera.
Se probaron los circuitos combinacionales diseñados en Vivado en la tarjeta FPGA.

? Para cargar el programa por medio de una micro sd es importante que solo este en
nuestra memoria el archivo .bit que se genero despues de simular y generar nuestro
bitstream.

? Al configurar que pines utilizaremos en nuestra entidad es importante modificar los


cambios que hayamos hecho tambien en nuestro constrain generado

4.1. Observaciones

? En ésta practica se desarrollo grupalmente , teniendo a cada integrante del grupo una
determinada funcion con respecto al trabajo realizado , opteniendo resultados optimos.

You might also like