4 Facts About the Apollo Guidance Computer
- The Apollo Guidance Computer was the first computer ever built whose operation was based entirely on silicon integrated circuits.
- The drive to create the Apollo Guidance Computer’s software essentially established software engineering as an autonomous field. In fact, Margaret Hamilton, one of the principal software engineers who worked on the project, is credited with coining the term “software engineering.”
- The DSKY (pronounced “DIS-kee”), or display and keyboard system that astronauts used to interact with the Apollo Guidance Computer, was an early version of the keyboard and GUI.
- The AGC’s processor was many thousands of times less powerful than the processor in your smartphone, yet it was still able to land people on the moon.
Apollo Guidance Computer History
Everyone today knows that the Apollo 11 mission of July 16-24, 1969 was “one small step for man, one giant leap for mankind,” but very few people truly appreciate the extraordinary technical intricacy of that entire operation. Among the most difficult problems to be solved by the orchestrators and designers of the mission was that of simply navigating successfully to the moon and back again. After all, when one undertakes to fly from the earth to the moon — and when one flies back from the moon to the earth — one is not aiming at a stationary target.
To correctly orient yourself in space as you travel toward a moving target, it is first necessary to be fed a constantly-updating stream of information which you can use to shift, adjust and calibrate your movements. Once you know all of the ways in which various landmark objects are changing their positions and velocities with respect to you as you move through space, you then need to calculate — using Newton’s laws of motion — both your and your target’s inertial motion, velocity and acceleration, and use that information to reach your target. These calculations need to be continuously done and redone throughout your journey.
- Charles Stark “Doc” Draper, Eldon C. Hall, Ramon Alonso, Hal Laning and others
- Original Use
- To help astronauts on the Apollo 11 mission navigate from earth to the moon and from the moon back to earth again
- $200,000 per unit
Remember also that when your ultimate target is 250,000 miles away — as the moon is from earth — all of this becomes doubly important. Even the most minute error in calculation can prove to be disastrous.
It is, of course virtually impossible to correctly judge the sizes of lunar landmarks and their distances from your craft by mere eyesight alone. Misjudge this even slightly at any point during your journey, and you can easily veer far off course and crash into a field of boulders or perhaps even miss the moon entirely.
However capable, resourceful and intelligent human spaceship pilots may be, a task of such dazzling complexity is simply beyond the reach of the unaided human mind. To get to the moon, the Apollo 11 astronauts needed the technical assistance of a digital computer.
It is with all of this in mind that the Apollo Guidance Computer was created.
But there was a yet further problem: The computers that were built during the 1950s and 1960s were enormous. A computer made from a network of gigantic vacuum tubes would not fit onto a spaceship, for any attempt to place such a computer onto a rocket would take room away from other mission-critical equipment. To get a man on the moon, engineers had to find a way to make computers drastically smaller.
Charles Stark “Doc” Draper was not deterred by any of these challenges. He insisted that they could all be surmounted, and he had the will and the ingenuity to see the project through. Teaming up with a group of engineers at the MIT Instrumentation Lab — which, in 1972, was renamed the Charles Stark Draper Laboratory in Draper’s honor — he was eventually able to create a digital computer which could perform all of the required calculations but which measured only about 22x13x6 inches and weighed only about 70 pounds.
Many important steps gradually built up to invention of this technological marvel. In 1961, when work on the AGC began, most computers still used analog technology. Since analog computers’ memories, processing speeds and ability to deliver accurate results were generally quite low and their power consumption was quite high, it quickly became evident to Draper and his colleagues that analog just would not do. The team would have to go digital.
Eldon C. Hall, the lead designer on the AGC project, got the idea to use integrated circuits in the computer and began to push the idea heavily. Hall knew that Fairchild Semiconductor had been manufacturing integrated circuits ever since Robert Noyce, the company’s co-founder, had created the first microchips in the late 1950s by placing transistors and other circuit components onto a piece of silicon. Not only did these chips offer vastly improved processing power beyond anything else available at the time, but they were quite small and lightweight, which went a long way to solving the dreaded size and weight problems which dogged the AGC design team.
The next piece of inspiration came from Draper’s work designing anti-aircraft guns and missile guidance systems during World War II and the 1950s. After all, if computers could guide a missile to a target or track the movements of an enemy airplane, they could also, Draper reasoned, guide a rocket to the moon. As proof of concept, Draper designed a Mars probe. This caught the US government’s attention and allowed him and his team at the Instrumentation Lab to win the contract to design the AGC, which was finally awarded in August of 1961.
When the project began, Draper enlisted the help not only of Hall, but also of hardware engineer John Miller, who was in charge of designing the AGC’s Inertial Measurement Unit, which is what would orient the Apollo 11 spacecraft in space; Ramon Alonso, who created the AGC’s rope memory system and the DSKY system by which astronauts entered commands into the computer; and Albert Hopkins, the software engineer who wrote the operating system and input-output code for the AGC.
Hal Laning was also called upon to design the operating system. Ralph Ragan and and David Hoag were also hired to design the guidance and navigation system, with Hoag focusing on constructing gyroscopic units and Ragan overseeing operations. Many other engineers, including Milt Tragesser, Margaret Hamilton, Jack Garman and Richard Battin, also had important roles in the project.
By January 1966, the AGC’s software had been completed, and test flights using the AGC were already being done as early as August of that year. However, Apollo 8 — the December 1968 mission that sent a manned spacecraft towards the moon — was the first true test of its utility. When that mission proved to be a resounding success, many astronauts who had previously been skeptical of surrendering control to the AGC were persuaded of its power.
Apollo Guidance Computer: How it Worked
To appreciate how the Apollo Guidance Computer worked, a basic understanding of the steps involved in the Apollo 11 mission (and other moon missions) is first required. First, the Saturn V rocket takes off from earth and flies into space. The Apollo spacecraft is attached to the rocket and detaches from it while in space. The spacecraft itself consists of a service module, a command module and a lunar module. The service module provides propulsions for the spacecraft. The command module is where astronauts would be housed during both legs of their journey through space.
As the crew approached the moon, the lunar module would detach from the command module. The command module would remain in orbit around the moon with one astronaut on board in preparation for the return to earth, while the others would be on the lunar module and actually land on the moon. Because the lunar and command modules must move though space, they each need to have a version of the AGC on board to assist with navigation.
To appreciate the AGC’s technical specs and mode of operation, it must be remembered that so many of its features were either invented outright for the sake of the project or were only invented very recently beforehand. The core rope memory system was a very recent invention, and DSKY was created specifically to help astronauts use the computer. DSKY required astronauts to enter two-digit commands into the interface, with one digit representing a “Verb” and the other a “Noun.” Verbs were the actions the computer was to perform, and nouns referred to the data which were to be affected by the action. The DSKY in the lower instrument bay of the spacecraft would then relay information to the Inertial Measurement Unit, which would use a sextant to align the craft.
The following schematic illustrated what the DSKY interface looked like and what each thing on it did.
The actual computation worked via three input NOR logic gates, which produced a binary 1 output only when both binary inputs were 0, and which produced 0 as output in every other case. Current drivers were used to configure the erasable memory, and bipolar transistors were used to select erasable memory. This schematic illustrates the way the circuitry and logic gates functioned:
The software code was written using assembly language and was stored mostly on the machine’s rope memory. The computer’s operating system, designed by Hal Laning, was revolutionary for its time because of how it was able to schedule tasks, correct errors on the fly and automatically interrupt tasks to perform other tasks whenever circumstances required. Even more impressively, the system was able to run a virtual machine that acted as a simulator of certain actions. The simulator could simplify code. With these virtual pseudo-instructions, the simulator created a much more user-friendly system.
For convenience, the following schematic displays all of the various parts of the computer:
Apollo Guidance Computer: Historical Significance
The mere fact that the AGC was used to land a manned spacecraft on the moon and return it safely to earth should alone be enough to ensure its place in history. But this fact, however important, does not tell the whole story.
Prior to the creation of the AGC, computers were gargantuan monstrosities, often filling up entire rooms with their sheer bulk. Today, the fact that computers and processing units seem always to get smaller with time — an observation closely related to Moore’s Law — appears to us to be almost natural and occasions no surprise. In the 1960s, however, that was far from the case. Working under the physical constraints imposed by the Apollo missions, the AGC engineers were forced to build a smaller and more powerful computer than had ever been built before. Their success provided great impetus for the trend that has now given us our smartphones, laptops, smartwatches, doorbell security systems.
To further reinforce this point, there are a few areas where the Apollo Guidance Computer was an unquestionable pioneer. First, it was the first flight computer to use integrated circuits. Because this computer was an indispensable part of the moon landing, it naturally stimulated great interest in the use of integrated circuits and ultimately inaugurated the transition from analog to digital computing. It is thus responsible for all of the incalculable benefits attendant to that move.
Secondly, under the pressure of necessity, the AGC pioneered the whole field of user-computer interaction. Through DSKY, astronauts would have to type commands into the computer using a keyboard. When it needed more user input, the computer would flash the numbers on its screen to attract attention. Ultimately, everything that we cherish about how people use computers today — from Douglas Engelbart’s important and creative ideas on the subject to keyboards, mouses, GUIs and even the internet itself — is traceable to this root.
Lastly, though people like to make a great deal of hay out of the fact that, judging by raw specs alone, the AGC had many thousands of times less computing power than today’s smartphones, this simplistic dismissal utterly ignores how innovative the AGC was for its time. Just to take one example, the software engineers working on the AGC had to break new ground in a dizzying number of areas. The computer’s source code had to run multiple processes in parallel long before such a concept entered the mainstream of computing. It also had to have an in-built system for detecting and correcting errors — a feature which, by the way, saved the Apollo 11 mission from certain disaster. Not only the kind of software that was written but the way in which it was written — collaboratively, with many people building on one another’s work — continues to influence software development to this very day.
It is simply impossible to overstate the historical importance of the Apollo Guidance Computer.