[Open-graphics] Re: float25 multiplier
André Pouliot
andre.pouliot at gmail.com
Mon Feb 4 16:32:21 EST 2008
I found that the bug was in the result of the multiplication. It was a
rounding that's present in the software model and is not present in the
rtl of the multiplication.
Now the question is : do we care about the rounding? Adding the rounding
to the fp multiplicator would add another stage with a 19 bits adder. I
did a quick test with the ogsim program there seem to have some small
variation on the edge of the triangle. I attach the resulting image for
the 2 run of the program with and without the rounding enabled in the
float25 class.
Could someone tell me if we do without the rounding would the compound
error would be to important or we can neglect it?
André Pouliot wrote:
> Sorry I didn't attach the multiplier last night but the Tb that was
> created by hand. Here is the rtl code for the float multiplier.
>
> André Pouliot wrote:
>
>> Here is the new version for the floating point multiplier. The thread
>> is from July but I just had the time to rework on it.
>>
>> This version is basically the same except some amelioration like the
>> result is forced to zero when one of the input value is a denormalized
>> number or zero. For the case that the value is infinite or NaN the
>> result is forced to infinite except if multiplied by zero.
>>
>> There is also a C++ test bench generator to build a verilog test bench
>> with random value and some fix corner case. That generator is based on
>> the float25 class in the old OGA model. The generator for now is
>> relatively basic and could be ameliorated.
>>
>> Actually there seem to have a bug somewhere in the code. The bug seem to
>> be a rounding problem that cause a variation of "1" in the result of the
>> multiplication. I'm not sure if it's from the C++ code or the verilog
>> that is the cause of the bug.
>>
>> Timothy Normand Miller wrote:
>>
>>
>>> Yeah. Use the new_model code, and define an actual class for float25
>>> that limits the precision and also has this new behavior as well.
>>>
>>> On 7/30/07, Nicolas Boulay <nicolas.boulay at gmail.com> wrote:
>>>
>>>
>>>
>>>> For the float25, is it possible to use the C model to see the beavior
>>>> of this inf*zero=zero feature ?
>>>>
>>>>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Float25_with_rounding.png
Type: image/png
Size: 22194 bytes
Desc: not available
Url : http://lists.duskglow.com/open-graphics/attachments/20080204/923be5b7/Float25_with_rounding-0001.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Float25_without_rounding.png
Type: image/png
Size: 22779 bytes
Desc: not available
Url : http://lists.duskglow.com/open-graphics/attachments/20080204/923be5b7/Float25_without_rounding-0001.png
More information about the Open-graphics
mailing list