Go Back   Velocity Reviews > Newsgroups > VHDL
User Name
Password
Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply

VHDL - VHDL-200x Fixed_pkg Problems

 
Thread Tools Search this Thread
Old 01-26-2007, 06:47 AM   #1
Default VHDL-200x Fixed_pkg Problems


Hello all,

After downloading the most recent version of fixed_pkg_c and
encountering many problems with synthesis, I started reading forum
posts and learned that the additions16 package was stable for '+' '-'
and '*' for many

Synthesis failed both using ISE 8.2 and also with ISE7.1, using XST for
synthesis. I tried synthesizing the following code with chipscope
implementation at the end of this post. I believe this test code is
okay, as I've followed examples done by other, any ideas or suggestions
to what may be wrong?

Thanks,
Jamin



library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

library ieee_proposed;
use ieee_proposed.fixed_pkg.all;

entity test_fixed is

port (
in1, in2 : in std_logic_vector(9 downto 0); -- inputs
clk : in STD_LOGIC;
starter : out STD_LOGIC;
out1 : out std_logic_vector(10 downto 0)); -- output:

end entity test_fixed;

architecture description of test_fixed is

-------------
--COMPONENTS*
-------------
component vio
port
(
control : in std_logic_vector(35 downto 0);
async_out : out std_logic_vector(20 downto 0)
);
end component;

component icon
port
(
control0 : out std_logic_vector(35 downto 0);
control1 : out std_logic_vector(35 downto 0)
);
end component;

component ila
port
(
control : in std_logic_vector(35 downto 0);
clk : in std_logic;
data : in std_logic_vector(10 downto 0);
trig0 : in std_logic_vector(0 downto 0)
);
end component;


----------
--SIGNALS*
----------
signal c : sfixed(5 downto -5);
signal resized_c : std_logic_vector(10 downto 0);

--ICON, ILA, VIO signals*
signal clk1 : std_logic;
signal trig0, temp_start : std_logic_vector(0 downto 0);
signal control_0,control_1 : std_logic_vector(35 downto 0);
signal async_out : std_logic_vector(20 downto 0);

begin -- architecture description

starter <= async_out(0);
temp_start(0) <= async_out(0);

