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