Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Circuitos combinatorios, Guías, Proyectos, Investigaciones de Circuitos Digitales

Este documento tiene el contenido de como se realiza un circuito combinatorio, además de lo teórico que principalmente se usa como la tarjeta max II.

Tipo: Guías, Proyectos, Investigaciones

2023/2024

A la venta desde 12/12/2024

andrea-betsabe-chavez-ordonez
andrea-betsabe-chavez-ordonez 🇲🇽

2 documentos

1 / 9

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
INSTITUTO POLITÉCNICO NACIONAL
UNIDAD PROFESIONAL
INTERDISCIPLINARIA DE INGENIERÍA Y
CIENCIAS SOCIALES Y ADMINISTRATIVAS
Ingeniería en Informática
Aplicaciones de Sistemas Digitales
Práctica 3. Dispositivos Lógicos Programables y VHDL.
Secuencia: 2NM2E
Alumnos:
Chavez Ordoñez Andrea Betsabe.
Martínez Villaverde Mariana.
Reyes Alvarado Javier.
Profesor: Alejandra Hernández Rojas.
Fecha de realización:
08/10/2024
pf3
pf4
pf5
pf8
pf9

Vista previa parcial del texto

¡Descarga Circuitos combinatorios y más Guías, Proyectos, Investigaciones en PDF de Circuitos Digitales solo en Docsity!

INSTITUTO POLITÉCNICO NACIONAL

UNIDAD PROFESIONAL

INTERDISCIPLINARIA DE INGENIERÍA Y

CIENCIAS SOCIALES Y ADMINISTRATIVAS

Ingeniería en Informática Aplicaciones de Sistemas Digitales Práctica 3. Dispositivos Lógicos Programables y VHDL. Secuencia: 2NM2E Alumnos: ● Chavez Ordoñez Andrea Betsabe. ● Martínez Villaverde Mariana. ● Reyes Alvarado Javier. Profesor: Alejandra Hernández Rojas. Fecha de realización: 08/10/

Objetivo: Construir circuitos digitales combinatorios con base en la programación de un dispositivo, utilizando lenguaje de descripción de software VHDL. Introducción: En sesiones anteriores, exploramos la creación de circuitos digitales mediante lógica cableada, conectando diversos circuitos integrados a través de cables. No obstante, las oportunidades que ofrece el desarrollo de sistemas computacionales permiten automatizar procesos en múltiples campos de actividad humana. Hoy en día, resulta crucial diseñar sistemas digitales que se adapten a las necesidades particulares de cada usuario, es decir, soluciones personalizadas, lo que se conoce como lógica programable. ● DISPOSITIVOS LÓGICOS PROGRAMABLES COMPLEJOS. Los CPLDs, o dispositivos lógicos programables complejos, son una evolución significativa de los PLDs (dispositivos lógicos programables). A diferencia de los PLDs, que tienen limitaciones en términos de tamaño, capacidad y número de funciones lógicas, los CPLDs proporcionan una mayor cantidad de recursos lógicos y una capacidad de almacenamiento superior, lo que los hace ideales para aplicaciones más complejas. Estos dispositivos suelen contar con múltiples bloques lógicos y una matriz de interconexiones programable que permite a los usuarios diseñar circuitos digitales personalizados. Gracias a esta arquitectura, los CPLDs pueden manejar una mayor cantidad de entradas y salidas, facilitando así el desarrollo de sistemas más avanzados, como controladores, procesadores de señal y dispositivos de comunicación. Una de las ventajas clave de los CPLDs es su flexibilidad en la reconfiguración. Esto permite a los diseñadores ajustar la funcionalidad del dispositivo incluso después de su implementación, lo que es especialmente valioso en entornos donde los requisitos pueden cambiar rápidamente. Además, su capacidad para implementar funciones lógicas complejas y realizar tareas como la lógica combinacional y secuencial los convierte en una solución versátil para una amplia gama de aplicaciones, desde sistemas embebidos hasta prototipos de hardware.

