From: Adam Krolnik (adamk@cyrix.com)
Date: Mon May 11 1998 - 00:00:40 PDT
Good afternoon:
What a great writeup of these two proposals! Some questions below may
be superfluous but I don't have any idea of where most of the structure
spec is at. I noticed a few differences from the ANSI declaration
proposal as it stands (in my mailbox.)
1. I originally asked for specifying all information about ports
in the port list. Cliff instead proposed that the port_list
be optional and all information can instead be listed in
the port declarations as module items. Mac's proposal now
uses the port list as the place to define the ports.
2. The rule
"port ::= [port_expression] ..."
Could be modified to
"port ::= port_expression ..."
If we wish to forbid null port declarations. Yes?!
3. For structure definitions, the global definition is new. I'm thinking
about how to effectively use them in differnt files.
Would they be searched for by library searching (they can't be defined
twice -- that would be an error)? Should they be included and conditionalized
to only be included once through ifdef ... else... endif?
4. What is the list of struct_items? Would a memory be able to be
defined? With the entries becoming top level items?
5. Why is there a need for begin/end? What can be specified between
the 'struct' identifier and the 'begin' keyword?
6. I would still be interested in specifying the size of the structure as
an additional check - A warning or error if structure size exceeds the
stated size. E.g.
truct [43:0] Cmd_bus
begin
reg[31:0] addr;
reg[7:0] be;
reg[3:0] cmd;
reg parity; //Oops! structure is 45 bits, somewhere there's an error.
end
endstruct
7. Minor mistake in the example. All strings ".Pbus()" should be ".my_Pbus()".
8. What port type do unmentioned elements of a structure get by default?
In the example of pbus_arb, req, grt, and buserr have a defined direction.
Do address and data become ports?
<p>All in all, this is a great step forward! Structures will make creating
testbench drivers for collections of data much simpler and straightforward.
ANSI declarations will save designers the tedium of making 3
sets of declarations consistent.
<p> Adam Krolnik
Verification Engineer
Cyrix - NSM.
Richardson TX. 75085
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:52:51 PDT
and
sponsored by Boyd Technology, Inc.