Kan geen oplossing voor meerdere constant bestuurders

E

EDA_hg81

Guest
Code:

proces (refclk, reset)

beginnen

if (reset = '1 ') then

vlstart_reg <= (others => '0 ');

fpixclk_reg <= (others => '0 ');

numline_reg <= (others => '0 ');

hpstart_reg <= (others => '0 ');

numapix_reg <= (others => '0 ');

elsif (rising_edge (refclk)) dan

if (tuner = '0 ') then

vlstart_reg <= vlstart;

fpixclk_reg <= fpixclk;

numline_reg <= numline;

hpstart_reg <= hpstart;

numapix_reg <= numapix;

end if;

end if;

einde proces

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

proces (refclk, reset)beginnen

if (reset = '1 ') then

tuneack <= '0 ';

tune_state <= idle;

elsif (rising_edge (refclk)) dan

geval tune_state is

wanneer idle =>

tuneack <= '0 ';

if (tuner = '1 ') then

if (updwhvsync (0) = '1 ') then

hpstart_reg <= hpstart_reg - 1;

elsif (updwhvsync (1) = '1 ') then

hpstart_reg <= hpstart_reg 1;

- Elsif (updwhvsync (2) = '1 ') then

- Vlstart_reg <= vlstart_reg - 1;

- Elsif (updwhvsync (3) = '1 ') then

- Vlstart_reg <= vlstart_reg 1;

end if;

tune_state <= wtunef;

end if;

wanneer wtunef =>

tuneack <= '1 ';

if (tunef = '1 ') then

tune_state <= idle;

end if;

wanneer anderen =>

tune_state <= idle;

einde geval;

end if;

einde proces
 
Het algemeen, elk signaal, dat is toegewezen in beide processen schendt VHDL regels.Dus hpstart_reg moet ook een "meervoudige constante chauffeurs veroorzaken" foutmelding.

Maar wanneer hpstart_reg is niet veroorzaakt ontwerp-uitgang (direct of indirect), het signaal wordt verwijderd uit het ontwerp bij het samenstellen en de fout wordt genegeerd.Kan niet worden gezien van uw post, maar het is de meest waarschijnlijke reden.

PS: Het bieden van een compleet ontwerp met bijvoorbeeld havens en bibliotheek specificaties is de betere manier.

 
gebaseerd op mijn ervaring met dit probleem, voorkomende oorzaak is dat de netto wordt gedreven door meer dan 1 waarde.De meeste van mijn oplossing is opgelost met behulp van een multiplexer-soort van functie om de gegevens te rijden het net op te lossen.Controleer de lussen met behulp van de variabele die het probleem heeft.

 

Welcome to EDABoard.com

Sponsor

Back
Top