Translate

jueves, 8 de octubre de 2015

SISTEMA MULTIPLICADOR DE MATRICES 3X4 y 4X3 EN VHDL CON FPGA DE0-NANO

SISTEMA MULTIPLICADOR DE MATRICES 3X4 y 4X3 EN VHDL CON FPGA DE0-NANO

Por: Kerly Ochoa Erazo (kermaoch@espol.edu.ec) - Christian Sacarelo (csacarel@espol.edu.ec)

Descripción:
Se trata de ingresar de manera serial 2 matrices de 3x4 y 4x3, luego de esto proceder a multiplicarlas y mostrar su resultado de manera serial.

ARCHIVOS VHDL:
https://www.dropbox.com/sh/r0jcea6ujun1mlu/AAB1XH1_Ehsva-gl0Rd1cVEma?dl=0

LINK VIDEO
https://www.facebook.com/christian.sacarelo/videos/10208017464453689/

SISTEMA MAPA DE KARNAUGH SOP EN VHDL CON FPGA DE-NANO

SISTEMA  MAPA DE KARNAUGH EN VHDL CON FPGA DE-NANO


Por: Christian Parra Pacheco (cfparra@espol.edu.ec) y Roger Michell Idrovo (romiidro@espol.edu.ec)

Descripción:
Realizar el diseño de un SISTEMA MAPA DE KARNAUGH SOP. El sistema recibe una matrices MK(2X4) y luego procede a detectar el número de agrupaciones de unos y la cantidad de elementos de cada agrupación.
Ejemplo:

MK=[1 0 0 1;1 1 0 1] ;


DESCRIPCIÓN DE LAS SEÑALES DEL SISTEMA.

BitMK.- esta señal de 1 bit (0-1) permite el ingreso de cada uno de los bits de la matiz MK(i, j)=BitMK.
IngresoMatrizMK.- Esta señal deberá ser solicitada antes de presionar la tecla Start, la misma que permite el ingreso de los nbits de la MatrizMK.
LedStart.- Indica cuando ya se ha finalizado de ingresar el número de bits suficientes para completar una Matriz y por tanto se puede presionar la tecla Start.
Start.- Da inicio al proceso de detección de las agrupaciones de unos por SOP en la Matriz MK.
LedOK.- Led indicador de salida que da a conocer que la detección fue realizada con éxito.
IDGrupo.- Indica en número del grupo, para una matriz de 4x2 pueden existir desde 1 a 4 agrupaciones.
NumUnos.- Indica la cantidad de unos agrupados por cada ID de grupo.
BotonBit: permite el ingreso de los número entre 0-1.

DIAGRAMA DE BLOQUES



CODIGOS VHDL

LINK VIDEO


SISTEMA DE COMUNICACIÓN CON VALIDACIÓN CHECKSUM EN VHDL CON FPGA DE-NANO

SISTEMA  DE  COMUNICACIÓN  CON  VALIDACIÓN CHECKSUM EN VHDL CON FPGA DE-NANO


Por: Pedro Villegas Román (plvilleg@espol.edu.ec), Martha Villacis Davila (mrvillac@espol.edu.ec)

Descripción:
Realizar el diseño de un SISTEMA  DE  COMUNICACIÓN  CON  VALIDACIÓN CHECKSUM. El sistema está conformado por un transmisor que envía datos bajo un protocolo establecido hacia módulos receptores que validarán la trama recibida. 
Protocolo de comunicación: 
Byte de Inicio: 0X24
Byte ID de Equipo: 0X01 ó 0X0A ó XA1
Byte de Data: 0X00 – 0XFF
Byte Checksum: XOR

SEÑALES TX
PaqueteOut.- esta señal de 8 bits envía cada uno de los paquetes de la trama byte a byte, es decir envía de forma ordenada primero Byte de Inicio, Byte de ID, Byte de data y finalmente Byte de CheckSum. 
SincTx.-Esta  señal  sirve  de  sincronía  para  indicar  al  equipo  receptor  que existe un dato listo para ser leído. 
StartTx.-Señal para empezar a enviar los datos. 
StopTx.-Señal para detener el envío de datos.
IDRx.-El Byte de ID será leído constantemente antes de enviar los datos, de esa forma puede enviar la trama a diferentes equipos.
SEÑALES RX 
PaqueteIn.- esta señal de 8 bits recibe cada uno de los paquetes de la trama byte a byte, es decir recibe de forma ordenada primero Byte de Inicio, Byte de ID, Byte de data y finalmente Byte de CheckSum. 
SincRx.-Esta  señal  sirve  de  sincronía  para  indicar  al  equipo  receptor  que existe un dato listo para ser leído. 
StartRx.-Señal que empezar a recibir los datos. 
StopTx.-Señal para detener la recepción de datos.
IDRx.-El byte de ID es cargado inicialmente antes de presionar start de tal forma que el ID del equipo de recepción se compara con el ID recibido.

CÓDIGO VHDL

VIDEO LINK


Sistema de operacion entre conjuntos en VHDL con FPGA DE0-NANO

Sistema de operacion entre conjuntos en VHDL con FPGA DE0-NANO

Por: Daniel Calle Rojas (decalle@espol.edu.ec)

Descripción:
Es un separador de números, se ingresan números del 0 al 9, máximo 10 números cada conjunto, es decir no permite números repetidos, se ingresan los números tanto para el conjunto A como para el conjunto B.
Como se usa?
Se da reset, luego start y de ahí por default se ingresan los elementos de A, al terminar se debe presionar “Listo_A” y de ahí se ingresan los números de B y al terminar se ingresa “Listo_B”, luego se presiona “ver” y para ir avanzando los números recopilados se presiona “sigue”, cuando no hay mas números que presentar se queda en el primer numero de la solución.


SEÑALES DE DIAGRAMA ASM
ENTRADAS:
Start: reinicia el sistema.
Listo_A: Se presiona cuando se ha terminado de ingresar los números de A
Listo_B: Se presiona cuando se ha terminado de ingresar los números de B
Last_A: Se activa cuando se ha culminado de monitorear todos los números de A. 
Last_B: Se activa cuando se ha culminado de comparar todos los números de B.
AesB: se activa cuando un elemento de A es igual a uno de B
AfueB: Se activa cuando al menos un elemento de A fue igual a uno de B.
Ver: Es una entrada que el usuario pide ver los números ya procesados.
Fin: Es una entrada con la cual el usuario puede decidir que termina al momento de ir viendo los números procesados.
Progress: Es una entrada con la cual el usuario puede ingresar para ir avanzando los números que se tiene que mostrar.
Finish: Es una señal la cual me dice que el usuario llego al fin del arreglo, y no hay mas números que mostrar. 

SALIDAS:
Eliminar_A, Eliminar_B: Son salidas las cuales resetean los registros de los datos de A y de B respectivamente. 
Again: Es una señal que resetea todos los elementos a utilizarse cuando se empieza a comnprar los números del arreglo A con el arreglo B. 
Reset_g: Es una señal que resetea a todos los elementos de manera general.
Rst_A, rst_B: Son señales que resetean los contadores para recorrer el arreglo de A y de B respectivamente. 
Reset_new: esta señal resetea los elementos necesarios para cuando se termina de comprar todos los elementos de A con B. 
Elegir_B: Esta señal me habilita un mux para que cambie la dirección que es para guardar en A, a leer en A.
Fin_A, Fin_B: Esta señal cambia los habilitadores para que primero se ingrese elementos de A, y luego elementos de B. 
Cg: Esta señal carga un valor para que cambie la dirección de escribir los números a leer los números.

CÓDIGO VHDL