-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement L0 protocol version 2 #31
base: dstn-beamid
Are you sure you want to change the base?
Conversation
This version adds another field to the header to encode the time (in nanoseconds since the Unix epoch) of the very first FPGA sample (the one with fpga_count=0) at offset 8, just before "fpga_count". This increases the length of the header by 8 bytes and pushes back the offsets of all the subsequent fields.
Hi @dstndstn. I implemented the reader for the new L0 packet format (as implemented in kotekan/kotekan#823). Can you have a look over and let me know if this change makes sense to you? To make changing the code simpler, I added a constant for the length of the packet header (24 before, 32 now). I think I hunted down all the places in the source that hardcoded that value to index into the packets directly. There are still a few places in avx_kernels where it is used, in particular the three lines starting at line 346. Do you know what that snippet is doing? |
Hi Davor, |
I think the above commits are enough to set the frame0_nano field in the assembled_chunks from the intensity_packets, and I think I removed all the (much larger!) previous mechanism. There are corresponding branches in rf_pipelines and ch_frb_l1 that we should commit at the same time. |
This version adds another field to the header to encode the time (in
nanoseconds since the Unix epoch) of the very first FPGA sample (the one
with fpga_count=0) at offset 8, just before "fpga_count". This increases
the length of the header by 8 bytes and pushes back the offsets of all
the subsequent fields.