overføre data fra process1 til process2

E

EDA_hg81

Guest
Jeg har to processer, der kører under det samme ur domæne.

Code:

Process1 (refclk)

begynd

if (rising_edge (refclk)) derefter

udgangen, hvis;

ende proces;process2 (refclk)

begynd

if (falling_edge (refclk)) derefter

udgangen, hvis;

ende proces;
 
Hej!
Du kan bruge signalerne til at transportere data fra en proces til andre.Dette er den enkleste løsning jeg gætte.
enhed
arkitektur
signal a: std_logic;
begynd
processen (CLK)
begynd
if (CLK 'begivenhed og CLK ='1')
og derefter
a <= x;
udgangen, hvis;
ende proces;

processen (CLK)
begynd
if (CLK 'begivenhed og CLK ='0')
og derefter
y <= a;
udgangen, hvis;
ende proces;
udgangen arkitektur;
Og for at varify, at oplysningerne er blevet korrekt overført bør du skrive en prøvebænk.
Og husk generelt værdien af et signal er opdateret efter den fuldstændige gennemførelse af processen.
Jeg håber, at dette arbejde
regrards.
Awais

 
Hvad jeg vil gøre, er, når process1 sker; data er overført til process2.

Hvad er de mulige årsager data er gået tabt?

Tak.

 
Hej!
Der er tilsyneladende ingen grund af tab af data.Tja, hvis du kan sætte en pieace af kode, der kan hjælpe til at forstå problemet.
En ting mere forsøge at tage data på næste stigende kanten af uret i process2, jeg mener i stedet for at indlede process2 om henhoerende kant gør det til en stigende kant såvel.derefter kontrollere resultaterne.
Andre kloge sætte din kode her, så vi kan diskutere.

 
Se, jeg er ikke så sikker på om brug henhoerende kanten til at læse data i process2 .... Så det
er ikke en god ting at bruge både stigende og faldende kanten af samme CLK.I stedet bruge en CLK forsinkelse og læse data ... Du vil ikke gå glip af noget .....

 

Welcome to EDABoard.com

Sponsor

Back
Top