4DSP Support Forum

Products => FMC Products => FMC112, FMC116 => Topic started by: vicmarher on March 11, 2014, 05:56 AM

Title: FMC116 64bits samples byte order
Post by: vicmarher on March 11, 2014, 05:56 AM
Hi again!
This is a simple question that I hope you can solve (as usual ;) )

I need to know what the sample order is in the 64bits word that comes from fmc116 in the whormhole to the buffers for the bursts.

Is it Sample3|Sample2|Sample1|Sample0 being bits 63 downto 48 for Sample 3, 47 downto 32 for Sample 2, 31 downto 16 for Sample1, and 15 downto0 for Sample0,

Or is it Sample0|Sample1|Sample2|Sample3 ?

Thanks a lot!!

Víctor Martín, IEEC

Title: Re: FMC116 64bits samples byte order
Post by: arnaudNL on April 11, 2014, 08:12 AM
Dear Victor,


We have never received notifications about this post, have you figured out this problem already?


Thanks,
Arnaud
Title: Re: FMC116 64bits samples byte order
Post by: vicmarher on April 14, 2014, 09:35 AM
Hi Arnaud,
no, I haven't find it out. I assume that the order is the logical one. I suppose that I could test it using a known input, but I haven't tryied.For my current tests it is not the most important issue I have to solve ;)

I'm using a customized version of your reference software. In fmc116_ltc2175_fifo.vhd, I see that the output of the entity, if_data, is built using the output of the 16X64 FIFO, but changing the order:

if_data <= dout (15 downto 0) & dout (31 downto 16) & dout(47 downto 32) & dout(63 downto 48);

I don't know if it's because the FIFO reverses the order, or because the expected output must be ordered this way.

So it would be great if you could confirm which is the correct order.

Thanks once more!

Víctor
Title: Re: FMC116 64bits samples byte order
Post by: george.bishop on April 14, 2014, 05:21 PM
Victor,


It would be:


Sample3|Sample2|Sample1|Sample0


Please see http://www.xilinx.com/support/documentation/ip_documentation/fifo_generator/v9_3/pg057-fifo-generator.pdf


page 114.


Thanks,
George
Title: Re: FMC116 64bits samples byte order
Post by: vicmarher on April 22, 2014, 11:23 AM
Hi George,
thanks for your response.

Just to add some explanation in case someone is interested, reading  the core generator document you refer to, tells the following:

For non-symmetric aspect ratios where the write width is smaller than the read width (1:8, 1:4,1:2), the most significant bits are read first.

It's related to the FIFO output. So the output from the buffer would be S0|S1|S2|S3 being MSB S0..
But the line of code that I commented on my previous post :

if_data <= dout (15 downto 0) & dout (31 downto 16) & dout(47 downto 32) & dout(63 downto 48);

Reorders the samples in a "logical" order, being MSB S3, and LSB S0 in the output of the component that holds the FIFO.

So samples from this output can be read in a logical order from LSB to MSB as you said, S3|S2|S1|S0

Thanks a lot!

Víctor Martín, IEEC
Title: Re: FMC116 64bits samples byte order
Post by: ebarhorst on April 22, 2014, 11:52 AM
Hi Victor


thank you for your response. I will proceed and lock the topic


Best regards,
Erik
Title: Re: FMC116 64bits samples byte order
Post by: ebarhorst on April 22, 2014, 11:53 AM
This topic is being closed because the issue is considered as resolved by 4DSP. Feel free to create a new topic for any further inquiries.