Subject: RE: Fork join proposal
From: Jayaram Bhasker (JBhasker@esilicon.com)
Date: Thu May 01 2003 - 11:51:10 PDT
Steve:
We could add "[sensitivity_clause] [condition_clause][timeout_clause]" - similar to a wait statement. Question
I have is are all of these useful?
If we can define the 'done attribute to be false when the sequentail block is either scheduled or in execution, then
we can support this attribute. Consider:
fork
S1: ...
S2: ...
join until S1'done;
So when the fork stmt is eexecuted, S1 gets forked and scheduled, S2 gets forked and scheduled and then
the check for S1'done occurs - all in the same delta cycle. By now, S1'done should be false, else we will not
get the behavior we are looking for. Thus my definition of 'done included "either scheduled or in execution". If
S1 is executed before the join condition is checked, then we are ok.
But there are other problems too. S1 is not a signal - it is a label. We would have to change the definition
of sensitivity list. Can 'done attribute be used in other contexts outside of a fork-join?
A better way to accomplish 'done
is to use events (it is one of the features yet to be defined). You define an event, trigger
the event at the end of whatever sequentail process and check for an event in the sensitivity list of the join.
This is very clean.
- bhasker
------
J. Bhasker, eSilicon Corp
1605 N. Cedar Crest Blvd, Ste 615, Allentown, PA 18104
jbhasker@esilicon.com, 610.439.6831, 610.770.9634(fax)
-----Original Message-----
From: Steve Casselman [mailto:sc@vcc.com]
Sent: Saturday, April 26, 2003 3:11 AM
To: vhdl-200x-tbv@server.eda.org
Cc: Jim Lewis
Subject: Re: Fork join proposal
As I was looking at the Fork-Join proposal I see forkjoin has "join [all | none | any] [fj_label];" I was wondering if maybe it would be good to have an expression to join. It could be a something like "a = 5", [maybe give a sensitivity list?] or maybe Join (MyBlock1'done and MyBlock2'done); implying a 'done parameter.
Steve
This archive was generated by hypermail 2b28 : Thu May 01 2003 - 11:52:14 PDT