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

Reply

VHDL - Xilinx floating-pt IP not working?

 
Thread Tools Search this Thread
Old 01-28-2007, 04:24 PM   #1
Default Xilinx floating-pt IP not working?


I am trying to use the Xilinx floating-point IP, provided as part of the
ISE Foundation V8.1 to produce an entity that determines the smallest
element from an array of floating-point numbers. The entity uses the
Xilinx less-than comparator, which takes two inputs (a and b) and
returns a '1' if a < b or '0' otherwise. Unfortunately, I am getting
some strange (and incorrect) results.

This may be down to an error in the IP, or an error in my VHDL - since I
am quite new to this area. The code is shown below - if anybody can see
the flaw could they please advise?

Many thanks!

=== SNIP ========================
entity float_min_array is
generic(len : integer);
port (
clk : in std_logic;
start : in std_logic := '0';
floats : in FLOAT_ARRAY;
index : out integer := -1;
finished : out std_logic := '0');
end float_min_array;

architecture Behavioral of float_min_array is

signal a: std_logic_VECTOR(63 downto 0);
signal b: std_logic_VECTOR(63 downto 0);
signal operation_nd: std_logic;
signal operation_rfd: std_logic;
signal result: std_logic_VECTOR(0 downto 0);
signal rdy: std_logic;

signal dummy : integer;

-- the Xilinx floating point comparator
component flessthan IS
port (
a: IN std_logic_VECTOR(63 downto 0);
b: IN std_logic_VECTOR(63 downto 0);
operation_nd: IN std_logic;
operation_rfd: OUT std_logic;
clk: IN std_logic;
result: OUT std_logic_VECTOR(0 downto 0);
rdy: OUT std_logic);
END component flessthan;

begin

process (clk)
type entity_state is (wait_rfd, is_rfd, wait_rdy, done);

variable state : entity_state := wait_rfd;
variable lowest, i : integer := floats'LOW(1);

