Hi,

Thanks a lot Jack. It makes sense.
And thank you very much for the note on the 2x32-bit pair. It is exactly
how our data is formatted.
Ok, we will go with an FPGA correction instead of a CPU byteswap. I am
guessing it will be faster this way.

Thanks again.
Cheers
Nitish


On Tue, Aug 18, 2020 at 4:47 PM Jack Hickish <jackhick...@gmail.com> wrote:

> Hi Nitish,
>
> To try and answer your first question without adding confusion --
>
> If you send a UFix64_0 value into the 10GbE block, you will need to
> interpret it on the other end via an appropriate 64-bit byte swap if your
> CPU is little-endian.
> If you send a 64-bit input into the 10GbE block where the most significant
> 32 bits are the value A, and the least significant bits are value B, you
> should interpret the 64-bits  on your little endian CPU as the struct
>
> typedef struct pkt {
>   uint32_t A;
>   uint32_t B;
> } pkt;
>
> where each of the A and B will need byteswapping before you use them.
>
> To answer your second question --
> Yes, you can absolutely flip the endianness on the FPGA prior to
> transmission so you don't have to byteswap on your CPU. You can either do
> this with a bus-expand + bus-create blocks, using the first to split your
> words into bytes, and then flipping them before concatenating. The Xilinx
> "bitbasher" block would also be good for this, using the Verilog (for a
> 64-bit input):
>
> out = {in[7:0], in[15:8], in[23:16], in[31:24], in[39:32], in[47:40],
> in[55:48], in[63:48]}
>
> If your 64 bit data streams are not made up of 64-bit integers (eg, they
> are pairs of 32-bit integers) then you should flip the 4 bytes of each
> value individually, but leave the ordering of the two values within the 64
> bits unchanged.
>
> Hopefully that makes sense....
>
> Jack
>
>
> On Tue, 18 Aug 2020 at 13:28, Nitish Ragoomundun <
> nitish.ragoomun...@gmail.com> wrote:
>
>>
>> Hello,
>>
>> We are setting up the digital back-end of a low-frequency telescope
>> consisting of SNAP boards and GPUs. The SNAP boards packetize the data and
>> send to the GPU processing nodes via 10 GbE links. We are currently
>> programming the packetizer/depacketizer.
>> I have a few questions about the 10gbe yellow blocks and endianness. We
>> observed from the tutorials that the data stored in bram is big-endian. I
>> would like to know how the data is handled by the 10gbe and in what form is
>> it sent over the network.
>> Our depacketizers run on Intel processors, which are little-endian. We
>> are aware that network byte order is big-endian, but we noticed that
>> integer data can be sent from one Intel machine to another via network
>> without ever calling ntohl( ) or htonl( ) and the data was preserved. So,
>> we would like to know if we need to correct the endianness when receiving
>> the data from the SNAP.
>>
>> If we need to perform this correction, is there a way we could possibly
>> correct the endianness on the FPGA itself before input to the 10gbe block?
>>
>> Thanks,
>> Nitish
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "casper@lists.berkeley.edu" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to casper+unsubscr...@lists.berkeley.edu.
>> To view this discussion on the web visit
>> https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAC6X4cOZhVBUvUfs1phQ2csuRnewowZkQ8PzjjBU62LUa0js%3Dw%40mail.gmail.com
>> <https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAC6X4cOZhVBUvUfs1phQ2csuRnewowZkQ8PzjjBU62LUa0js%3Dw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups "
> casper@lists.berkeley.edu" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to casper+unsubscr...@lists.berkeley.edu.
> To view this discussion on the web visit
> https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAG1GKSkaEebTXH0X6xiDt6DLHiEy7WUW5xb%3D7w%2BYUJHB3GB7-w%40mail.gmail.com
> <https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAG1GKSkaEebTXH0X6xiDt6DLHiEy7WUW5xb%3D7w%2BYUJHB3GB7-w%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"casper@lists.berkeley.edu" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to casper+unsubscr...@lists.berkeley.edu.
To view this discussion on the web visit 
https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAC6X4cMNM0hC1oOwq3mHT%3DO8teO_MGKy9sjUnbKC2fJH2yNUPg%40mail.gmail.com.

Reply via email to