signal update problem

K

Kuan Zhou

Guest
Hi,

I have a doubt on the signal update in the architectural body. Suppose
you have multiple processes and each process has some WAIT statements. Do
the signals get updated once all the activated processes are reaching the
WAIT statements?
If the processes have sensitivity list instead of WAIT statements, the
signals must be updated once the activated processes finish the current
loop and come back to the beginning of the processes. Am I right?

Kuan
 
"Kuan Zhou" <koy2@cisunix.unh.edu> wrote in message
news:pine.OSF.4.62.0503110030210.222797@hypatia.unh.edu...
Hi,

I have a doubt on the signal update in the architectural body. Suppose
you have multiple processes and each process has some WAIT statements. Do
the signals get updated once all the activated processes are reaching the
WAIT statements?
Yes. The idea is that processes communicate via signals. To get the order
independent execution of the concurrent processes the simiulation cycle has
two stages:
1- execute all (sensitive) processes.
2- update the signals

In this way all processes use the same value of the signals ==> order
independent execution!.
The update of a signal can of course be postponed to a later time if you
added a time i.e. y <= x after 5 ns;

If the processes have sensitivity list instead of WAIT statements, the
signals must be updated once the activated processes finish the current
loop and come back to the beginning of the processes. Am I right?

process ("sensitivity list")
begin
bla bla bla
end process;

is 'translated' to:

process
begin
bla bla bla
wait on "sensitivity list";
end process;

And you already have the answer of this in the first part of your question.
So you are right here too.

Regards,
Egbert Molenkamp
 

Welcome to EDABoard.com

Sponsor

Back
Top