73

Because shielding against radiation is heavy, and weight is the enemy of getting things into space. CPUs are quite sensitive to radiation, and some types of radiation (cosmic rays) are not only quite good at penetrating most things, as they do, they cause a cascade of secondary radiation. To protect a device form any of this radiation getting through is not ...


72

This Wikibooks link lists its strong points, some of which are: An extremely strong, static and safe type system, which allows the programmer to construct powerful abstractions that reflect the real world, and allows the compiler to detect many logic faults before they become errors. Modularity, whereby the compiler directly manages the construction ...


54

Timing. Ada was developed in the 1970s and 80s with the intent of replacing the plethora of languages used in the US Department of Defense's realtime systems. NASA (and also organizations from Europe) were active participants. The DoD mandated Ada for all major development in 1991. NASA did much the same. The International Space Station had been a paper ...


36

The Apollo Guidance Computer used a state vector either centered at the Earth or the Moon. The switchover point is the the lunar sphere of influence, defined in the AGC as 64,373,760 meters (https://www.ibiblio.org/apollo/NARA-SW/R-577-sec5-rev4-5.6-end.pdf PDF page 127). When in the idle program P00 the AGC will periodically check if it needs to update the ...


21

This answer is a guess based on NASA Technical Note D-5869: Description and performance of the Saturn launch vehicle's navigation, guidance and control system (referred to as 'D-5869' below), also the Launch Vehicle Digital Computer pages (referred to as 'LVDC' below) and finally the description in the video in the question (referred to as 'the video' below)....


20

1. How did the Apollo guidance computer handle parity bit errors? According to Apollo 15 Hardware by Delco Electronics, Parity Alarm Occurs if any accessed word in fixed or erasable memory whose address is $10_8$ or greater contains an even number of "ones." All locations of $10_8$ or greater are stored in fixed or erasable memory with odd parity. ...


18

I remember taking Computer Science courses in the late 90s. The professor of CS explained to our meager group of CS majors that he was going to teach us C, rather than COBOL or Ada, because it would be more useful in general. At the time, they were the major programming languages colleges were teaching back in the day (every major university in the area ...


17

That ring is the "instrument unit" (IU). Here's a picture of the component layout. There is more there than a computer, but it's mostly dedicated to guidance, navigation, and control. There's a hugely detailed fact sheet here. It lists the systems of the IU as A more detailed layout (same source as first picture). Image source


14

You actually ask a really good question. And the answer is, we do both, depending on the needs. NASA tends to go for the ultra-reliable, and radiation tolerant components are more reliable, thus it is their preferred way. Many commercial satellites, however, use non-space grade components that are shielded lightly, and with software and hardware built in a ...


14

From the website: AdaCore tools can be used to meet verification objectives including coding standard compliance, code accuracy (prevention of errors such as buffer overrun, integer overflow, and references to uninitialized variables), and structural coverage analysis up to MC/DC. Specialized high-assurance run-time libraries, including one that ...


14

What a fascinatingly obscure question :-) It took some digging, so perhaps someone who's actually seen an AGC might know better: The parity bit was used to verify that data transferred correctly from memory to the registers. That is, the data in the memory was assumed to be correct, and the error was assumed to take place between the electronics that ...


12

The restrictions you are quoting only apply to the LGC, the computer in the Lunar Module. The Command Module Computer does not have these restrictions (compare the section about the Coasting Integration Routine you quote with the same passage from the document about the CMC: https://www.ibiblio.org/apollo/Documents/R-577-Colossus2-Martin-5.2.pdf). The CMC ...


10

It has been used all the way to the edge of the solar system: Pioneer 10 and 11 used core memory. Voyager 1 and 2 use plated-wire memory (a variation of core memory). Viking 1 and 2 used plated-wire memory.


9

We can look at what caused these problems over the long history of the Shuttle program. These GPC failures come to mind: On STS-9, two GPCs failed independently late in the mission and were voted out of the redundant set. Post-flight analysis showed that these failures were due to loose solder debris in the computers that moved about when reaction control ...


9

The IBM AP-101S used as the flight computer on the Space Shuttle in the latter part of the program was known to ops personnel as the General Purpose Computer (GPC). Each of the 5 GPCs in the Data Processing System (DPS) had 256k (yes k) of CMOS memory. This memory was volatile and prone to corruption by radiation (Single Event Upsets, SEUs). Thus there ...


9

I agree with your comment "it's not clear when or if this situation actually occurred." From reading both Klumpp's account and his colleague Don Eyles' book Sunburst and Luminary I do not think we have enough information to know if the situation could have existed on Apollo 11. I think we know it did not exist on Apollo 11, because the radar power supply ...


6

The lunar module had two computers. The 1202 alarm happened on the Lunar Guidance Computer, which did many different tasks -- in fact, the 1202 alarm was a warning that its multitasking system was at risk of being (but not yet completely) overloaded. There also was the Abort Guidance System. Its computer and software were completely different designs than ...


5

It’s plausible. There’s a detailed description of the computer operations of the rendezvous process here: https://history.nasa.gov/afj/loressay.html The process describes several different programs running on the CSM computer at different points; just activating a given program takes several keystrokes. Some of these programs are run as a backup in case ...


5

Why were these systems chosen, and what advantages or disadvantages do they present over more conventional consumer systems? In general, spacecraft use radiation-hardened computers. CPUs are usually custom versions of architectures used on Earth (from the list in Eugene's answer, e.g. the RAD 6000 is a radiation-hardened version of the RS/6000 CPU, the RAD ...


5

http://www.cpushack.com/space-craft-cpu.html has a fairly comprehensive list of the CPUs used in various probes. Just listing the CPUs: General Electric 18-bit TTL Intel 8086 RCA 1802 Intel 80386 2901 (bit-slice component) Intel 80486 RAD 6000 (IBM RS/6000) 1750A RAD 750 (IBM PowerPC 750) Mongoose V (Mips 3000) This site doesn't talk about memory, but I ...


5

This answer is based on the text @organic-marble cited in his now deleted answer and general knowledge about angular resolvers and electronics. source: Don Eyles at www.klabs.org The radar antenna of Apollo 11 was steerable to point it at the target no matter how the orientation of the LM was (within some 10° range at least). Steering happened ...


5

Of all the possible languages to choose from, what are the aspects of Ada that make it NASA's choice for such a critical application? What might be the weighting between legacy reasons versus intrinsic suitability? Ada is a language designed for this very kind of situation, i.e. fault intolerant, real-time and (often) embedded systems used to control ...


5

Developing software for space applications is quite different from "regular" software development, especially when we're considering human spaceflight. If you want to develop critical software (i.e. software that, in case of a failure, can lead to loss of life, mission, and/or facilities) for ESA, you need to comply with the applicable standards defined by ...


4

Let's have a look on a 1998 paper on real time systems from CMU (Carnegy-Mellon Univeristy). Typical examples of real-time systems include Air Traffic Control Systems, Networked Multimedia Systems, Command Control Systems etc. In a Real-Time System the correctness of the system behavior depends not only on the logical results of the computations, but ...


3

What exactly makes PHP CLI fundamentally unsuitable to power all the math on board a space craft? ... What, exactly, is it about this that is so "crazy"? You seem to be taking the unsuitability of PHP as a given premise here. Why is that? PHP has two major deficiencies that are relevant here. One is that it's not very performant; the ...


2

Throwing some rough and ready math at the question, happy to be corrected by anybody with actual numbers. Hardening increases the radiation level to trigger errors by several orders of magnitude, call it 1000 for this. Dropping the radiation by a factor of 1000 to a 10cm cube would take about half a mm of lead, adding up to something like 250g. Most ...


2

In theory, a rocket could "follow a rhumb line" starting with any kind of directional information. But there seem to be two use cases: The very-early Pegasus rockets used a directional gyro derived from an aircraft gyrocompass, perhaps due to their aircraft parentage. This was later updated to a full IMU, eventually augmented to GPS. Another approach is ...


2

The Wikipedia photo is definitely not an AGC core memory. The AGC's memory (both block I and block II) was very compact, and the plane was folded accordion-style to fit in the rectangular module. The AGC's erasable core memory had 4 wires through each core: horizontal and vertical X/Y select lines, a diagonal sense line, and vertical inhibit line. Each AGC ...


2

I know that along with typical hardware failure protection that you would see in your everyday desktop, any hardware going into space has to deal with a good deal more radiation. This can cause random failures based on where the radiation hits that can cause bit flips and crashes. SpaceX does something similar with their flight computers where they use cheap ...


2

This answer is highly suspect and should be independently verified. Also, it only talks about the timers and the Master Timing Unit: The computers themselves: The IBM System/4_PI architecture was used as the system architecture for the AP101 source The timer feature on this system was a full word (so, presumably 32 bits) Source, but not a primary source ...


Only top voted, non community-wiki answers of a minimum length are eligible