begin
if rising_edge(clk) then
case state is
when wait_rfd =>
if start = '1' and
operation_rfd = '1' then
lowest := i;
index <= lowest;
state := is_rfd;
end if;
when is_rfd =>
if (i < floats'LENGTH) then
assert operation_rfd='1'
report "Not ready for data!";
i := i + 1;
dummy <= i; -- for debugging only!
a <= floats(i);
b <= floats(lowest);
operation_nd <= '1';
state := wait_rdy;
else
state := done;
end if;
when wait_rdy =>
if rdy = '1' then
if result(0) = '1' then
lowest := i;
index <= lowest;
end if;

-- operation_nd <= '0';
-- result(0) <= '0';
state := is_rfd;
end if;
when done =>
finished <= '1';
end case;
end if;
end process;

FM:flessthan PORT MAP(a,b,operation_nd,operation_rfd,clk,result,rdy) ;

end Behavioral;

=== SNIP ========================


Anon Anon
  Reply With Quote
Old 01-28-2007, 05:09 PM   #2
Anon Anon
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
Anon Anon wrote:
> I am trying to use the Xilinx floating-point IP, provided as part of the
> ISE Foundation V8.1 to produce an entity that determines the smallest
> element from an array of floating-point numbers. The entity uses the
> Xilinx less-than comparator, which takes two inputs (a and b) and
> returns a '1' if a < b or '0' otherwise. Unfortunately, I am getting
> some strange (and incorrect) results.
>
> This may be down to an error in the IP, or an error in my VHDL - since I
> am quite new to this area. The code is shown below - if anybody can see
> the flaw could they please advise?
>
> Many thanks!
>
> === SNIP ========================
> entity float_min_array is
> generic(len : integer);
> port (
> clk : in std_logic;
> start : in std_logic := '0';
> floats : in FLOAT_ARRAY;
> index : out integer := -1;
> finished : out std_logic := '0');
> end float_min_array;
>
> architecture Behavioral of float_min_array is
>
> signal a: std_logic_VECTOR(63 downto 0);
> signal b: std_logic_VECTOR(63 downto 0);
> signal operation_nd: std_logic;
> signal operation_rfd: std_logic;
> signal result: std_logic_VECTOR(0 downto 0);
> signal rdy: std_logic;
>
> signal dummy : integer;
>
> -- the Xilinx floating point comparator
> component flessthan IS
> port (
> a: IN std_logic_VECTOR(63 downto 0);
> b: IN std_logic_VECTOR(63 downto 0);
> operation_nd: IN std_logic;
> operation_rfd: OUT std_logic;
> clk: IN std_logic;
> result: OUT std_logic_VECTOR(0 downto 0);
> rdy: OUT std_logic);
> END component flessthan;
>
> begin
>
> process (clk)
> type entity_state is (wait_rfd, is_rfd, wait_rdy, done);
>
> variable state : entity_state := wait_rfd;
> variable lowest, i : integer := floats'LOW(1);
>
> begin
> if rising_edge(clk) then
> case state is
> when wait_rfd =>
> if start = '1' and
> operation_rfd = '1' then
> lowest := i;
> index <= lowest;
> state := is_rfd;
> end if;
> when is_rfd =>
> if (i < floats'LENGTH) then
> assert operation_rfd='1'
> report "Not ready for data!";
> i := i + 1;
> dummy <= i; -- for debugging only!
> a <= floats(i);
> b <= floats(lowest);
> operation_nd <= '1';
> state := wait_rdy;
> else
> state := done;
> end if;
> when wait_rdy =>
> if rdy = '1' then
> if result(0) = '1' then
> lowest := i;
> index <= lowest;
> end if;
>
> state := is_rfd;
> end if;
> when done =>
> finished <= '1';
> end case;
> end if;
> end process;
>
> FM:flessthan PORT MAP(a,b,operation_nd,operation_rfd,clk,result,rdy) ;
>
> end Behavioral;
>
> === SNIP = = = = = = = = = = = = = =

I spotted a missing type declaration (from a separate package):

subtype MY_FLOAT is std_logic_vector(63 downto 0);
type FLOAT_ARRAY is array(NATURAL RANGE <>) of MY_FLOAT;

> === SNIP-SNIP ========================


I have also removed the two commented-out lines from my first posting,
which were part of an unsuccessful attempt to resolve my problems.


Anon Anon
  Reply With Quote
Old 01-29-2007, 09:19 AM   #3
walke
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
Please could you tell me why are you driving the core output to zero
when in wait_rdy state? (i.e. why is the line result(0) <= '0'
present?)


On Jan 28, 5:09 pm, Anon Anon <a...@anon.net> wrote:
> Anon Anon wrote:
> > I am trying to use the Xilinxfloating-pointIP, provided as part of the
> > ISE Foundation V8.1 to produce an entity that determines the smallest
> > element from an array offloating-pointnumbers. The entity uses the
> > Xilinx less-than comparator, which takes two inputs (a and b) and
> > returns a '1' if a < b or '0' otherwise. Unfortunately, I am getting
> > some strange (and incorrect) results.

>
> > This may be down to an error in the IP, or an error in my VHDL - since I
> > am quite new to this area. The code is shown below - if anybody can see
> > the flaw could they please advise?

>
> > Many thanks!

>
> > === SNIP ========================
> > entity float_min_array is
> > generic(len : integer);
> > port (
> > clk : in std_logic;
> > start : in std_logic := '0';
> > floats : in FLOAT_ARRAY;
> > index : out integer := -1;
> > finished : out std_logic := '0');
> > end float_min_array;

>
> > architecture Behavioral of float_min_array is

>
> > signal a: std_logic_VECTOR(63 downto 0);
> > signal b: std_logic_VECTOR(63 downto 0);
> > signal operation_nd: std_logic;
> > signal operation_rfd: std_logic;
> > signal result: std_logic_VECTOR(0 downto 0);
> > signal rdy: std_logic;

>
> > signal dummy : integer;

>
> > -- the Xilinxfloating pointcomparator
> > component flessthan IS
> > port (
> > a: IN std_logic_VECTOR(63 downto 0);
> > b: IN std_logic_VECTOR(63 downto 0);
> > operation_nd: IN std_logic;
> > operation_rfd: OUT std_logic;
> > clk: IN std_logic;
> > result: OUT std_logic_VECTOR(0 downto 0);
> > rdy: OUT std_logic);
> > END component flessthan;

>
> > begin

>
> > process (clk)
> > type entity_state is (wait_rfd, is_rfd, wait_rdy, done);

>
> > variable state : entity_state := wait_rfd;
> > variable lowest, i : integer := floats'LOW(1);

>
> > begin
> > if rising_edge(clk) then
> > case state is
> > when wait_rfd =>
> > if start = '1' and
> > operation_rfd = '1' then
> > lowest := i;
> > index <= lowest;
> > state := is_rfd;
> > end if;
> > when is_rfd =>
> > if (i < floats'LENGTH) then
> > assert operation_rfd='1'
> > report "Not ready for data!";
> > i := i + 1;
> > dummy <= i; -- for debugging only!
> > a <= floats(i);
> > b <= floats(lowest);
> > operation_nd <= '1';
> > state := wait_rdy;
> > else
> > state := done;
> > end if;
> > when wait_rdy =>
> > if rdy = '1' then
> > if result(0) = '1' then
> > lowest := i;
> > index <= lowest;
> > end if;

>
> > state := is_rfd;
> > end if;
> > when done =>
> > finished <= '1';
> > end case;
> > end if;
> > end process;

>
> > FM:flessthan PORT MAP(a,b,operation_nd,operation_rfd,clk,result,rdy) ;

>
> > end Behavioral;

>
> > === SNIP = = = = = = = = = = = = = =I spotted a missing type declaration (from a separate package):

>
> subtype MY_FLOAT is std_logic_vector(63 downto 0);
> type FLOAT_ARRAY is array(NATURAL RANGE <>) of MY_FLOAT;
>
> > === SNIP-SNIP ========================

>
> I have also removed the two commented-out lines from my first posting,
> which were part of an unsuccessful attempt to resolve my problems.- Hide quoted text -- Show quoted text -




walke
  Reply With Quote
Old 01-29-2007, 12:11 PM   #4
Jonathan Bromley
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
On Sun, 28 Jan 2007 16:24:25 +0000, Anon Anon <> wrote:

>This may be down to an error in the IP, or an error in my VHDL - since I
>am quite new to this area. The code is shown below - if anybody can see
>the flaw could they please advise?


I think you are failing to re-initialise the array index each time the
processing state machine starts work.

> variable lowest, i : integer := floats'LOW(1);


BAD IDEA. Don't rely on variable or signal initialisation in
synthesisable code. XST accepts it, but many tools don't.
In any case, variable initialisation is extremely confusing
because it can lead you to believing that the variable is
initialised every time round the process, rather than
only at startup. See below, I think you've fallen into
somesuch trap.

>if rising_edge(clk) then
> case state is
> when wait_rfd =>
> if start = '1' and
> operation_rfd = '1' then


Surely you need to set i := floats'LOW here????
Otherwise it'll still be floats'HIGH, left over from the last pass.

> lowest := i;
> index <= lowest;
> state := is_rfd;
> end if;


[snip]

> if (i < floats'LENGTH) then


Prefer (i < floats'HIGH) to protect yourself against arrays that
may have been declared with subscript ranges not starting at 1.

I haven't checked the rest of your code in detail, but the state
machine looks fairly sensible. These things always need
careful checking for corner cases - does it work correctly
if the lowest-valued element is the first in the array? the last?
does it work correctly if all elements have the same value?
I'm not saying your code is wrong - in fact, I suspect it isn't -
but merely asking you to check very carefully.
--
Jonathan Bromley, Consultant

DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services

Doulos Ltd., 22 Market Place, Ringwood, BH24 1AW, UK

http://www.MYCOMPANY.com

The contents of this message may contain personal views which
are not the views of Doulos Ltd., unless specifically stated.


Jonathan Bromley
  Reply With Quote
Old 01-29-2007, 06:02 PM   #5
Anon Anon
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
Apologies - this was an earlier attempt to try and fix the problem,
which I subsequently commented out (as shown in my first posting). In my
second posting I physically removed this line and the other kludge, with
an explanation as to what I'd done (see below).

Sorry for the confusion!

================================================== ==================

walke wrote:
> Please could you tell me why are you driving the core output to zero
> when in wait_rdy state? (i.e. why is the line result(0) <= '0'
> present?)
>
>
> On Jan 28, 5:09 pm, Anon Anon <a...@anon.net> wrote:
>> Anon Anon wrote:
>>> I am trying to use the Xilinxfloating-pointIP, provided as part of the
>>> ISE Foundation V8.1 to produce an entity that determines the smallest
>>> element from an array offloating-pointnumbers. The entity uses the
>>> Xilinx less-than comparator, which takes two inputs (a and b) and
>>> returns a '1' if a < b or '0' otherwise. Unfortunately, I am getting
>>> some strange (and incorrect) results.
>>> This may be down to an error in the IP, or an error in my VHDL - since I
>>> am quite new to this area. The code is shown below - if anybody can see
>>> the flaw could they please advise?
>>> Many thanks!
>>> === SNIP ========================
>>> entity float_min_array is
>>> generic(len : integer);
>>> port (
>>> clk : in std_logic;
>>> start : in std_logic := '0';
>>> floats : in FLOAT_ARRAY;
>>> index : out integer := -1;
>>> finished : out std_logic := '0');
>>> end float_min_array;
>>> architecture Behavioral of float_min_array is
>>> signal a: std_logic_VECTOR(63 downto 0);
>>> signal b: std_logic_VECTOR(63 downto 0);
>>> signal operation_nd: std_logic;
>>> signal operation_rfd: std_logic;
>>> signal result: std_logic_VECTOR(0 downto 0);
>>> signal rdy: std_logic;
>>> signal dummy : integer;
>>> -- the Xilinxfloating pointcomparator
>>> component flessthan IS
>>> port (
>>> a: IN std_logic_VECTOR(63 downto 0);
>>> b: IN std_logic_VECTOR(63 downto 0);
>>> operation_nd: IN std_logic;
>>> operation_rfd: OUT std_logic;
>>> clk: IN std_logic;
>>> result: OUT std_logic_VECTOR(0 downto 0);
>>> rdy: OUT std_logic);
>>> END component flessthan;
>>> begin
>>> process (clk)
>>> type entity_state is (wait_rfd, is_rfd, wait_rdy, done);
>>> variable state : entity_state := wait_rfd;
>>> variable lowest, i : integer := floats'LOW(1);
>>> begin
>>> if rising_edge(clk) then
>>> case state is
>>> when wait_rfd =>
>>> if start = '1' and
>>> operation_rfd = '1' then
>>> lowest := i;
>>> index <= lowest;
>>> state := is_rfd;
>>> end if;
>>> when is_rfd =>
>>> if (i < floats'LENGTH) then
>>> assert operation_rfd='1'
>>> report "Not ready for data!";
>>> i := i + 1;
>>> dummy <= i; -- for debugging only!
>>> a <= floats(i);
>>> b <= floats(lowest);
>>> operation_nd <= '1';
>>> state := wait_rdy;
>>> else
>>> state := done;
>>> end if;
>>> when wait_rdy =>
>>> if rdy = '1' then
>>> if result(0) = '1' then
>>> lowest := i;
>>> index <= lowest;
>>> end if;
>>> state := is_rfd;
>>> end if;
>>> when done =>
>>> finished <= '1';
>>> end case;
>>> end if;
>>> end process;
>>> FM:flessthan PORT MAP(a,b,operation_nd,operation_rfd,clk,result,rdy) ;
>>> end Behavioral;
>>> === SNIP = = = = = = = = = = = = = =I spotted a missing type declaration (from a separate package):

>> subtype MY_FLOAT is std_logic_vector(63 downto 0);
>> type FLOAT_ARRAY is array(NATURAL RANGE <>) of MY_FLOAT;
>>
>> > === SNIP-SNIP ========================

>>
>> I have also removed the two commented-out lines from my first posting, <<<<<<<<<<<<<<<<<<
>> which were part of an unsuccessful attempt to resolve my problems. <<<<<<<<<<<<<<<<<<

>



Anon Anon
  Reply With Quote
Old 01-29-2007, 06:12 PM   #6
Anon Anon
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
I accept all your points which are perfectly valid, and are clearly bugs
in my code, or an indication of my lack of experience. However, I should
have made the situation a bit clearer.

The code seems to step through all of the elements successfully and
seems to present them to the comparator - at least to the extent that I
get varying outputs from the comparison. However, the comparison output
doesn't match the actual data, so I don't get a correct result. This may
be the result of several factors, including:

1) A bug or quirk in the comparator that I don't know about (I have
already found some quirks in the fixed-point to floating-point operation
that I have already used).

2) A more fundamental failure in the fix-to-float that I used to
generate the numbers that I'm using for this test. i.e. the comparison
may be working correctly, but with the wrong data.

At least you have reassured me that I am not doing anything
fundamentally wrong with the language itself - which was my main fear
(subject of course to the limitations inherent in you validating the
code by eye alone).

For my next test I'll write a float to fix operation to see if the data
*looks* ok - although of course if it's faulty in one direction it might
be faulty in the other also, sigh...

I'll also contact my supplier to see if they know of any problems in the IP.

BTW: I am mainly a S/W engineer and I've become spoilt by libraries that
just do what they say they'll do!

Ho, hum... Thanks for your kind support in any case. I'll definitely
consider Doulos when I have the time for training in this stuff!!

======

Jonathan Bromley wrote:
> On Sun, 28 Jan 2007 16:24:25 +0000, Anon Anon <> wrote:
>
>> This may be down to an error in the IP, or an error in my VHDL - since I
>> am quite new to this area. The code is shown below - if anybody can see
>> the flaw could they please advise?

>
> I think you are failing to re-initialise the array index each time the
> processing state machine starts work.
>
>> variable lowest, i : integer := floats'LOW(1);

>
> BAD IDEA. Don't rely on variable or signal initialisation in
> synthesisable code. XST accepts it, but many tools don't.
> In any case, variable initialisation is extremely confusing
> because it can lead you to believing that the variable is
> initialised every time round the process, rather than
> only at startup. See below, I think you've fallen into
> somesuch trap.
>
>> if rising_edge(clk) then
>> case state is
>> when wait_rfd =>
>> if start = '1' and
>> operation_rfd = '1' then

>
> Surely you need to set i := floats'LOW here????
> Otherwise it'll still be floats'HIGH, left over from the last pass.
>
>> lowest := i;
>> index <= lowest;
>> state := is_rfd;
>> end if;

>
> [snip]
>
>> if (i < floats'LENGTH) then

>
> Prefer (i < floats'HIGH) to protect yourself against arrays that
> may have been declared with subscript ranges not starting at 1.
>
> I haven't checked the rest of your code in detail, but the state
> machine looks fairly sensible. These things always need
> careful checking for corner cases - does it work correctly
> if the lowest-valued element is the first in the array? the last?
> does it work correctly if all elements have the same value?
> I'm not saying your code is wrong - in fact, I suspect it isn't -
> but merely asking you to check very carefully.



Anon Anon
  Reply With Quote
Old 01-30-2007, 09:52 AM   #7
Ben Jones
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?

"Anon Anon" <> wrote in message
news:...

> The code seems to step through all of the elements successfully and seems
> to present them to the comparator - at least to the extent that I get
> varying outputs from the comparison. However, the comparison output
> doesn't match the actual data, so I don't get a correct result. This may
> be the result of several factors, including:
> 1) A bug or quirk in the comparator that I don't know about (I have
> already found some quirks in the fixed-point to floating-point operation
> that I have already used).


Please could you give us details of exactly what "quirks" you have found in
this operator? And could you post some more specific information of a
failing testcase, that is, "I compared floating point number 0x3f800000
against 0x40000000 and it said they were equal when they are clearly not"?

Have you checked that the latency of the operator(s) is/are what you expect?

> I'll also contact my supplier to see if they know of any problems in the
> IP.
> BTW: I am mainly a S/W engineer and I've become spoilt by libraries that
> just do what they say they'll do!


The Xilinx floating point IP is verified extensively in a large number of
configurations by means of industry standard test packages such as John
Hauser's "TestFloat" application, which provide millions of test vectors.
Apart from minor deviations from the standard in the handling of NaNs and
denormalized numbers, which are clearly explained in the datasheet, we know
of no problems. So if you have found one, we'd really like to hear about it!

Cheers,

-Ben-




Ben Jones
  Reply With Quote
Old 01-30-2007, 11:30 AM   #8
Anon Anon
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
Ben Jones wrote:
> "Anon Anon" <> wrote in message
> news:...
>
>> The code seems to step through all of the elements successfully and seems
>> to present them to the comparator - at least to the extent that I get
>> varying outputs from the comparison. However, the comparison output
>> doesn't match the actual data, so I don't get a correct result. This may
>> be the result of several factors, including:
>> 1) A bug or quirk in the comparator that I don't know about (I have
>> already found some quirks in the fixed-point to floating-point operation
>> that I have already used).

>
> Please could you give us details of exactly what "quirks" you have found in
> this operator? And could you post some more specific information of a
> failing testcase, that is, "I compared floating point number 0x3f800000
> against 0x40000000 and it said they were equal when they are clearly not"?
>
> Have you checked that the latency of the operator(s) is/are what you expect?
>
>> I'll also contact my supplier to see if they know of any problems in the
>> IP.
>> BTW: I am mainly a S/W engineer and I've become spoilt by libraries that
>> just do what they say they'll do!

>
> The Xilinx floating point IP is verified extensively in a large number of
> configurations by means of industry standard test packages such as John
> Hauser's "TestFloat" application, which provide millions of test vectors.
> Apart from minor deviations from the standard in the handling of NaNs and
> denormalized numbers, which are clearly explained in the datasheet, we know
> of no problems. So if you have found one, we'd really like to hear about it!
>
> Cheers,
>
> -Ben-
>
>

I'm happy to mail you my fixed-to-float code - could you give me your
direct e-mail address (encoded in some way to avoid spammers).

The sort of issues I've encountered are things like having to wait on a
zero-to-one transition on the rdy signal and also having to reset the
operation_nd to a low state. As I've mentioned many times, these may be
down to mistakes on my part, and I'd love to find out that that is the case!

Cheers


Anon Anon
  Reply With Quote
Old 01-30-2007, 01:00 PM   #9
Brian Drummond
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
On Mon, 29 Jan 2007 18:12:45 +0000, Anon Anon <> wrote:

>I accept all your points which are perfectly valid, and are clearly bugs
>in my code, or an indication of my lack of experience. However, I should
>have made the situation a bit clearer.
>
>The code seems to step through all of the elements successfully and
>seems to present them to the comparator - at least to the extent that I
>get varying outputs from the comparison. However, the comparison output
>doesn't match the actual data, so I don't get a correct result. This may
>be the result of several factors, including:
>
>1) A bug or quirk in the comparator that I don't know about (I have
>already found some quirks in the fixed-point to floating-point operation
>that I have already used).


