Software Engineering

PRA develops software to support and enhance our atmospheric physics, signal and data processing, systems integration, and field testing efforts. Most of our software is developed in MATLAB and C/C++.

Development Areas

  • Algorithm development and testing

  • Radar processing

  • System simulations

  • Data generators

  • Analysis tools

  • Data acquisition tools

  • High-speed processing (GPU-based)

Capability Areas


  • C/C++

  • GPU

  • Hardware interfaces

  • FPGAs

Contact Information: Susan Dugas, M.S.E.E. Software Engineering

Holographic Radar Simulation & Analysis Tools

To investigate the performance of the Holographic Radar concept, PRA developed two MATLAB-based simulations. The first simulation is a 2-D phased-array simulation that models an ideal Holographic Receiver. This tool enabled investigation of several different concepts for the Holographic Receiver and provided a more intuitive understanding of the requirements for the Holographic Receiver. The second simulation focused on modeling errors including compression loss so that the performance of the Holographic Receiver and Holographic SLC could be characterized using a more realistic model.

Sonobuoy Location System Simulation

PRA developed a detailed MATLAB simulation of two Sonobuoy Location Systems (TDOA/FDOA and R/D) that included realistic error sources such as flight path uncertainties, sonobuoy drift, antenna effects, thermal noise, phase errors due to oscillator noise, dynamic range considerations, and coherency errors. The simulation was used to compare the performance of the two approaches that ultimately led to the selection of the Range/Doppler system as the preferred approach. The TDOA/FDOA simulation and the Range/Doppler simulation have a similar design with the exception that for the Range/Doppler architecture, the sonobuoy acts as a transponder to relay the downlink signal back to the aircraft using the uplink signal.

Data Acquisition

PRA has developed a C++ library to interface with the Pentek 71660 ADC from a linux-based platform. PRA is developing several tools to utilize this library to support 200 MHz multi-channel data collection from a radar receiver.

Radar Processing

High-Speed Processing (GPU-based)

PRA is developing capabilites to utilize GPUs for real-time and near real-time processors.

Real-time Radar Processor Library

PRA is developing a C++/GPU library to implement pulsed-Doppler radar processing for LFM and BPSK waveforms in a real-time environment. GPUs are used to enable the real-time capability of the software for a low hardware and development cost.

Multi-channel Radar Processor

The PRA C++/GPU radar library is being used to develop a multi-channel real-time radar processor. The radar system is a pulsed-Doppler interferometric radar using BPSK waveforms. A GUI is also under development for interfacing with the radar processor and viewing the range-Doppler maps and tracking data.

Clutter Mitigation Radar Processor

The PRA C++/GPU radar library was used to develop a real-time LFM pulsed-Doppler radar processor. A GUI was also developed to view the range-Doppler maps and tracking data.