>
>
> hi John,
>
> you asked about SPEAD FPGA implementations:
>
> Jason added SPEAD to the packetized correlator.
> i'm appending Jason's November 26 update on correlators,
> which includes a section on SPEAD.
>
> also, i think a recent pocket correlator, developed by Zaki,
> uses SPEAD.   Zaki and Aaron have also developed code to
> read and process SPEAD packets.

Thanks, Dan.  This is just what I needed to know.

Jason, I'd like to take you up on the offer (in the attached mail below)
to email model files that use SPEAD on ROACH.

Thanks!

John

>
> best wishes,
>
> dan
>
>
> Hello correlator mailing list
>
> There have been a number of correlator developments since the last update
> (some of which you may have heard about at the CASPER workshop):
>    * Switch to all ROACH design.
>    * Integrated 10GbE cores into the F engines and done away with the
> complicated XAUI loopback (though this is still supported if you want
> this optimisation).
>    * The X engines now output SPEAD over 10GbE natively (no more
> corr_tx.py on the PPCs and automated start/stop/sync without user
> intervention).
>    * The X engines process contiguous frequency channels (though the old
> interleaved mode is still supported).
>    * Fringe rotation and delay compensation is now fully functional.
>    * Support for iADC and KATADC.
>
> Known bugs:
>    * Upon intialisation (FPGA reprogram) the ADC clock demuxes come up in
> different clock offset states (all the pocket correlators and any
> current packetised system also have this same bug). They can be up to
> four clock cycles out of sync. So you'll need to do a delay calibration
> every time you reinit the system. We have a plan to fix this and should
> have it ready in the next week or so by using the infrastructure for
> the existing coarse delay block.
>
>
> CORR
> ====
> The Python correlator control package, corr, has matured nicely and is in
> daily use at KAT for debugging. Although probably not deployment quality,
> it is a nice simple way to test new features and fiddle with the design.
> We have released it on PyPI herehttp://pypi.python.org/pypi/katcp.
> Development has moved out of the CASPER SVN RCS and I hope to get it into
> git soon. I have attempted to keep backwards compatibility from version
> 0.5.0 onwards but I am no longer actively working on certain
> configurations, so YMMV if your setup is different to mine. I welcome any
> support to add features, clean up code and fix bugs. We have moved to
> using the iniparse package for reading the config file. You might need to
> install this python package if you upgrade your corr package from a very
> early version.
>
>
> SPEAD
> =====
> Since version 0.4.0, corr has relied on KATCP for control communications.
> You can always get the latest version of KATCP
> here:http://pypi.python.org/pypi/katcp
> Experimental support for the SPEAD protocol was added in version 0.5.x and
> is now fully supported since version 0.6.0. This protocol is used for high
> speed UDP data exchange (completely separate and complimentary to the
> TCP/IP-based KATCP for control and monitoring).
>
> SPEAD will be the native data format for all future KAT instruments and
> I'd encourage you to take a look at the spec (attached) for any future
> instruments you may build. It is highly flexible and of course all open
> source. SPEAD is a self-describing format suitable for propagating data
> across network links or for on-disk storage of data. It is supports
> complex structures and multidimensional arrays of such structures,
> including on-the-fly resizing and redefinition of data products along with
> machine and human readable descriptions allowing the receiver to not only
> reassemble, but also interpret the data without any additional metadata.
> The protocol is able to receive data from multiple sources simultaneously.
> It was designed with high efficiencies in mind and so only changes in data
> products are propagated across data links and these done with little
> header overhead. A subset of the protocol is also simple enough to
> implement on low-level logic devices such as FPGAs and 8bit
> microprocessors. PAPER and KAT7 are already using it and it will also be
> used for inter-node transport in AIPY. The reference implementation of
> SPEAD is still experimental but is functional. It is not yet in PyPI but
> you can get it from Simon's GIT repo:http://github.com/sratcliffe/PySPEAD
>  Included are a few examples in the "tests" directory showing you how to
> use it.
>
> As a reference receiver, corr now includes two new corr_rx scripts
> (depending on your system's output configuration). They capture SPEAD
> heaps and stores them to disk in HDF5 format using existing Python
> libraries. It can optionally send realtime signal display data to another
> computer too, mating to an external package, katsdisp, for realtime signal
> visualisation.
>
> FUTURE
> ======
> Until we figure out what do with with the revision control system, I can
> email individuals the lastest ROACH model files or bitstreams if you want
> them. If you have 16 ROACH boards and a 10GbE switch, you can assemble a
> duplicate of our system to play with or scale it up or down to suit your
> needs. This reference 16 FPGA version is mostly empty (about 50% full),
> processing 512 channels over 400MHz bandwidth, full stokes.  So there's
> lots of room to add features and things. It has 10GbE output and can do
> high speed dumps (well below 100ms) or up to about 1min integrations
> before integer overflows. Note that our F engines expect KATADCs. You
> might need to recompile for iADC and update the config file as
> appropriate.
>
> Next year we will be adding beamformers to the X engines.
>
>
> Jason
>
>
>
> On 11/29/2010 8:12 AM, John Ford wrote:
>> Hi all.
>>
>> Do any of you have any xilinx designs that implement SPEAD protocol
>> packets over 10 GbE?
>>
>> John
>>
>>
>>
>
>
>
>



Reply via email to