[sv-cc] 1503 changes to support 1667

From: John Havlicek <john.havlicek_at_.....>
Date: Thu Jan 24 2008 - 12:45:51 PST
Hi Bassam, Lisa:

Can you help me address the VPI changes necessary for 1667?

I believe that these can be done in 1503, which is making changes to the VPI
diagrams for property and sequence declarations.  Alternatively, they can be
done in a separate proposal that is based on 1503.

1667 adds the capability to specify formal arguments of sequences and properties
as local variables.  For properties, all local variable arguments are of
direction "input", but for sequences a local variable argument can have
direction "input", "inout", or "output".

I think that we can simply add some attributes to the VPI object definitions for
"prop formal decl" and "seq formal decl".

For "prop formal decl", we just need one attribute that determines whether the
formal is a local variable argument.

For "seq formal decl" we need for the attribute(s) to allow determination of
whether the argument is a local variable argument and, if so, its direction.

I have two ideas for doing this.

Idea 1:

- Use one attribute vpiDirection like in "io decl".  
- For "prop formal decl", the return value is either vpiInput or vpiNoDirection.
- For "seq formal decl", the return value is either vpiInput, vpiInout, vpiOutput, or 
  vpiNoDirection.
- In both cases, vpiNoDirection means that the argument is not a local 
  variable argument.

Idea 2:

- Use one boolean attribute to determine whether the argument is a local 
  variable argument.  This attribute works the same for "seq formal decl"
  and "prop formal decl".
- For "seq formal decl", have a second attribute vpiDirection, whose return value 
  is either vpiInput, vpiInout, vpiOutput, or vpiNoDirection.


I'm not sure what the collateral changes to the Annexes are, but they should be
small.

What do you think?

J.H.

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Thu Jan 24 13:00:42 2008

This archive was generated by hypermail 2.1.8 : Thu Jan 24 2008 - 13:01:06 PST