sobre Synplify VHDL (código importado de Xilinx ISE)

0

Buen día,

Necesito ayuda Empieza a trabajar con Synopsys Synplify. Importe mi proyecto Xilinx ISE (funciona completamente).

Intente ejecutar y recibir: "No hay sobrecarga coincidente para to_integer" para esta línea

rgb(7 downto 0) <= color_lut(result_reg(to_integer(unsigned(x(2 downto 0))-1 )));

¿Qué puedo hacer para adoptar esta pieza para Synplify?

    
pregunta fpgaiua

2 respuestas

1

Sólo una conjetura: ¿Incluiste numeric_std? También su línea de código parece estar equivocada, porque hay 5 apertura (y solo 4 de cierre) y no hay cierre; Puede intentar_signado () más tarde.

    
respondido por el Socrates
0

¿Se compila en un simulador? A menudo recibe un mensaje de error más útil y siempre debe simular antes de sintetizar. EDITAR: Sus comentarios indican que tiene y está bien.

XST no siempre es una buena representación de la corrección del código, es VHDL a veces es un poco fuera de especificaciones en la interpretación.

Habría pensado que querías algo como esto (con un montón de espacio en blanco adicional para mayor claridad de respuesta, normalmente no lo escribiría así en el código fuente). Nunca se sabe, Synplify podría estar más contento con esta versión:

rgb(7 downto 0) <=
    color_lut(
        result_reg(
            to_integer(
                unsigned(
                    x(2 downto 0)
                ) --close "unsigned"
             ) -- extra bracket here - you now have a signed integer you can subtract '1' from
            -1
        ) -- close result_reg index
    ); -- close colour_lut index

De lo contrario, proporcione más detalles sobre los tipos de datos involucrados.

    
respondido por el Martin Thompson

Lea otras preguntas en las etiquetas