Lección 14.V100. Testbench del contador en secuencia arbitraria. Simulación. Generación de reset.

En este video explico el testbench del contador en secuencia arbitraria. Realizo la simulación con el STKWave y con el ModelSim. Genero un segundo pulso de reset y muestro un posible error y cómo se detecta.

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 14.V97. Problemas cuando la entrada es asincrónica. Máquina Mealy. Detector de secuencia 1011.

Te muestro un testbench que genera entradas de bits no sincronizadas con el reloj de manera de poder constatar el mal funcionamiento del detector de secuencia con salida tipo Mealy cuando no se cumple la hipótesis de diseño (la entrada debía ser sincrónica). Luego simulo usando el GTKWave por línea de comando. Allí vemos que el estado próximo es el correcto ya que lo genera el proceso combinacional, que es asincrónico, pero el proceso secuencial sincrónico no actualiza el estado hasta no recibir un flanco ascendente de la señal de reloj, de manera que no hay coordinación entre los procesos. La salida se activó con un ‘1’ solamente en la última secuencia exitosa, no detectó las anteriores, fallando en los bits 8, 12, 21 y 33.

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 14. V96. Testbench, detector de secuencia, con solapamiento, salida Moore. GTKWave por línea de comando.

En este video te explico cómo hacer un testbench para el detector de secuencia con salida Moore, con solapamiento. Compilo y simulo por línea de comando (git bash). Genero la entrada sincronizada con el reloj, dentro del ciclo “for” y después de un flanco creciente del reloj. Defino una constante std_logic_vector para generar una cadena de bits correspondientes a los sucesivos bits de la entrada. Y otra para las salidas esperadas. Uso un ciclo for-loop. Uso los atributos ‘range e ‘image. Analizo las formas de ondas que muestra el GTKWave. Vemos las señales del port y los estados.

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 14.V94. Testbench, detector de secuencia, sin solapamiento, salida Moore. GTKWave por línea de comando.

En este video te explico cómo hacer un testbench para el detector de secuencia con salida Moore, sin solapamiento. Compilo y simulo por línea de comando (git bash). Defino una constante std_logic_vector para generar una cadena de bits correspondientes a los sucesivos bits de la entrada. Y otra para las salidas esperadas. Uso un ciclo for-loop. Uso los atributos ‘range e ‘image. Analizo las formas de ondas que muestra el GTKWave. Vemos las señales del port y los estados.

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 14. V92. Testbench, detector de secuencia, solapamiento, salida Mealy. ModelSim por línea de comando.

En este video te explico cómo hacer un testbench para el detector de secuencia con salida Mealy, con solapamiento. Compilo y simulo usando el ModelSim por línea de comando (git bash). Para simular uso opciones que permiten ver los ports de la entidad y las señales de la descripción, en este caso son los estados (actual y prox), de tipo enumerados. Defino una constante std_logic_vector para generar una cadena de bits correspondientes a los sucesivos bits de la entrada. Y otra para las salidas esperadas. Uso un ciclo for-loop. Uso los atributos ‘range e ‘image. Analizo las formas de ondas que muestra el ModelSim. Vemos las señales del port y los estados.

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 14.V90. Testbench, detector de secuencia, salida Mealy. Simulación con gtkwave, vista estados

Te explico el testbench para el detector de secuencia con salida Mealy, sin solapamiento. Simulo con el gtkwave, genero un archivo de extensión .ghw, para ver, no solamente los ports de la entidad sino también las señales de la descripción, en este caso son los estados (actual y prox), de tipo enumerados. Defino una constante std_logic_vector para generar una cadena de bits correspondientes a los sucesivos bits de la entrada. Y otra para las salidas esperadas. Uso un ciclo for-loop. Uso los atributos ‘range e ‘image. Desde la línea de comando del git bash compilo y corro el testbench usando ghdl. Genero un archivo de extensión .ghw con el cual abro el gtkwave. Explico la simulación. Vemos las señales del port y los estados.

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. V88. Descripción, testbench y simulación,contador Johnson o Moebius, módulo impar, autoarranque.

Te muestro la descripción y el testbench de un contador Johnson o Moebius, de módulo impar, con arranque automático. Uso vs code, compilo desde la línea de comando usando git bash. Y finalmente simulo desde la línea de comando usando gtkwave.

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.V85. Verificación del funcionamiento del autocorrector del contador Johnson o Moebius.

En este video te muestro cómo funciona el proceso de autocorrección del contador Johnson o Moebius de 4 bits que vimos en los dos videos anteriores. Para generar errores que se podrían dar, por ejemplo por ruido, cambié el código de la descripción de manera que el testbench tuviera la oportunidad de “producir esos códigos prohibidos” y pudiéramos ver cómo el proceso de autocorrección los corrige en como máximo 3 ciclos de reloj. Realizo la simulación con el ModelSim generando las formas de onda. Tuve que adaptar el testbench para usar el ModelSim solo como graficador y agregar la nueva señal de selección.

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. V84. Testbench, contador Johnson o Moebius, módulo par.

Testbench de un contador Johnson o Moebius, de módulo par con arranque automático. Uso el Modelsim para la simulación. Genero el reloj y dos pulsos de reset. Constato en la simulación 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 13.V82. Verificación del funcionamiento del autocorrector del contador en anillo.

En este video te muestro cómo funciona el proceso de autocorrección que vimos en los dos videos anteriores. Para generar errores que se podrían dar en el hardware, cambié el código de la descripción de manera que el testbench tuviera la oportunidad de “producir esos errores” y pudiéramos ver cómo el proceso de autocorrección los corrige en varios ciclos de reloj. Realizo la simulación con el ModelSim generando las formas de onda.

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/.