Jump to content

Why the Perseverance Rover computer is so "outdated"

Fabioo
47 minutes ago, PlayerLorenzo said:

The computer inside is not designed to play games or browse the web. It is designed to withstand radiation, provide instructions to navigate the Rover, and be reliable and fail-safe. And 256 MB of RAM is good if the only thing you're doing is navigating Martian terrain . Oh, and don't expect the thing running a complex OS such as Windows or even Linux, it probably runs a very basic proprietary real time OS that is designed to be reliable and fail safe, along with being responsive even by the microsecond. 

Perseverance itself runs VxWorks (like most NASA stuff), but its drone (Ingenuity) actually runs linux!

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to comment
Share on other sites

Link to post
Share on other sites

7 minutes ago, igormp said:

Perseverance itself runs VxWorks (like most NASA stuff), but its drone (Ingenuity) actually runs linux!

Oh, thanks.  And yes, even though it runs Linux, it runs on a LTS kernel.

I edit my posts quite often, please refresh your browser if you can.


Specs :
OS : Windows 11 Pro 
CPU : AMD Ryzen 5 4600G
RAM : 16GB 3200MHZ CL16 RAM

GPU : ASRock Challenger RX 6600
Display : Acer KA242Y
Mainboard : GIGABYTE B450M DS3H WIFI
Storage : 2TB Seagate Barracuda HDD
                240GB ADATA SU650NS38

Link to comment
Share on other sites

Link to post
Share on other sites

It's the same reason why the computer in your car has so little specs.

Phone 1 (Daily Driver): Samsung Galaxy Z Fold2 5G

Phone 2 (Work): Samsung Galaxy S21 Ultra 5G 256gb

Laptop 1 (Production): 16" MBP2019, i7, 5500M, 32GB DDR4, 2TB SSD

Laptop 2 (Gaming): Toshiba Qosmio X875, i7 3630QM, GTX 670M, 16GB DDR3

Link to comment
Share on other sites

Link to post
Share on other sites

The mars rover's nuclear power pack only provides 111W for the entire thing. Computers being fast on mars is irrelevant, there's no one waiting next to it for it to finish loading. 

Everything that goes to space is validated for years before it even makes the maybe list, so yea sure. It's a low power SoC probably running unix with not much memory, and it's engineered to accomplish its mission.

What did you expect, RoverTracingX 3090 with RGB underglow from Corsair?? 

Link to comment
Share on other sites

Link to post
Share on other sites

It doesn't need to do much on Mars, to be honest. It basically needs to do a few things, namely: gather data, analyze samples, beam that data to (I would assume) a companion satellite (which would beam that data back to Earth), and lastly, the most power-hungry of all, moving the rover itself. These equipment are all purpose built, or went through YEARS of study and experimentation just to have a chance of MAYBE going on the rover itself. You dont just build a $1500 PC for lolz and just send it out to another planet. The computer is the heart of the rover, and if one component, just one, were to malfunction, say, a memory chip going bad due to background EMI. You can't just send someone over to replace a memory module. That thing is on its own for the rest of its life. So yeah, TL;DR, computers on another planet need to be reliable AF, because there's no one there to replace parts.

Link to comment
Share on other sites

Link to post
Share on other sites

10 hours ago, Maury Sells Wigs said:

My broader point is that we have to be skeptical of things we can't prove with our senses.

 

We have to be careful who we trust.

 

Do you disagree?

Your senses lie just as much if not more than the news. 

Link to comment
Share on other sites

Link to post
Share on other sites

Firstly; no bloat in the sofrware.

 

Secondly; You’d be impressed what is possible even with limited software with good coders. Because we drown in computunal power these days the art of squeezing everything out of the hardware is dead in the main stream.

 

 

Here is an old example, the video in the link below is an Amiga demo that ran on a A500 and fit into a 880 kb floppy.

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/21/2021 at 5:27 AM, Fabioo said:

imagined that due to all its sensors, real time maneuvering capabilities, machine learning and so on the computer would be a beast. Something multicore with a little bit more processing power than 200 megahertz.

There are many different reasons why this processor was used instead of something newer, or something faster.

The first, and likely biggest reason, is existing software and developer familiarity. We are talking about people who are writing extremely complex software in an excruciatingly complex environment, with very many very detailed and exacting no failure allowed requirements.

The second biggest reason is manufacturer comfort. This thing was built at a time when the director of NASA was used to getting things through back channel from longtime allies and suppliers. Basically, for a long while, our space agency was involved in a racketeering scheme (it usually isn't characterized like that, but one could argue that that's what it was). BAE has long been a supplier to virtually every part of the government that buys high tech items.

The third reason is going to be that the RAD750 package is radiation hardened. This is a huge requirement, and having radiation hardened electronics can save the rover manufacturers serious weight. Weight is critical in every single mission, much less sending an SUV and a helicopter to Mars.

