What's Inside the Mars Rovers
Captain Zion writes "Space.com has a story about the hardware and software of Mars Rovers Spirit and Opportunity. Basically, they're radiation-shielded, 20MHz PowerPC machines wirh 128Mb RAM and 256Mb of flash memory, running VxWorks. I wonder if I could make a nice firewall with one of these for my home network..."
The machines aren't as slow as the top post says... they don't run at 20MHz, they are "capable of carrying out about 20 million instructions per second". Depending on the complexity of the instructions, the processor actually runs several times faster than 20MHz.
Does a 20mhz processor really need 128mb of ram? I mean, with a bus speed that low, you can probably put the data to flash ROM just as fast. What are the chances of you using all 128mb of ram?
I imagine they can use all the storage they can, since there's no hard drive. So, the RAM acts as a cache for everything that is transmitted (which is a lot, actually). The Flash is used for more permanant software, like OS, commands, other files, ect. I'm amazed they can do it all with as little as they have.
The memory is probably partitioned, and some banks can be shut down if they fail. Thus the 128MB. OR, you could use it as texture memory (wonder what the display adapter is like ;)
- 4r0g
Your Average plane have a triple backup system, I spoke to some engineer and he said preflight checks are usally just making sure two of the systems are still working
you'd think they could at least send up some more hardware with these little critters. The extra weight would pan out, when things go bad...case in point see what they are dealing with now :)
sorry officer, left my sig in my other computer.
The response time to an interupt is the big thing though. You have to have the garunteed interupt response time. With a real time OS you get that after every iunstruction. With Linux 2.4 that wasn't really there which they remedied in 2.6 but it isn't true real time. For machines like this, planes, space shuttles and cars you will find a real time OS. Would you want your drive by wire response time to be 200 micro seconds or 4000 microseconds. In reality that makes a difference.
Evolution or ID?
Generally, no. The cache maintains a _copy_ of recently accessed main memory. Logically it is not a seperate memory space, rather it shows up as certain memory locations being faster than others when you access them. The upshot is that you still need at least as much main memory as cache space to actually use the chace.
I read the internet for the articles.
Using Flash ROM as RAM is a baaaaaad idea. There actually is a limit to how many times it can be rewritten, you'd just never get to it with any normal use of Flash (i.e. as storage space), but it's definitely within reach when you use it as RAM (or as swap space). In fact, you'll wear it out pretty quickly (depends on the system design and activity and such, but I would guess maybe a few weeks for this one).
As side effect this means that Opertunity probably has the SAME bug! :(