Astro FFT

Astronomical FFT processing system

User Manual

Introduction

This document describes basic usage of the AstroFFT system from the perspective of a user. It assumes the system has been set up and is ready for use.

Whilst a complex system, AstroFFT has been designed for simplicity of use. It is generally used as a network resource from a remote computer system either under the control of a remote batch processing system or a remote interactive GUI based application. In any event, as it is based upon the Linux operating system and has the full features of a Multi-user, Multi-tasking Unix system it is very flexible and can be used as a fully fledge Linux workstation.
The system will have been configured for use on the local area network. It will have a network IP address and a host name configured.

General Usage Information

Power on

The system can be just switched on. The system will power up and boot without further user interaction.

Power off

The system should be shut down by logging in as the user root and running the command:-
poweroff
Alternatively the "shutdown" button can be clicked on from the main login window on the GUI display. If by 'accident' the units is simply switched off the system will automatically perform a disk check on the next startup.

Accessing the AstroFFT system

The AstroFFT system can be accessed in a number of ways:-

Login at the AstroFft console

The user can login at the AstroFFT's console as the user astro (the default password is beam00). On login the user will be presented with the AstroGui control application which allows the specification and control of processing run's. All normal Linux applications are available from the KDE based GUI.

Telnet login as a user

From a remote computer a user can telnet into the Astrofft system as the user astro (the default password is beam00) using the appropriate host name. The user will be presented with a Linux shell command line. From this login the AstroFFT system can be operated by using its command line interface and system administration work can be performed.

Remote access through AstroGui application

It is possible to run the AstroGui application on the Astro FFT system with the GUI presented on a remote system. This assumes the remote system has support for the Unix X-Windows GUI system.
In order to achieve this login to the Astro FFT system using telnet as the user astro as described above. Then run the command:
astrogui -display <hostname>:0
Where hostname is the name of the remote computer. Note that it may be necessary to allow the Astro FFT system access to your local xserver. This can normaly be done by running the command:
xhost +hostname

Telnet directly to the Astrofft process

The user sitting at a remote computer can telnet directly to the astrofft process running on the Astro FFT system. This can be done by running telnet to the port 41000 on the Astro FFT system. From here the Astro FFT system can be controlled using the Astrofft command set as described in the AstroFft Software API Manual.
telnet [host] 41000

Access Via Remote Application

A program running on the users local system can interact with the Astro FFT system by opening a connection to the network sockets 41000 and 41001 on the AstroFft system. The application can now control the operation of the processing system and receive data from the system. For developers there is an API specification .

Using an X-Terminal

A remote X-Terminal, or X-Terminal emulation software, can access the Astro FFT's display manager using the XDM protocol in the normal manner.

Processing Runs

The Astro FFT system processes two separate analogue signals simultaneously. Normally these are related, such as the vertical and horizontal polarization's of an incoming radio frequency signal. Each signal is sampled at 50Mhz or 25MHz after passing though an anti-aliasing filter with a 23 MHz cut-off. The processing performed is dependent on the processing mode selected :-
FFT Mode: In this mode a single ATD convertor samples a single analogue data stream at 50Mhz. The ATD samples are fed into the real inputs of a 4096 point FFT using fixed point math. The FFT generates 4096 complex frequency samples. The following integrator will integrate all 4096 samples although only the first 2048 are useful. The magnitude of each complex frequency sample, formed by squaring the real and imaginary parts separately and then adding them, is added to an integrating buffer. After a given number of FFT runs have been processed and added to the integrator the integrated results are passed to the host.

QFFT Mode: In this mode the twin ATD convertors sample the two analogue data streams at 25Mhz. The ATD samples are fed into the real and imaginary inputs of a 4096 point FFT using fixed point math. The FFT generates 4096 complex frequency samples. The following integrator integrates all of the 4096 samples separately. The magnitude of each complex frequency sample, formed by squaring the real and imaginary parts separately and then adding them, is added to the integrating buffer. After a given number of FFT runs have been processed and added to the integrator the integrated results are passed to the host.

RFFT Mode: In this mode a single ATD convertor samples the single analogue data stream at 50Mhz. Alternate ATD samples are fed into the real and imaginary inputs of a 4096 point FFT using fixed point math. The FFT will generate 4096 mixed complex frequency samples. A following post processing filter takes these samples and produces the genuine 4096 frequency samples. The following integrator takes all of the 4096 samples. The magnitude of each complex frequency sample, formed by squaring the real and imaginary parts separately and then adding them, is added to the integrating buffer. After a given number of FFT runs have been processed and added to the integrator the integrated results are passed to the host.

Analogue Mode: In this mode both ATD convertors sample at 50Mhz. The 14 bit samples are bit extended with 0's at the lower end to form 16 bit values. The two 16 bit values are combined into a 32 bit value and fed to the host. The FPGA also calculates the RMS power and the number of ATD peak values of each data stream and passes this to the host with each set of samples.

The Astro FFT system processes the incoming data in a processing run. Parameters defining the run are setup and then the run is started. It will complete after a given number of sets of samples have been processed, on fatal error or if interrupted by the user. The parameters that are configurable include:
   


Parameter Usage
Mode Mode of the processing run. This can be set to fft, qfft, rfft or analogue
Title A title for the run. It is saved in the run data file and used for run identification
Project A user defined project name. It defines the name of the sub directory where the resulting data files are stored.
FileBaseName The base name for the files where the data is to be stored. It is extended with a run number and data channel numbers to give the actual file names used.
FileFormat Format of the resulting data files. It can be set to binary or ascii.
ClockSource Source of the master clock for the sampling and FFT engines. It can be set to internal or external.
ClockFrequency Frequency of the clock source. It divides the selected clock source by the appropriate value.
AverageNumber How many of the FPGA FFT processing runs are to be averaged within the FPGA. This is normaly set so that the FPGA will average over about 100ms. For QFFT and RFFT modes this figure will be 610 and for the FFT mode it will be 1220. If this figure is made too low the software will not be able to keep up with the data rate and this will cause data overrun errors. If the number is set to to large a value, the FPGA's internal integrator is liable to overflow.
Number How many of the FPGA processed runs are to be processed in a complete processing run.
FileAverageNumber This defines how many of the FPGA FFT processed runs are further averaged in software before yielding a result vector in the data file.
SockAverageNumber The number of the FPGA FFT processed runs to be further averaged in software before yielding a result vector output on the data socket.

Data Generated by the System

Each processing run will generate three files that are stored on the AstroFft systems internal hard disk. These files can be accessed in three ways:-

Through the NFS network file system

Systems that support the NFS can mount the AstroFft systems /data directory in a read only mode. All files and directories of the data can be accessed directly.

Through the SAMBA SMB network file system

Systems that support the Microsoft SMB network file system can access the AstroFft systems data share in a read only mode. All files and directories of the data can be accessed directly.

Through the Web http protocol

The Astrofft system runs a local web server that supports access in a read only mode to the /data file system. The URL http://hostname /data/ provides access where hostname is the hostname of the Astro FFT system.
A description of data file formats is given in the AstroFft API document .

Purging Data Files

The AstroFFT data files can be very large and occasionally, as the disk become full, it will be necessary to purge old data files. You can purge the data files in a number of ways:

Utility Programs

A number of utility programs available for user operations are provided. These include:-
 

Program Usage
astrogui Basic GUI application to control the AstroFft process.
astroPurge Purges the data files and deletes any that are older than a given number of days.
astroDataConv Converts the astro binary data files to ascii format or gnuplot format.