The fourth reason that a package like this would be used is that it's a single board computer, and a radiation hardened one at that. That saves alot of time, and money, in integration work. Putting a modern(ish) processor in a system is one of the most complex things you can do. The RAD750 is very well flight tested (it's flown on virtually every mission from every space fairing NATO ally since it's introduction in 2001), and having the processor already on a board, and all of it radiation hardened, is a huge time, effort, and money saver.

The fifth reason is that quite a big part of the performance of modern application processors (what's in your computer or phone) is branch prediction. In a realtime environment like this, branch prediction mixed with deep pipelining is no good because it makes it nearly impossible to prove that your critical paths execute in the required amount of time (which is part of writing "real time" code). If the branch predictor misses, there is no way to know how long it will take for the processor to recover.

The sixth reason is that that's still a beastly processor when you think about it from the perspective of hand writing code (with an abnormally high amount of hand tweaked assembly at that) with the sole purpose of performance in mind. Your desktop needs a much faster processor because the OS has to manage all of these different applications from all of these different manufacturers all trying to exploit weak security, use up all of your resources, and trying to use the same limited resources all at the same time. That slows things down ALOT



As an aside, the rover as a whole has more storage than what's listing in your OP. The storage listed in your OP only references what's on the RAD750 board. There is a 4GB SSD available on board for program storage. The cameras also aren't as nice as they appear. The highest resolution camera on board only takes 1600x1200 2-megapixel images (that's almost 6 megabytes per image). The rover also regularly sends it's images back to us, and then will get deleted once we are sure we got them correctly. NASA says that they figure the storage on board is good for about one Sol (a Martian year) worth of data.

ENCRYPTION IS NOT A CRIME

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/21/2021 at 12:34 PM, lewdicrous said:

It's not meant to run Doom.

What...?

 

It's purpose built, it's not meant to compete when what you have at home.

Hey Doom can run on anything, even a Pregnancy test.

 

 

/s

You can take a look at all of the Tech that I own and have owned over the years in my About Me section and on my Profile.

 

I'm Swiss and my Mother language is Swiss German of course, I speak the Aargauer dialect. If you want to watch a great video about Swiss German which explains the language and outlines the Basics, then click here.

 

If I could just play Videogames and consume Cool Content all day long for the rest of my life, then that would be sick.

Link to comment
Share on other sites

Link to post
Share on other sites

* Thread cleaned *

 

This is getting very close to trolling at this point, if you have nothing to contribute, move on, you're not obligated to reply, even less to spread conspiracies.

If you need help with your forum account, please use the Forum Support form !

Link to comment
Share on other sites

Link to post
Share on other sites

It's an interesting question - one I wondered myself when I found out the specs of the system! 

 

I think there is often a large gulf between consumer and professional grade hardware in many industries. Often industry appears to be using seemingly outdated or antiquated equipment - but there can be good reasons behind it. 

 

Other examples that spring to mind is the US nuclear arsenal running off 70's era floppy disks, and the automated Vancouver Skytrain also requiring newer 80's era floppies to boot. 

 

I think its likely there is some more familiar consumer-like microprocessors on board, for doing some interesting machine-learning type stuff, but these are certainly not in control of the rover. 

 

I think it really comes down to KISS (Keep It Simple Stupid!) 

 

I'm often happy to champion the simpler solution, with less complexity to go wrong and more resiliency. I certainly wouldn't trust a windows computer to land a $2.4bn rover on the surface of Mars! 

 

Interestingly, I believe ethernet and USB have been deployed to connect some of the cameras up. The link between the rover and sky crane was an ethernet cable. 

 

As other people have mentioned, the rover only really needs to carry out data collection, a lot of the heavy processing can be done on earth. I'm sure in that case a lot of powerful hardware will be deployed! 

 

I don't think people should jump down OP's throat, they put "outdated" in quotation marks and clearly created the thread in the knowledge that there was probably a good reason for it. It's a really interesting subject looking at the deployment of computer systems in various industries, and how some surprisingly basic hardware, perhaps long forgotten in the consumer space, can prove itself useful in the cutting edge of engineering and science. 

On 2/21/2021 at 1:37 PM, kelvinhall05 said:

Absolutely wonderful video from criminaly underrated channel...can almost guarantee basically the same thing applies to Perseverance.

 

Cheers! Great watch! 

Link to comment
Share on other sites

Link to post
Share on other sites

In a Q&A after the landing there was a discussion about additional computers on the rover that do other tasks. The main computer, which is as mentioned a relatively simple PowerPC chip running at 200MHz, is designed around being reliable in the extreme conditions of Mars (mostly around radiation but also temperature). This main computer is responsible for critical systems, such as moving the motors and stuff like that (and I believe managing communications too, although there might be another computer in the communications modules that offloads some of the work, and I wouldn't be surprised if that computer was similarly hardened).

 

In addition to the main computer though, there is a relatively commercial "Intel based computer" which in the Q&A is described as handling the vision systems and compression of videos. This computer is described as running Linux and using the FFMPEG library.

 

From a bit of searching I found this paper which seems to describe it https://link.springer.com/article/10.1007/s11214-020-00765-9

 

It's an interesting read specifically because of how normal it all sounds. The computer is called the DSU (Data Storage Unit). It's an Atom CPU with a 480 GB SSD connected over SATA. It's an off the shelf computer from CompuLab. Some of the devices are connected over USB. (I'd probably wager that it's not using the USB ports mechanically. I wouldn't be surprised if they used different, more reliable connecters or just soldered the wires on.)

 

