Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Re: Multiple event result

Thread Tools

Re: Multiple event result

David Jones
Posts: n/a
In article <(E-Mail Removed) >,
arkaitz <(E-Mail Removed)> wrote:
>I have a doubt about the result of a VHDL code when simulating.
>I'd like to know result of a Process statement when two or more events
>on the signals of the sensitivity list happen simultaneously.
>Here's a little example:
>PROCESS (a, b, c)
> if (a = '1') then
> result <= a;
> elsif (b = '0') then
> result <= b;
> elsif (c'event) then
> result <= c;
> end if;
>So, imagine an hypotetical case where ocurs an event on the three
>signal a, b and c. Which would be the value of "result"?

Depends on the values of a/b/c.

There is only one driver for result in this process - the process itself
contributes the driver.

If there are concurrent events, then this is treated the same way as
single events - the process is triggered, and it computes a value for
result based on the logic.

Note, however, that this code is not recommended. Due to delta delays,
the events on a/b/c may not actually truly be concurrent, but may arrive
in any order, even though they appear to happen at the same simulator time.
Recall that each tick of simulator time is further subdivided into delta,
as many as required to resolve all activity during that tick.
In this case, that last c'event claude can be order-sensitive.

Reply With Quote

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
i = 10; result = ++i - --i; How result become ZERO Lakshmi Sreekanth C Programming 52 09-23-2010 07:41 AM
Re: i = 10; result = ++i - --i; How result become ZERO Mr. Buffoon C Programming 4 09-23-2010 03:01 AM
Is the result of valid dynamic cast always equal to the result ofcorrespondent static cast? Pavel C++ 7 09-18-2010 11:35 PM
simulation result is correct but synthesis result is not correct J.Ram VHDL 7 12-03-2008 01:26 PM
1. Ruby result: 101 seconds , 2. Java result:9.8 seconds, 3. Perl result:62 seconds Michael Tan Ruby 32 07-21-2005 03:23 PM