La gran mayoría de los diseños de VHDL utilizan lógica sincronizada , también conocido como lógica síncrona o lógica secuencial . Un proceso cronometrado se activa solo por una señal de reloj maestro, no cuando cambia cualquiera de las otras señales de entrada. El componente básico de la lógica sin
¡Pon a prueba tu progreso con este cuestionario de VHDL después de completar los tutoriales 12-17 de la serie Tutorial básico de VHDL! ¿Qué afirmación es verdadera sobre el tipo firmado? Pueden representan valores más altos que los tipos sin firmar Si el el bit más a la izquierda es 1 el valo
En tutoriales anteriores hemos usado el wait for declaración para retrasar el tiempo en la simulación. Pero, ¿qué pasa con los módulos de producción? El wait for declaración no se puede utilizar para eso. Eso solo funciona en la simulación porque no podemos simplemente decirles a los electrones en u
Un procedimiento es un tipo de subprograma en VHDL que puede ayudarnos a evitar la repetición de código. A veces surge la necesidad de realizar operaciones idénticas en varios lugares a lo largo del diseño. Si bien crear un módulo puede ser excesivo para operaciones menores, a menudo lo que desea es
Una máquina de estados finitos (FSM) es un mecanismo cuya salida depende no solo del estado actual de la entrada, sino también de valores pasados de entrada y salida. Siempre que necesite crear algún tipo de algoritmo dependiente del tiempo en VHDL, o si se enfrenta al problema de implementar un
Las funciones son subprogramas en VHDL que se pueden usar para implementar algoritmos de uso frecuente. Una función toma cero o más valores de entrada y siempre devuelve un valor. Además del valor devuelto, lo que distingue a una función de un procedimiento es que no puede contener declaraciones de
Una función impura puede leer o escribir cualquier señal dentro de su alcance, también aquellas que no están en la lista de parámetros. Decimos que la función tiene efectos secundarios . Lo que queremos decir con efectos secundarios es que no se garantiza que la función devuelva el mismo valor cada
Es posible conducir señales externas desde un procedimiento. Siempre que la señal esté dentro del alcance del procedimiento, se puede acceder a ella para lectura o escritura, incluso si no figura en la lista de parámetros. Los procedimientos que se declaran en la región declarativa de la arquitectu
¡Pon a prueba tu progreso con este cuestionario de VHDL después de completar la parte 4 de la serie de tutoriales básicos de VHDL! ¿Cómo medimos el tiempo real en VHDL? Al usar una declaración de esperar 1 ns Contando períodos de reloj Al explotar retraso de propagación ¡Correcto! ¡Equivoca
La lista enlazada es una estructura de datos dinámica. Se puede utilizar una lista enlazada cuando no se conoce de antemano el número total de elementos. Crece y se reduce en la memoria, en relación con la cantidad de elementos que contiene. Las listas enlazadas se implementan más convenientemente
Un banco de pruebas de autocomprobación es un programa VHDL que verifica la corrección del dispositivo bajo prueba (DUT) sin depender de un operador para inspeccionar manualmente la salida. El banco de pruebas de autocomprobación se ejecuta por sí solo e imprime un mensaje de OK o Error al final. C
Un banco de pruebas interactivo es una configuración de simulador donde un operador proporciona la entrada al dispositivo bajo prueba (DUT) mientras el banco de pruebas está funcionando. En la mayoría de los casos, esto significa que debe ingresar comandos en la consola del simulador para proporcion
Los búferes circulares son construcciones populares para crear colas en lenguajes de programación secuencial, pero también se pueden implementar en hardware. En este artículo, crearemos un búfer de anillo en VHDL para implementar un FIFO en RAM de bloque. Hay muchas decisiones de diseño que tendrá
La verificación aleatoria restringida es una estrategia de banco de pruebas que se basa en generar transacciones pseudoaleatorias para el dispositivo bajo prueba (DUT). El objetivo es lograr una cobertura funcional de una serie de eventos predefinidos a través de la interacción aleatoria con el DUT.
Estoy emocionado de anunciar que el curso de VHDL y FPGA en el que he estado trabajando durante los últimos seis meses está comenzando a completarse. El curso se encuentra en versión beta en este momento y planeo lanzarlo por primera vez este otoño. ¿Para quién es el curso de FPGA? El curso de FPGA
Estaba un poco molesto por las peculiaridades de la interfaz AXI la primera vez que tuve que crear lógica para interconectar un módulo AXI. En lugar de las señales de control habituales ocupado/válido, completo/válido o vacío/válido, la interfaz AXI utiliza dos señales de control denominadas listo y
Una forma conveniente de llenar la memoria RAM de bloques con valores iniciales es leer literales binarios o hexadecimales de un archivo ASCII. Esta también es una buena manera de crear una ROM (memoria de solo lectura) en VHDL. Después de todo, la RAM y la ROM son lo mismo en las FPGA, la ROM es un
La lectura de valores de señal del archivo es una forma alternativa de generar estímulos para el dispositivo en prueba (DUT). La secuencia y el tiempo del banco de pruebas están codificados en un archivo de estímulo que lee el banco de pruebas VHDL, línea por línea. Esto le permite cambiar fácilment
Convertir el archivo de imagen a un formato de mapa de bits es la forma más fácil de leer una imagen usando VHDL. La compatibilidad con el formato de archivo de imagen de gráficos de trama BMP está integrada en el sistema operativo Microsoft Windows. Eso hace que BMP sea un formato de imagen adecuad
Este video es una presentación introductoria sobre FPGA y tecnología de lógica programable. Pronuncié esta charla de 45 minutos en un evento organizado por 7 Peaks Software en Bangkok, Tailandia, el 19 de noviembre de 2019. Los puntos destacados de la presentación incluyen: 05:07 ¿Quién usa FPGA?
VHDL