Saltar al contenido

Integer_Matrix_Solver_UART_SERIAL_VHDL

julio 10, 2021
F6Z6NYLJAWTWTVZ

Paso 1: Paso 1: Cómo funciona

Paso 1: cómo funcionaPaso 1: cómo funciona

Entradas: El usuario ingresa un sistema lineal en la terminal de la computadora y luego un módulo UART los convierte en una matriz para que el módulo de resolución de matrices los manipule. El módulo UART interactúa con el usuario y le permite ingresar la matriz apropiada, así como guiarlo para ingresar datos correctamente. El sistema también tiene un interruptor de reinicio / habilitación asignado al interruptor más a la izquierda de la placa Basys3.

Salidas:Los resultados del solucionador de matrices se pasan a través de la interfaz del módulo UART y luego se muestran en el terminal de la computadora con las soluciones enumeradas en la pantalla. El solucionador de matrices envía vectores lógicos estándar sin firmar al módulo UART, que los convierte en salidas más fáciles de usar para que el usuario las aprecie. El solucionador de matrices actual solo puede tener números hasta 15 ingresados ​​y el resultado de salida debe ser un entero limpio o el programa del solucionador de matrices no puede generar la solución correcta.

Módulo de “control en serie” de nivel superior: El usuario ingresa su sistema lineal deseado en este módulo a través de los módulos UART_TX y UART_RX y convierte las entradas del terminal de computadora en una matriz de vectores lógicos estándar que son procesados ​​por el módulo de resolución de matrices. El módulo de resolución de matrices luego devuelve una matriz de vectores lógicos estándar que luego se muestran en la pantalla mediante la interfaz serie UART. La transmisión y recepción de datos a través de los módulos UART se logra mediante el uso de un FSM muy extenso en este módulo.

Módulo UART_TX: El usuario ingresa un vector lógico estándar de 8 bits y una señal de envío para enviar datos a través de la interfaz USB. Mientras envía datos, la señal TX_Active es alta. Una vez que ha enviado los datos, la señal TX_Done pulsa.

Módulo UART_RX: El usuario recibe 8 bits de datos a la vez desde la interfaz USB. Un pulso de RX_DV es una indicación de que se han recibido datos y que se puede leer la lógica vectorial RX_Byte.

Módulo solucionador de matrices: El solucionador de matrices recibe una matriz imputada del módulo UART que representa la matriz. El solucionador de matrices luego convierte cada número en el sistema lineal en enteros para facilitar su operación. Dentro del módulo del solucionador de matrices hay varios submódulos. El primer submódulo es inverse_matrix_1 que toma la matriz y luego da la inversa de la matriz dada. El siguiente submódulo es el multiplicador que multiplica total_matrix por la matriz inversa utilizando operaciones matriciales estándar. Finalmente, el módulo maestro los mapea para generar una única respuesta.

Paso 2: Paso 2: Programación de la placa Basys 3

Una vez que haya adquirido el código fuente de abajo, cárguelo en la placa basys 3 para usar la interfaz.

https://reference.digilentinc.com/basys3/refmanual

Archivos adjuntos

Paso 3: Paso 3: Cómo usarlo

Utilice una interfaz en serie a 9600 baudios para comunicarse con Basys3 UART. Usé la pantalla en Linux con el siguiente comando:

pantalla / dev / ttyUSB1 9600

Para hacer esto en Linux, tuve que agregar mi usuario al grupo “dialout”. En Windows, putty debería funcionar, y en MacOSX, debería ser un proceso similar al de Linux.

Al mover el interruptor más a la izquierda a la posición de encendido, se inicia el solucionador de matrices. Al apagarlo, se restablece el solucionador de matrices.

Sé el primero en compartir

    Comentarios

    0
    Canción del cisne
    Canción del cisne

    hace 3 años

    Gracias por compartir 🙂

    close