VHDL Issue Number: 0051 Classification: Language Clarification Language Version: VHDL-87 Summary: May resolution function parameters be signals ? Related Issues: none Relevant LRM Sections: 2.4 Key Words and Phrases: Resolution Function, Parameters, Signals, Drivers, Signal Attributes. Current Status: Aproved by the VASG 1076-1993 Disposition: Closed (All Issues Completely Addressed) Disposition Rationale: LRM is clear now. Superseded By: N/A ----------------------- Date Submitted: Author of Submission: Doug Dunlop Author's Affiliation: Intermetrics Author's Post Address: Author's Phone Number: Author's Fax Number: Author's Net Address: ----------------------- Date Analyzed: 1989/06/24 Author of Analysis: A. G. Stanculescu Revision Number: $Revision: 1.10 $ Date Last Revised: $Date: 1995/05/13 19:34:42 $ Description of Problem ---------------------- May the parameter of a resolution function be a signal? Proposed Resolution ------------------- The parameter of a resolution function may not be a signal. Such an error should be reported at the time the offending function is referenced as a resolution function. VASG-ISAC Analysis & Rationale ------------------------------ The actual parameter of a resolution function is an array of elements "somehow" corresponding to signals and it is surprising to some VHDL users that the elements of the array are not signals, but merely values of signals. The implication is that the body of the resolution function may not reference attributes of the array element, nor of the array itself, that are predefined for signal parameters. The reason for this situation is that signal sources are not necessarily signals, but could be drivers as well. Predefined attributes are not defined for drivers and VHDL would need additional syntactic constructs if it were to support references to driver attributes. Indeed, LRM &2.4 specifies that "A resolution function is a function that defines how the values of multiple sources of a given signal are to be resolved into a single value for that signal." This implies that only the values of the sources are provided as inputs of the resolution function and not signals or drivers. Otherwise, the LRM would have omitted "the values of" and would have defined resolution functions as "functions that define how multiple sources of a given signal are to be resolved into a single value for that signal". VASG-ISAC Recommendation for IEEE Std 1076-1987 ----------------------------------------------- The following paragraph should be appended as a note to section 2.4: The parameter of a resolution function may not be a signal. Such an error should be reported at the time the offending function is referenced as a resolution function. VASG-ISAC Recommendation for Future Revisions --------------------------------------------- Consider the enhancement of resolution functions with the ability to reference the resolved (target) signal, as well as the sources of the target signal.