process(clk,temp_start)
variable a,b : sfixed(4 downto -5);
begin
if temp_start(0) = '1' then
if (clk'Event and clk='1')then

a(4 downto -5) := to_sfixed(async_out(20 downto 11),4,-5);
b(4 downto -5) := to_sfixed(async_out(20 downto 11),4,-5);

c <= a + b;
end if;
else
c <= (others => '0');
a := (others => '0');
b := (others => '0');
end if;
end process;

out1 <= to_slv(c);
resized_c <= to_slv(c);

-- analyzer stuff
clk1 <= clk;

--------------
--virtual IO*
--------------
i_vio : vio
port map
(
control => control_0,
async_out => async_out
);

----------------------------
--integrated logic analyzer*
----------------------------
i_ila : ila
port map
(
control => control_1,
clk => clk1,
data => resized_c,
trig0 => temp_start
);

------------------------
--integrated controller*
------------------------
i_icon : icon
port map
(
control0 => control_0,
control1 => control_1
);

end architecture description;



Jamin
  Reply With Quote
Old 01-26-2007, 06:57 PM   #2
Mike Treseler
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems
Jamin wrote:
> Hello all,
>
> After downloading the most recent version of fixed_pkg_c and
> encountering many problems with synthesis, I started reading forum
> posts and learned that the additions16 package was stable for '+' '-'



Consider posting a simple, component-free example
with the exact error messages
from simulation and synthesis,
and a link to the package under test.

-- Mike Treseler


Mike Treseler
  Reply With Quote
Old 01-26-2007, 08:36 PM   #3
Jamin
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems
Hi Mike,
The package tested :
http://www.vhdl.org/vhdl-200x/vhdl-2...tions_16.tar.Z


The error produced by ISE8.2:

FATAL_ERROR:Xstortability/export/Port_Main.h:127:1.16 - This
application has discovered an exceptional condition from which it
cannot recover. Process will terminate. To resolve this error, please
consult the Answers Database and other online resources at
http://support.xilinx.com. If you need further assistance, please open
a Webcase by clicking on the "WebCase" link at
http://support.xilinx.com


The error produced by ISE7.1:

ERROR:Xst:1548 - "E:/Users/Jamin/test_fixed/test_fixed.vhdl" line 17:
Negative range in type of signal <c> is not supported.
-->


The following code was used for synthesis. Thanks.


library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;

library ieee_proposed;
use ieee_proposed.fixed_pkg.all;

entity test_fixed is
Port (clk : in std_logic;
in1, in2 : in std_logic_vector(9 downto 0);
out1 : out std_logic_vector(10 downto 0));
end test_fixed;

architecture description of test_fixed is

signal temp_out : std_logic_vector(10 downto 0);
signal c : sfixed(5 downto -5);

begin
process(clk, temp_start)
variable a,b : sfixed(4 downto -5);
begin
if temp_start(0) = '1' then
if(clk'Event and clk = '1') then
a(4 downto -5) := to_sfixed(in1,4,-5);
b(4 downto -5) := to_sfixed(in2,4,-5);
c <= a + b;
end if;
else
c <= (others => '0');
a := (others => '0');
b := (others => '0');
end if;
end process;

temp_out <= to_slv(c);
out1 <= temp_out;
end description;



On Jan 26, 1:57 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
> Jamin wrote:
> > Hello all,

>
> > After downloading the most recent version of fixed_pkg_c and
> > encountering many problems with synthesis, I started reading forum
> > posts and learned that the additions16 package was stable for '+' '-'Consider posting a simple, component-free example

> with the exact error messages
> from simulation and synthesis,
> and a link to the package under test.
>
> -- Mike Treseler




Jamin
  Reply With Quote
Old 01-26-2007, 09:06 PM   #4
Jamin
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems

Hi Mike,
The package tested :
http://www.vhdl.org/vhdl-200x/vhdl-2...tions_16.tar.Z

The error produced by ISE8.2:


FATAL_ERROR:Xstortability/export/Port_Main.h:127:1.16 - This
application has discovered an exceptional condition from which it
cannot recover. Process will terminate. To resolve this error, please

consult the Answers Database and other online resources at
http://support.xilinx.com. If you need further assistance, please open
a Webcase by clicking on the "WebCase" link at
http://support.xilinx.com


The error produced by ISE7.1:


ERROR:Xst:1548 - "E:/Users/Jamin/test_fixed/test_fixed.vhdl" line 17:
Negative range in type of signal <c> is not supported.
-->


The following code was used for synthesis. Thanks.

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;

library ieee_proposed;
use ieee_proposed.fixed_pkg.all;

entity test_fixed is
Port (clk : in std_logic;
in1, in2 : in std_logic_vector(9 downto 0);
out1 : out std_logic_vector(10 downto 0));
end test_fixed;

architecture description of test_fixed is

signal temp_out : std_logic_vector(10 downto 0);
signal c : sfixed(5 downto -5);

begin
process(clk)
variable a,b : sfixed(4 downto -5);
begin
if(clk'Event and clk = '1') then
a(4 downto -5) := to_sfixed(in1,4,-5);
b(4 downto -5) := to_sfixed(in2,4,-5);
c <= a + b;
else
c <= (others => '0');
a := (others => '0');
b := (others => '0');
end if;
end process;

temp_out <= to_slv(c);
out1 <= temp_out;
end description;




On Jan 26, 1:57 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
> Jamin wrote:
> > Hello all,

>
> > After downloading the most recent version of fixed_pkg_c and
> > encountering many problems with synthesis, I started reading forum
> > posts and learned that the additions16 package was stable for '+' '-'Consider posting a simple, component-free example

> with the exact error messages
> from simulation and synthesis,
> and a link to the package under test.
>
> -- Mike Treseler




Jamin
  Reply With Quote
Old 01-26-2007, 09:22 PM   #5
Jamin
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems
Hi Mike,
The package tested :
http://www.vhdl.org/vhdl-200x/vhdl-2...tions_16.tar.Z


The error produced by ISE8.2:

Analyzing Entity <test_fixed> in library <work> (Architecture
<description>).
ERROR:Xst:827 - "C:/users/jamin/test_fixed/test_fixed.vhdl" line 20:
Signal c cannot be synthesized, bad synchronous description.
-->


The error produced by ISE7.1:

Analyzing Entity <test_fixed> (Architecture <description>).
ERROR:Xst:1548 - "E:/Users/Jamin/test_fixed/test_fixed.vhdl" line 17:
Negative range in type of signal <c> is not supported.
-->


The two ISE versions are running on different machines, the following
code was used for synthesis using XST. Thanks.

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;

library ieee_proposed;
use ieee_proposed.fixed_pkg.all;

entity test_fixed is
Port (clk : in std_logic;
in1, in2 : in std_logic_vector(9 downto 0);
out1 : out std_logic_vector(10 downto 0));
end test_fixed;

architecture description of test_fixed is

signal temp_out : std_logic_vector(10 downto 0);
signal c : sfixed(5 downto -5);

begin
process(clk)
variable a,b : sfixed(4 downto -5);
begin
if(clk'Event and clk = '1') then
a(4 downto -5) := to_sfixed(in1,4,-5);
b(4 downto -5) := to_sfixed(in2,4,-5);
c <= a + b;
else
c <= (others => '0');
a := (others => '0');
b := (others => '0');
end if;
end process;

temp_out <= to_slv(c);
out1 <= temp_out;
end description;



On Jan 26, 1:57 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
> Jamin wrote:
> > Hello all,

>
> > After downloading the most recent version of fixed_pkg_c and
> > encountering many problems with synthesis, I started reading forum
> > posts and learned that the additions16 package was stable for '+' '-'Consider posting a simple, component-free example

> with the exact error messages
> from simulation and synthesis,
> and a link to the package under test.
>
> -- Mike Treseler




Jamin
  Reply With Quote
Old 01-26-2007, 10:25 PM   #6
Jamin
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems
Hi Mike,
The package tested :
http://www.vhdl.org/vhdl-200x/vhdl-2...tions_16.tar.Z

The error produced by ISE8.2:

FATAL_ERROR:Xstortability/export/Port_Main.h:127:1.16 - This
application has discovered an exceptional condition from which it
cannot recover. Process will terminate. To resolve this error, please
consult the Answers Database and other online resources at
http://support.xilinx.com. If you need further assistance, please open
a Webcase by clicking on the "WebCase" link at
http://support.xilinx.com


The error produced by ISE7.1:

Analyzing Entity <test_fixed> (Architecture <description>).
ERROR:Xst:1548 - "E:/Users/Jamin/test_fixed/test_fixed.vhdl" line 17:
Negative range in type of signal <c> is not supported.
-->


The two ISE versions are running on different machines, the following
code was used for synthesis using XST. Thanks.

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;

library ieee_proposed;
use ieee_proposed.fixed_pkg.all;

entity test_fixed is
Port (clk : in std_logic;
in1, in2 : in std_logic_vector(9 downto 0);
out1 : out std_logic_vector(10 downto 0));
end test_fixed;

architecture description of test_fixed is

signal temp_out : std_logic_vector(10 downto 0);
signal c : sfixed(5 downto -5);

begin
process(clk)
variable a,b : sfixed(4 downto -5);
begin
if(clk'Event and clk = '1') then
a(4 downto -5) := to_sfixed(in1,4,-5);
b(4 downto -5) := to_sfixed(in2,4,-5);
c <= a + b;
else
c <= (others => '0');
a := (others => '0');
b := (others => '0');
end if;
end process;

temp_out <= to_slv(c);
out1 <= temp_out;
end description;


On Jan 26, 1:57 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
> Jamin wrote:
> > Hello all,

>
> > After downloading the most recent version of fixed_pkg_c and
> > encountering many problems with synthesis, I started reading forum
> > posts and learned that the additions16 package was stable for '+' '-'Consider posting a simple, component-free example

> with the exact error messages
> from simulation and synthesis,
> and a link to the package under test.
>
> -- Mike Treseler




Jamin
  Reply With Quote
Old 01-27-2007, 06:49 PM   #7
Andy
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems
Your test bench describes a circuit that adds two numbers on every
rising edge of the clock, and then on every falling edge ( clk'event
and not (clk = '1') ?) resets them and their sum to zero. While of
dubious value, this would require a double data rate (DDR) circuit to
implement, which is not available except as IO, and only on some
xilinx devices. There are methods of implementing DDR circuits with
SDR flops, but I doubt that is what you really wanted. Was there
supposed to be a reset (async or sync)?

Andy

On Jan 26, 4:25 pm, "Jamin" <Jamin.Is...@gmail.com> wrote:
> Hi Mike,
> The package tested :http://www.vhdl.org/vhdl-200x/vhdl-2...tions_16.tar.Z
>
> The error produced by ISE8.2:
>
> FATAL_ERROR:Xstortability/export/Port_Main.h:127:1.16 - This
> application has discovered an exceptional condition from which it
> cannot recover. Process will terminate. To resolve this error, please
> consult the Answers Database and other online resources athttp://support.xilinx.com. If you need further assistance, please open
> a Webcase by clicking on the "WebCase" link athttp://support.xilinx.com
>
> The error produced by ISE7.1:
>
> Analyzing Entity <test_fixed> (Architecture <description>).
> ERROR:Xst:1548 - "E:/Users/Jamin/test_fixed/test_fixed.vhdl" line 17:
> Negative range in type of signal <c> is not supported.
> -->
>
> The two ISE versions are running on different machines, the following
> code was used for synthesis using XST. Thanks.
>
> library IEEE;
> use IEEE.STD_LOGIC_1164.ALL;
> use IEEE.NUMERIC_STD.ALL;
>
> library ieee_proposed;
> use ieee_proposed.fixed_pkg.all;
>
> entity test_fixed is
> Port (clk : in std_logic;
> in1, in2 : in std_logic_vector(9 downto 0);
> out1 : out std_logic_vector(10 downto 0));
> end test_fixed;
>
> architecture description of test_fixed is
>
> signal temp_out : std_logic_vector(10 downto 0);
> signal c : sfixed(5 downto -5);
>
> begin
> process(clk)
> variable a,b : sfixed(4 downto -5);
> begin
> if(clk'Event and clk = '1') then
> a(4 downto -5) := to_sfixed(in1,4,-5);
> b(4 downto -5) := to_sfixed(in2,4,-5);
> c <= a + b;
> else
> c <= (others => '0');
> a := (others => '0');
> b := (others => '0');
> end if;
> end process;
>
> temp_out <= to_slv(c);
> out1 <= temp_out;
> end description;
>
> On Jan 26, 1:57 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
>
> > Jamin wrote:
> > > Hello all,

>
> > > After downloading the most recent version of fixed_pkg_c and
> > > encountering many problems with synthesis, I started reading forum
> > > posts and learned that the additions16 package was stable for '+' '-'Consider posting a simple, component-free example

> > with the exact error messages
> > from simulation and synthesis,
> > and a link to the package under test.

>
> > -- Mike Treseler




Andy
  Reply With Quote
Old 01-29-2007, 05:15 PM   #8
Jamin
 
Posts: n/a
Default Re: VHDL-200x Fixed_pkg Problems
I was looking around on the forum and I found this, I guess it is a
problem with XST. Are there anyways around this now?

David Bishop
View profile
More options Nov 20 2004, 7:05 pm
Newsgroups: comp.lang.vhdl
From: David Bishop <dbis...@vhdl.org>
Date: Sun, 21 Nov 2004 00:05:55 GMT
Local: Sat, Nov 20 2004 7:05 pm
Subject: Re: VHDL-200X-FT Packages and Xilinx XST Error
Reply to author | Forward | Print | Individual message | Show original
|
Report this message | Find messages by this author

Ivan C. wrote:
> When trying to synthesize even
> the simplest circuit using Xilinx XST (from 6.3.02i) I get the
> following error:


> Analyzing Entity <fp32_test> (Architecture <simple>).
> ERROR:Xst:1548 - C:/MYModels/simple_fp_test_synthesis/simple_test.vhd
> line 14: Negative range in type of signal <A> is not supported.
> -->


I already told Xilinx about this. XST can not deal with a negative
index in Synthesis.

On the other side of the coin, Synopsys (Presto compiler), Exemplar
(Leonardo Spectrum), Synplicity, Cadence buildgates, and Altera
synthesis can.

> The Xilinx help page isn't very helpful other than saying that it is
> correct (search for: Xilinx answer #18974)


This is typical. XST is a REALLY cheap synthesis tool. I sent this
one into them over a year ago and it still isn't fixed.

> Note that to get the packages to work I had to change the FP related
> ieee.fp* to work.fp*. BTW, all the FP packages pass the XST
> compilation stage.


> If you need more information please let me know. I'm pretty sure
> someone has run into this before and I'm doing something silly


Thanks for the test. Like I said, unless we can get Xilinx off it's
duff XST is a lost cause with these packages.

On Jan 27, 1:49 pm, "Andy" <jonesa...@comcast.net> wrote:
> Your test bench describes a circuit that adds two numbers on every
> rising edge of the clock, and then on every falling edge ( clk'event
> and not (clk = '1') ?) resets them and their sum to zero. While of
> dubious value, this would require a double data rate (DDR) circuit to
> implement, which is not available except as IO, and only on some
> xilinx devices. There are methods of implementing DDR circuits with
> SDR flops, but I doubt that is what you really wanted. Was there
> supposed to be a reset (async or sync)?
>
> Andy
>
> On Jan 26, 4:25 pm, "Jamin" <Jamin.Is...@gmail.com> wrote:
>
> > Hi Mike,
> > The package tested :http://www.vhdl.org/vhdl-200x/vhdl-2...tions_16.tar.Z

>
> > The error produced by ISE8.2:

>
> > FATAL_ERROR:Xstortability/export/Port_Main.h:127:1.16 - This
> > application has discovered an exceptional condition from which it
> > cannot recover. Process will terminate. To resolve this error, please
> > consult the Answers Database and other online resources athttp://support.xilinx.com. If you need further assistance, please open
> > a Webcase by clicking on the "WebCase" link athttp://support.xilinx.com

>
> > The error produced by ISE7.1:

>
> > Analyzing Entity <test_fixed> (Architecture <description>).
> > ERROR:Xst:1548 - "E:/Users/Jamin/test_fixed/test_fixed.vhdl" line 17:
> > Negative range in type of signal <c> is not supported.
> > -->

>
> > The two ISE versions are running on different machines, the following
> > code was used for synthesis using XST. Thanks.

>
> > library IEEE;
> > use IEEE.STD_LOGIC_1164.ALL;
> > use IEEE.NUMERIC_STD.ALL;

>
> > library ieee_proposed;
> > use ieee_proposed.fixed_pkg.all;

>
> > entity test_fixed is
> > Port (clk : in std_logic;
> > in1, in2 : in std_logic_vector(9 downto 0);
> > out1 : out std_logic_vector(10 downto 0));
> > end test_fixed;

>
> > architecture description of test_fixed is

>
> > signal temp_out : std_logic_vector(10 downto 0);
> > signal c : sfixed(5 downto -5);

>
> > begin
> > process(clk)
> > variable a,b : sfixed(4 downto -5);
> > begin
> > if(clk'Event and clk = '1') then
> > a(4 downto -5) := to_sfixed(in1,4,-5);
> > b(4 downto -5) := to_sfixed(in2,4,-5);
> > c <= a + b;
> > else
> > c <= (others => '0');
> > a := (others => '0');
> > b := (others => '0');
> > end if;
> > end process;

>
> > temp_out <= to_slv(c);
> > out1 <= temp_out;
> > end description;

>
> > On Jan 26, 1:57 pm, Mike Treseler <mike_trese...@comcast.net> wrote:

>
> > > Jamin wrote:
> > > > Hello all,

>
> > > > After downloading the most recent version of fixed_pkg_c and
> > > > encountering many problems with synthesis, I started reading forum
> > > > posts and learned that the additions16 package was stable for '+' '-'Consider posting a simple, component-free example
> > > with the exact error messages
> > > from simulation and synthesis,
> > > and a link to the package under test.

>
> > > -- Mike Treseler




Jamin
  Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
How to execute an external software from VHDL? And how to interface VHDL with JAVA? becool_nikks Software 0 03-06-2009 07:08 PM
Help on auto conversion from Matlab to vhdl on filter design hardheart Hardware 0 12-07-2007 09:19 AM
Re: Pioneer DVR-105 and Nero Problems grams@oldtown.com DVD Video 1 08-12-2003 04:17 AM
Re: Pioneer DVR-105 and Nero Problems Flossie DVD Video 0 08-07-2003 02:25 PM
Re: Pioneer DVR-105 and Nero Problems CAM DVD Video 0 08-07-2003 02:30 AM




SEO by vBSEO 3.3.2 ©2009, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46