Max
09-09-2003, 03:59 PM
On Tue, 09 Sep 2003 16:52:11 +0200
"Amontec Team, Laurent Gauch" <[email protected]>
wrote:
> Max wrote:
> > I write the following decoder:
> >
> > ce <= "0001" when addr = "0--" else
> > "0010" when addr = "10-" else
> > "0100" when addr = "110" else
> > "1000";
> >
> > it doesn't work.
> >
> > Then I tried this one:
> >
> > ce <= "0001" when addr(2) = '0' else
> > "0010" when addr(2 downto 1) = "10" else
> > "0100" when addr = "110" else
> > "1000";
> >
> > this work.
> >
> > why the first version doesn't work?
> > the symbol '-' means "don't care", isn't it? So why it is wrong?
> > I prefer something like the first version since is less cryptic.
> >
> > thanks
> I am interested by this issue. Which compiler are you using?
I use Xilinx Web Pack 5.2.
both versions compile fine without errors or warning but when I run the
first model in ModelSim 5.6 I don't obtain what I'm expecting: ce is
always "1000" except when addr is "110".
thanks
"Amontec Team, Laurent Gauch" <[email protected]>
wrote:
> Max wrote:
> > I write the following decoder:
> >
> > ce <= "0001" when addr = "0--" else
> > "0010" when addr = "10-" else
> > "0100" when addr = "110" else
> > "1000";
> >
> > it doesn't work.
> >
> > Then I tried this one:
> >
> > ce <= "0001" when addr(2) = '0' else
> > "0010" when addr(2 downto 1) = "10" else
> > "0100" when addr = "110" else
> > "1000";
> >
> > this work.
> >
> > why the first version doesn't work?
> > the symbol '-' means "don't care", isn't it? So why it is wrong?
> > I prefer something like the first version since is less cryptic.
> >
> > thanks
> I am interested by this issue. Which compiler are you using?
I use Xilinx Web Pack 5.2.
both versions compile fine without errors or warning but when I run the
first model in ModelSim 5.6 I don't obtain what I'm expecting: ce is
always "1000" except when addr is "110".
thanks