0% encontró este documento útil (0 votos)
65 vistas8 páginas

Reporte 7 de Dispositivos Lógicos Programables

Este documento describe una práctica de laboratorio para implementar circuitos lógicos en una FPGA usando VHDL. Los estudiantes implementarán conversiones binario-BCD y binario-hexadecimal para mostrar números en displays de 7 segmentos. El documento explica los objetivos, equipo necesario, procedimientos y preguntas para la práctica.

Cargado por

M
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
65 vistas8 páginas

Reporte 7 de Dispositivos Lógicos Programables

Este documento describe una práctica de laboratorio para implementar circuitos lógicos en una FPGA usando VHDL. Los estudiantes implementarán conversiones binario-BCD y binario-hexadecimal para mostrar números en displays de 7 segmentos. El documento explica los objetivos, equipo necesario, procedimientos y preguntas para la práctica.

Cargado por

M
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

Tema:

2.6 Arreglos lógicos genéricos (FPGA)

Objetivos
• Implementar tablas de verdad de circuitos lógicos dentro de un dispositivo lógico
programable considerando lenguaje VHDL.

Introducción
En esta práctica se realizarán 2 circuitos lógicos independientes empleando para
ello la característica de concurrencia que tiene el lenguaje VHDL, el cual no
ejecuta instrucciones de forma secuencial como lo hacen los circuitos
microprocesadores y microcontroladores, sino de forma concurrente. En este tipo
de dispositivos el cambio en las variables de entrada se refleja inmediatamente en
las variables de salida puesto que el sistema funciona como lo hace un circuito
verdadero ya que este sistema no depende de la programación como lo hacen los
microprocesadores o los microcontroladores. En la figura 7.1 se muestra el
esquema de conexión del conjunto de 8 displays de 7 segmentos que están
integrados en la tarjeta de desarrollo NEXYS4, en donde cada uno de los ánodos
está multiplexado en tiempo y las señales de cátodo son comunes a todos los
dígitos, pero solo se pueden iluminar los segmentos del dígito cuya señal de
ánodo correspondiente se decide utilizar.
Actividades previas a la práctica 7

1. El estudiante deberá leer la práctica de laboratorio.


2. Realizar la tabla de verdad para la conversión de código BCD8421 en 4 bits
a código de 7 segmentos.
3. Realizar la tabla de verdad para la conversión de código binario de 4 bits a
hexadecimal en 7 segmentos.

4. Generar el archivo binario_BCD en Vivado 2022.1


5. Generar el archivo binario_hexadecimal en Vivado 2022.1
Equipo
1 tarjeta Nexys4 DDR.
1 PC con Vivado 2022.1.

Material
No aplica

Procedimiento Experimental
1. Utilizando el software de Vivado 2022.1, genere el proyecto en VHDL de la
figura 7.2.
2. Realice la asignación de puertos tal como se muestra en la figura 7.3.
3. Anote los resultados obtenidos en la tarjeta y comente acerca del
comportamiento del sistema.
Al colocar los switches en 1 o 0 (realizando la respectiva suma en binario), se
pudo mandar hacia los displays los dígitos del 0 al 9.

4. Modifique el proyecto anterior para que la conversión se realice entre un


número binario de 4 bits y un código hexadecimal representado en un
display de siete segmentos, realizando el corrimiento de derecha a izquierda
de los números 0 al 7 y corrimiento de derecha a izquierda de los números 8
a F.
5. Anote los resultados obtenidos en la tarjeta y comente acerca del
comportamiento del sistema.
Al colocar los switches en 1 o 0 (realizando la respectiva suma en hexadecimal),
se pudo mandar hacia los displays los dígitos del 0 al F.
Cuestionario

1. En los códigos descritos, ¿cómo se puede saber cuál segmento es el que


se está activando y cuál es el que se está desactivando?

Debido a la asignación que hicimos previamente en la que los segmentos van del
segmento A al segmento G.

2. ¿Cuál es la diferencia entre usar std_logic_vector y std_logic?

En el caso de std_logic_vector, representa un vector de elementos std_logic, y


posee las mismas reglas de asignación y definición del rango que el tipo bit_vector
pero con un mayor número de valores posibles. Mientras que para std_logic
tenemos que es un tipo de dato “resuelto” ya que si más de una fuente maneja un
nodo común el resultado del nivel lógico está determinado por una función de
resolución.

3. Al utilizar std_logic_vector, ¿cuál es la diferencia entre downto y to?

Down to y to especifican la dirección de los rangos en VHDL, para el caso de


down to la especificación va descendente y para to va ascendente.

Conclusiones

En esta práctica, la FPGA (Nexys 4) fue muy útil para poder desplegar números
y/o letras en el display, a diferencia de utilizar la GAL22V10 que ocuparía muchos
LEDs, sería muy estorboso y tardado de realizar dicho circuito.

También podría gustarte