From: Stuart Sutherland (stuart@sutherland-hdl.com)
Date: Sat Feb 12 2000 - 09:22:02 PST
At 10:26 PM 2/11/00, Steven Sharp wrote:
...
>> FOLLOWUP:
>> > You could allow it on an endmodule itself as a special case. That would
>> > make access from PLI awkward, since an endmodule isn't an object.
>>
>> Other than the PLI aspect is this problematic? As mentioned in an earlier
>> e-mail, this is likely to be highly desirable for users.
>
>I am hesitant to ignore the PLI aspect. I can imagine that some add-on tools
>that want to use attributes won't want to implement their own Verilog parsers
>and elaborators. They have the option of using PLI in an existing simulator
>to traverse the design. Losing access to this attribute could be a problem.
>For example, a lint-checker looking for unsynthesizable constructs needs to
>know where synthesis was explicitly turned off.
>
>I don't think this is a parsing problem, though it is semantically odd when
>compared to the other attributes. I agree that this is very desirable because
>of the historical approach to synthesis_on/off directives. Perhaps there is
>some way around the PLI problem, e.g. by attaching it to some dummy item.
>Any PLI experts reading this?
>
Steve is correct. Not every Verilog keyword is an object; end, endcase,
endmodule are good examples, but there are other reserved words that are
not PLI objects. The PLI will only be able to access attributes for PLI
objects.
It seems to me, however that this is more than a PLI issue. The real
problem is that the attribute semantics being discussed are intended to
only associate an attribute to a specific object, PLI or not. What is
missing is a method to associate an attribute to a group of objects; a form
of begin-end for attributes. When a modeler wants his attribute to span
multiple objects, there should be a way to do so. Perhaps reserving two
attribute modifiers is necessary. I suggest BEGIN and END, or
ATTRIBUTE_BEGIN and ATTRIBUTE_END. E.g:
(* BEGIN translate off *)
...
...
(* END translate off *)
<p>I don't know if it should be case sensitive, that is up to you.
Personally, I like the all caps, to clearly distinguish it from the HDL
begin-end.
Stu
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Stuart Sutherland Sutherland HDL Inc.
stuart@sutherland-hdl.com 22805 SW 92nd Place
phone: 503-692-0898 Tualatin, OR 97062
www.sutherland-hdl.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:54:12 PDT
and
sponsored by Boyd Technology, Inc.