MIPS in space: Inside NASA’s New Horizons mission to Pluto

A few months ago I published a short overview of the greatest MIPS microchips from the 1980s and 1990s. One of the stars of that era is MIPS R3000, a CPU that has been used in many consumer and embedded devices. Initially known for powering the original PlayStation game console and a range of SGI IRIS and Indigo workstations, R3000 is currently guiding the New Horizons space probe on its mission to Pluto and beyond.

In fact, if you’ve been driving along Route 101 from Silicon Valley to San Francisco, you might have already noticed our new billboard celebrating the Pluto flyby:

MIPS: from PlayStation to New HorizonsMIPS: from the original PlayStation to the New Horizons mission to Pluto

But what makes New Horizons tick? I recently had the chance to ask the New Horizons team at the Johns Hopkins University Applied Physics Laboratory – where engineers and scientists are also working on Solar Probe Plus, a new NASA mission aiming to fly a spacecraft into the sun’s atmosphere (ed. clearly no one told NASA that Danny Boyle already took care of that).

However, the engineering team kindly agreed to answer a few questions about the systems aboard New Horizons and revealed some exciting information in the process.

The evolution of spacecraft computing

A space mission is a complex affair that involves many companies collaborating closely to produce a spacecraft that is precisely engineered to cope with the challenges that arise in the coldest and darkest corners of our solar system.

For New Horizons, NASA has assembled a cross-functional team that includes scientists, researchers, engineers and other departments from world-renowned institutions such as the Johns Hopkins University Applied Physics Laboratory (APL) and the Southwest Research Institute (SwRI). In addition, other partners and co-investigators (Boeing, Lockheed-Martin, Stanford University, etc.) have joined in the effort, bringing valuable expertise in specific fields and helping the whole operating run as smoothly as possible.

NASA New Horizons poster#PlutoFlyby

A closer look at the computer systems aboard the probe reveals many parts that would be considered archaic by today’s standards. However, it is important to remember that the New Horizons project is based on initial research work that began in the 1990s at a time when 32-bit computers clocked at a few hundred MHz were the norm.

Secondly, space missions mandate radiation-hardened components that require a significantly longer time to build compared to the standard parts inside a consumer device. The radiation-hardening technique ensures systems continue to operate without fault under the harshest space conditions.

Mongoose-V New Horizons CPU (MIPS)Mongoose-V is the MIPS-based brain inside the New Horizons space probe

The diagram below illustrates a brief history of processors used on APL spacecraft and instrument systems. Notice how the requirement for higher performance in flight software forced a transition from custom-built 8- and 16-bit microcontrollers to a more capable 32-bit MIPS microprocessor suited to handle the increase in on-board memory and lines of code.

Flight hardware and software for space probesEvolution of spacecraft hardware and software prior to New Horizons

The hardware

New Horizons uses four Mongoose-V processors that were built using a grant from NASA’s Goddard Space Flight Center. These radiation-hardened chips have also powered several space missions to the moon, Mars, Venus, the outer planets and in many earth-orbiting NASA satellites.

New Horizons, Nokia N93, Meizu MX5 comparisonA comparison between New Horizons and two smartphone flagships from 2006 and 2015, respectively

There are two Mongoose-V chips controlling the navigation and data handling systems, respectively (and another set of two used for back-up). Mongoose-V features a modern architecture including a MIPS R3000 CPU for general-purpose computing and a MIPS R3010 floating-point unit (FPU) for math-intensive operation, alongside on-chip cache memory and many I/O peripherals. Having one CPU in charge of each subsystem provides better control for power management and fault tolerance (i.e. if one CPU goes down it only disables one instrument, not the whole spacecraft.)

If you’re in the market for a Mongoose-V processor, a flight-ready chip will set you back $20,000 to $40,000 per unit, depending on how many you want to buy.

New Horizons also includes 16GB of flash memory and a multispectral 1 megapixel color camera. The probe must store data for long periods because the average downlink speed sits around 2 kilobits per second. This means it takes New Horizons approximately 3-4 hours to transmit an image roughly 1200 pixels wide by 900 pixels high back to earth.

While most smartphones today rely on 4G networks for the communications department, New Horizons uses NASA’s more advanced Deep Space Network to make its long-distance calls. A mesh of giant radio antennas, DSN is the largest and most sensitive scientific telecommunications system in the world. One of its crowning achievements has been guiding the astronauts aboard the Apollo 13 mission back to earth – and saving their lives in the process.

The software

Initially, spacecraft software teams tended to work separately based on the specifications of the interfaces between subsystems. On missions such as New Horizons, with a compressed schedule and a mid-size budget, greater efforts were made to share software designs and components among teams to reduce costs and meet the tight deadlines.

