2022-2

View the Project on GitHub unal-edigital1/2022-2

Laboratorio 03: Simulación por medio de Testbench e implementacion de 7 segmentos

BCD2sseg

Introducción

En este paquete de trabajo los estudiantes deben familiarizarce con el framework de trabajo de la FPGA seleccionado, a partir de la descripción dedecodificador BCD2SSeg

Para este paquete de trabajo, deben estar inscrito en un grupo y clonar la información del paquete de trabajo [WP02]. Una vez aceptado el repositorio debe descargarlo en su computador, para ello debe clonar el mismo. Si no sabe cómo hacerlo revise la metodología de trabajo, donde se explica el proceso

Las documentación deben estar diligencia en el archivo README.md del repositorio clonado.

Una vez clone el repositorio, realice lo siguiente:

Diseño BCD-7seg

En este punto, ya se estar en la capacidad de describir e implementar Hardware sencillo, con la ayuda de herramientas computaciones. y como se vio en los ejemplos anteriores, la suma se visualiza en leds, algo que es difícil para validad visualmente la respuesta. Por lo tanto, es aconsejable tener una visualización mas acorde a las necesidades, como por ejemplo visualizar los resultados en el Display 7 Segmentos

En este Ejercicio se propone que realicen el diseño, sintentización e implementación del Display de 7 sergmentos (este último de manera virtual), el cual permita visualizar números en representación hexadecimal (0x0 a 0xF). En el siguiente gráfico, se observa cual es el funcionamiento deseado del display:

gif display

Imagen tomada de User:Guam + Various

A continuación se presentan los pasos recomendados para el ejercicio:

Definir la caja funcional del BCD:

bcd_black

Si observa la caja negra/ funcional ademas de la salidad de 7 segmentos contiene una salida An. esta salida es para conectar eventualmente el ánodo del display y poder hacer visualización dinámica, cuando se tiene mas de un display conectado.

Definir la descripción Funcional

Para ello recuerde que puede hacer uso, bien sea, de las tablas de verdad o de la descripción algorítmica del BCD a siete segmentos. Recuerde que cada Segmento es una salida del diseño. Ejemplo, si desea visualizar el número 1, la salida seria de Sseg es 0110000. observe la gráfica a continuación, para generar las salidas acorde al número de entrada.

sseg

Ejercicio - Visualización Dinámica 4 Display- Segmentos

Si el diseño digital de algún sistema se requiere mas de un display de 7 segmentos, es necesario generar una visualización tal que sea necesario el menor número de pines para conectar todos los display en con la FPGA.

Por ahora, se ha visualizado el números en un solo display de 7 segmentos. Pero en la mayoría de los casos, los 7 pines de los cátodos están inter-conectados entre cada display, como se observa en la figura:

conex

Por lo tanto, se debe realizar una multiplexación entre los Anodos de cada Display, con el fin de visualizar en cada display un número diferente. En otras palabras, en cada instante de tiempo, solo un display se encuentra activo. En este sentido, se debe garantizar que el destello en la visualización entre cada display no se perciba. Para ello, cada display debe activarse máximo cada 16 ms.

Visualmente esto se entiende mas con la siguiente simulación, donde se desea visualizar el número en representación hexadecimal 0x4321:

diagrama

Diagrama Caja negra

Como siempre, antes de realizar la descripción del hardware se debe diseñar la caja funcional del modulo, con las entradas y salidas

diagrama caja negra

En este sentido, se adiciona al HDL de siete segmentos 4 señales de control para el LCD, llamadas An. cada bit de la señal An debe ser modificado en el tiempo, con el fin de activar solo un display.

Diagrama Estructural

estructural

Se evidencia que se deben construir cuatro módulos básicos, de los cuales uno de ellos esta descrito en el ejercicio anterior, BCDtoSSeg.v. Los otros tres bloques son:

Entregables

Una vez clone el repositorio y lea la anterior guia, realice lo siguiente:

En el paquete de trabajo esta la descripción del hardware que se implementa para visualizar un número hexadecimal de 32 bits en 4 display de 7 segmentos.

  1. Simulación
    • Realice la simulación por medi ode testbench para el BCD-7seg, analice los resultados.
    • Cree el nuevo proyecto HDL para Visualización Dinámica 4 Display, tomando como base los archivos dados.
    • Creer el archivo testbench.v para simular la visualización de 4 display
    • Genera la simulación, Revise que el sistema funciona como usted lo esperaba. Realice lo comentarios necesarios en el archivo README.md.
  2. implementación
    • implementar e la tarjeta el desarrollo de HDL según los parametros dados en clase
    • Comprobar la lógica en la FPGA real
    • Introducir cada uno de los números posibles mediante los interruptores, y verifica que se muestran todos correctamente
    • Realice lo comentarios necesarios en el archivo README.md.
  3. Adicionales
    • Modificar o Añadir los bloques necesarios para que la visualización sea en representación Decimal y no Hexadecimal.
    • Realice la respectiva publicación del repositorio antes de la fecha dada con todo el código fuente

Deadline