As I talked about last week, the news lately has been dominated by the Olympics, but NASA managed to grab a few headlines by successfully landing the Curiosity rover on Mars.
I have always been interested in space exploration and I am curious about what the inside of embedded systems look like. To me, Curiosity is just an embedded system with 6 wheels and 17 cameras …
I have always been impressed by the economy in design that NASA employ, particularly with embedded systems. In a posting a while ago I drew a comparison between the computing power of the Apollo lunar lander and a current-day musical greetings card. I have been accused of making fun of this older computer technology, but that is far from the truth – I am incredibly impressed by how much can be achieved with such limited resources.
Finding the specification for Curiosity’s computer systems was not hard. There are two RAD750 computers – one for primary use, the other as backup. These devices were first released in 2001, so it is very mature, reliable technology that has been utilized in a variety of spacecraft.
The RAD750 is based on the IBM PowerPC 750 – a familiar architecture, for which there are a wide range of tools and software IP available, making it an attractive choice. The key design requirement of these computers is radiation hardening, which is necessary for them to survive the trip to Mars and the high radiation levels on the Martian surface. The CPU is clocked at 200MHz, which is quite conservative, but I guess conserves power. I do wonder how important this is, as Curiosity has a nuclear reactor and does not rely on solar power.
The memory system includes 250MB of RAM and 2GB of flash memory. I would guess that this implies that the code runs out of flash. Or maybe some runs out of RAM for speed. I would be interested to know the details. However, I rather suspect that the NASA guys have little to learn from my posting about memory footprint.
Considering these computer resources, it is tempting to draw a comparison with a familiar device. This time, I think it is safe to say that Curiosity’s brain can out-perform a greetings card. By my calculations, the computer has about 25% of the power/resources of an iPhone 4s.
I do hope that this mission is a success over the next 2 years. I was a kid when Apollo 11 landed on the Moon and I have been keenly awaiting a manned trip to Mars ever since. Although I doubt whether my proposed plan will be adopted, I hope that human footprints will be made on the red planet during my lifetime.
Stop press: I read in the news that NASA are sending Curiosity a software update. This was all planned. The software that was installed before launch was primarily to control the landing and initial deployment phase. It will now be replaced by code to handle the next stage of the mission.