VHDL es un lenguaje de descripción de circuitos electrónicos digitales que utiliza distintos niveles de abstracción. El significado de las siglas VHDL es VHSIC (Very High Speed Integrated Circuits) Hardware Description Language. Esto significa que VHDL permite acelerar el proceso de diseño. VHDL no es un lenguaje de programación, por ello conocer su sintaxis no implica necesariamente saber diseñar con él. VHDL es un lenguaje de descripción de hardware, que permite describir circuitos síncronos y asíncronos. Para realizar esto debemos:

  • Pensar en puertas y biestables, no en variables ni funciones.
  • Evitar bucles combinacionales y relojes condicionados.
  • Saber qué parte del circuito es combinacional y cuál secuencial. ¿Por qué usar un lenguaje de descripción hardware?
  • Para poder descubrir problemas en el diseño antes de su implementación física.
  • La complejidad de los sistemas electrónicos crece exponencialmente, es necesaria una herramienta que trabaje con el ordenador.
  • Permite que más de una persona trabaje en el mismo proyecto. ● Elementos del Programa en VHDL:Library. En informática, una librería, a menudo conocida como biblioteca (del inglés "library"), es un conjunto de implementaciones funcionales codificadas en un lenguaje de programación que ofrece una interfaz bien definida para la funcionalidad que se invoca. Una librería en un lenguaje de programación consiste en un conjunto de funciones y rutinas diseñadas para realizar tareas específicas. Estas funciones y rutinas están escritas en un lenguaje determinado y pueden ser utilizadas en otros programas para llevar a cabo tareas similares. Las librerías son herramientas útiles que ayudan a economizar tiempo y esfuerzo durante el desarrollo. En lugar de tener que crear todo el código desde cero, los programadores pueden utilizar las funciones y rutinas ya existentes en la librería para ejecutar tareas comunes. Esto no solo acelera el proceso de programación, sino que también disminuye la probabilidad de errores que pueden surgir al escribir código desde el inicio.

Entity. Define externamente al circuito, es decir sus entradas y salidas (¿Cuántas? ¿De qué tipo? ¿Qué etiquetas tienen asignadas?). Es por medio de la entidad que se puede vincular un circuito con otro. Tipos de puertos:

  1. Salida (out), son componentes que se alteran como resultado de las funciones en el CPLD y que también dependen del valor de las entradas. Sin embargo, su valor no puede influir en las decisiones que se toman dentro de la arquitectura.
  2. Entrada (in), son componentes que se reciben desde el entorno externo y, por lo tanto, no es posible alterar su valor utilizando el CPLD.
  3. Retroalimentaciones o búfer (inout) son puertos que, mientras son modificados por la función lógica, también permiten que su valor se reintegre al sistema, afectando la nueva salida de alguna forma. Generic: - Se usa para establecer constantes y propiedades que se aplican en el circuito. Su uso es opcional, por lo que no es necesario incluirlos si no se requiere. ● Architecture. La arquitectura especifica cómo funciona la entidad referenciada. En architecture, es necesario describir el comportamiento esperado cuando cambian los valores de las entradas, utilizando las instrucciones, expresiones y palabras reservadas de VHDL.
    • Define el circuito a nivel interno.
    • En la arquitectura deben incluirse señales internas, funciones, procedimientos y constantes.
    • La arquitectura puede describirse de forma estructural o mediante su comportamiento. Material: ● Tarjeta MAX II EPM 240T100C. ● USB Blaster de ALTERA. ● Fuente de alimentación de 5 volts para tarjeta MAX II. ● Computadora personal. ● Software Quartus Prime Lite Edition 22. ● Protoboard. • Led´s. ● Resistencias de 330Ω. ● Jumper hembra-macho.
  1. Después nuestros interruptores estarán conectados a corriente para que estos puedan funcionar, y no suframos ningún corto circuito durante la ejecución de este.
  2. Y así realizamos las conexiones de nuestro circuito para que después conectásemos la placa MAX II al protoboard y realizar las ejecuciones.

Resultado: A B C D Primos Pares - 14 Mult 3 Imp - 11 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1 1 0 0 0 0 1 1 1 0 1 1 0 1 0 0 0 1 0 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 1 1 0 1 0 0 1 0 0 1 0 1 1 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 1 0