As per David's reply, what is *supposed* to be happening is that the
top 2 bits of the real component of the product (and ditto for the
imaginary part) are being checked for sameness before downshifting,
otherwise the result is an overflow event.  (The 'and' and 'nor' seem
a little exaggerated--an 'xor' should have sufficed).
If either the real or imaginary component generate an overflow, then
the entire shifter should output an overflow--i.e. the OF of each one
should be computed separately and the results 'or'ed together.

If you are seeing anything that contradicts the above description of
what should be happening, then that is a bug, and should be fixed.

On Wed, Sep 3, 2008 at 11:28 AM, Andrew Martens
<[email protected]> wrote:
> Hi all
>
> I have been looking at the the butterfly_direct block in the FFT subsection
> of the 10.1 library and have noticed a few things I hope someone can help me
> with.
>
> They relate to the logic that seems to be used to test for overflow ('of'
> output). There are 4 Slice blocks extracting the most significant bits and
> testing if they are all 1's (with an 'and' block) or all 0's (with a 'nor'
> block). There are two things that seem to be out of place for me;
>
> 1. The blocks testing the real and imaginary components of each stream are
> different. For the real component of a channel,  all 4 Slices feed the 'nor'
> block whereas, for  the imaginary component, the 4th bit from MSB feeds the
> 'nor' block twice and the 3rd doesn't. I would guess that this is not meant
> to be the case?
>
> 2. Taking the four MSBs means that (for twiddle_general_3_mult as twiddle
> block at least) that these are all bits above the binary point i.e not
> fractional bits. The test for all 1's would make this a small negative
> number (i.e close to 0) and the test for all 0's would be a small positive
> value, just above 0. Is this logic testing for overflow and underflow by
> testing if the bits are all '1' or '0' respectively?
>
> There is probably a clever answer to this or I have misunderstood something
> somewhere. Could someone have a look at this and let me know what they
> think.
>
> Thanks
> Andrew
>



-- 
Aaron Parsons

510-406-4322 (cell)
787-878-2612 x329 (arecibo office)
787-721-3991 (home)

Reply via email to