From: Anders Nordstrom (andersn@nortelnetworks.com)
Date: Mon Apr 19 1999 - 13:35:13 PDT
BAD MSG:
<x-html><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
HTML>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#FF0000" ALINK="#000088">
Team,
I have set up two more conference calls. On the first one we will continue
our review of
<BR>open enhancements and errata. On the second call we will continue with
Configurations.
Date: April 26, 1999
<BR>Date May 4, 1999
Time: 9:00 am - 12:00 pm (PST)
<BR>Phone: 613-763-6338
<BR>passcode: 185555#
<BR>
Regards,
Anders
</BODY>
</HTML>
</x-html>From ???@??? Thu Apr 22 13:16:52 1999
Return-Path: <owner-btf@boyd.com>
Received: (from majordomo@localhost)
by gw.boyd.com (8.8.7/8.8.5) id NAA10936
for btf-list; Thu, 22 Apr 1999 13:09:59 -0700
X-Authentication-Warning: gw.boyd.com: majordomo set sender to owner-btf@boyd.com using -f
Received: from hub1.san-jose.webnexus.net (hub1-20.san-jose.webnexus.net [209.140.224.20])
by gw.boyd.com (8.8.7/8.8.5) with ESMTP id NAA10933
for <btf@boyd.com>; Thu, 22 Apr 1999 13:09:49 -0700
Received: from strange.go.cyrix.com (strange.go.cyrix.com [206.103.90.92])
by hub1.san-jose.webnexus.net (8.9.1a/8.8.5/WN-1.3) with ESMTP id IAA03201
for <btf@boyd.com>; Thu, 22 Apr 1999 08:23:01 -0700 (PDT)
Received: from virgo.eng.cyrix.com (iwww [147.5.10.39])
by strange.go.cyrix.com (8.8.8/8.8.8) with SMTP id KAA26574;
Thu, 22 Apr 1999 10:19:39 -0500 (CDT)
Received: from ester by virgo.eng.cyrix.com (SMI-8.6/SMI-SVR4)
id KAA25360; Thu, 22 Apr 1999 10:19:39 -0500
Message-Id: <199904221519.KAA25360@virgo.eng.cyrix.com>
Date: Thu, 22 Apr 1999 10:19:11 -0500 (CDT)
Reply-To: Adam Krolnik <adamk@cyrix.com>
Subject: Re: Attributes proposal for 1364-1999, to handle synthesis pragmas
To: jbhasker@rowlf.Cadence.COM, tfitz@cadence.com
Cc: btf@boyd.com
MIME-Version: 1.0
Content-MD5: UzgZYglWiX0T7iHdzcvznw==
X-Mailer: dtmail 1.2.1 CDE Version 1.2.1 SunOS 5.6 sun4m sparc
Sender: owner-btf@boyd.com
Precedence: bulk
X-Lines: 108
Content-Length: 4822
X-Status: $$$$
X-UID: 0000000865
Status: RO
--=_AAAtXwAAJKY3glcI
Content-Type: text/html; charset="us-ascii"
>From ???@??? Mon Apr 19 18:12:02 1999
Return-Path: <owner-btf@boyd.com>
Received: from ester by virgo.eng.cyrix.com (SMI-8.6/SMI-SVR4)
id KAA25360; Thu, 22 Apr 1999 10:19:39 -0500
X-Authentication-Warning: gw.boyd.com: majordomo set sender to owner-btf@boyd.com using -f
Message-Id: <199904221519.KAA25360@virgo.eng.cyrix.com>
Date: Thu, 22 Apr 1999 10:19:11 -0500 (CDT)
From: Adam Krolnik <adamk@cyrix.com>
Reply-To: Adam Krolnik <adamk@cyrix.com>
Organization: Nortel Networks
X-Mailer: dtmail 1.2.1 CDE Version 1.2.1 SunOS 5.6 sun4m sparc
MIME-Version: 1.0
To: jbhasker@rowlf.Cadence.COM, tfitz@cadence.com
Subject: Re: Attributes proposal for 1364-1999, to handle synthesis pragmas
Sender: owner-btf@boyd.com
Precedence: bulk
Status: RO
<x-html><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#FF0000" ALINK="#000088">
Team,
I have set up two more conference calls. On the first one we will continue
our review of
<BR>open enhancements and errata. On the second call we will continue with
Configurations.
Date: April 26, 1999
<BR>Date May 4, 1999
Time: 9:00 am - 12:00 pm (PST)
<BR>Phone: 613-763-6338
<BR>passcode: 185555#
<BR>
Regards,
Anders
</BODY>
</HTML>
</x-html>From ???@??? Thu Apr 22 13:16:52 1999
Cc: btf@boyd.com
Content-MD5: UzgZYglWiX0T7iHdzcvznw==
X-Sun-Content-Length: 3085
Good morning Tom,
I have read your proposal for Attributes and have these comments.
1. attribute_instance BNF:
The requirement of a semicolon (';') is a redundant termination token.
It has no use and will only serve as fodder for syntax errors.
Recommend:
attribute_instance :== (* attr_spec {, attr_spec} *)
2. rtl_sythesis compiler directives:
Why are they called "rtl_synthesis_{on,off}" vs. "synthesis_{on,off}?
Is there another type of synthesis that we maybe should also support?
The last sentence of the first paragraph in the 'Examples' section, reads
"The `rtl_synthesis_off and `rtl_synthesis_on directoves shall cross file
boundaries." Should this not read, "...shall cross include file boundaries."?
What does it mean if it crosses a module and file boundary? There is no
order of file compilation except when explicitly stated by explit file naming.
3. Module declaration BNF:
What about moving the attribute declaration before the port declarations?
E.g.
module my_module (* special, no_dangling_ports *);
(
parameter WIDTH=2;
input i1, i2, i3;
output o1;
); // Currently would appear here!
4. Missing locations for attributes:
Here is a list of recommended additions and suggested additions (shown by a '?'.)
port_connection
conditional statement
always construct ?
initial construct ?
seq_block
parallel_block
function_call
primary-> (mintypmax_expression) ?
Justifications:
One may want to place an attribute on a specific port_connection rather than
the port of a module definition - the same as being able to place an attribute
on a module instance rather than a module definition.
One may want to place an attribute on an always block since this can model
combinatorial logic. Alternatively the attribute may be placed on a seq_block
since many times the this code is written:
always @(expression) begin
Similarly if one adds an attribute to a seq_block construct, one might want to
consider the parallel_block construct. Again these attributes will not be for
synthesis but used by more general programs.
Since one has an attribute on a task enable construct and on task and function
definitions, one may want on a function_call construct.
Maybe one wants to attribute a parenthesized expression?!
5. attribute on unary operator:
Does anyone else think this looks funny or confusing?
...
my_reg = | (* tool_one_hot *) control_reg;
<p>6. Playing the devil's advocate:
The only problem with converting my directives from a comment base to this
attribute base is that you can't place attributes on everything! You only
specified it on a few constructs of the many in the BNF!
That's the nice thing about comments - they can be anywhere!
That's the hard thing about parsing comments (stripping them out vs.
placing them into the parse tree) they can be anywhere!
E.g.
always @(my_sig) begin
new_sig =
// this_term
(a & b & c) /* dont_care 0,0 */ &
(d & e &
// expect_with e
(f & {g, /*ignore_bits=1*/ h[2:0]));
end
<p><p><p><p> Adam Krolnik
Verification Engineer
Cyrix - NSC.
Richardson TX. 75085
--=_AAAtXwAAJKY3glcI--
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:53:26 PDT
and
sponsored by Boyd Technology, Inc.