Hi Bassam: I just want to point out some other options for unnamed clocking blocks. One could allow them and treat items declared within them to be in the enclosing namespace. From the point of view of declaration of assertion items, this would allow the clocking block to group and attach the clock without requiring the clocking block name when referencing a declared item. Another possibility is to allow assertion statements (assert, cover, assume) inside the clocking block itself and allow them to reference the declared items inside that clocking block, but not within other unnamed clocking blocks. I see some advantages and disadvantages to both of these options. If others do not see clearly what the right thing to do is, then your suggestion about making the unnamed clocking blocks illegal may be safest. By the way, a default clocking block can still have items declared within it, so allowing default clocking to be unnamed leaves open the question. I like being able to write a default clocking with no items in it--in fact I'd like to be able to write default clocking <event>; instead of default clocking [name] <event>; endclocking One could say that default clocking can be unnamed provided there are no items declared within. Best regards, John H. > X-Authentication-Warning: server.eda.org: majordom set sender to owner-sv-ac@eda.org using -f > X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 > Content-class: urn:content-classes:message > Date: Thu, 2 Mar 2006 10:13:17 -0800 > Thread-Topic: Need clarification from EC on #1325 (currently in SV-AC bin) > Thread-Index: AcY+JPrOY/v4ADowSO+hBKxD7QX7TQ== > From: "Bassam Tabbara" <Bassam.Tabbara@synopsys.com> > Cc: <sv-ac@eda.org> > X-OriginalArrivalTime: 02 Mar 2006 18:13:25.0598 (UTC) FILETIME=[FFAE0FE0:01C63E24] > X-Virus-Status: Clean > Sender: owner-sv-ac@eda.org > > This is a multi-part message in MIME format. > > ------_=_NextPart_001_01C63E24.FFB64D8E > Content-Type: text/plain; > charset="us-ascii" > Content-Transfer-Encoding: quoted-printable > > Hi Mehdi, > =20 > On behalf of AC, can I request that you and EC look over the following > item, even take it over ? -- currently in AC's bin, assigned to me. > =20 > ** In my opinion, if not default clocking then it's illegal (unnamed > block) -- In fact, not sure now what purpose unnamed clocking block > serves (except for default), so worthy of a clarification in that > clause/section. > > Thx. > -Bassam. > =20 > =3D=3D=3D > **Issue 1325: Clarify references to items declared in unnamed clocking > blocks.=20 > =20 > A clocking block is not required to have a clocking_identifier (i.e., > name). If sequences or properties are declared within such a clocking > block, they must be instantiated outside the clocking block in assertion > statements in order to be evaluated. The LRM does not say how to > reference such declarations or whether such references are illegal. > > For example, is the following legal? > > module foo (...); > ... > clocking @(event); > property p; ... endproperty > endclocking > a1 : assert property (p); // <<<<<<<<<< > endmodule=20 > =3D=3D > > ------_=_NextPart_001_01C63E24.FFB64D8E > Content-Type: text/html; > charset="us-ascii" > Content-Transfer-Encoding: quoted-printable > > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> > <HTML><HEAD> > <META http-equiv=3DContent-Type content=3D"text/html; = > charset=3Dus-ascii"> > <META content=3D"MSHTML 6.00.2900.2802" name=3DGENERATOR></HEAD> > <BODY> > <DIV><FONT size=3D2> > <DIV><FONT face=3DArial><SPAN class=3D514110821-28022006>Hi=20 > Mehdi,</SPAN></FONT></DIV> > <DIV><FONT face=3DArial><SPAN = > class=3D514110821-28022006></SPAN></FONT> </DIV> > <DIV><SPAN class=3D514110821-28022006><FONT face=3DArial><SPAN=20 > class=3D285560418-02032006>On behalf of </SPAN>AC<SPAN=20 > class=3D285560418-02032006>, can I request that you and</SPAN><SPAN = > > class=3D285560418-02032006> </SPAN>EC <SPAN=20 > class=3D285560418-02032006>look over </SPAN>the following item, <SPAN=20 > class=3D285560418-02032006>even</SPAN> take <SPAN=20 > class=3D285560418-02032006>it </SPAN>over<SPAN = > class=3D285560418-02032006> ? --=20 > currently in AC's bin, assigned to me.</SPAN></FONT></SPAN></DIV> > <DIV><FONT face=3DArial><SPAN = > class=3D514110821-28022006></SPAN></FONT> </DIV> > <DIV><FONT><SPAN class=3D514110821-28022006><FONT face=3DArial><SPAN=20 > class=3D285560418-02032006>** </SPAN>I<SPAN class=3D285560418-02032006>n = > my opinion,=20 > </SPAN>if not default clocking then it's illegal (unnamed block)<SPAN=20 > class=3D285560418-02032006> -- </SPAN>In fact, not sure now what purpose = > unnamed=20 > clocking block serves (except <SPAN class=3D285560418-02032006>for=20 > </SPAN>default<SPAN class=3D285560418-02032006>), so worthy of a = > clarification in=20 > that clause/section</SPAN><SPAN class=3D285560418-02032006><FONT=20 > size=3D3>.</FONT></SPAN></FONT></SPAN></FONT></DIV> > <DIV><FONT><SPAN class=3D514110821-28022006><FONT = > face=3DArial></FONT><BR><SPAN=20 > class=3D285560418-02032006><FONT = > face=3DArial>Thx.</FONT></SPAN></SPAN></FONT></DIV> > <DIV><FONT face=3DArial><SPAN class=3D514110821-28022006><SPAN=20 > class=3D285560418-02032006>-Bassam.</SPAN></SPAN></FONT></DIV> > <DIV><FONT face=3DArial><SPAN = > class=3D514110821-28022006></SPAN></FONT> </DIV> > <DIV><FONT face=3DArial><SPAN = > class=3D514110821-28022006>=3D=3D=3D</SPAN></FONT></DIV> > <DIV><FONT face=3DArial><SPAN class=3D514110821-28022006>**Issue=20 > 1325: </SPAN>Clarify references to items declared in unnamed = > clocking=20 > blocks. </FONT></DIV> > <DIV><FONT face=3DArial></FONT> </DIV> > <DIV><FONT face=3DArial>A clocking block is not required to have a=20 > clocking_identifier (i.e., name). If sequences or properties are = > declared within=20 > such a clocking block, they must be instantiated outside the clocking = > block in=20 > assertion statements in order to be evaluated. The LRM does not say how = > to=20 > reference such declarations or whether such references are = > illegal.<BR><BR>For=20 > example, is the following legal?<BR><BR> module foo=20 > (...);<BR> ...<BR> cl= > ocking=20 > @(event);<BR> = > property=20 > p; ...=20 > endproperty<BR> endclocking<BR> &= > nbsp; a1=20 > : assert property (p);<SPAN class=3D514110821-28022006> //=20 > <<<<<<<<<<</SPAN><BR> endmodule = > > </FONT></DIV> > <DIV align=3Dleft><FONT size=3D+0><SPAN = > class=3D514110821-28022006></SPAN><FONT=20 > size=3D2><FONT face=3DArial>=3D<SPAN=20 > class=3D514110821-28022006>=3D</SPAN></FONT></FONT></FONT></FONT></DIV></= > DIV></BODY></HTML> > > ------_=_NextPart_001_01C63E24.FFB64D8E--Received on Thu Mar 2 12:57:04 2006
This archive was generated by hypermail 2.1.8 : Thu Mar 02 2006 - 12:58:13 PST