Article View: comp.lang.vhdl
Article #415Re: type conversion and configuration
From: Pierre Ragon Cao/int 7317
Date: Wed, 06 Jan 1993 07:24
Date: Wed, 06 Jan 1993 07:24
111 lines
5292 bytes
5292 bytes
Since this topic has raised up interest i include all answers i
received.
As you will notice there are various interpretations of the LRM.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
From: bgriffin@wv.MENTORG.COM (Brian Griffin)
------------------------------------------------------
There is an ambiguity here but it is not with the index expression it self (as
the error message would seem to imply) but rather with the function call within
the whole expression. There are two possible to_x01 functions that would work
here.
FUNCTION To_X01 ( b : BIT_VECTOR ) RETURN std_logic_vector;
FUNCTION To_X01 ( b : BIT_VECTOR ) RETURN std_ulogic_vector;
The compiler does not have enough information to determine which function to
call. Our compiler complains that:
// [Line: 6] Error: Ambiguous expression. Unable to resolve overloading.
// One conflicting operation is:
// Type is std_ulogic.
// The second conflicting operation is:
// Type is std_ulogic.
// (from: Analysis/System-1076_semantic 0138)
// [Line: 8] Error: Ambiguous expression. Unable to resolve overloading.
// One conflicting operation is:
// Type is std_ulogic.
// The second conflicting operation is:
// Type is std_ulogic.
// (from: Analysis/System-1076_semantic 0138)
Granted these error messages are no more clear then what you got with the other
analyzer, but the clue here is "overloading". Overloading is only done with
subprograms and type literals. Both of these functions return the same base
type but different subtypes. The expression requires this base type but does
not disambiguate the SUBtype.
I hope this helps.
>-EXAMPLE 2
>**********
I don't have an answer to your second question. Sorry.
USE STD.DISCLAIMER.ALL;
-- __
-- bgriffin@mentorg.com /__) . __
-- brian_griffin@mentorg.com /___)_/-,_/_(_(_/V/_
-- /
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
FROM : VANTAGE
-------------------------------------ooOoo-------------------------------------
Vantage(Europe)
Grove Court Business Centre phone +44 753 516464
Hatfield Road, answer machine +44 753 572450
Slough, fax +44 753 571639
Berkshire, SL1 1QU e-mail johnw@vntguk
UK customer support support@vntguk
------ooOoo------
100% IEEE-1076 VHDL Source Code Debugger Concurrent Compiler Network License
Integrated VHDL Schematics/Simulator Read & Write Mentor/Valid/EDIF Schematics
Logic Automation & ASIC libraries Hardware Modeller Gate Level Acceleration
-------------------------------------ooOoo-------------------------------------
Dear Pierre,
I saw your email on comp.lang.vhdl about the dependencies created by
reanalyzing an architecture within a design hierarchy.
I believe your understanding is correct except that the configuration
'conf68302_0' *IS* potentially affected by the change to the architecture.
In your example, you have part of the component binding specified
within the architecture, and part within the configuration. There are many
rules controlling the actions for binding (i.e. checking that components
are bound uniquely). In this case, the configuration is potentially
affected by the change to the architecture because conflicting binding
indications may have been added to the architecture that would affect the
configuration.
Therefore, if the architecture is reanalyzed, the configuration has to
be looked at again.
As an experiment, before you analyze the architecture, add the follow-
ing line to the architecture declarative part :-
FOR c2 : framegen USE ENTITY WORK.framegen(cpu68302);
After reanalyzing the architecture, you will now find that the configura-
tion cannot be successfully analyzed because of non-unique binding indica-
tions. This is an example of a change to the architecture potentially
affecting the configuration - hence the requirements for reanalysis.
I would be interested to hear if there are different points of view
from other VHDL users. Perhaps you could post this onto comp.lang.vhdl for
other people to comment on.
Best Regards ( and Happy New Year!)
John Wilson
Technical Details
Message-ID:
<1993Jan6.072414.22817@phcomgw.seri.philips.nl>Path:
arc1-ca.pugleaf.net!sparky!uunet!mcsun!sun4nl!relay.philips.nl!cc03!ragonReferences:
<1992Dec30.130712.5464@phcomgw.seri.philips.nl>Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.vhdl Path: arc1-ca.pugleaf.net!sparky!uunet!mcsun!sun4nl!relay.philips.nl!cc03!ragon From: ragon@seri.philips.nl (Pierre Ragon Cao/int 7317) Subject: Re: type conversion and configuration Message-ID: <1993Jan6.072414.22817@phcomgw.seri.philips.nl> Originator: news@phcoms.seri.philips.nl Sender: news@phcomgw.seri.philips.nl Organization: SERI-CEN Network Services, Philips C&P, Eindhoven, The Netherlands X-Newsreader: Tin 1.1 PL5 References: <1992Dec30.130712.5464@phcomgw.seri.philips.nl> Date: Wed, 6 Jan 1993 07:24:14 GMT Lines: 112