Before adopting commercial CPUs like the MIPS R3000 microchip for their space missions, NASA used custom-designed processors which also required in-house development of software and programming tools. For instance, the processor used for several satellites launched in the 1980s called for a custom-designed assembly language.

The Mongoose-V development board offers a choice of three software environments: Wind River VxWorks Tornado, Green Hills Multi, and Mentor Graphics Nucleus PLUS; the latter is a real-time operating system optimized for embedded systems that also ticks inside the new MIPS-based Samsung ARTIK 1 IoT platforms launched only a few months ago.

Nucleus RTOS - MIPS wearablesAlongside flight software, Nucleus RTOS is also used in wearables and IoT devices

The move to the MIPS architecture meant the systems used for New Horizons could rely on standard cross-development tools obtained from commercial vendors. These tools are much more powerful and convenient to use, and also run on many workstations or desktop computers. For example, a common boot program was developed and used for several instrument systems on New Horizons.

A short Q&A with the New Horizons team

  • Can you offer a brief summary of the tangible scientific and engineering accomplishments of the New Horizons probe?

New Horizons is the first spacecraft to visit the distant dwarf planet Pluto and the Kuiper Belt region on the outskirts of the solar system. The fastest spacecraft ever launched (January 19, 2006), New Horizons raced across the solar system in record time to encounter Pluto and its five moons on July 14, 2015. Not only did New Horizons complete the initial reconnaissance of the classical solar system, it has set the stage for the exploration of an entirely “new” class of planet, in a region we are still learning much about.

In fact, New Horizons data (which is being returned to Earth over the next year) is already showing Pluto and its moons to be complex, interesting and enigmatic worlds unlike any we’ve seen before. Mission science news and images are updated regularly at http://pluto.jhuapl.edu and http://www.nasa.gov/newhorizons.

  • Nowadays, consumers receive over the air (OTA) software updates for their personal devices. Can you tell us how you’re refreshing the software on New Horizons? What operating system is powering the probe?

As with all APL missions, we have a Flight Software Lead who is responsible for working with Mission Operations and the Engineering team to compile issues or improvements relating to the flight software.  These go into an issue tracking database which is reviewed by a Configuration Control Board or CCB.  From there, the board judges whether any new software is needed.  It’s a pretty high hurdle to get new software on board a spacecraft, as it should be — we simply cannot update at the rate of say, an app.  Nor do we want to. 

  • New Horizons also uses a MIPS-based chip called Mongoose-V. How long has APL used MIPS and what do you like about the MIPS architecture? Can you walk our readers through what it means to select a particular CPU for a space mission?

APL first used the MIPS-based Mongoose-V processor on the TIMED spacecraft. TIMED launched in 2001 on a two-year planned mission – but it is still operational today and is exploring Earth’s mesosphere and lower thermosphere.  The Mongoose-V was also on CONTOUR and then on New Horizons.  

When selecting a processor, we look at many characteristics including software support, heritage, and other factors, but one of our primary constraints is power. Power used by the processor is power that can’t be used elsewhere on the spacecraft – such as for the scientific instruments. Hence, the less power the avionics use, the more power is available for scientific data collection. Once we determine what processor will fit within the constraints, we then have to analyze the selection to make sure that processor will be able to run the needed software within very strict timing constraints.

APL has a well-defined quality process gained through decades of spacecraft development that ensures we will be successful.

  • Can you give us a feel for the code complexity in the case of New Horizons? What are the performance and power requirements that CPUs in space need to handle?

Power is a big factor in our design, which in turn drives the clock rate lower and lower. Unfortunately, in most cases, there simply isn’t as much processor cycles as we would like. As a result, one of the design goals in our software is to remove complexity from our code unless it is really needed.  This not only drives down processor loading, but also reduces risk that a bug will be introduced.  

  • Finally, can you tell us where the team is planning to send New Horizons next? Should we expect the probe to go beyond the Solar system?

The New Horizons mission – responding to the priorities of the planetary science community – was designed with multiple encounters in mind. Just last month the team identified a small Kuiper Belt object named 2014 MU69 that New Horizons could fly past and observe in January 2019, provided NASA approves a proposal for an extended mission. New Horizons is on a path to take it out of the solar system.

Final words

I hope you’ve enjoyed my detailed overview of the hardware and software powering New Horizons to the farthest corners of our solar system. Please don’t hesitate to leave your questions and feedback in the comment section below and I’ll forward them to the engineering team at NASA.

Tune in next week for an exclusive interview with the Japan Aerospace eXploration Agency (JAXA) answering a series of questions about another MIPS-based space probe: Hayabusa-2.

Follow us on Twitter (@ImaginationTech, @MIPSguru) and search for the hashtag #MIPSinSpace for more news and updates.

, , , , , ,