From: Anders Nordstrom (andersn@nortelnetworks.com)
Date: Mon Jan 11 1999 - 13:27:09 PST
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">
BTF Team,
I have set up a new BTF conference call for this Friday.
Date: Friday January 15
<BR>Time: 10:00 am - 12:00 pm PST
<BR>Phone: 613-763-6338
<BR>passcode: 605451# (same as before)
<BR>
Agenda:
<BR>Review Tom's configuration proposal.
<BR>Discuss Attributes.
<BR>
Regards,
Anders
<PRE>--
+-------------------------------------------------------------------------+
| Anders Nordstrom |
| Senior ASIC Designer |
| |
| Nortel Networks Email: andersn@nortelnetworks.com |
| P.O. Box 3511 Station C Phone: 613-763-9186 |
| Ottawa, Ontario K1Y 4H7 Fax: 613-763-2626 |
+-------------------------------------------------------------------------+</PRE>
</BODY>
</HTML>
</x-html>From ???@??? Mon Jan 11 14:28:10 1999
Return-Path: <owner-btf@boyd.com>
Received: (from majordomo@localhost)
by gw.boyd.com (8.8.7/8.8.5) id OAA15298
for btf-list; Mon, 11 Jan 1999 14:22:19 -0800
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 OAA15293
for <btf@boyd.com>; Mon, 11 Jan 1999 14:22:04 -0800
Received: from appr.surefirev.com (apprentice.surefirev.com [209.140.228.131])
by hub1.san-jose.webnexus.net (8.9.1a/8.8.5/WN-1.3) with ESMTP id OAA17978
for <btf@boyd.com>; Mon, 11 Jan 1999 14:13:20 -0800 (PST)
Received: from medusa.surefirev.com. (medusa [209.140.228.146])
by appr.surefirev.com (8.8.8/8.8.8) with ESMTP id OAA08935;
Mon, 11 Jan 1999 14:09:38 -0800 (PST)
Received: (from mac@localhost)
by medusa.surefirev.com. (8.8.8/8.8.5) id OAA08854;
Mon, 11 Jan 1999 14:09:37 -0800 (PST)
Date: Mon, 11 Jan 1999 14:09:37 -0800 (PST)
Message-Id: <199901112209.OAA08854@medusa.surefirev.com.>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
To: Adam Krolnik <adamk@cyrix.com>
Cc: btf@boyd.com
Subject: B29 Line and File compiler Directives.
In-Reply-To: <199901112033.OAA25329@ester.eng.cyrix.com>
References: <199901112033.OAA25329@ester.eng.cyrix.com>
X-Mailer: VM 6.34 under 20.3 "London" XEmacs Lucid
Reply-To: mac@surefirev.com
Sender: owner-btf@boyd.com
Precedence: bulk
Adam Krolnik writes:
>
> [ACK - Updated this proposal with addition
> of mandatory level parameter in `line directive.]
>
> B29: Line and File compiler directive.
>
> The C preprocessor (cpp) is the model of the preprocessor that the Verilog
> language uses. Currently there are several directives in 'cpp' that are not
> present in the Verilog definition. These directives are:
> `ifndef `line `if `elif
>
> The directive `ifndef is already accepted for addition. The remainder are the
> subject of this proposal. The current proposal asks for the `line directive
> this proposal extends this to add `if and `elif.
>
> Justifications:
>
> The line number compiler directive is useful for source to source translators
> to reflect original file/line numbers to the compiler for future reference
> to the original source code. In order for this information to be useful there
> must be a single syntax to accept this information in order to properly
> report it.
>
> The `if and `elif compiler directives are proposed for consistency with
> the C language preprocessor. They showed use to include in the C definitions
> and are useful to extend conditional compilation selection. These additional
> directives will simplify complex conditional compilation setup.
>
> Proposal:
>
> Add section 16.7, `line
> The line number (`line) compiler directive is used to reset the current line
> number of the current file to the arguments presented. This can be used to
> reflect the line number and file name of the original file - if the actual
> source file has been modified by addition of lines. After specifying
> the new line number or file name, the compiler can correctly refer to
> the original source file location for example error messages, source code
> debugging, etc.
>
> The syntax for the 'line compiler directove is given in Syntax 16-X.
>
> line_compiler_directive ::=
> `line number "filename" level
>
> The directive can be specified anywhere within the Verilog HDL source
> description. The number is the new line number of the next line. The
> filename is the new name of the file. The filename can be a full or
> relative path name. If the filename is omitted, only the line number
> is updated. The level indicates whether you have entered (value is 1) an
> include file, exited (value is 2) an include file or (value is 0) done
> neither.
X-Lines: 65
Content-Length: 8202
X-Status: $$$$
X-UID: 0000000790
Status: RO
--=_AABB6AAASx83glcI
Content-Type: text/html; charset="us-ascii"
>From ???@??? Mon Jan 11 14:28:10 1999
Return-Path: <owner-btf@boyd.com>
Received: (from mac@localhost)
by medusa.surefirev.com. (8.8.8/8.8.5) id OAA08854;
Mon, 11 Jan 1999 14:09:37 -0800 (PST)
X-Authentication-Warning: gw.boyd.com: majordomo set sender to owner-btf@boyd.com using -f
Message-Id: <199901112209.OAA08854@medusa.surefirev.com.>
Date: Mon, 11 Jan 1999 14:09:37 -0800 (PST)
From: Michael McNamara <mac@surefirev.com>
Reply-To: mac@surefirev.com
Organization: Nortel Networks
X-Mailer: VM 6.34 under 20.3 "London" XEmacs Lucid
MIME-Version: 1.0
To: Adam Krolnik <adamk@cyrix.com>
Subject: B29 Line and File compiler Directives.
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">
BTF Team,
I have set up a new BTF conference call for this Friday.
Date: Friday January 15
<BR>Time: 10:00 am - 12:00 pm PST
<BR>Phone: 613-763-6338
<BR>passcode: 605451# (same as before)
<BR>
Agenda:
<BR>Review Tom's configuration proposal.
<BR>Discuss Attributes.
<BR>
Regards,
Anders
<PRE>--
+-------------------------------------------------------------------------+
| Anders Nordstrom |
| Senior ASIC Designer |
| |
| Nortel Networks Email: andersn@nortelnetworks.com |
| P.O. Box 3511 Station C Phone: 613-763-9186 |
| Ottawa, Ontario K1Y 4H7 Fax: 613-763-2626 |
+-------------------------------------------------------------------------+</PRE>
</BODY>
</HTML>
</x-html>From ???@??? Mon Jan 11 14:28:10 1999
Cc: btf@boyd.com
In-Reply-To: <199901112033.OAA25329@ester.eng.cyrix.com>
References: <199901112033.OAA25329@ester.eng.cyrix.com>
Adam Krolnik writes:
>
> [ACK - Updated this proposal with addition
> of mandatory level parameter in `line directive.]
>
> B29: Line and File compiler directive.
>
> The C preprocessor (cpp) is the model of the preprocessor that the Verilog
> language uses. Currently there are several directives in 'cpp' that are not
> present in the Verilog definition. These directives are:
> `ifndef `line `if `elif
>
> The directive `ifndef is already accepted for addition. The remainder are the
> subject of this proposal. The current proposal asks for the `line directive
> this proposal extends this to add `if and `elif.
>
> Justifications:
>
> The line number compiler directive is useful for source to source translators
> to reflect original file/line numbers to the compiler for future reference
> to the original source code. In order for this information to be useful there
> must be a single syntax to accept this information in order to properly
> report it.
>
> The `if and `elif compiler directives are proposed for consistency with
> the C language preprocessor. They showed use to include in the C definitions
> and are useful to extend conditional compilation selection. These additional
> directives will simplify complex conditional compilation setup.
>
> Proposal:
>
> Add section 16.7, `line
> The line number (`line) compiler directive is used to reset the current line
> number of the current file to the arguments presented. This can be used to
> reflect the line number and file name of the original file - if the actual
> source file has been modified by addition of lines. After specifying
> the new line number or file name, the compiler can correctly refer to
> the original source file location for example error messages, source code
> debugging, etc.
>
> The syntax for the 'line compiler directove is given in Syntax 16-X.
>
> line_compiler_directive ::=
> `line number "filename" level
>
> The directive can be specified anywhere within the Verilog HDL source
> description. The number is the new line number of the next line. The
> filename is the new name of the file. The filename can be a full or
> relative path name. If the filename is omitted, only the line number
> is updated. The level indicates whether you have entered (value is 1) an
> include file, exited (value is 2) an include file or (value is 0) done
> neither.
X-Sun-Content-Length: 2194
Above we talk about what happens if the filename is omitted;
but didn't we make all arguments required?
>
> Add section 16.5 `if `elif
>
> These conditional compilation directives are used to include optional lines
> of Verilog HDL source description during compilation. The `if compiler
> directive evaluates the given expression.
Perhaps we should say 'constant_expression' or
'compilation_constant_expression' as we don't what the verilog
expression, or expressions using parameters here.
>
> If the expression evaluates to a non-zero value then the following source
> code lines are included for compilation. If the expression evaluates to zero
> and an `else directive exists then the source code following the `else
> directive is included for compilation. The `elif compiler directive
> is a shortened form of the two sequential directives `else and `if and
> has the same functionality. The `elif compiler directive doesn't require
> a `endif directive to close the block but it does require a previous `if
> directive.
Please explain further why an `elif doesn't require a `endif
directive to close a block. Certainly the one below is required:
a =
`ifdef A
b + c
`elif B
B + C
`else
D
`endif
;
I would replace that last sentence with:
The `elif directive must follow a text region that is
controlled by an `if or an `elif directive.
>
> The expression evaluated by the `if and `elif compiler directives may
> include any of the verilog operators (unary, binary, ternary) and the
> additional "defined" unary operator. This additional operator provides
> the same functionality as the `ifdef compiler directive. This operator
> returns zero if the subsequent preprocessor value is not defined with
> a value. It returns non-zero if the preprocessor value is defined.
> The syntax of the "defined" unary operator is the following:
>
> unary_defined ::= defined preprocessor-symbol
>
> The preprocessor-symbol is a symbol that may or may not have been defined
> using the 'define compiler directive.
>
>
>
>
>
> Adam Krolnik
> Verification Engineer
> Cyrix - NSC.
> Richardson TX. 75085
>
--=_AABB6AAASx83glcI--
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:53:24 PDT
and
sponsored by Boyd Technology, Inc.