Mars Rover Curiosity: Less Brainpower Than Apple's iPhone 5
Nerval's Lobster writes "To give the Mars Rover Curiosity the brains she needs to operate took 5 million lines of code. And while the Mars Science Laboratory team froze the code a year before the roaming laboratory landed on August 5, they kept sending software updates to the spacecraft during its 253-day, 352 million-mile flight. In its belly, Curiosity has two computers, a primary and a backup. Fun fact: Apple's iPhone 5 has more processing power than this one-eyed explorer. 'You're carrying more processing power in your pocket than Curiosity,' Ben Cichy, chief flight software engineer, told an audience at this year's MacWorld."
Line Replaceable Unit, meaning it's an unit that can be swapped out quickly.
Somehow I don't think that term really applies here...
Cosmic rays go straight through the earths atmosphere.
No, it doesn't. If that were true we'd be all dead. Comic radiation in interplanetary space is 400 to 900 mSv annually, which is 1000 to 2200 times stronger than dosage at sea level on Earth (0.4 mSv). Earth's atmosphere blocks most radiation below 1 GeV.
Off the shelf computer hardware does indeed work just fine in space. You can watch people on the ISS using normal laptops and cameras all the time.
That's because ISS is in LEO and thus is still protected by the thermosphere and Earth's magnetic field. On a trip to Mars neither of those protections would be available.
You're conflating serveral things..
Space Qualification doesn't have a lot to do with rad hardening. It's more about manufacturing processes, reliability, and testing to work over wide temps. That off the shelf computer probably won't work at -40C or +75C, while the processors in most spacecraft do. ISS or shuttle isn't a good example: it's basically an office environment: it even has *air*.
Rad hardening is something else. And the space processors *ARE* more successful at hardening than garden variety CPUs. Take a look at the LEON3FT SPARC core, for instance (Available commercially as the Atmel AT697 or the Aeroflex UT699, or you can burn it into an Actel RTAX2000, if you like). It has register paths that have error correction, etc. The demonstrated performance in a radiation environment *is* better than the non FT version.
There's single event upsets (SEU) aka "bit flips" which EDAC or parity works nicely for. Your laptop flipping a bit might not be a big deal.. most consumer software has enough bugs and things that you just restart and move on. If the processor controlling the rocket motors during entry descent and landing screws up it's a $2.5B hole in the ground. So internal registers in the space CPUs tend to be triple redundant or other upset mitigations.
But that's really not the big issues. There are things like Latch-Up.. that particle going through causes a latchup, and the resulting high current at a small location melts the chip. Oops, dead. There are latchup immune designs and processes, and there are latchup monitor/reset circuits, but it's not universal.
There's single event gate rupture (SEGR) which is where a MOSFET gate gets punctured because the normal charge on it is close to the failure level in normal operation, and the particle deposits just enough more to push it over the edge. Would you notice this on a modern CPU? Maybe it's in the microcode for calculating square root or something and you wouldn't for a long long time.
We use a lot of FPGAs in spacecraft these days.. If it's a xilinx, that particle can flip a configuration bit, and now you've just programmed your FPGA to have two outputs connected to the same "wire" and they have opposite values. Oops some dead gates now, or if it's bad enough dead chip.
ISS is a benign radiation environment.. about a Rad(Si) per year or so. There are *humans* on ISS, after all. After all 600 Rad will kill someone in days, 100 Rad will make them pretty sick. A typical design dose for a Mars mission might be 20kRad. For going to Jupiter, maybe a MegaRad?
But even in that benign radiation environment, a lot of COTS equipment will fail, and there's no way to predict, short of test. So they take all those COTS widgets and run them in a proton beam and figure out what the mean time til failure is. If it's long enough, you send it up to ISS and have at it. There's an awful lot of stuff that has "expected life on ISS" of something like 90-180 days. Google for the papers or look at the website http://www.klabs.org where a lot of this stuff is collected. 180 days on ISS is plenty if you're sending new stuff up on a regular basis. Even at $100k/kilo, that's pretty inexpensive to just send a new iPad up every few months if one dies.
If you're sending a billion bucks to Mars for 10 years, I think you might want something a bit better.
This is the computer chip in the Mars Rover: https://en.wikipedia.org/wiki/RAD750
Specifically, they're using two *133Mhz chips rated for 1 Megarad.
1 Megarad is about double the hardening they actually required,
but I'm guessing they overspecced so that the Mars Science Laboratory will outlast its planned mission length.
Anyways, if you're in low earth orbit (like the space station) you can get away with radiation tolerant electronics.
But out in cold hard space, without the earth's atmosphere, you need radiation hardened electronics.
*Not 200Mhz as so many articles are quoting
Most satellites and space based processors are no more successful at
hardening than your garden variety laptops. They just program them better and watch for memory errors.
What? If it was that simple, we'd be using modern processes, instead of technology that debuted in 1997.
Instead, it's quite the opposite, where a modern 24nm process is impossible to harden to the same strength as an old 150nm process.
[Fuck Beta]
o0t!
The reason is that integer performance isn't worth wasting the silicone on in a mobile processor. It is already well beyond "good enough". What does count is power consumption, where ARM is still in another league to x86, and in floating point operations. ARM has NEON SIMD instructions for that and they are pretty good for audio/video processing and games. In addition a lot of stuff is handed off to the GPU now anyway (transform and lighting, video decoding) which is always going to be far more efficient.
There is a reason there are not many x86 mobile devices. Atom is more expensive and hard to get good battery life from. Raw performance is good but having four low power cores and a good GPU is better for providing a smooth user experience and mobile games.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC