Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

09/02/2011 #1


Problema con comando "after" en VHDL
Hola a todos.

¿Alguien sabe si el comando after solo funciona en la simulación?.. he estado tratando de utilizarlo, y funciona muy bien en la simulación, pero no trabaja cuando se programa la FPGA.

¿alguien sabe si es que es solo aplicable a señales y no fuinciona bien apra entradas y salidas?

El código con el que he estado probando es muy sencillo:

---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------

use IEEE.STD_LOGIC_1164.ALL;

entity con_retardos is
Port ( ctrl : in STD_LOGIC;
a : in STD_LOGIC;
b : in STD_LOGIC;
salida : out STD_LOGIC);
end con_retardos;

architecture Behavioral of con_retardos is

constant SIM_TIME : time := 1000 ms;

BEGIN

with ctrl select

salida <= TRANSPORT a after SIM_TIME when '0',
b after SIM_TIME when '1',
'0' when others;

end Behavioral;

---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------

En la simulación la señal "salida" aparece después de un retardo, pero cuando programo la FPGA no funciona. Yo pensaba que este comando trabajaba conectando varios buffers en serie para cuadrar los retardos.

Gracias por adelantado.
09/02/2011 #2

Avatar de Ferny

Hola

El comando after NO funciona al compilar el código, tan sólo para simulación. Igualmente hay más comandos que tampoco te compilarán, y hasta operadores donde un ejemplo típico es el operador división ("/").

Tienes que tener en cuenta que el compilador no es tan listo como para "generarte el hardware que produzca el efecto de ese after", sino que tienes que configurarte el retardo tú (por ejemplo con un contador, si quieres temporizar 1s y la frecuencia de reloj son 50MHz, tendrías que contar 50.000.000 de veces y después de ello generar el evento).

Saludos
09/02/2011 #3


Mil Gracias!!... ya estoy probando codigos con el conteo de las señales de reloj
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.