Now you might ask, why Atom and not something with more power? (and similarly why SATA and not NVMe)

The reason is probably a mix of "Because it was good enough" and power usage. The Rover has a power supply that uses radiation to generate heat, but it only generates 110W of power at launch (and the output will go down over time). With that 110W power budget you need to run the computing systems, communications, scientific equipment, cameras, and the motors that move the rover on the surface. There is also a pair of batteries that is charged by the output when it's not being used, so that the energy can then be used for the things that need it (such as some of the scientific equipment that uses more than 110W by itself.)

Let me tell you, 110W is not a lot for a power budget of such a complex machine. And if you could save even a watt by going for a simpler, more efficient CPU, you'd do it. And if you're only running what needs to be run, and not wasting CPU resources on unnecessary programs, an Atom can do the job for what they need.

(It might even be possible that the Atom CPU includes a QuickSync encoder which does part of the work...although that isn't mentioned anywhere).

 

The more interesting question in my mind is how they took a regular Atom CPU up to Mars without hardening it. I'm sure they shielded it in some way, and I'm sure that they came to the conclusion that it's not as mission critical, and if it fails it doesn't destroy the entire mission, but it still feels "edge-of-the-seat" adventurous.  (Another possibility is that they know that it will fail in a certain time frame and they expect to be done with the relevant mission tasks before the time frame is reached.)

 

I hope this was interesting to someone. The article has a bit more details.

(I find this fascinating because I have some light experience in the field. I've worked on similar embedded products with complicated requirements and difficult constraints (including power and reliability requirements) so it's interesting to see how NASA/JPL's engineers made the tradeoffs they were required to make. I can't judge them on it, I've had completely different tradeoffs to make, and obviously I expect they understand their requirements better than me looking in from the outside without a great understanding of everything in their field, but it doesn't make it less interesting to try to learn from it.)  

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/21/2021 at 7:20 AM, SGT-AMD said:

Maybe you should watch the movie "Apollo 13", as it will show you how much power you have available. I'm sure that the mars rover uses less power to do things, as it is unmanned.

 

 

According to the Wikipedia article, 110 watts from a "Multi-Mission Radioisotope Thermoelectric Generator".

 

Products need to be reliable, lightweight, and cost efficient. There are no parts replacements on Mars. NASA's budget is really quite limited when you consider how astronomically expensive it is to launch stuff into space, let alone Mars. Also to consider is the drone that the rover has (Ingenuity) that probably eats up a lot of power. Running out of power is basically a death sentence for a rover. 

 

(WARNING: I EDIT MY POSTS ALL THE TIME. GRAMMAR IS HARD.)

"As I, a humble internet browser who frequents the forum of the well known internet tech YouTuber 'Linus Tech Tips', named after host Linus Sebastian, have trouble understanding the intent of the authors' post, I find solace in the fact, that I am indeed not alone in my confusion. While I stumble through the comments above, I am reminded of a quote which helps me to cut through ambiguous and unnecessary verbiage. The simple eloquence of the phrase often uttered on internet forums leaves any reading it in no doubt as to the true intent of the wording. I believe that I, and indeed all of us can take a lesson from the message left by it:"

 

(Formerly known as @EjectedCasings)

"Thanks bro, my inner grammarian just had a stroke."

-Yours truly, EjectedCasings

___________________________________________

"It's stupid, but it works"

"AAAAAAHHH WHY AM I SPEEENING!"

 

 Enthusiast web surfer, 'epic' gamer.

#muricaparrotgang

 

Link to comment
Share on other sites

Link to post
Share on other sites

Lots of great input guys. Thanks for everyone that gave constructive answers.
Apart from some trolls and tinfoil hated people this topic have some really great inputs. Most questions I had were answered and even better they were based on science and not tinfoil. Thanks a lot for everyone that contributed.


And for the limited thinking crowd, the reason I mentioned LS is that he can make a video about the topic (that's what he does best, since it is his business) and not desinging a f***** Nasa computer. Some people need to learn how to interpret what they are reading ffs.

Cheers

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/21/2021 at 6:09 AM, Sauron said:

Older technology with larger nodes is more resistant to radiation. A lot of satellites still run on a 486.

 

And of course there's the power consumption concern, don't want any more hardware than you need on something like this.

Same for aircraft.  I read about a decade ago that avionics computers will run on chips that are basically ... a dozen or so 386's implemented in one chip.  Thus they can have several processors fail and still be able to get home alive and safe. 

A lot of avionics computers and automotive computers are like that.  If a computer controls everything, and it fails people die.    Our PC's are important but  no ones life is in their hands in real time. 

Link to comment
Share on other sites

Link to post
Share on other sites

The OS and other Software that Perseverance and the Orbiter uses, wouldn't that have to be simple as possible but not too simple?

 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×