Real-Time Linux Over Greenland

Computers running Real-Time Linux controlled and acquired data from a new breed of altimeter during three flights over the Greenland ice sheet.

by Bruce L. Gotwols

 

At Johns Hopkins University Applied Physics Laboratory, we recently finished a new breed of altimeter and flew it over the Greenland ice sheet in June 2000. The altimeter was based on a new technique which uses Doppler information in the radar return to improve along-track spatial resolution and signal to noise ratio. This required high speed analog to digital conversion (166 MHz) and careful synchronization of all data streams down to the sub microsecond level, since the processing depends on maintaining the coherence of the signals. This processing technique has been named Delay Doppler Processing (D2P). In addition to these difficult requirements, the aircraft attitude was recorded and carefully time tagged, the position of the aircraft was tracked using the GPS system, and video imagery looking out of the bottom of the aircraft was time tagged and recorded.

The paradigm we used for the data acquisition and quick-look processing systems was "divide and conquer". Thus one computer was in charge of controlling the radar so the range gates straddled the ground even when the topography or the plane altitude changed.. A second computer sampled the data from the two antennas at 166 MHz, and sent it over Ethernet to a third computer which stored the data and also provided timely Quick-Look processing.

The whole system was Linux all the way, with two processors running the Real-Time Linux extensions from New Mexico Tech. Real-Time Linux is a patch to conventional Linux which controls enabling and disabling interrupts in a way which minimizes interrupt latency. For instance, a 24 hour test we ran on one of the (200 MHz) real time systems showed a typical interrupt latency of 6-8 microsec, and a worst case latency of only 29 microsec. This was more than good enough to guarantee we never missed receiving a pulse, which occurred once every 800 microsec. Data acquired by the real time interrupt routine is stored in memory which is shared with conventional Linux. It was the job of conventional Linux running on the same machine to send these data over the Ethernet to another computer where it could be stored on disk and analyzed in various ways to assure the operator that the radar was functioning properly.

The Quick-Look/Storage computer had dual processors, ran the high level IDL language, and used shared memory for communications between the various processes. It also used threads to handle the data incoming from the Ethernet, and nearly simultaneous storage on disk. Because of data buffering in the real time system it was not necessary to run the Real Time Linux extensions on this computer.

Another task of the Quick-Look computer was to harvest data from the onboard GPs receiver and plot the airplane's flight progress. The flight track was overlaid on a topographic map of Greenland using the high level IDL language. It was also possible to interactively overlay great circle routes between any two points, thus providing some guidance in case the flight plan had to be modified due to air traffic control.

At the beginning of this project we had planned to use DOS for the real time processors, because of the need for low interrupt latency. We were aware this would lead to complications and much coding in order to harvest the data and send it over the Ethernet to the Quick-Look computer. Fortunately, before we began work an article in the Linux Journal by Wayne Wright and Ed Walsh caught our attention, which described an airborne system similar to to the one we were planning. A quick trip to Wallops Flight Center to converse with Wayne Wright convinced us that Linux with the real-time extensions was a much better way to go. Now that the project is over we can say that not once did we regret this decision.

This project involved a myriad of things -- hard real time, communication via sockets, shared memory, Symmetric Multi-Processing (SMP), high level IDL programming, Accelerated-X, talking to GPs receivers, real time plotting of the flight track over the ice sheet, and harvesting the video from a boresighted camera with a Matrox Meteor card. Obviously with this much to talk about I won't have enough time go into much detail. But some people might be interested in it just to see some of the possibilities. At a later date if there is interest, I will put together a lecture on the details of Real Time Linux from New Mexico Tech, and the related Real Time Application Interface (RTAI) from Italy. More details on the D2P altimeter project, including typical results, can be found at fermi.jhuapl.edu/d2p.

The D2P team:

Keith Raney -

Principal Investigator

Bob Jensen -
System engineer
Greg Burks -
Tracking computer software
John Daniels -
RF system lead
Marshall Jose -
Digital system
Bruce Gotwols -
Data acquisition lead
John Penn -
Radar synchronizer
Ron Schulze -
Antenna lead
Ray Sterner -
Quick-look and display software

 


NRL P3 aircraft on the tarmac.


Instrument racks on the aircraft. the three systems running Linux are on the right.


Flight tracks for three flights over the Greenland ice sheet.


Quick-Look processing while in flight. Plots shown are histograms, Doppler spectra, and the instantaneous raw signals.


Glacial flow imaged by the video camera in the bomb bay.


This talk will be given at the APL Linux Users Group meeting :

When:
1 March 2001 at 4:00 PM
Where:
Room 14-627

NOTE NEW LOCATION!