There are two software languages that offer "mailbox" objects that would be worth studying to make sure we get it right.
Python - http://docs.python.org/library/queue.html
CSP - http://en.wikipedia.org/wiki/Communicating_sequential_processes
I suggest the term "channel" instead of mailbox. One should be able to declare channels of records as well.
One feature that would make channels even more useful would be to handle arbitration automatically. For example, if I have N processes attempting to read from a channel and there are three items waiting in it, then three of the four reads should get data and the fourth should not. There should be a number of built in arbiter strategies available such as round robin, any, priority, etc., but the user could provide there own (and then the built-ins would come from a library) in the form of a function. Also, obviously, it should support arbitration on writers to the channel as well with the same built-ins and extensibility - this is the more common case after all...
-Jonathan Ross
On Dec 20, 2010, at 1:26 AM, Sudeep Kumar wrote:
Hi all,
I Agree with Jonathan Ross, Ben Cohen,
That we should work towards keeping Vhdl Alive, and make it competative,
as Jonathan mentioned, we need to have all the system verilog capabilities,
Along with the features what he mentioned, we need to include some others as well like
1. Mailboxes,
2. Semaphores,
3. Fork join statements.
4. Assertions,
and Etc, and and keeping the vhdl advantages and can think of some more other features,
which can Give Vhdl an Edge over System Verilog.
With Regards
Sudeep
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Mon Dec 20 10:08:16 2010
This archive was generated by hypermail 2.1.8 : Mon Dec 20 2010 - 10:08:35 PST