Tengo un bloque dentro de top_block y su salida está conectada al puerto de salida de top_block. Ambos tienen un tipo de datos de std_ulogic_vector (15 downto 0). En la simulación RTL, el puerto de salida de top_block obtiene los valores correctos. Pero en GLS, el puerto de salida se está "sin inicializar" ... Así que intenté hacer un experimento y cambié el tipo de datos a std_logic_vector y el problema se resolvió.
Ahora, no sé lo que pasó. No estoy seguro si esta es la solución correcta al problema ya que no puedo explicar por qué está funcionando. Entonces, ayúdenme a analizar lo que sucedió aquí y si esta es la solución correcta para el problema. ¿Qué sucede durante GLS que causa este problema?
Tenga en cuenta que simplemente está conectando el puerto de salida del subbloque al puerto de salida del bloque superior. El puerto de salida del subbloque funciona bien, pero el cable que lo conecta al puerto de salida del bloque superior está "unificado".