Aziz AhmedSaid 1 2PAD’s Beamforming Software 4 th SKADS Workshop, Lisbon, 2-3 October 2008 2PAD’s Beamforming Software 2PAD’s Beamforming Software Design and Implementation Aziz AhmedSaid (UoM) Other Contributors Stef Salvini, Fred Dulwich, Ben Mort (OERC), Chris Shenton (UoM) Presented by Chris Shenton (UoM)
2PAD’s Beamforming Software. Design and Implementation Aziz AhmedSaid (UoM) Other Contributors Stef Salvini, Fred Dulwich, Ben Mort (OERC), Chris Shenton (UoM) Presented by Chris Shenton (UoM). Objectives. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Aziz AhmedSaid 12PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Stef Salvini, Fred Dulwich, Ben Mort (OERC), Chris Shenton (UoM)
Presented by Chris Shenton (UoM)
Aziz AhmedSaid 22PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
ObjectivesObjectives
• To design and implement a real-time 2 polarisation beamformer on 2PAD’s processing engine;
• To design and implement the data transfer, storage and display software to run on the back end host computer;
• To test, verify and evaluate 2PAD’s performance.
Aziz AhmedSaid 32PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
System OverviewSystem Overview
MultiChannelADC
DigitalSignal
Processor
LNA&
SignalCondition
Aziz AhmedSaid 42PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Our task:Our task:
DigitalSignal
Processor
MultiChannelADC
LNA&
SignalCondition
Aziz AhmedSaid 52PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
2PAD’s Processing Engine2PAD’s Processing Engine
Aziz AhmedSaid 62PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Software Design FlowSoftware Design Flow
- We designed and implemented a highly optimised kernel for the Cyclops suitable for realtime operations;- We have created a software library of the functions required to implement realtime applications on the Cyclops;- The host computer software will be impelemented in the near future.
Aziz AhmedSaid 72PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Software Kernel and LibrariesSoftware Kernel and Libraries
• More efficient: Simple design, less latency, optimised for speed;
• Better usage of resources: Memory, thread units;
• Full control of the chip;
• Full access to all the software which enables further customisation/tuning for every application;
Aziz AhmedSaid 82PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
BEAMFORMING SCHEME:a - Ususal way:•Poly-phase filtering;•Data reorganisation;•Narrow band Beamforming of one frequency band but all antenna signals at once;
Aziz AhmedSaid 92PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Our Beamforming SchemeOur Beamforming Scheme
BEAMFORMING SCHEME:b - Our Scheme:•Poly-phase filtering;•Narrow band Beamforming of all frequency bands but for 2 antennas at a time.Reason for that:Data reorganisation in (a) requires a bandwidth proportional to the number of antennas and the signals bandwidth. Therefore it constitutes a bottleneck that reduces the maximum signal bandwidth that can be processed and the system's scalability.
Aziz AhmedSaid 102PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Logical Mapping on the Logical Mapping on the Cyclops SystemCyclops System
- Outer Nodes perform the beamforming of two antennas;- Inner nodes add two partially formed beams;- The centre node performs the final addition and sends the data stream of fully formed beams to the host computer.
Aziz AhmedSaid 112PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
PhysicalPhysicalMappingMapping
- The Cyclops systems is organised in 8X3X2 racks; - 15 nodes are neede to beamform 16 antennas;- The array can be mapped as illustrated in the figure.
Aziz AhmedSaid 122PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Data PathData Path
-Data is received into an input buffer then passes through a processing stage and the result is stored in an output buffer.- The difference between the three node types is the source and destination of the data:• For an Outer node, data is read from the Off-chip memory and transmitted via an ASwitch port;• For an Inner node, the data is received and transmitted via an ASwitch port;• For a Centre node, the data is received via an ASwitch port but it is stored in the Off-chip memory from where it is sent to a host computer.
Aziz AhmedSaid 132PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Data FlowData Flow
This Figure shows the chronological progression of data through the pipeline stages inside a node.
Aziz AhmedSaid 142PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Data Streams StructureData Streams Structure
- Data streams are constructed by the Outer nodes and are then used as they are by the Inner nodes.- Each node processes two input buffers and produces one outputs buffer.- Each buffer contains Nf frames (typically 32 frames of 1Kbytes).- A frame is the output data from the FFT-Poly-phase filter bank.- Each frame is divided into P sub-frames to hold data for P beams (P=1..8). For the input buffers of the Outer nodes, P=1 because the buffers receive raw data, no beams have been computed yet.- Each sub-frame, holds N/P complex samples (where N is the number of samples in a frame).
Aziz AhmedSaid 152PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
The BeamformerThe Beamformer
We have a fully working beamformer:
• 2 Polarisations;
• 1,2,4 or 8 beams (more is possible);
• NumberOfBeams X NumberOfFreqBands = K
(K represents the total bandwidth per polarisation)
• K ~= 300 for 1 beam and goes up to 800 for 8 beams (these are just initial estimations, based on simulations);
• For example for 8 beams: 100MHz per beam.
Aziz AhmedSaid 162PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Simulation SetupSimulation Setup
- A MATLAB broadband beamforming simulation program is used to simulate and test the beamformer.- The program generates antennas signals for a given array geometry and sources configuration.- It also calculates the beamforming coefficients for the chosen directions.- The data is stored in files.- Using system calls, the Cyclops simulator is launched.- The Cyclops program, running in the simulator, reads the input files, performs the beamforming and stores the resulting data in an output file;- The MATLAB program then reads the output file and compares the Cyclops data with the data from the beams that it has computed.
Aziz AhmedSaid 172PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008
Simulation ResultsSimulation Results
2 Polarisations, 2 Frames, 8 Beams per frame, 64 Frequency bands per beam.
- This figure shows the beamforming of two polarisations.- The data represents two frames, 8 beams per frame and 64 frequency bands per beam.- The dashed vertical lines separate beams, the solid vertical line seprates frames.
Aziz AhmedSaid 182PAD’s Beamforming Software4th SKADS Workshop, Lisbon, 2-3 October 2008