Curso VHDL.V80. Descripción: contador en anillo con arranque automático. Hardware generado.

Te describo un contador en anillo con arranque automático, o sea que contempla la posibilidad tanto de que todos sus bits erróneamente estén en ‘0’ como que el contenido tenga más de ‘1’. En el primer caso inmediatamente lo lleva a su estado inicial (el del reset) con el bit más significativo en ‘1’ y el resto en ‘0’. En el segundo caso, en cada ciclo de reloj va limpiando los ‘1’ que hubiera. Uso dos procesos, la señal generada por uno de ellos dispara el otro proceso. Defino una variable. Uso for loop.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 13. V79. Testbench y simulación del generador de secuencia pseudo-aleatoria de 5 bits.

En este video te explico un testbench para el generador de una secuencia pseudo-aleatoria de 5 bits usando un registro de desplazamiento. Te explico cómo generar un segundo pulso de reset en un momento temporal prefijado. También cómo generar un tiempo de simulación que abarque toda la secuencia generada (para poder verla) y varios ciclos más. Realizo la simulación con el ModelSim. Te explico a qué se debe el warning que produce el Modelsim “Warning: NUMERIC_STD.”=”: metavalue detected, returning FALSE”.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 13.V78. Descripción de un generador de secuencia pseudo-aleatoria de 5 bits.

Descripción y explicación de un generador de una secuencia pseudo-aleatoria de 5 bits usando un registro de desplazamiento. Este generador cuenta con 32 estados ya que se fuerza el estado con todos los bits en cero. También tiene una señal de reset. Te muestro en una tabla la secuencia generada. Analizo con detalle los esquemáticos generados por RTL y Technology Map Viewer del Quartus II.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 12.Curso VHDL.V77. Testbench: reg SISO, SIPO, carga paralelo, reset sincrónico.

En este video te muestro el testbench de un registro de desplazamiento a derecha tipo SISO (serial input serial output) que también es SIPO (serial input parallel output), con carga paralelo, sincrónico y con reset sincrónico. Genero dos pulsos de reset usando “after”. Lo simulo con el ModelSim para comprobar el correcto funcionamiento.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 12.V76. Descripción: registro SISO, SIPO, carga paralelo, sincrónico, genérico, con reset.

En este video te muestro la descripción de un registro de desplazamiento a derecha tipo SISO (serial input serial output) que también es SIPO (serial input parallel output), con carga paralelo, sincrónico y con reset sincrónico. Te muestro el circuito esquemático Technology Map Viewer generado por tool del Quartus II. La señal “serial input” entra al bit más significativo del registro que se encuentra a la izquierda. Uso la concatenación de vectores para generar el nuevo contenido del registro

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 12.V75. Testbench del registro SISO/SIPO, sincrónico, desplazamiento a derecha.

En este video te muestro el testbench de un registro SISO (serial input, serial output)/ SIPO(serial input, parallel output), de desplazamiento a derecha, sincrónico, para 5 bits. Como la descripción no tiene la señal de reset, espero 5 ciclos de reloj, con SI=0 para que el registro se encuentre reseteado.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 12.V74. Descripción: registro SISO/SIPO, genérico, sincrónico, desplazamiento a derecha.

En este video te muestro la descripción de un registro SISO (serial input, serial output)/ SIPO(serial input, parallel output), de desplazamiento a derecha, sincrónico y genérico. La señal “serial input” entra al bit más significativo del registro que se encuentra a la izquierda y el bit menos significativo sale por la derecha a “serial output” (bit menos significativo de la salida en paralelo). Este ejemplo también consta de salida paralelo de manera que también es un registro SIPO. Uso la concatenación de vectores para generar el nuevo contenido del registro.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 12.V72. Registro PIPO, sincrónico, habilitación y salida de alta impedancia.

En este video te muestro la descripción VHDL de un registro PIPO (parallel input parallel output), sincrónico, genérico, con habilitación del registro y habilitación de las salidas tri-state. Señales chip-enable y output-enable. Te muestro la sentencia VHDL que permite generar un buffer tri-state. El reset es sincrónico. Luego de compilar, vemos los warnings. Te muestro también el circuito esquemático generado por “Technology Map Viewer” de “Tool” y lo analizo, comprobando la existencia de los buffers tri-state sintetizados.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Lección 12.V70. Descripción de un registro PIPO genérico, sincrónico, con reset.

En este video te muestro la descripción VHDL de un registro PIPO (parallel input, parallel output), sincrónico, genérico. Es muy sencillo, consta de un único proceso explícito que se dispara con la señal de reloj. El reset es sincrónico. Luego de compilar, vemos los warnings. Te muestro también el circuito esquemático generado por “Technology Map Viewer” de “Tool” y lo analizo.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.


Lección 11.V68. Contador sincrónico, de módulo arbitrario, ejemplo contador decimal.

En este video te explico la descripción de un contador sincrónico, genérico, de módulo M, que no es potencia de 2. Consta de la señal de reset para darle un valor inicial y de la señal de habilitación. Detecta el valor valor máximo de la cuenta, M-1 para reinicializar la cuenta. Explico porqué se compara con el valor del módulo menos uno. Explico qué instrucción va a producir un warning, posteriormente en la simulación con el ModelSim y porqué se produce. Luego analizo el circuito esquemático Technology Map Viewer que genera el Quartus II. Una celda de lógica combinacional sintetizó el detector del 9 (el ejemplo usa una constante M=10, se trata de un contador decimal) usando una compuerta OR. La salida de esa compuerta se niega para generar el port de salida tc_o (cuenta terminal), y se usa para resetear en forma sincrónica los flip-flops, generándose así el valor inicial de la cuenta.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en https://susycursos.com/contactame/.

Technology Map Viewer.