RE: Attributes and constant expressions


Subject: RE: Attributes and constant expressions
From: J. Bhasker (jbhasker@cadence.com)
Date: Thu Oct 25 2001 - 06:20:56 PDT


Mac:

But 'ah', there was no 'ifndef in Verilog in the '90s (Verilog 93).
I think this time around, we should do it right, at least as part of the
synthesis
standard. We shall discuss this at the next Synthesis WG mtg. Thanks for
raising
this issue.

- bhasker

--

J. Bhasker Cadence Design Systems 7535 Windsor Drive, Suite A200, Allentown, PA 18195 (610) 398-6312, (610) 530-7985(fax), jbhasker@cadence.com

-----Original Message----- From: owner-btf@boyd.com [mailto:owner-btf@boyd.com]On Behalf Of Michael McNamara Sent: Wednesday, October 24, 2001 5:39 PM To: Stefen Boyd Cc: vlog-synth@eda.org; btf@boyd.com Subject: Re: Attributes and constant expressions

Precedence: bulk

Stefen Boyd writes: > Precedence: bulk > > At 12:06 PM 10/24/2001 -0500, Adam Krolnik wrote: > > > // ambit synthesis off > > > ... > > > // ambit synthesis on > > > >Something similar to > > > >`ifndef SYNTHESIS > >... > >`endif > > Since we didn't create attributes in a way that would > accomplish synthesis on/off behavior, perhaps what we > should do is require synthesis tools to define a compile > time macro so that Adam's example would work as a > replacement of the comment-style on/off flags. That > way we can depricate all the comment-style commands by > having all of them covered. Without defining a compile > time macro name, we're left with metacomments as > defined in section 6.1 of 1364.1

Reading your email made me think of (ugly as it may appear) the idea of adopting convention of

initial (* synthesis = 0 *);

assign debuging_register = f(a,b,c,d);

initial (* synthesis = 1 *);

assign w = a + b + c;

however there is not any notion of 'regions' or persistance for attributes. I.E., when parsing the first assignement, if you look up the attributes that apply to it, the value of 'synthesis' is undefined.

Here I go back to the tick defines that design compiler should have supported in 1990:

`ifndef SYNTHESIS assign debuging_register = f(a,b,c,d); `endif

Absolutely simple; very clean; any programmer having no experience with HDLs first guess as to what the above means would be spot on correct.

*sigh*

> > I would like to see section 6.1 indicate that metacomments > are depricated in general. > > Regards, > Stefen > > > -------------------- > Stefen Boyd Boyd Technology, Inc. > stefen@BoydTechInc.com (408)739-BOYD > www.BoydTechInc.com (408)739-1402 (fax) > >



This archive was generated by hypermail 2b28 : Thu Oct 25 2001 - 06:28:02 PDT