On Apr 4, 2012, at 6:06 AM, René Doß wrote: > I have a wish. More information on warning. > I get the Information of the library. For me it is important which signal in > my code is in trouble. I need a signal name in my code. Can you also print > out the higher instance name? I would extremely help.
You'd find that the error messages are actually specified in numeric_std_body.vhdl. numeric_std was originally released as part of the 1076.2 effort in 1997 and is incorporated in IEEE Std 1076-2008 (see Annex A, A.2.4 Standard synthesis packages where the packages can be downloaded from http://standards.ieee.org/downloads/1076/1076-2008/ (see http://standards.ieee.org/downloads/1076/1076-2008/1076-2008_machine-readable.zip)). There are also copies released under 1076.2 (see http://standards.ieee.org/downloads/1076/1076.2-1996/ for individual VHDL files), which appears to be where Tristan procured them. These are all copyright by the IEEE and distributed conditionally. They do have authority to be modified. See numeric_std.vhdl from the 2008 distribution for example: -- Note : This package may be modified to include additional data -- : required by tools, but it must in no way change the -- : external interfaces or simulation behavior of the -- : description. It is permissible to add comments and/or -- : attributes to the package declarations, but not to change -- : or delete any original lines of the package declaration. -- : The package body may be changed only in accordance with -- : the terms of Clause 16 of this standard. While the numeric_std found in the 1076.2 distribution shows: -- This package may be modified to include additional data required by tools, -- but it must in no way change the external interfaces or simulation behavior -- of the description. It is permissible to add comments and/or attributes to -- the package declarations, but not to change or delete any original lines of -- the package declaration. The package body may be changed only in accordance -- with the terms of 7.1 and 7.2 of this standard. We might notice that the clause number 16 refers to the IEEE Std 1076-2008, wherein 16.8.5.2 Allowable modifications specifies what changes can be made to the included IEEE packages. 7.1 and 7.2 reflect IEEE Std 1076.3-1997 and 7.1 gives permission: The text of messages associated with assertions may differ in the rewritten subprogram. Although there is a requirement that the NO_WARNING assertion mechanism remain in effect. The same restrictions hold true in IEEE Std 1076-2008. As a practical point the information you are after can be found by using IEEE Std 1076-1993 Section 14 Predefined language environment,, 14.1 Predefined attributes. See E'SIMPLE_NAME, E'INSTANCE_NAME and E'PATH_NAME. Named entities specified in 5.1 include entity, architecture, configuration, procedure, function, package, type, subtype, constant, signal, variable, component, label, literal, units, group and file. Without checking to determine ghdl implements these two predefined attributes compliantly you could note there is nothing stoping the aficionado from making changes to numeric_std_body.vhdl. The ghdl reference 3.12 IEEE math packages (see http://ghdl.free.fr/ghdl/IEEE-math-packages.html) gives an indication of what would be required to replace the numeric_std package body. Finding the IEEE library install directory can be be distribution dependent and can require root access in some cases. Note that downloading the source requires that you have lawful copies of the IEEE standards. The source for some IEEE standard packages including numeric_std is distributed with ghdl source. Essentially the functionality you are after can be implemented in VHDL and is within your grasp assuming the attributes are functional and compliant. Come up with something clean and functional and I'd imagine Tristan would be more than happy to incorporate message changes into ghdl's version. There are IIR objects for the attributes in ghdl, they are closely related and at least one of them is required for VITAL. I'd expect they work. They were added in ghdl 0.7 (see http://ghdl.free.fr/NEWS) and were introduced in VHDL-93 just for the purposes you envision. You can find examples using the attributes by googling say for " "INSTANCE_NAME" "SIMPLE_NAME" VHDL ".
_______________________________________________ Ghdl-discuss mailing list Ghdl-discuss@gna.org https://mail.gna.org/listinfo/ghdl-discuss