La eliminación de las señales usadas de Vivado en vhdl

-1

Hola, este segmento de código es de mi top_module y se eliminan algunas señales usadas en esta parte del código. Me pregunto por qué y necesito que ajusten lo que yo llamo habilitar2. ¿Cómo puedo hacer eso?

[Synth 8-6014] Unused sequential element counter_for_enable2_reg was removed.  
[Synth 8-6014] Unused sequential element enable2_reg was removed.  
[Synth 8-6014] Unused sequential element c_cursor_pos_x_reg was removed.  
[Synth 8-6014] Unused sequential element c_cursor_pos_y_reg was removed.  
[Synth 8-6014] Unused sequential element address_rom_reg was removed.  
[Synth 8-6014] Unused sequential element address_rom_reg was removed. 
Adjusting_enable2: process(rst,clk,cursor_pos_x,cursor_pos_y,enable,cursor_mode,current_cursor_mode,c_cursor_pos_x,c_cursor_pos_y) is
begin
if rst = '1' or (cursor_mode) /= (current_cursor_mode) or (c_cursor_pos_x /= cursor_pos_x) or (c_cursor_pos_y /= cursor_pos_y)  then

enable2 <= '1';
c_cursor_pos_x <= cursor_pos_x;
c_cursor_pos_y <= cursor_pos_y;
counter_for_enable2 <= 0;

elsif rising_edge(clk) then

if enable ='1' then

if counter_for_enable2 < PICTURE_WIDTH_HEIGHT*PICTURE_WIDTH_HEIGHT then

counter_for_enable2 <= counter_for_enable2 + 1;

else

enable2 <= '0';

end if;
end if;
end if;
end process;

El código puede parecer incómodo, pero enable2 es una señal de habilitación especial

También debo preguntar que es la razón para eliminar estas señales que hay algún hardware que se puede usar para el mismo propósito y no para aumentar el hardware. ¿Estas señales se eliminan?

    
pregunta runo

2 respuestas

1

Al igual que @Humpawumpa dice ... si no está usando la señal de counter_for_enable2 en ningún lugar, que no está en este fragmento de código, la elimina (y todo lo que contribuye a ella y nada más) de forma predeterminada. Creo que Vivado le da una opción de MANTENER, que se supone que debe hacer eso y "mantenerlo", no optimizarlo (ISE lo hizo).

Solución de problemas / arreglos simples, si no está utilizando la señal en cualquier lugar, pero por lo demás desea tenerla después de la síntesis para la depuración de su sim de netlist, etc., asigne un puerto de salida y lo hará (debería ) guárdalo.

Y, como dice @Oldfart, estoy bastante seguro de que tu condición de restablecimiento necesita algunos paréntesis.

    
respondido por el CapnJJ
2

Si el sintetizador dice que no se usa, es muy probable que estas señales no se usen. Puede planear usarlo para algo, pero mientras que para el diseño no importe si están allí o no, el sintetizador simplemente los elimina. Si todo está correcto, entonces podría haber un error ... se ha informado here

    
respondido por el Humpawumpa

Lea otras preguntas en las etiquetas