You don't need a library to perform floating point comparison; (assuming
IEEE754 floats) By design, they are guaranteed monotonic (apart from the
sign bit) so if there's any doubt about the library, roll your own.

- Brian


Brian Drummond
  Reply With Quote
Old 01-30-2007, 01:27 PM   #10
Anon Anon
 
Posts: n/a
Default Re: Xilinx floating-pt IP not working?
Brian Drummond wrote:
> On Mon, 29 Jan 2007 18:12:45 +0000, Anon Anon <> wrote:
>
>> I accept all your points which are perfectly valid, and are clearly bugs
>> in my code, or an indication of my lack of experience. However, I should
>> have made the situation a bit clearer.
>>
>> The code seems to step through all of the elements successfully and
>> seems to present them to the comparator - at least to the extent that I
>> get varying outputs from the comparison. However, the comparison output
>> doesn't match the actual data, so I don't get a correct result. This may
>> be the result of several factors, including:
>>
>> 1) A bug or quirk in the comparator that I don't know about (I have
>> already found some quirks in the fixed-point to floating-point operation
>> that I have already used).

>
> You don't need a library to perform floating point comparison; (assuming
> IEEE754 floats) By design, they are guaranteed monotonic (apart from the
> sign bit) so if there's any doubt about the library, roll your own.
>
> - Brian


Thanks for that point - it could come in handy - although comparisons
are really the least of my problems At the end of the day I'll need
to do most of the operations you might want to perform on an Flt-Pt
value - hence my concern in getting it done correctly (and reassuring
myself that the IP is essentially correct and bug-free).


Anon Anon
  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
(rumor) Toshiba Working With Microsoft On New Entertainment Xbox (360) with built-in HD-DVD AirRaid DVD Video 6 10-21-2007 02:19 AM
win 98 not working after ms drivers update Sean Cleary A+ Certification 1 07-06-2007 10:15 PM
VHDL (Assigning pins in xilinx) amanpervaiz Hardware 3 12-02-2006 04:37 PM
Windows ME Default Icons Not Working C Lee A+ Certification 1 05-19-2004 05:27 PM
DVD Verdict reviews: A STORY OF FLOATING WEEDS / FLOATING WEEDS: CRITERION COLLECTION and more! DVD Verdict DVD Video 0 04-20-2004 10:04 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