Re: ISAC: analyzed: IR 2086 Incorrect description of type mark in disconnection apecification

From: Lance Thompson <lancet_at_.....>
Date: Tue Mar 14 2006 - 12:18:24 PST
I only had one thought as I read through this what about indexed names?  I 
think I've answered my own question, but let me walk through it here...

First, I noticed that the first rule talks about "a declared signal or 
slice thereof."  The first rule made me question whether or not I could 
use an indexed name.

Next, I looked at the third rule about "an element of an array subelement 
of a composite signal."  If I have a signal S of type std_logic_vector(0 
to 3), S is the composite signal.  Is S an array subelement of itself, 
thus permiting a disconnection specification for s(3):std_logic?  Or do we 
need to describe this a different way?

By the way, while we do use guarded signals, we always (as far as I know) 
use the default disconnection specification.

Lance Thompson
Senior Engineer
Engineering & Technology Services




Chuck Swart <cswart@model.com> 
Sent by: owner-isac@eda.org
03/13/2006 05:50 PM

To
isac@eda.org
cc

Subject
ISAC: analyzed: IR  2086 Incorrect description of type mark in 
disconnection apecification






We'll discuss this at Thursday's meeting.

Lance: could you  or someone from IBM review this, since
your company uses disconnection specs?

Chuck Swart
-------------BEGINNING OF IR----------------

VHDL Issue Number:        2086

Language_Version          VHDL-2002
Classification            Language Definition Problem
Summary                   Incorrect description of type mark in 
disconnection specification
Relevant_LRM_Sections     5.3 Disconnection specification, page 85
Related_Issues 
Key_Words_and_Phrases     disconnection specification, type mark
Authors_Name              Peter Ashenden
Authors_Phone_Number      +61 414 709 106
Authors_Fax_Number 
Authors_Email_Address     peter@ashenden.com.au
Authors_Affiliation       Ashenden Designs
Authors_Address1 
Authors_Address2 
Authors_Address3 

Current Status:           Analyzed

Superseded By:

------------------------
Date Submitted:           8 February 2006
Date Analyzed:            13 March 2006
Author of Analysis:       Chuck Swart
Revision Number:          1
Date Last Revised:        13 March 2006

Description of Problem
----------------------

In the last paragraph of page 85, the first sentence reads:
 
      If the guarded signal is a declared signal or a slice thereof,
      the type mark must be the same as the type mark indicated in the
      guarded signal specification (see 4.3.1.2).
 
    Since the paragraph describes a guarded signal specification, it
appears that the first type mark referred to in the sentence is the
type mark in the guarded signal specification. Thus, the sentence
appears to state, tautologically, that the type mark must be the same
as itself.
 
    Subsequent sentences in the paragraph state that, for other forms
of signal name, the type mark must be the same as the type mark in a
declaration of the signal. Thus, it would appear that the first
sentence should say that the type mark be the same as the type mark in
the declaration of the signal, not the same as itself.
 
    A further problem is that the paragraph only deals with a declared
signal, a slice of a declared signal, an element of a declared array
signal, and an element of a declared record signal. It does not deal
with other members of a composite signal.

Proposed Resolution
-------------------

Amend the tautological description to refer to the type mark of the
subtype indication in the signal declaration.
 
    Revise the case analysis to cover the cases:
 
    - A declared signal or a slice of a declared signal: the type mark
    must be the same as that in the signal's declaration;
 
    - A slice of an array subelement of a composite signal: the type
      mark must denote the same subtype as the array element's
      subtype;
 
    - An element of an array subelement of a composite signal: the
      type mark must denote the same subtype as the element subtype
      indication in the declaration of the array type;
 
    - An element of a record subelement of a composite signal: the
      type mark must denote the same subtype as the element subtype
      indication in the declaration of the record type.

VASG-ISAC Analysis & Rationale
------------------------------

The submitter is essentially correct. However, the LRM seems to impose a 
more stringent requirement
involving type mark matching instead of subtype matching. So the wording 
in the proposed solution
should be changed as indicated below. 
In addition, for consistency, on page 86, the first sentence should
also be changed in a similar manner (indicated below). 

VASG-ISAC Recommendation for IEEE Std 1076-2002
-----------------------------------------------

Interpret the LRM as if the Recommendation for Future
Revisions were in effect.

VASG-ISAC Recommendation for Future Revisions
---------------------------------------------

Clause 5.3 Disconnection specification

The paragraph beginning: 

   "If the guarded signal is a declared signal or a slice thereof..."

Should read:

    "If the guarded signal specification denotes a declared signal or
    a slice thereof then the type mark in the specification must be
    the same as the type mark in the subtype indication of the guarded
    signal declaration (see 4.3.1.2).

    If the guarded signal specification denotes a slice of an array
    subelement of a composite signal then the type mark must be the
    same as the type mark of the element subtype indication in the
    declaration of the array type.

    If the guarded signal specification denotes an element of an array
    subelement of a composite signal then the type mark must be the
    same as the type mark of the element subtype indication in the
    declaration of the array type.

    If the guarded signal specification denotes a record element of a
    composite signal then the type mark must be the same as the type
    mark of the element subtype indication in the declaration of the
    record type.

    Each signal must be declared in the declarative part enclosing the
    disconnection specification."

The paragraph beginning:

    "Subject to the aforementioned rules, a disconnection
    specification applies to the drivers of a guarded signal S of
    whose type mark denotes the type T..."

Should read:

    "Subject to the aforementioned rules, a disconnection
    specification applies to the drivers of a guarded signal S
    specified with type mark T..."




-------------END OF IR----------------
Received on Tue Mar 14 12:18:35 2006

This archive was generated by hypermail 2.1.8 : Tue Mar 14 2006 - 12:18:37 PST