APOLLO GUIDANCE NAVIGATION and CONTROL
APOLLO GUIDANCE NAVIGATION and CONTROL
Iflllllll/lllllllitllltlllll
A LLO
GUIDANCE, NAVIGATION
AN D CONTROL
D. G._IOAG, DIJ_"Cl_C71_
A.o_.o
_u,ot.C_A=O
.AV,Of,_
..O0.A_
/
R. R. RAISAN, DEPUTY DIRECTEd3/ U /
THE CHARLES STARK DRAPER LABORATORY
- -._ .
R -700
VOLUME III
COMPUTER SUBSYSTEM
by
ELDON C. HALL
AUGUST 1972
J
ACKNOWLEDGMENTS
This report was prepared under DSR Project 55-23890, sponsored by the Manned
Contract NAS9-4065.
A. Hopkins Section 1, 2
A. Harano Section 5
D. Bowler Section 6
The publication of this document does not constitute approval by the National
_ report"
Permission
tar furtherreprodudN
, mustbeobtained
Irotolhec_yr_htpr°lsketOr' _,
................................
ii
GENERAL DISCLAIMER
This document may have problems that one or more of the following disclaimer
statements refer to:
This document has been reproduced from the best copy furnished by the
sponsoring agency. It is being released in the interest of making
available as much information as possible.
This document may contain data which exceeds the sheet parameters. It
was furnished in this condition by the sponsoring agency and is the best
copy available.
Portions of this document are not fully legible due to the historical nature
of some of the material. However, it is the best reproduction available
from the original submission.
FOREWORD
The title of these volumes, "MIT's Role in Project Apollo", provides but a
modest hint of the enormous range of accomplishments by the staff of this Laboratory
on behalf of the Apollo program. Man's rush into spaceflight during the 1960s
demanded fertile imagination, bold pragmatism, and creative extensions of existing
was to supply the design for the primary hardware and software necessary to solve
the Apollo guidance, navigation and control problem. It is to the credit of the entire
team that this hardware and software have performed so dependably throughout the
Apollo program.
The quantum leap in technology nurtured by the Apollo program has been and
should continue to be of immensely significant benefit to this country--s0cially,
countrymen of the directions this nation ought to follow in implementing these newly
gained--and hard fought for--advances.
iii
Ib
tlh
I
R-700
VOLUME III
COMPUTER SUBSYSTEM
ABSTRACT
conception and development took place in the early part of 1960. The computer
computers in existence in the late 1950s, when the precursers of the AGC were
being designed. However, at that time few computers of this class had been designed
for the aerospace environment, and those few embodied substantial compromises
in performance for the sake of conserving space, weight, and power. The design of
The AGC is the control and processing center of the Apollo Guidance, Navigation
and Control system. It processes data and issues discrete output and control pulses
spacecraft contains two guidance computers and three DSKY._ (keyboard and display
unit for operator interface), with one computer and two DSKYs in the command
module, andoneof each in the lunar module. The computers are electrically identical,
but differ in the use of computer software and interface control functions. As a
control computer, some of the major functions are: alignment of the inertial
Preceding
paEeblank V
controls and generation of commands for spacecraft engine control. As a general
purpose computer, the AGC solves the guidance and navigation equations required
which flew missions and another 25 flight type computers which are still in various
quality control procedures with requirements for reporting and analyzing all
equivalent complexity has been as well monitored and documented. Since it has
by Eldon C. Hall
August 1972
vi
CONTENTS
Section Page
Acknowledgments .......................... ii
Abstract .............................. v
Preface ............................... I
vii
CONTENTS (Cont)
Section Page
3. I Introduction ....................... 55
viii
CONTENTS (Cont)
Section
ix
CONTENTS (Cont)
Section
Section
6.3.3.2 Interference Testing .......... 202
6.3.3.2.1 Power Line Conducted
Interference ....... 202
xi
CONTENTS (Cont)
Se ction
xii
LIST OF ILLUSTRATIONS
Xlll
LIST OF ILLUSTRATIONS (Cont)
Figure Page
3-10 Regulated Pulsed Current Driver Circuit ............ 88
3-11 Sense Amplifier Circuit ..... ............... 89
3-12 Core Rope Simplified Schematic ................ 90
3-13 Rope Sense Line Switching Simplified Diagram .......... 92
3-14 Failure Detection Logic .................... 94
3-15 GN&C Interconnections in Command Module ........... 98
3-16 GN&C Interconnections in Lunar Module ............. 99
3-17 Examples of Interface Circuits ................. 100
3-18 Gimbal Resolver Coupling Data Unit - Computer Interface ..... 104
3-19 Digital to Analog Conversion by Time Duration of Precision Current 105
3-20 Digital to Analog Conversion by Resistance Ladder ........ 106
3-21 Radar-Computer Interface Functional Diagram .......... 108
3-22 Radar-Computer Interface Timing Diagram ........... 109
3-23 DSKY Display and Control Panel ................ 110
3-24 DSKY Display Circuits - Simplified Diagram ........... 112
3-25 DSKY Block Diagram ..................... 113
3-26 Computer Assembly ...................... 116
3-27 Exploded View of Computer .................. 118
xiv
LIST OF ILLUSTRATIONS (Cont)
3-44 Exploded View of Digital Indicator and Cover Assembly ...... 146
3-45 Rear Side of Digital Indicator .................. 147
7-1
Procedure for Component Selection and Qualification ....... 230
7-2 Procedure for Critical Component Selection and Qualification 232
7-3 Block Diagram of the Flight Processing Specification Procedure . 236
7-4 Erasable Memory Module ................... 250
7-5
Integrated Circuit Gate Illustrating "Blue Nose" Problem ..... 252
7-6 First Pulse of Pulse Train ................... 252
XV
LIST OF TABLES
Table Page
xvi
• PREFACE
"I believe this nation should commit itself to achieving the goal before this decade
is out of landing a man on the moon and returning him safely to earth." With these
words, spoken on 25 May 1961, President John Fitzgerald Kennedy stated for all
hardware and software of the APOLLO Guidance, Navigation and Control system
for safe and self-sufficient translunar flight, lunar landing, and return. This Final
Report describes that work -- a most demanding, innovative, and rewarding task.
This report presents the Draper Laboratory's efforts in Project APOLLO from the
original contract award in mid-1961 through July 1969. The report is organized in
five volumes:
Volume I emphasizes what was done in terms of resource allocation and systems
abstracts of significant research and engineering reports and theses written under
Contracts NAS 9-153 and NAS 9-4065. Appendix B is a bibliography of all such
reports and theses prepared through June 1969. This date is also the cutoff for all
discussions within this report, except for APOLLO Ii -- the first manned lunar
*The Laboratory was renamed the Charles Stark Draper Laboratory in January
1970.
SECTION 1.0
SUBSYSTEM DEVELOPMENT
The APOLLO guidance computer (AGC) is a real time digital control computer whose
conception and development took place in the early part of 1960. The computer
and navigation capability intended for use in a proposed space vehicle to photograph
Mars and return. This machine, although never built, was designed to use magnetic
core-transistor logic. This type of logic circuitry is desirable because of its low
power consumption, but it tends to be slow and bulky. The Mars computer had
very limited capabilities due tothe constraint on physical size but, since computation
speed requirements were not severe, an adequate machine was possible within the
state-of-the-art at that time. The instruction repertoire, word length, and number
of erasable memory cells were also very limited. Provision was made, however,
for a moderately large amount of fixed memory for instructions and constants. A
high density memory of the read-only type; called a rope memory, was developed
especially for this purpose and was carried over into the design of the APOLLO
computer.
The rope memory, being a transformer type, depends for its information storage
on the patterns with which its sensing wires are woven at the time of manufacture.
Once a rope memory is built, its information content is fixed and is unalterable by
electrical excitation; it can be altered only by re-manufacture, repair, or destruction.
guidance computer because of their high density and information retention advantages.
However, ropes placed a burden on software delivery schedules because of the
ereceo paee
ne- bia,k
0
I
r.)
o
<
additional time require d for manufacturing the rope memories. Also system
integration and testing was less flexible than was desirable, but these disadvantages
were considered acceptable when compared with the advantages of high density and
reli ability.
The Mars computer incorporated a method of accommodating real time inputs and
outputs that was unusual at the time but is widely used now. This was the program
interrupt method which had been introduced in large scale computers a few years
previously. A novel use of the interrupt was for single accesses to memory for
trivial processes such as incrementing or shifting. This process has become known
as memory cycle stealing and is widely used in linking computers to such peripheral
units as magnetic tape units and card readers. The use of the interrupt in its
various forms was an important addition to the aerospace computer field, and was
Another important aspect of the Mars computer which had evolutionary significance
for the APOLLO computer was the use of an interpretive program, that is, a large
library of subroutines which perform various higher level arithmetic and language
the mission program. The interpretive program is a means of trading off execution
speed against instruction repertoire. The Mars computer appeared to have a
commodious set of instructions, that allowed substantial economies in program
writing, where the more powerful "instructions" were actually executed by subroutines ; ¢ ¢: -
The Mars computer design was followed by a number of subsequent revisions and
additions embodied in several models designated Mod 1A, 1B, 3C, and AGC3 each
of which incorporated the rope memory, core-transistor logic, and the same general
architecture relating to interrupts, word length, and instruction repertoire. Word
Mod 3C was notable in this series for the introduction of a 512-word 16-bit
was eventually converted to the AGC3. See Figure 1-1. This was the last in the
series of core-transistor logic computers and the first prototype computer developed
The editing and input/output operations, which are commonly handled by special
instructions, were processed by special memory cells instead. For example, to
shift a word in this family of machines, the word is stored in a special register
designedfor this purposeandread out again. The shifting is accomplishedbetween
the store and read registers. This techniquesacrifices memory, but is essential
in caseswhere the instruction repertoire is severely limited.
developing rapidly. Mention has already been made of the adaptation of the
three-dimensional magnetic core array to the temperature environment. Another
important line of evolution was in semiconductor technology, where silicon transistors
progressed to planar forms, then epitaxial form. Ultimately monolithic integrated
circuits were developed. Still another area of development was in packaging, where
the introduction of welding, matrix interconnection techniques, and machine wirewrap-
ping allowed significant reductions in volume and weight while coincidently enhancing
reliability. These packaging techniques were reduced to practice and used by MIT/IL
in the development of the POLARIS guidance computer. The experience gained and
the techniques developed during the POLARIS program were used more or less
directly in the APOLLO computer design.
the engineering model of AGC4. (See Figure 1-2.) Reliability, power consumption,
noise generation, and noise susceptibility were the primary subjects of concern in
the use of integrated circuits in the AGC. The performance of the units under
evaluation was sufficient to justify their exclusive use in place of core-transistor
logic with the exception of a portion of the erasable memory addressing circuitry,
where metal tape cores were retained as a medium for current switch selection.
GSE RACK
The erasable memory contained 1024 words, of which the first 16 locations were ." ]:
reserved for the central and special registers external to the core memory unit.
These registers were used as flip-flops in the logic of the computer.
The integrated circuit logic section for the Block I computer was designed
using a three-input NOR gate as a building block, with onegate in a TO-47 type
package. These gates were relatively simple in form, consisting of the equivalent
of three NPN bipolar transistors and four resistors connected as a modified
direct-coupled transistor logic or DCTL NOR gate. The arrangement is also referred
to, less precisely, as resistor-transistor logic or an R'rL NOR gate. The gates
were interconnected using a welded nickel ribbon matrix and packaged in modules
containing 120 gates and a 140-pin connector. With this method of packaging,
thirty-six logic modules were required for the logic functior_s of the Block ! computer.
The computer would have required fewer integrated circuit packages if a variety of
logic building blocks had been used including, for example, a gated flip-flop. It
was estimated, however, that the problem of producing and qualifying even a second
circuit type would have outweighed the advantages of a variety of logic types. In
retrospect, this estimation was correct. The single logic type simplified packaging,
manufacturing, and testing, and gave higher confidence to the reliability predictions.
One other integrated circuit was used inthe Block I computer, a differential amplifier
for sensing memory outputs. This device was developed especially for the guidance
computer, since a differential amplifier capable of memory sensing was not available
at that time. The sense amplifier contained the equivalent of six NPN bipolar
transistors and eight resistors. Such units were preferred over discrete-component
, ":.7 sense amplifiers not only for their small size, but also for the close match of
As an adjunct to the APOLLO guidance computer, a display and keyboard unit was
required as an information interface with the crew. The original design was made
during the latter stages of development of the Mod 3C computer, at which time
neon numeric indicator tubes of the "Nixie" variety were used to generate three
4-digit displays for information, plus three 2-digit displays for identification. These
were the minimum considered necessary, and they provided the capability of
displaying three-space vectors with sufficient precision for crew operations. The
2-digit indicators wereused to displaynumeric codes for verbs, nouns, and program
with the display to allow the entering of numbers and codes for identifying them.
The unit acquired the designation DSKY, for display and keyboard.
physical outlines were generated for the DSKY, one for the navigation station in the
10
vicinity of the GN&C system (lower equipment bay), and one for the main control
panel located above the crew couches. Figure I-4 shows a main panel DSKY beside
In 1964, when the APOLLO GN&C system underwent redesign for both the command
module (CM) and lunar module (LM) spacecraft, the requirements for the current
operational version of the APOLLO computer and DSKY were conceived. This version
of the computer became known by the various designations AGC, Block II AGC,
LGC (lunar module guidance computer), and CMC (command module Computer).
As was stated previously, the need was evident for an increased capability in both
the fixed and erasable memories over the Block I computer. There were _wo major
reasons for this: one was the experience gained with mission-related programs
for Block I, and the other was the identification of new functions for the BLOCK [I
system, including the ambitious digital autopilot function. Both memory expansions
were accommodated with a moderate impact on existing designs. The braid memory,
a new form of fixed memory with some similarities to the rope memory but with
several potential advantages, was under development for possible inclusion into the
Block I! computer. But, because braid development was not sufficiently fast for
the Block II schedule, the rope memory was retained, with an increase in capacity
from 24,596 words to a total of 36,864, a factor of 1.5 over Block [. This was
made possible by increasing the number of sense lines in each module. The mechanical
design of the rope modules and computer was changed to allow rope removal and
insertion without removing the computer from the spacecraft or breaking any
The erasablememorycapacity was doubled to 2048 words. This increase was made
with a small increase in driving circuitry, twice the number of cores, and an overall
volume reduction owing to more efficient space usage and the use of smaller driving
transistors.
In the logic design area, the number of input/output operations was greater than in
Block I, and the overall speed requirement was similarly greater, both largely due
to the incorporation of the autopilot function into the computer. The input/output
requirement was met by adding a number of special circuits for such interfaces as
the radar and hand controller, and increasing the number of interface circuits used
in Block [. such as counter (memory cycle stealing) inputs, and discrete inputs and
outputs. The speed requirement was met by reducing the number of memory cycles
required to perform some of the instructions and expanding the instruction repertoire.
In order to conserve power, the logic circuitry was made slightly slower in the
11
.o
0
(0
t_
12
Block II design because of a change to low power integrated circuit logic. The
through the use of extra logic, particularly in the adder circuitry, where the time
to propagate carries was reduced to about one-third its duration in Block I. As a
result of these changes, the number of gates rose about 1400, from about 4300 to
approximately 5700.
Improvements in integrated circuit technology led to the adoption of the new low
power NOR gate for the Block II computer. Though still a modified DC TL three-input
gate, this circuit dissipated less than half the power of the Block I gate. Additionally,
two of these gates were made on a single silicon chip and mounted in a 10-lead
"flatpack" container. This resulted in doubling the packaging density relative to
the Block I approach. The power reduction was obtained in these logic units by
:¢ ,-:,
device and effect a saving in power: one, multilayer etched boards were adopted ., _:,
as the means of interconnection within modules in place of the welded ribbon matrices, -: _;,
the change decreased the stray capacitance, and two, the clock timing circuit was
The Block II computer design resulting from the change in technology roughly doubled
the speed, raised between 1.5 and 2 times the memory capacity, increased input/
output capability, decreased size, and decreased power consumption. The Block II
DSKY was similarly redesigned. The functional characteristics of the DSKY were
essentially unchanged. The new design that resulted was mainly a smaller mechanical
envelope, that was the same for the three locations: two in the command module
and one in the lunar module. Additionally, the Block II computer and DSKY were
constrained by new mechanical requirements such as the enviromental seal on all
connectorsor modules that could be subjected to, and damaged by, the high moisture
content of the spacecraft.
The mechanical design concepts, derived from experience with welded cordwood
13
SPARE TRAY
CONNECTOR
G&N SYSTEM
CONNeCT_ORS
CONNECTOR
14
Various mechanic al and thermal interface problems dictated a change in configuration
to what became the Block 0 computer shown in Figure I-6. The early production
computers were of this configuration. The mechanical design was not stabilized,
however, until the requirement for inflight repair yielded to the more important
mechanical configuration using the same module designs that were used in Block 0.
Figure I-7 is a photograph of the design resulting from moisture proofing. This
was the final Block I mechanical configuration for the computer and DSKYs.
Before the inflight repair requirement was deleted, there were a series of mechanical
designs, coupled with studies, to determine the feasibility of fault isolation in flight
or the feasibility of dual computer operation with manual switchover. Figure 1-8
is a mockup of one version that provided one complete set of sp, are trays. If the
a dual operating mode. The configuration, shown in Figure 1-6, is the only version
of this general configuration that was built with space for two spare trays mounted
beside the two active trays. Other constraints on this design included: the right-hand
tray containing cabling to interconnect the computer with the rest of the GN&C system
through the top and with the spacecraft cabling through the front connectors, and
the "thermal fuzz" material to provide heat transfer to the spacecraft cold plate.
The change to the final Block I design (Figure 1-7) was accomplished after the
earlier, also resulted in anew mechanical design. The resulting design of computer
and DSKY is illustrated in Figure 1-9. This was a complete mechanical redesign:
the end product was not only smaller and lighter than Block I, but also provided
better environmental sealing, easy access to fixed memory for replacement in the
spacecraft, and commonality between the lunar and command module mounting.
Internally, the same type of modular construction was used as in the Block I version.
Many of the initial decisions surrounding the computer development could be easily
categorized by the single statement that the task was seriously underestimated.
The realization that reliability, weight, volume, and power consumption would be
critical factors governing the success of the missions made for a limited view of
15
09
16
>_
r./3_
r--,"
o
L)
17
considerations for adequate functional capacity. Also, in the light of the early limited
knowledge of the mission requirements, it would have been impossible to justify a
computer with the capacity and features of the Block |[ configuration.
Power, weight, and volume factors were prime considerations in determining word
length, memory size, instructions, and interfaces. A word length of 15 bits, for
example, was considered sufficient for most arithmetic and control operations.
Double-precision computation (28 bits) was sufficient to provide the accuracy for
volume, it was important to minimize both the number and length of words. The
problem of size and power consumption, as well as the reliability of data storage,
was strong justification for using a fixed memory and resulted in the proposal for
a wired rope type memory. An erasable capacity of 512 words was considered
very marginal; therefore, the capacity was increased to 1024 words very early in
the design process. The design philosophy of limited capacity was followed by the
In consideration of the control and display capability, there was a great deal of
interest in an oscilloscope-type display subsystem, but the complexity of the
electronics and the complexity of the computer required to format the data were
sufficient to eliminate this concept. An alternative approach resulted in the DSKY
design that was considered an absolute minimum for the lunar mission. Other
spacecraft d.isplay and control interfaces with the computer were ruled out in Block
I design for various reasons. Typically, they involved the whole question of reliable
operation of a digital computer. The philosophy of limited control and display through
the computer restricted the flexibility of the GN&C system. While the Block II
design provided expansion in the control and display area, even this later configuration
was limited by these earlier decisions.
One of the major early decisions, that greatly influenced design and computer
operation, was the provision for inflight repair. To some extent, this decision affected
the design of both the display hardware and software, since inflight repair implies
the ability to detect and diagnose a failure. Inflight repair was later eliminated as
a requirement, but the failure detection and software restart capability remained.
18
Additional decisions, considered to be major contributions to the success of the
reliability.
The following is a partial listing of mission type requirements that had an impact
on computer designs. The time period during which the requirement was in a state
of flux is indicated.
During the entire program there was concern over the limited memory size. The
debate included the ratio between fixed and erasable memory. At various points in
time during the software development there were requests for expansion of the fixed
memory. At other times the request was to expand the erasable memory. There
was continuous evaluation of the hardware and supporting hardware developments
designed to expand either fixed or erasable. Partially due to the lack of a firm
requirement for expansion in memory but also due to the available memory technology,
there were very few attempts to expand the memory beyond the Block I[ capacity.
The latest design exercises occurred in early 1969 with a proposed expansion of
the erasable memory from 2K to 16K words. The proposal was rejected because
of insufficient justification. This was the only proposed increase in memory since
the changes introduced in the Block II design, but it was fairly clear that the
requirement for the additional memory was not firm enough to justify the change.
The other changes in memory size came early enough in the development to make
the justification somewhat simpler. In general, the memory sizing was determined
19
more by what the hardware technology could provide rather than a requirement
established for the mission.
This was a series of meetings between MSC, MIT, and the two spacecraft contractors
which were to determine the system requirements. The output of these meetings
resulted in the determination of many new computer requirements that lead to the
change from Block [ to II. The major changes affecting the computer were expanded
functional requirements such as the digital autopilot, increased mode control,
definition of radar interface, hand controller interfaces, hermetic packages for
moisture-proofing, compatible lighting between spacecraft and DSKY, and other
human factor requirements.
These new requirements justified the increase in memory size, increase in interface
capacity, increase in overall functional capability, and the introduction of the
for guidance system backup and redundancy. This philosophy provided for operating
modes with independent means for guidance and control if the guidance system failed.
In the case of the command module, the ground control would provide the capability
of safe return to earth and, in the case of the lunar module, there was a separate
guidance system to provide abort capability. With these guidance backup modes it
A concerted effort to save weight was instrumental in initiating many design studies
that resulted in changing the Block II computer frame design from aluminum to
magnesium. The design change saved about 12 pounds. In parallel with, and partially
resulting from the change to magnesium, was an increased concern about materials
in general. The magnesium required a corrosive-resistant finish that would meet
the contamination and corrosion-resistance requirements of the spacecraft.
20
1.3.4 Electromagnetic Interference Specifications - 1963
The contract requirement for the system to meet EMI specifications was added
late in 1963. The Block I design at that point was well along and had considered
some of the requirements. It was quite well known that a strict interpretation of
the requirements could not be met by the computer. After the specification was
added as a contractual requirement, the design impact was evaluated, and Block II
was designed to meet or exceed the requirements. Since digital computers are
quite susceptible to errors induced by external electromagnetic interference, both
designs had features which would reduce the sensitivity to interference.
The requirement to investigate and fire-proof the system resulted from the APOLLO
4 accident. This added a new dimension to the materials problem but had no impact
on the computer design. The DSKY design was changed to provide a cover for the
alarm panel and fire proof caps on the keys, since the material in the panel and
.' :
-.i _
21
SECTION 2.0
2. i IN TRODUC TION
The computer subsystem is the control and processing center of the guidance,
navigation and control system. [t processes data and issues discrete output and
control pulses to the guidance system and other spacecraft systems. Functionally,
the computer subsystem consists of the APOLLO guidance computer (AGC)and the
display and keyboard unit (DSKY). The computer is a parallel digital real time
computer, some of the major control functions are: alignment of the inertial
purpose computer, the AGC solves the guidance and navigation equations required
DSKYs, with one computer in the command module, and one in the lunar module.
The computers are electrically identical, but differ in the use of computer software.
There are two DSKY units in the command module, a DSKY mounted on the main
display and control panel and a DSKY in the lower equipment bay at the navigation
station. (See Figures 2-i and 2-2). The lunar module has a single DSKY unit.
(See Figure 2-3). In this chapter, because it is concerned primarily with the hardware
command module and lunar module computers, except where significant operational
and the "AGC" are equivalent in meaning. Other project APOLLO documentation
may refer to the command module computer (CMC), the lunar module computer
(LGC). These designations are not used in this report unless specifically defined.
Section 1.0 described the evolution of the Block II AGC configuration through a series
examination of the requirements. Since the Block II design was the only configuration
used for manned operational flights, the following functional description concentrates
on the Block II configuration, but identifies the more significant functional differences
in the Block I design. The Block II DSKY was functionally equivalent but mechanically
different from Block [. Table 2-I compares the functional characteristics of the
two computers.
23
Preceding
pageblank
t-
O
o
24
o
g_
25
DSKY.
26
TABLE 2-I
COMPUTER CHARACTERISTICS
27
/
28
2.2 GENERAL FUNCTIONAL DESCRIPTION
2.2.1 Computer
The computer has three principal sections, amemory, a central processor, and a
control section. Refer to Figure 2-4. The memory section is divided into two
portions, fixed and erasable. The fixed, or read-only, portion has 36,884 words
and erasable portion has 2048 words. The central processor section includes an
memory local buffer register, and a number of addressable registers with either
special features or special use. The backbone of the computer is the set of 16
write buses that are the means for transferring information between the various
registers of the central section shown in Figure 2-4. The arrow-heads indicate
processor. The S register stores the memory address. The G register provides a
buffer for the memory data. The SQ register bears the same relation to instruction
as the S register bears to memory addresses. The central and special registers ?
(A, L, Q, Z, etc) and a set of input/output channel registers are addressable explicitly.
Their properties are shown in Table 2-11. The arithmetic unit is an adder with
shifting gates, temporary storage, and control logic. The priority circuits control
the incrementing or shifting of a set of erasable memory registers and control the
includes the timing and sequencing logic, The clock provides the primary time :..'
reference for all spacecraft systems and through a countdown chain, timing pulses
at various frequencies for computer internal and external usage. The sequence
generator provides the basic memory timing and the sequences of control pulses
(microprograms) which constitute the instruction that the central processor can
perform.
Essentially the Display and Keyboard (DSKY) was designed to permit exchange of
digital information between the subsystem operator and the computer. Most basic
functional capabilities were determined at the time the DSKY was designed. These
and operator.
The DSKY (see Figure 2-5) contains asmall keyboard and a set of display elements.
The keyboard provides an interface with the computer. It causes program interrupt
and provides a five bit code each time akey is depressed. The computer program
29
TABLE 2-II
OCTAL
REGISTER PURPOSE
ADDRESS,
A 0000 Central accumulator. Most instructions refer toA.
3O
Fig. 2-5 I)SKY Kront Panel
31
processes the key code according to a predetermined set of routines and displays
the results in the registers of the display panel. The display contains a set of
discrete status or caution elements and a set of numeric registers for data. The
display elements are switched on or off according to coded commands from the
AGC. The AGC code is decoded, and the corresponding display elements are turned
The computer subsystem has several unique features that have contributed to the
terms of mathematical computations and interface control and yet maintain high
The computer is a "common storage" machine. This means that instructions may
be executed from erasable memory as well as from fixed memory, and that data
(obviously constants, in the case of fixed memory) may be stored in either memory.
The word sizes of both types of memory must be compatible in some sense. The
•. -
easiest solution was to make equal word lengths of 16 bits. The AGC is somewhat
unique in its very short word length, and the reasons for it are of some interest.
The principal factors in the choice of word length in the computer were:
The datawords used in the computer may be divided roughly into two classes: one,
data words used in elaborate navigational computations, and two, data words used in
the control of various appliances in the system. Initial estimates of the precision
required by the first class ranged from 27 to 32 bits. The second class of variables
could almost always be represented with 15 bits. The fact that navigational variables
require about twice the desired 15 bit word length means that there is not much
32
of variables is concerned, because double-precision numbers must be used in any
words, the equivalent computer word length is 29 bits (including sign), rather than
30, for a basic word length of 15 bits. See Figure 2-6. It was also estimated that
a significant portion of the computing had to dowith data words required for control,
telemetry and display activities, all of which can be handled more economically
with short words. A short word allows faster and more efficient use of erasable
storage because it reduces fractional word operations, such as packing and editing;
being those of angles. Two principal forms of conversion are possible: one of
which renders a whole number, the other produces a train of pulses that must be
counted to yield the desired number. The latter type of conversion is employed by
the computer using the counter incrementing feature. When the number of bits of
precision required by the conversion exceeds the word length, a double precision
depends largely on how frequently this scanning must be done. The cost of using
associated with it. In the AGC, the equipment saved by reducing the word length
below 15 bits would probably not match the additional expense incurred in double-
since a lower bound on the word length is effectively placed by the format of the
instruction word.
The instruction word consists of an operation code of 3 bits and a single address of
12 bits. The 8 instruction order codes, provided by the 3-bit field, are augmented
by the various special registers to expand the order code and provide operations
such as shift right, cycle left, edit, so that a transfer in and out of one of these
instruction decoding and control pulse sequence generation. Hence the 3 bits assigned
to the order code were considered adequate, albeit not generous. The address field
of 12 bits presented a different problem. At the time of the initial design, it was
estimated that 4000 words would satisfy the storage requirements. When the memory
was to be expanded, the question then became whether the proposed extension of
the address field by a bank register was more economical than the addition of bits
to the word length. For reasons of modularity of equipment, adding more bits to
the word length would result in adding more bits to all the central registers. This
33
llIil[llLliillllI]
/ \
PAre# 1" Y Op_ _qA T j 0 N _ATA Al[_ I_ E _ _
CODE
| IN_TIIUCTION "_'_,
0 II D
..........................
34
amounts to increasing the size of the non-memory portion of the computer. Hence
the address field was expanded by the provision of memory bank register.
In summary, the 15-bit word length seemed practical enough, so that the additional
cost of extra bits in terms of size, weight, and reliability did not seem warranted.
A 14-bit word length was thought impractical because of the problems with certain
input variables, and it would further restrict the already cramped instruction word
format. Word lengths of 1 7 and 18 bits would result in certain conceptual simplicities
in the decoding of instructions and addresses, but would not help in the representation
In the absence of the need to represent numbers of both signs, the discussion of
number representation would not extend beyond the fact that numbers in the computer
are expressed to base two. But the accommodation of both positive and negative
numbers requires that the logical designer choose among at least 3 possible forms
of binary arithmetic. These 3 principal alternatives are: one's complement, two's
every digit where "end around carry" is required in addition of two numbers. In
two's complement arithmetic, sign reversal is effected by complementing each bit
and adding a low order one, or some equivalent operation. Sign and magnitude
representation is typically used where direct human interrogation of memory is
desired, as in "postmortem" memory dumps, for example. The addition of numbers
of opposite sign requires either one's or two's complementation or comparison of
magnitude, and sometimes both may be used. The one's complement notation has
the advantage of having easy sign reversal, this being equivalent to Boolean
the process. These considerations led to the use of a one's complement number
35
C _ C C_
c
Oo
0
oO
O0 .--_
E
c
_C
C _C
I
L b C
l.w
_<
jilc
C _ C_
0
C m
°iIc -I -
_,-.w
,--j
0
CO C_
':C,
C_
r I C
C:
i ,
_C
.z
" C
E
_...t
u':
.... _ :.:
C.p _ t-: ,,-
C_
,_=_ . :>
_._.
ic F c :,_
C_ .,..,
"0 , _J
O i - >"-,
, 0
_ LK
C
.1
×
/
i
36
In a standard one's complement adder, overflow is detected by examining carries
into and out of the sign position. These overflow indications must be "caught on
the fly" and stored separately if they are to be acted upon later. The number system
adopted in the computer has the advantage of being a one's complement system
with the additional feature of having a static indication of overflow. The implementation
of this modified one's complement system depends on the computer not using a
parity bit in most central registers. Because of certain modular advantages, 16,
rather than 15, columns are available in all of the central registers, including the
adder. Where the parity bit is not required, the extra bit position is used as an
extra column. The virtue of the t6-bit adder is that the overflow of a 15-bit sum
is readily detectable upon examination of the two high order bits of the sum (see
Figure 2-7}. If both of these bits are the same, there is no overflow. If they are
different, overflow has occurred with the sign of the highest order bit.
The interface between the 16-bit adder and the 15-bit memory is arranged, so that
the sign bit of a word coming from memory enters both of the two high order adder
columns. These are denoted S2 and S 1, since they both have the significance of
sign bits. When a word is transferred to memory, only one of these two signs can
be stored. In the AGC the S 1 bit is stored. This is the standard one's complement
sign except when overflow occurs during addition, in which case it is the sign of
the result of the twooperands. This preservation of sign on overflow is an important
A short word computer can be effective only if the multiple-precision routines are
efficient relative totheir share of the computer's work load. In the AGC 'S application
component words agree. The method used in the AGC allows the signs of the
components to be different.
adding 10 to lower order number and subtracting 1 from higher order number to
obtain the result, (*1, ,8). Since addition and subtraction are the most frequent
37
operations, it is economical to store the result as it occurs and reconcile signs
only when necessary. When overflow occurs in the addition of two components, a
one with the sign of the overflow is carried to the addition of the next higher
components. The sum that overflowed retains the sign of itsoperand. This overflow
is termed an interflow to distinguish it from an overflow thai arises when the maximum
For triple and higher orders of precision, multiplication and division become
excessively complex, unlike addition and subtraction where the complexity is only
linear with the order of precision. However, APOLLO programs do not require
greater than double- precision multiplication and division. The algorithm for
sign notation may not be used. Both operands must be made positive in identical
sign form, and the divisor normalized so that the left-most non-sign bit is one. A
few triple-precision quantities are used in the AGC. These are added and s'abtracted
t
using independent sign notation, with interflow and overflow features the same as
The major goals in the computer were efficient use of memory, reasonable speed
the word length, one's complement notation, parallel data transfer, and the
characteristics of the editing registers. The following rules governing the design
of instructions arose from these goals and constraints: three bits of an instruction
word are devoted to operation code, address modification mus,_ be convenient and
operation should be available. These rules are by no means complete, but give a
good indication of what kind instruction set was desired.
The three bits reserved for instruction codes are capable of rendering a selection
among eight operations with no further refinement. Two techniques are employed
in the computer to expand the number of operations 4-fold. These are called
shift code. When an extend instruction occurs, it signifies that the next instruction
38
code in sequence is to be interpreted otherwise than normally. By this means, the
used instructions. For example, code 000 selects the Transfer Control instruction
Partial codes are instruction codes that encroach upon the address field. This
technique capitalizes upon the essential difference between fixed and erasable
2000-3777 (octal) selects a Double Exchange instruction for erasable memory, whose
addresses are obtained by reducing the address module 2000 (octal). In a similar
way, the Transfer to Storage instruction is selected by the same code for addresses
4000-5777 (octal), and the Exchange Ainstruction for addresses 6000-7777 (octal),
both being for erasable memory. Alternatively, the entire fixed memory field may
select a different instruction for fixed memory, or else the same instruction may
be selected over the entire address field.
Table 2-IV (Parts 1 and 2) lists the normal AGC instructions. These include
capability for double-precision data handling and addition. Many of these instructions
are similar to one another and share microprogram steps.
Input and output are handled to a large extent by special registers called channels,
that are not accessible through the regular address field. In the version of the
AGC prior to the present one, this was not true; the input and output registers
were addressable for any instruction. Here, the channels are accessible by the
They are tabulated as instructions only because such operations have instruction
status in most computers.
39
TABLE 2-III
INSTRUCTION CLASSES
Extracode
Channel
Special
Counter
Tape
4O
TABLE 2-IV
NORMAL INSTRUCTIONS
41
TABLE 2-IV (Cont)
C. INSTRUCTION MODIFICATION
E. INPUT OUTPUT
*I. TRANSFER CHANNEL TO A READ 2 MCT CHANNELS
42
TABLE 2-1V (Cont)
NORMAL INSTRUCTIONS
E. INPUT OUTPUT
43
TABLE 2-V
SPECIAL INSTRUCTIONS
A. INVOLUNTARY
B, ADDRESS DEPENDENT
2. EXTEND TC 1 MCT 6
44
TABLE 2-V (Cont)
SPECIAL INSTRUCTIONS
45
2,3.5 Timing and Priority Control
In order to provide characteristics in the computer design facilitating the real time
control function of the guidance system, special circuits are provided to maintain a
measure of real time and to have the capability of interrupting the normal program
steps as the result of timed events or external stimuli. Real time is provided by a
countdown chain from the crystal controlled oscillator running at 2.048 MHz. This
is provided by counters that can be set under program control and, after counting
down, interrupt the program in operation. The counting is accomplished by
incrementing or shifting an erasable memory register. Anumber of these registers
are used for real time control functions of the computer.
Counter incrementing may take place between any two instructions. External requests
for incrementing a counter are stored in a counter priority circuit. At the end of
every instruction a test is made to see if any incrementing requests exist. If not,
The incrementing cycle consists of reading out the word stored in the counter register,
incrementing it (positively or negatively) or shifting it, and storing the results back
in the register of origin. All outstanding counter incrementing requests are processed
before proceeding to the next instruction. This type of interrupt provides for
asynchronous incremental or serial entry of information into the working erasable ff
memory. The program steps may refer directly to a counter register to obtain the
desired information and do not have to refer to input buffers. Overflows from one
location. Each interrupt option has a different location associated with it. Interrupting
programs may not be interrupted, but interrupt requests are not lost, and are
processed as soon as the earlier interrupted program is resumed.
2.3.6 Memory
The memory of the computer consists of a coincident current ferrite core memory
for erasable storage and, for program storage, a nondestructive read out (core
46
rope} memory of the transformer type that has the information wired in. The only
logical difference between the two memories is the inability to change the contents
of the rope memory by program steps. The rope memory is manufactured
(information wired in) in a modular form, containing approximately 6K words, that
can be plugged into the computer. The computer has a maximum capacity of six of
these modules, thus providing for a total capacity of approximately 36K words of
fixed memory.
There are two exceptional characteristics of this design. First, the erasable memory
range of 0 to 35 degrees C.
2.3.7 Input/Output
to provide for the multiplicity of subsystem functions that were controlled or sensed
by the computer. The common usage of the computer" in the guidance system of the
CM and the LM lead to the requirement for flexibility but also provide motivation
for limiting the circuit configuration, since the output circuits must operate
In most cases the electrical interfaces were of two distinct types; one, a pulse
transformer interface for those signals that required relatively fast response or
accurate timing, and two, a dc level interface for those that are characterized as
status signals or slow response. The only exception to these types of interfaces
was the LM hand controller. This was an 800 Hz signal with an amplitude proportional
to the angle of deflection of the hand controller. For this case a special analog-to-
digital converter was provided in the computer. The primary reason for the two
type of interfaces was to provide noise immunity at the interface. The transformer
coupling was responsive to high frequency pulses, but because of the transformers
the spacecraft wiring could be a balanced line with shielded twisted pairs well
protected from induced noise. The dc level signals, that could be sensitive to
spurious currents in the grounding paths, were provided with filtering to minimize
noise susceptibility. This permitted a simpler spacecraft wiring.
The input/output section includes: logic for storage of status bits (input and output
channel registers), logic for timing control, logic for storage of counter pulses and
47
interrupt commands,and finally the actual interface circuits for the conversionof
signal levels. The information transfer is accomplished via the channelregisters
for all status or discrete information, such as displays or the firing of reaction
control jets, andvia the counterregisters for incremental or serial word transfers.
2.3.8 StandbyOperation
The standby mode of operation was provided to conserve power. The early mission
rules called for extended periods of time when the guidance system could be put to
sleep. During this standby mode of operation, however, the computer must maintain
real time and provide some of the interface timing signals, for example the 1.024
MHz output to the spacecraft central timing system. Since normal program operation
and counter incrementing are suspended during standby, a countdown chain was
provided in the logic of the computer to maintain time and provide the output timing
/
signals. The timing chain is addressable as an input/output channel. Therefore,
when the computer is returned to normal operation, the start up program can update
The standby mode of operation has not been very useful in the APOLLO missions
to date, since mission rules leave the system on, or in the case of the LM during
translunar flight, power is off. In this case real time and other initial conditions
are sent to the computer via update link from ground control.
The heart of the language of communication is the concept of Verbs and Nouns.
This was designed into displays and operating procedures. The Verb is a two-digit
code for what action is to occur. Examples are: loading data into the computer,
displaying data from the computer, acknowledging acceptance of results or actions,
48
and initiating the execution of major computer programs. The Noun is a two-digit
code for the operand affected by the action of the Verb. Usually the Noun code
refers to a set of data contained in AGC erasable registers. All operation between
the operator and system employ the use of these codes.
Commands are entered into the computer from a keyboard of nineteen push buttons.
These include the ten decimal digits, plus and minus, the Verb,: the Noun, and a
number of auxiliary items. No more than one key is depressed at a time, so the
nineteen key functions can be encoded into five signals. This is done by a diode
matrix in the keyboard section of the DSKY. So that each key depression can be
quickly gathered and interpreted, the key code inputs to the computer are of the
interrupting type. The key input channel is interrogated by the keyboard interrupt
program. This also makes a request to the computer's executive program to process
the key code character at the earliest opportunity. A "trap" circuit logically
differentiates the leading edge of the key code signal, so that no more than one
interrupt is made for each depression of a key. This trap circuit is reset by a
signal through all of the normally closed contacts of the keys. The reset signal is
presented only when all keys are released.
The special keys or buttons have the following designations and functions:
(i) The CLEAR button. This provides a means for removing error's made during
the loading of a data word, but before its acceptance by the computer.
(2) The KEY RELEASE button. This is used along with the KEY RELEASE light.
This light, when on, indicates to operator that, because of his activity at the
keyboard, some internal AGC activity has been unable to obtain use of the
DSKY to display some information to him. Pushing the KEY RELEASE button
indicates that operator is willing to relinquish the DSKY in order to observe
the internally initiated display.
(3) The RESET button. (Formerly labelled ERROR RESET in Block I). This
enables the operator to turn off the error indicators once he has observed
them, so that later occurrences of the same error conditions can be indicated.
(4) The ENTER button provides two distinct functions. One, for execution of an
enable standby, the depression of the button will cause the computer to go
49
COVER
'\
1 _ _ INTERTRAY
,H
TRAY B -_ i i { CONNECTION
J _7 ,
,-i'" _ LOGIC MODULE
TRAY A
/is-
co_c_o_
_ I 1[
5O
into standby mode. A subsequent depression of the button will return the
(1) The5-digit (plusoptional sign) data display registers (R1, R2, R3). Numerical
registers. The signs are appropriate to decimal data, but no signs are used
with octal data. The 5-digit basic data word was chosen because, in octal, it
allows the 15-bit basic AGC word to be represented exactly; and in decimal,
(2) The Verb-Noun flash. This always indicates to the operator that some action
is desired of him. The numerical segments of the 2-digit Verb and 2-diEit
Noun display are alternately turned off and on approximately once per second.
This provides a mechanism that readily catches the attention of the operator.
(3} The PROGRAM ALARM light. This indicates errors caused by a program
(4} The OPERATOR ERROR light. (In Block I this was called CHECK FAIL light
-a term that was not too self-describing). This indicate_ a procedural error
(5} The RESTART light. This indicates one of a class of computer errors, whose 4.
rollback to the last known safe point. These errors included: computer
interrupt activity was too frequent, not frequent enough, or too long in duration;
failure of a parity check; computer locked into a one instruction tight loop;
(6) Additional status and caution conditions were provided as indicated in Fig. 2-5
for the CM. In the LM there were four more provided in the panel for a
total of fourteen display elements which is the maximum capacity of the panel
and DSKY.
The mechanical design of the Block II computer utilizes modular construction and
wire wrapping for the interconnections of the modules. Figure 2-8 is an exploded
artist's concept of the computer. This illustrates the two major subassemblies or
trays containing modules and interconnecting wiring, The trays with the covers
51
- FINAL ASSEMBLY-
( PRIOR TO ENCAPSULATION )
TYPICAL DIGITAL MODULE BLOCK 11
°
52
and gaskets provide mechanical support, thermal control via the spacecraft cold
plate, environmental seal and shielding from electromagnetic interference. The
rope modules are plugged into the structure from outside the sealed case. This
permits program changes without breaking the environmental seal.
The module construction is basically welded cordwood type u sing standard components
and integrated circuits. In the case of the 24 logic modules, the integrated circuit
gates packaged in flatpacks are welded to multilayer boards for interconnection
between gates. See Figure 2-9. The module frames provide mechanical support
and thermal control for the components in addition to tray interface connector and
jacking screws.
The modules are partitioned between the two trays such that the logic, interface,
and power supply are in Tray A. The memory, memory electronics, analog alarm
circuits, and oscillator are in Tray B, in addition to the connectors and mechanical
interconnections required. In the computer there are about 15,000 connector pins
with an average of more than two connections per pin. After the wiring is complete,
the tray is potted to provide mechanical support for the interconnecting wires and
connector pins.
The principal parts of the Block II DSKY are the frame, six indicator driver modules,
800 cps power supply, two pluggable display panels and keyboard. The power supply
provides high voltage ac power for lighting the electrotuminescent display panel.
The control of the panel lighting is via the latching relay that provides coding and
storage for the commanded display data. The status and caution panel is lighted
with filamentary bulbs and also switched via either latching or non-latching relays.
In the case of non-latching the information is stored in the AGC Output register
drivinga detailed display light. The keyboard is a special design to permit lighted
keys, required actuating force, and small size. All of these elements are intercon-
nected and environmentally sealed by the frame and covers. See Figure 2-5.
53
, SECTION 3.0
COMPUTER DESIGN DESCRIPTION
3.1 INTRODUCTION
The principal features of the electrical and mechanical design of the computer
subsystem were shaped by the initial decisions, technological development, and
designs were" updated as mission requirements evolved. Each of the proposed design
changes were thoroughly evaluated to determine the impact on the program. Many
proposed design changes were not accepted. A typical instance, in the spring of
1969, involved the proposed increase in the size of erasable memory from 2,000 to
16,000 words. While the increase in erasable memory capacity had many desirable
features, development time and cost provided a strong counter argument. A change
proposed tn late 1969 could not be implemented on an early APOLLO mission, and
policy dictated that it could not be made unless absolutely necessary to mission
success. The computer as described resulted from this evolutionary process, but
the major characteristics were determined during the early phases of the development
program.
this description of the computer design refers to the Block II configuration except
As described in Section 2.0, the computer has three principal functional subdivisions:
timing and sequence generation, the central processor, and the memory section.
In order to describe the electrical design features of the computer (see Figure 2-4
for block diagram), it is desirable to divide the computer into the following areas:
1. Logic design
2. Oscillator
Preceding
pageblank' 55
......... i
TABLE 3-I
MAJOR MILESTONES
August 1964 NASA approval for Block II design with common computer
for CM and LM.
56
TABLE 3-I (Cont)
MAJOR MILESTONES
57
TABLE 3-If
58
TABLE 3-III
MIT/1L System Test July 1965 200M Dec. 1965 Mar. 1.cj66
59
Z
2
Z
C,
(..9
I -- 5
0
.,.._
IT
I.-
Z 0 0
>c .. <, i
Z
Z
t- >
Z
_ 2 o 5
_" Z ,,,/
i.-- _ 0
uJ 0
0
.g
,J
:./2,
':VJ .T,
0
.J
Z
£3
o
S ,-.-i
} ® ® (_'_
:l
Z
C
_ Z
C
I--
I ',_3
_2
o
Z
Z d
w 0
e-n
5
CJ
.J
,z
©
z
i
Z
60
o Power supplies
4. Memory circuits
The mechanical design features will then be described in two sections, one concerning
the computer and one the DSKY.
The digital logic desLgn of the computer is described within the framework of the
implemented in the logic section of the computer are timing and sequence generation,
central and special registers, the arithmetic section, instruction decoding, and
memory addressing.
A logic circuit was required that was capable of synthesizing all switching operations,
and that was simple enough to be controllable, testable, and producible. The circuit
chosen was an integrated circuit NOR gate. This employs a configuration known as
along with four resistors, form a three-input gate with a fan-out capability of
of this design resulted in a new unit with approximately the same specification,
except for a power dissipation of 5 mW per gate and two gates per silicon chip
mounted ina 10-lead fiat package. Figure3-1 illustrates the Block I and II integrated
of logic gates are employed in each computer, thus high reliability is essential for
every gate. It was assumed early in the development that reliability of this new
by the evaluation of large samples. Had a second type of logic microcircuit been
employed in the computer, the number of logic elements could have been reduced
by about 20 percent. But it is clear that to have done so would have been false
economy from the point of view of reliability, for neither of the two circuits would
61
haveaccumulated sufficient operating history to demonstrate the high meantime
betweenfailures with the confidencelevel of a single .NORcircuit.
Logic equationsexpressed in the familiar AND, OR, and .N'OTnotation may readily
be realized with NORoperators. The NORfunction of the three variables is
andan Ol_
N (x,y,z) = x y z = x + y + z an AN_Dfunctionis ,A (x,y,z) = x y z
function is O (x,y,z) = x + y + z by comparison, N (x,y,z) = A (x,y0z) = _(x,y,z)
The NOT operation, or complementation, is the NOR function of one variable, i.e.,
Sequential operations require storage, and the basic logic storage element is the
flip-flop. Two NOR gates may be used to form a flip-flop if the output of each is
an input to the other, and if all other inputs are normally zero. If one of these
other inputs is momentarily made equal to I, the flip-flop is forced into a state
that may be defined as a 1. Whereas, if a free input on the opposite gate is made
equal to l, the 0 state is obtained. Most frequently, the condition for setting a
flip-flop in a particular state is that two or more other signals simultaneously assume
input of the flip-flop plus any NOR operation required to inver t (complement) the
inputs.
and also to drive more than five inputs with a single output. For these reasons,
NOR gates may be combined so as to increase either the input capacity (fan-in),
the output capacity (fan-out), or both. Fan-in is increased by connecting the outputs
of unpowered gates to the output of a powered gate. This provides a fan-in of three
times the total number of gates. Fan-out is increased by connecting the outputs of
powered gates together. Both fan-in and fan-out are increased, but the fan-in is
not available becauseit is necessary to have each input signal connected to as many
inputs in common as there are powered gates connected together. This is done in
order to distribute the collector currents and thus be able to saturate the transistors.
An illustrative example of the NOR logic in the computer is provided by the operation
of the flip-flop registers in the central processor. Digits are transferred from
one register to another through a common set of lines called _he write buses. The
central register flip-flops are selected by read and write pulses applied to gates
62
that either set or interrogate the flip-flop of the corresponding register. Figure
3-2 showsa hypothetical set of three flip-Hops similar to those in one bit column
of the computer's central register section. Information transfers betweenthe
registers are controlled by three clocked action pulses: read, write, and clear.
Thus the WRITE BUSis normallyin the 1 state,and changesto 0,while transferring
a I. SupposeREG I contains a l, i.e., the top gate of its flip-flop has an outputof
0. At the time that the READ i signal goes to 0 from its normal 1 state, the output
of the read gate. CONTENT I, becomes a I. This propagates through a read bus
fan-inand an inverter and fan-out amplifier to make WRITE BUS become 0. Suppose
that WRITE 2 is made 0 concurrently with READ I. Then the coincidence of O's at
the write gate of REG 2 generates a 1 at the SET 2 input, thus setting the bit to I.
_EA0 1
P t
I
I
1 I --
I _A_
I l p
I
I I i
.'_C 3'_.T:'!ir
,,
I
I
I : I
I
31 CLEIR ?
[T
.IE.1151E_ S
R_GISTERS
t-<D-
,_ W_ITE G_TZS _'._
ITE _S
If REG 1 had contained a 0, the write bus wou£d have remained at i, and no setting
input would have appeared at the upper gate of REG 2. The CLEAR 2 pulse, that
always occurs during the first half of WRITE 2, would have forced the flip-flop to
the 0 state, where it would remain; whereas when a i is transferred, the SET 2
signal persists after the CLEAR 2, and thus forces the register back to the l state.
Thus the simultaneous occurrence of READ l, WRITE 2, and the short CLEAR 2
pulses transfers the content of REG l to REG 2. Only the content of REG 2 may be
altered in the process. REG I and REG 3retain their original contents. An instance
of gates being used to increase fan-in is shown where several CONTENT signals
are mixed together to form the signal READ BUS. An increase in fan-out is achieved
by the two gates connected in parallel to form the signal WRITE BUS.
The timing circuits of the computer consist of a ring counter, a scaler, a time
pulse generator, and other circuits that generate sub-phases of the time pulses,
63
CLEARWRr[E
CRAFT SYSTEM
I 0?4 MHI
L--. _i z KHz"_
_3hE _'EMOR v
l
?PULSE
i 0_4 _z I_;%_.AT_I! ICYC_ TIME L-_=- ?_ _ KHz TIMING
:HN 4 ELAPSE)
) REAL
EHN 3 _IME
PROGRAM COUNTER
(E MEJ_ORY,
CHANNEL 4 C-,ANNEL ?,
k v /
64
developed from a 2.048-MHz oscillator, that is the primary timing source (see Section
The pulse forming logic generates the basic control pulses and the spacecraft master
also used, together with the oscillator output, to generate control pulses, clear,
write, read, and four phases of the 1.024-MHz signal for use in sequencing activity
that occur sequentially within a memory-cycle time (MCT) of 11.7 _ sec. A shift
The other frequencies needed for the computer and interface requirements are 102.4
kHz and its binary submultiples. The 102.4-kHz signal is generated in a 10-step
ring counter, whose input is the 1.024-1%_Hz signal. The ring counter also generates
auxiliary outputs used to construct strobe signals for phase and pulse length control
within the basic 9.76 _secinterval of the 102.4-kHzsignal. The binary submultiples
stages in length. This scaler, along with the rest of the timing, is operative when
mode. See Figure 3-4. It thus serves as a measure of real elapsed time, and the
high order 28 bits can be interrogated under program control (I/O channels 3 and
of 1/3200 second. In normal operation, this integer repeats with a period of about
23.30 hours, and therefore can be used to update the program time counter following
time pulses, by instruction codes, bya memory cycle stage counter, and by tests
of priority activity. The output of the wired memory is a sequence of control pulses
time pulses and instruction codes. The control pulses provide the gating necessary
to perform the operations required during any one instruction. Appended to the
sequence generator are circuits for resolving competitive requests for interruptive
action. These are organized in a priority structure, where the highest priority
65
_°I I_ ,_"_
I I RCF_
L
WCH RC_
RF8
t
., _ 1
, i 1
RBg_
w(.g t
I_EB J
_ULOg
WAG _ ,
Q._5
RL_,
d---
-3
I
I
I
15 I
I
I
RZ I
i
r67
WB L2 I
RC
wS
PJLSES GE_
]
SEQ J <Z>--- 1 I
I _L-I
I
_J
v
_ONTROL
PLLSES
C,T_ R_T$ J
TO1
_E DOP
¢,L_'
WL
66
request is serviced first regardless of when it is received. Separate priority circuits
serve the counter increment (cycle steal) and program interrupt signals. Cycle
steals occur between all instructions. Program interrupt can be initiated at the
The logic in the central processor includes the flip-flop registers, arithmetic element,
interface registers, memory addressing logic, and other logic required for data
The special and central registers include addressable and unaddressable flip-flop
registers. These include the upper and lower accumulators (A and L), memory
address (S) and bank registers (EB and FB), program counter (Z), memory buffer
(G)0 and auxiliary registers (X, Y0 Q, SQ, and B). Only two of these registers can
be considered non-special, that is, having no function other' than temporary 15-bit
storage. These are the program counter Z and the return address auxiliary register
for the adder. Auxiliary register, SQ, stores the instruction code. The upper and
.¥1emory buffer register, G, performs shifting and cycling functions, and controls
inhibit digit drivers in the erasable memory. The memory address register, S,
controls memory selection circuits. Bank registers, EB and FB, likewise control
memory selection, and are both accessible via a common address denoted BB as
well as individually.
incorporated in order to expedite the latter two operations in the Block II computer;
these operations were omitted in Block I. The requirement for more computing
speed in Block II dictate the use of more logic to speed up the arithmetic operations.
The Block I adder stored the two operands in flip-flop registers (X and ¥), and
developed, for each bit position, the binary sum (U) of X, Y, and an incoming carry,
and also developed the outgoing carry. The logic was arranged so as to limit the
number of gate stages between incoming and outgoing carries to 2, which is the
minimum possible using NOR logic alone. The 16-bit adder thus required 32 gate
propagation delay times, or about 960 nanoseconds for carry propagation alone,
67
assuming a worst-case 30 nanosecond average gate delay. Taking into account the
propagation through buses, gates, and summing circuitry with adequate timing margin,
three pulse times (977 nanoseconds each} were necessary for each use of the adder.
During multiplication this was the limiting speed factor. The Block I multiply
instruction used addition 14 times, once for each bit of the multiplier operand except
for sign. Two additions were accomplished per memory cycle, resulting in an eight
memory-cycle time sequence.
In the Block II design, logic changes were made to increase the speed of the multiply
instruction from 117 _sec (as in Block I) to 46.8 zsec. These changes included the
introduction of carry skip, treatment of two multiplier bits at once, and dedicated
wire word transfers.
The first logic change (carry skip) decreases the worst-case carry propagation
delay by anticipating the output wherever four successive stages, starting with an
even-numbered stage, are in receipt of an incoming carry. Carry-prone means
that one or both operand bftsare 1. When a group of successive stages are carry-prone
and a carry enters the lowest order of the group, there is necessarilya carry out
of the highest order stage of the group. With a very low cost in additional gates,
the worst-case add time was reduced to under a pulse time (977 nanoseconds), so
that the sum could be read at the pulse time following the addition.
The second logic change entailed modifying the multiplier function of the operand
in the multiplication process. Where one multiplier bit controlled whether or not
the multiplicand was to be added to the partial product (as in Block I), two multiplier
bits control whether the multiplicand is added 0, 1, 2, or 3 times to the partial
product in Block II. The 0 and 1 multiples are readily ax'ailabie by suppressing or
allowing addition of the multiplicand. The 2-multiple is obtained by adding the
multiplicand shifted left one position, which requires a special write-gate set on
the Y register. To obtain the 3-multiple, an apparently indirect means is used of
times and subtracting once to make a net addition of three times the multiplicand.
output (C). The carry from one cycle to another can result in increasinga 3-multiple
addition to a 4-multiple addition, in which case there is no action during that cycle,
68
The third logic change was the incorporation of dedicated wiring between the A and
time could be reduced to two pulse times. The end result of the three revisions is
that multiply requires three memory-cycle times in Block It as compared with eight
memory-cycle times in Block I and onein Block II. Thus the real-time comparison
The divide instruction speed wasnot as easily increased as the multiply instruction.
However, the faster adder and dedicated transfers resulted in a reduction from 18
to 8 memory-cycle times. One of the requirements for the control pulse sequence
for Block It division is for the removal of carry propagations in the adder. The
carry anticipation circuits do not expedite this action, and logic is therefore furnished
to suppress every fourth existing carry at the appropriate time, so that this action
:?"
Parallel information transfer is effected in these special and central registers by
each of the registers consists of a gated flip-flop in each occupied bit position.
The flip-flop ordinarily has a read gate that fans into the common read bus and has
one or more write gates that fan into the flip-flop from the common write buses
(one bus for each bit position, shifting operations therefore require more write
gates) or from other registers. The read and write buses have identical information,
the former driving the latter through amplifying logic. See Figure 3-2. Some special
registers (X register) are not connected to the bus but are loaded by dedicated
wiring. In the case of the X register, loading is directly from A and feeds the
adder logic.
Other than the special and central flip-flop registers, the logic contains a number
of other registers and performs special logical operations when special erasable
channel registers and the G register for the memory interfaces. The input/output
channel registers I through 168 and 308 through 358 are addressable with input/
output instructions only, thus resolving the overlap between the channel and the
For erasable memory addresses, 208 through 238, the word being transferred into
the G register is not sent directly, but is modified by a special gating network.
69
TABLE 3-IV
SPECIAL ADDRESSABLEREGISTERS
00000 A
?.
00005 Z Program Counter
00007 Zeros
00014 (sparel
00015 ZRUPT
00016 BBRUPT
Erasable
00017 t3RUPT Stores Next Instruction
Memory
7O
Table 3-IV lists the functions of these special registers. Note that the first eight
registers (08 78 ) in the erasable memory are not accessible, because they are
reserved for the central flip-flop registers. Thenext eight (108 - 178 ) are reserved
for storage during interrupts (see Section 3.2.5).
An instruction word of the computer contains the address and operation code for a
given computer operation (see Figure 3-6). Bits ] through 12 are stored in the S
register and bits I0 through 15 are stored in the SQ register. The multiple use of
bits I0, ll,and 12 provides for extend operation codes for restricted memoryaddress
field. The contents of S, SQ and other central registers determine memory address
The contents of address register S, erasable bank register EB. fixed bank register
FB, and fixed extension F EXT (SUPERBNK) bit in output channel 7 are necessary
to address the complete memory of the computer. For example, the 2048 erasable
registers are accessed by a combination of the 10 least significant bits of the address
field in the S register and the three-bit EB register. The combination of all 12
bits of S, the five bits of FB, and the fixed extension bit are used to address the
fixed memory. Table 3-V lists the octal addresses of all fixed and erasable memory
locations with the contents of the S register and bank bits necessary to access the
locations.
The operations performed by the computer are determined by decoding the contents
of SQ bits, 10 through 15 and bit 16, the extend bit, that is set to I by an extend
instruction (TC6), preceding the operation for which it is required. The extend
bit is reset by every instruction except index (NDX). As indicated in Figure 3-6,
bits 10, 11, and 12 of the address field of an instruction word are used to expand
the operation code by restricting the address field to erasable memory or, for bit
10, input/output channel instruction's. That is, the instruction decoding circuits
limit the memory address decoding circuits to erasable memoryor channel addresses
during the operations that make use of bits 10 through 12. Table 3-VI lists the
In addition to the instructions listed in Table 3-VI, there are a number of involuntary
sequences, not under the programmer's control, that can break into or interrupt
71
OP
CODE
J B
J
ADDRESS
_- o o
E MEMORY 0 0 o o!
0 1
._ VARIABLE
1 0
_ o o
0 0
T 0 1 VARIAB_
F MEMORY
}_ 1 = VARIABLE
72
TABLE 3-V
1 5 4 3 2 1 3 2 1 12 11 10 9 8 7 6 5' 4 3 2 1
J
00000-01377 x (I) x x x x x x x x 0 0 O000- 1377 (2)
(J
00000- 00377 0 0 0 0 0 1 1 0000- 0377
c_
u:
66000- 67777 x 1 0 1 1 1 0 1
70000- 71777 0 1 1 0 0 0 0 I
c
E
_J
106000- 107777 0 1 1 1 1 1
110000- 111777 1 1 1 0 0 0
_D
:%
NOTES
73
TABLE 3-VI
INSTRUCTION CODES
A. SEQUENCE CHANGING
3 2
1. TC Relint (3) All 0 0 0 0 x x x
Inlint (4)
Extend (6)
2. TCF F 0 0 0 0[itO3] x
3. CCS E 0 0 0 1 0 0 x
4. BZF F 1 0 0 l[ito3] x
6. EDRUPT Channel 1 0 0 0 I 1 1
i. CA All 0 0 1 1 x x x
2. CS All 0 1 0 0 x x x
3. DCA All 1 0 1 1 x x x
4. DCS All 1 1 0 0 x x x
5. TS E 0 1 0 1 1 0 x
6. XCH E 0 1 0 1 1 1 X
7. DXCH E 0 1 0 1 0 1 x
8. LXCH E 0 0 1 0 0 1 X
9. QXCH E 1 0 l 0 0 1 x
C. INSTRUCTION MODIFICATION
1. NDX E 0 1 0 1 0 0 x
Resume (17)
2. NDX All I 1 0 1 x x x
I. AD All 0 1 1 0 x x x
2. SU E 1 1 1 0 0 0 x
3: ADS E 0 0 1 0 1 1 x
74
TABLE 3-VI (Cont)
INSTRUCTIONCODES
NO. CODE
1 MEMORY SQ
16 15 14 13 12 11 20
4. MSU E 1 0 1 0 0 0 x
5. INCR E 0 0 1 0 1 0 x
6. AUG E 1 0 1 0 1 0 x
7, DI M E 1 0 1 0 1 1 x
8. DAS E 0 0 i 0 0 0 x
9. MASK All 0 1 I 1 x x x
10. MP AH 1 1 1 1 x x x
11. DV E 1 0 0 1 0 0 x
E. INPUT OUTPUT
1. READ Channel 1 0 0 0 0 0 0
2. WRITE Channel 1 0 0 0 0 0 1
3. RAND Channel 1 0 0 0 0 1 0
4. WAND Channel 1 0 0 0 0 I 1
5. ROR Channel i 0 0 0 I 0 0
6. WOR Channel i 0 0 0 l 0 I
7. RXOR Channel l 0 0 0 I I 0
NOTES:
75
COUNTER INPUTS
FROM INTERFACE CIRCUITS
FLIP-FLOPS
_ i_
FUNCTION PRIORITY
DETECTION DETECTION
L LOAD
"= SHIFT 0
DESIRED MODIFICATION
76
computer interface activity or by certain overflow conditions within the computer.
The interrupts are of two distinct types that are quite different. One, counter
interrupts may take place between any two instructions and consume one memory
cycle time to update the counter being addresssed. Two, program interrupts occur
between any two instructions, if no interrupt is in process, and provide the function
different address is provided for each of the interrupt options. The length of time
the computer remains in the interrupt mode depends upon the operations that must
Counter interrupts can take place between any two instructions. Requests for a
counter operation are stored in the counter priority circuit. The priority logic
(see Figure 3-7) is examined at the end of every instruction to see if any counter
operations have been requeste d. If not, the next instruction is executed directly.
If a request is present, a memory cycle is executed that consists of reading out the
word stored in the counter register, performing the operation and storing the results
back in the register of origin. All outstanding counter requests are stored and
processed before proceeding to the next instruction. Priority for the satisfaction
of one or more requests is based on the value of the counter's address. (00248 has
the highest priority, and 00608 has the lowest). This type of interrupt provides for
memory. The normal instructions can refer directly to a counter register to obtain
the desired information. Overflows from one counter may be used as inputs to
another. A further property of this system is that the time available for normal
There are 29 counter interrupts in the computer. These are associated with 29
interrupt must specify the counter address and the operation to be performed.
These are determined by the dedicated interconnections from the external signal
address and operation. The seven involuntary instructions, and the counter address
77
TABLE 3-VII
SPECIAL PURPOSECOUNTERS
OCTAL
COUNTER INSTRUCTION PURPOSE
ADDRESS
TIME2 00024 PiNe (I) High order part of Main Time counter;
stores high order part of reference '
(clock) time
78
TABLE 3-VII (Cont)
SPECIAL PURPOSECOUNTERS
OCTAL
COUNTER ADDRESS INSTRUCTION PURPOSE
79
1. DINC, applying to cell 00318 (used as timing counter) and cells 00478 - 00568
(used for generating incremental computer outputs). If the contents of the cell are
positive, non-zero, they are decremented by 1 and positive output pulses are provided;
if the contents are negative non-zero, the contents are incremented by 1 (i.e.,
2. MCDU, applying to cells 00328 - 00368 (used for negative incremental inputs).
This instruction subtracts 1 (in 2's complement) from the contents of the cell.
3. PCDU, applying to cells 00328 - 00368 (used for positive incremental inputs).
This instruction adds 1 (in 2's complement) to the contents of the cell.
4. MINC, applying to cells 00378 - 00448 (used for negative incremental inputs}.
This instruction subtracts 1 (in l's complement) from the contents of the cell.
5. PINC. applying to cells 00248 00308 (used as timing counters) and cells
00378 - 00448 (used for positive incremental inputs). Tn_ instruction adds 1 (in
l's complement) to the contents of the cell.
6. SHANC0 applying to cells 00458 - 00468 (used for converting serial input to
parallel). This instruction shifts the contents of the cell left by one place, and then
adds one. It is used for a binary 1 of a serial input bit stream.
7. SHINC, applying to cells 00458 00468 (used for converting serial input to
parallel} and to cells 00578 - 00608 (used for converting parallel to serial outputs).
This instruction shifts the contents of the cell left by one place without adding to
the contents. It is used for binary 0 of a serial input bit stream or to generatea
serial output bit stream from the cell overflow bit. That is, an overflow generates
an output pulse on a "l" line, and the lack of an overflow generates a pulse on a
"0" line.
Program interrupt, the second type of interrupt sequence, can occur between any
two instructions of a program that is not alreadyan interrupt program. An interruption
consists of storing the contents of the program counter (Z), the content of the next
8O
with it. Interrupting programs may not be interrupted, but other interrupt requests
are retained and processed in the order of their priority as soon as the earlier
There are eleven program interrupts incorporated into the computer design. Provided
certain conditions are satisfied, most interrupts cause the performance of the
The interrupt is mechanized through the involuntary instruction RUPT0 which takes
3 MCT to perform. Other software sequences such as EDRUPT (an "extended order")
can introduce an interrupt. Resumption of the interrupted program is triggered by
the special purpose instruction RESUME. The individual program interrupts with
their mnemonic titles, starting addresses, causes, and functions are listed below
1. T6RUPT, starting address 40048 , is generated by the next DINC after TIME
6 (counter ceil 0038 ) has been reduced to -0. It is conventionally used to control
the timing of spacecraft jet commands to the nearest 1/1600 second.
of a keyboard input.
81
6. KEYRUPT2, starting address 40308, is generated for the command module
by depression of a navigation DSKY key or depression of an optics mark button and
detected from the bits of Channel 16. For the lunar module it is generated by
depression of the optics mark button or by out of detent contacts of the rate of
descent switch. It is used by software to initiate processing of keyboard (DSKY)
inputs, optics marking, and rate of descent control.
of UPLINK data into counter cell 00458 . It is used by the software to start processing
the UPLINK data word.
8. DLKRPT, starting address 40408, is generated by the end pulse that is sent
to the computer from the telemetry subsystem to signal the completion of a data
transmission from output channels 348 and 358 . It is used by the software to load
new data into these two output channels.
10. HAND CONTROL t_UPT, starting address 40508, is generated by the out of
detent switch of the rotational and translational hand controller and is detected from
the bits of Channel 31 and 32. This interrupt is used by the software to start
processing the inputs from the hand controller.
The prime source of timing for the computer, computer interfaces, and spacecraft
central tim ing i s a tern perature- corn pen sated, crystal- controlled oscillator operating
at a frequency of 2.048 MHz. A temperature-compensating circuit was chosen instead
specifications, assembly, and testing procedures. The design was capable of realizing
a temperature stability that was at least a factor of 10 better than the system
requirements over a temperature range of 25°C. The long term stabilitywas another
important design requirement, since calibration of the oscillator was not possible
with the computer installed in the spacecraft. The stability or drift was specified
82
at +1.7 parts per 10 9 per day. Operational experience has demonstrated the adequacy
The computer was designed to use two voltages: one for logic power supply (4V)
and one for memory drive circuits (14V). If it were not for the excellent base
cutoff and collector saturation voltage characteristics of modern semiconductor
voltages. By referencing the memory drivers to 3.0 Volts, a bias was provided
between logic and memory circuits that increased the noise immunity of the memory
interface circuits in the high current environment. In the Block II configuration,
the logic supply was increased to 4.0 Volts and the memory to 14.0 Volts.
The key to noise immunity in the Block II computer is the result of provision for
low inductance inthe ground return path. Inthe Block I configuration, the requirement
the ground return within the computer. As a result of the reduced ground noise in
Block II, some memory circuits are referenced to ground instead of the logic voltage,
thus making available a higher supply voltage in the inductive loads of the memory.
The same general technique is used in both Block I and II to generate logic and
memory voltages from the prime source of spacecraft power, this being 28 Vdc
with a _:5 Volt tolerance.
Figure 3-8 is a simplified block diagram of the +4 (or +14) Volt power supplies.
The circuit is basically a dc-to-dc converter of very high efficiency that employs
pulse modulation principles and feedback loop to maintain regulation of load despite
the large variation of the power input from the spacecraft. As seen in the diagram,
28 Vdc from the spacecraft fuel cell is applied to the power input circuits. These
circuits contain diodes to decouple the two spacecraft power buses and an LC filter
for isolation of noise generated either internal or external to the computer. The
output provides 28 Vdc to the computer interfaces and the alarm circuits (see Section
3.6). 28 Vdc is applied to the power switch, and also to a preregulator to develop
stable voltages for the reference and comparator circuits of the supply.
' 83
v_ D L)
i-
(J 5
_>-L)
_ __u.-,n
I=-
--'mr) Z
_0 Z r,J
LJ I---
"_ £-1
uJ
5 '7
k I_I r_ r_
c_
.,=,_
_ __z
O.
(D
0
C-.
°-
L,
/
u=
l,f-
t.u
I,-
0
_J
0
CO
ii
{J {J
co co
n- r.j -
>
84
The comparator is a differential amplifier using a zener diode regulator as the
reference. Any difference between the feedback from the output and the reference
voltage modifies the pulse width of the free-running multivibrator that is synchronized
to the computer clock by a 51.2 KHz timing signal. The output of the multivibrator
switches the 28 Vdc on and off. The resulting pulsed output is then applied to a
in the computer tray determines whether the output is 4 or 14 Volts by the external
interconnections to the zener regulator.
In the standby mode, the only operating computer circuits are the oscillator, some
interfaces, scaler, clock divider circuits, and the power supplies, since these circuits
are necessary for the maintenance of real-time and synchronization signals to other
spacecraft systems. The remaining computer circuits are inactivated by the standby
open the operating supply bus. Reactivation of the computer requires another
The power supply design follows the general rules for minimum volume and power
consumption, but lacks ground isolation between the 28 Vdc power input and the
power return of the various output signals. The lack of ground isolation is a violation
of the electromagnetic interference specification that illustrates the problem of
changing requirements. For example, late introduction of electromagnetic
interference requirements, schedule pressures, and the desire to keep the volume
minimal precluded a de sign change that would have produced a ground isolated supply.
When the requirement for ground isolation was imposed, design development for an
isolated supply was initiated, but the design was not completed beyond the breadboard
stage because of uncertainties in the ability to package the power supply within the
allotted space.
A s indicated in the functional description in Section 2.0, the computer memory consists
1. The standby command signal is enabled as part of Power Down program P06.
85
_ 5FL[C v
]
CU_C_C_T _ 40b.AA
I
i--_ ONIE Or 64
I_L¢C "r _Osw
m_AO LINCa W_,TE
CU_mCN'¢
300_A ) $OOMA
Io'r
C_m_EN'r
"r 01_ GE_EC'r
- 4O...4A _ -
• _"
?
m
--.J
KELECT S_QENT_
_AC C_RmE_T
F---"-------L__
W_ITE CU_ENV
r - - -
86
3.5.1 Erasable Memory
The erasable memory was inherited from its core-transistor logic ancestor. It is
Moreover, the silicon transistor circuits, that drive the memory, normally vary
with temperature in such a way as to match the requirements of the cores over a
wide range, from 0 ° to 70°C, thus requiring no special circuit for temperature
advantageous to the computer, where the memory cycle time is already long, largely
due to the fixed memory. The 2048-word array is wired in 32 x 64 planes with no
splices in the wires for highest reliability. The planes are folded to fit into a 9
cubic inch module along with two diodes for each select line. Bidirectional currents
network is illustrated in Figure 3-9. The core driver transistors are driven by
magnetic cores, that offer two advantages: small size and storage of address for
data regeneration. Again, this circuit economy is realized at the expense of speed.
The timing of the currents, that operate the switch cores, is based on the duration
of the write current in the memory array, and is 2 ;zsec. Two current drivers with
controlled rise times, one for reading and one for writing, are used on each of the
two drive select networks. Sixteen more such drivers are used to drive the digit
lines that control the writing phase of the memory cycle. Current amplitude is
governed by the forward voltage drop e 2 in Figure 3-10 across a silicon junction
and emitter r e sistor R 2' so that tern perature corn pen sation for tern perature-d epend ent
coercive force of the ferrite core is achieved without any circuit complications.
The output signal from the memory cores has an amplitude of about 50 millivolts.
rejection and a voltage gain of 2. The sense amplifiers (see Figure 3-11) have a
differential first stage operated in a linear (class A) mode. A second stage provides
voltages are generated for the sense amplifiers by a circuit whose temperature
87
+ 14 VOLTS
i
_, I _o_o
I
e!
DRIVE
PULSE
R2
d4
][
88
w k-
1.1.1 Q.
_t_o- 0
I I
I J .,,-4
I I k_ r
i.
_¸ :
I _ _ _- _> I <:I
Z u..i ZW O
[ wt-- wl--
l.L .-I i.L-I i_
,
I ,,,o - oI!! I,
1 1
I
L___ _>
N
J
ZW
OWL9
rr<
wl.-
u_.-I
Lu©
n,,->
89
3 OF THE 192 11"
SENSE LINES
12 WORDS
LINES
INHIBIT (
TRUTH TABLE
e Line No.
1 2. 16
Core No.
1 1 0 0
2 0 1 0
3 0 1 1
4 1 0 0
9O
among a group of amplifiers in achieving uniform behavior for common reference
integrated circuit, however, balance is readily achieved owing to the extremely close
match between transistors on the same silicon chip. A similar situation holds for
uniformity from one amplifier to another, the difference being easily compensated
for by external trimming resistors and reference voltages. The small size of the
amplifier has already been proven to be at least ona par with the rest of the memory
electronics.
The computer fixed memory is of the transformer type and was developed at MIT/IL.
It is designated a "core rope" memory owing to the physical resemblance of early
,.r,
decoding property. Because of this internal address decoding, the cycle time of
the core rope is not as short as that of some other transformer memories whose
a sense wire threads a core, and is a 0 whenever it fails to thread a core. Figure
3-12 is a simplified core rope schematic indicating address decoding (inhibit lines)
and sense line wiring. The total number of bits is the number of cores multiplied
by the total number of sense lines. The memory is composed of six modules.
Each module contains 512 cores and 192 sense lines and hence contains 192 x 512,
The means by which a single core in a module with 512 cores is caused to switch
(addressed) is an extension to that illustrated in Figure 3-12. A switching current
is applied that attempts to set 128 cores (set/reset line), Four such current lines
serve a 512-core module. Inhibit currents are applied simultaneously to either the
first or second half of each group of 128 cores. Two inhibit lines exist for this
91
F l
I
.A c)
I
I
, i
2......m...2.._1
m =._01 + 14 VOLTS
NON -SELECTED
I MODULE
I
I
'-" C)
r_
I
I
I
I
d3 I
I
_, I 0 VOLT S
_SELECTED
I MODULE
I dl :
cbl d4 I AMPLIFIER
I
)
L----O+14
O__DDULEI
VOLTS
- d_
SELECTED LINE
I
l
+14 VOLTS
92
purpose. Another inhibit current is applied to either the first or second half of
each half-group. Two more inhibit lines exist for this purpose. Six more pairs of
inhibit lines exist for the purpose of reducing the uninhibited core groups successively
by halves, until only one core is left uninhibited. One member of each inhibit pair
carries current at a time. There are eight pairs in all to select among 27 cores,
of which seven pairs correspond to the seven low order address bits. The eighth
pair is logically redundant, being selected by the parity of the address. The
redundancy is used to reduce the amount of current required in each inhibit line.
After the selected core has switched and the inhibit currents are removed, a reset
current is passed through all cores. Only the core that was just set will change
state, and the sense amplifiers may be gated on during either the set or the reset
part of the cycle to read information out of the memory. The noise level during
reset is lower than during set for a number of reasons, but the access time (the
time it takes to read the memory after the address is available) is longer. Both
ways have been used. The Block II design uses the longer access time and must
produce the address earlier as a result.
In the operation of the rope memory, a single core is switched, thereby inducing a
voltage in every sense line that threads the core. Only one word is read at a time,
so that of the 192 sense lines, only 16 are connected to the sense amplifiers to
detect that have voltage and therefore store l's. Each core stores 12 words, and
as in the case of d 5 and d6; and to transmit it when the sense lines diodes are
necessary for each module. The application of selection voltages to the line and
module select terminals is a part of the address decoding that is external to the
indication for display and cause the computer to transfer control to address 40008
93
(,.9>.
L_I--I )___-
0
,-a
g.lo0
0
_--C_
_--_Z
_u._
0 .,-i
0 uJ _ _u
_- rr e_
t_ L I-
-I !
.i
Z_
A c
ur.-
L_._ _
u--J <_
Ou- 0
94
as soonas the restart condition disappears. The restart display can be cleared by
depressing the error reset (RSET) key. The primary purpose, therefore, is to
provide detection of faults and recovery by restarting the software. If the fault is
a hard failure, the restart display cannot be cleared by depressing the RSET key.
This procedure is adequate for operational type fault detections, since the only purpose
operationally is to indicate the necessity to switch to a backup mode of operation.
Late in the computer development and operational usage, a special module, called
the restart monitor, was designed to plug into the test connector. This module
would store the individual indications of fault available at the test connector in a
register that was addressable via software (Channel 77). The contents could then
be read out for more complete diagnostic information. The primary concern in
considering the restart module is spacecraft checkout, where the diagnostic capability
is very limited. Experience has shown that many failure indications, whether induced
The restart monitor module would provide additional information by breaking down
the cause of the restart indication into the various faults, the OR of which forms a
restart.
The fault detection circuits comprise two categories: those that are derived logically,
and those that are derived using analog-type detection circuitry. The former circuitry
is distributed within the logic modules of the computer and the latter in the alarm
module. Figure 3-14 shows the functional interconnection of these circuits to provide
the various failure control signals internal to the computer and failure display outputs
to the DSKY. The conditions that cause the circuits to indicate failure are defined
as follows:
.
Rupt Lock -- Occurs if interrupts do not occur frequently enough, or if
any interrupt lasts too long. Interrupts must occur at least every 140
milliseconds and must not last any longer than 140 milliseconds.
4.
TC Trap-- Occurs if TC or TCF instructions are run,too frequently
or not frequently enough. TC or TCF instructions must occur at least
every 5 milliseconds but not continuously for a 5-millisecond period.
95
5e OSC Fail -- Occurs if the oscillator stops or if the computer is placed
in Standby. When computer is put into Operate mode and the oscillator
operation is removed.
o
Voltage Fail -- Occurs when the 4, 14, or 28 Volt supplies go outside a
zsec. The limits and timing were set such that the computer can survive
The signal causes a restart and turns off the +4 and +14 Volt supplies.
thus putting the computer into a low power mode where only the scaler
Items 1 through 7 above comprise the signals that internally transfer control to
address 40008 and externally illuminate the restart display on the DSKY.
I0. Scaler Double -- Occurs if the stage 10 (100 pps) scaler operates at
Restart and signals 8 through 10 are ,Red, then filtered before being used
11. Scaler Fail -- Occurs if stage 17 (the stage in lhe scaler whose output
12. 28V Fail -- Occurs if all power is lost in the computer. Loss of power
96
The warning is then the OR of signals 11, 12, and the above filter signals
as indicated in Figure 3-14. Other failure detectors and indicators are provided
within the logic of the computer as follows:
13. PIPA Fail -- Occurs if no pulses arrive from a PIPA during a 312.5
msec period, if both plus and minus pulses occur, or if a long time
elapses without at least one plus pulse and at least one minus pulse.
14. Uplink Too Fast -- A trap circuit prevents uplink data pulses from
reaching the counter priority chain with a period less than 156 _sec.
15. Downlink Too Fast _ A trap circuit prevents downlink end pulses from
Several G&N system alarm indicators are inputs to input channeIs of the computer
for software operations and for computer generated display. These are:
Information transfer between the computer and its environment uses a substantial
portion of the computer's hardware and consumes a significant fraction of the
computation time. Figure 3-15 shows the guidance, navigation and control intercon-
nections in the command module, and Figure 3-16 does the same for the lunar moduie.
These figures illustrate the complexity of this interface with respect to the variety
of equipment types involved and their attendant interface signals. In addition, the
subsystem equipment types had a variety of data formats that were convenient or
peculiar to the subsystem. To accommodate the various data formats, the interfaces
were designed around the logical operations provided by the incrementing and shifting
capabilities of the counters (see Paragraph 3.?.5) and the capability of reading and
writing into the channels (see Paragraph 3.2.3). The counters were used for sending
or receiving incremental signals and for parallel-to-serial conversion of whole word
97
,o i r.
o
° _,..i
o
o
2:
0
t._
,.ii
!
_u
98
,-_
G
t'-"
L)
99
t-
Lu
_J
I-
/"Q.
>
.J
o.
o
-I
z
._J
o t
_z
0
>
I-
_ I-
0 Q
I_ " <
>
00 1" w
zw
ioo
transfers. The channels were used for storage of discrete data bits and in some
3-VIII.
3.7.1 Circuits
the computer design and system integration groups to reduce the number of different
Figure 3-17 illustrates the four basic interface circuits, their interconnection to
the computer logic, and the compatible source or receiver. The four (two outputs
and two inputs) shown interconnected with the logic symbol for a NOR gate are the
circuit types contained within the computer. The other outputs or inputs are the
The transformer-coupled circuits were used in the interfaces, where timing was
critical, or where data were transferred in the form of short pulses. Examples of
these were the timing signals to the spacecraft and other GN&C subsystems.
The direct-coupled interfaces were used where slow response (1 millisecond) data
were being transferred. Most discrete commands are of this type. This circuit
The DSKY provided relay contact closures for a few cases. The computer/DSKY
pulse represents the same value, or weight, as opposed to serial transfer where
two adjacent pulses differ in weight by a factor of two. The incremental receiver
counts pulses to formaword, where a serial receiver shifts pulses to form a word.
Both types of receivers are employed in the computer. In each case except the
I01
TABLE 3-VIII
102
The downlink and the uplink are two examples of whole word serial data transfer.
These interfaces provide the ground conlrol data link for both prelaanch and inflight
operations. The mechanization of the two interfaces differs due to the fact that the
therefore downlinked to the ground than is uplinked from the ground. The downlink,
time, whereas the uplink having a low data rate uses the counter registers. The
special circuits of the downlink were loaded with two words at a time via channel
addresses 34 and 35. The logic of the downlink interface serializes and synchronizes
the 32 bits and provides an 8-bit code. The complete operation is subject to command
transmission, the timing system provides an end pulse that terminates the
transmission and signals the computer via interrupt in order to prepare for the
units. Refer to Figure 3-18. The inputs to the coupling data unit (CDU) are the
electrical resolvers. The outputs are positive or negative increments of angle that
are added via the counter register of the computer. The CDU angle counter and
the computer counter are initialized as part of system erection. Incremental changes
in the gimbal angle are then summed in the computer to maintain the _imhal angle
from the computer to the gyros, the CDUs, thrust control, and certain display functions
in the spacecraft. Figure 3-19 illustrates the techniques for gyro torquing, where
gyro. Figure 3-20 illustrates the same technique in the CDUs to generate a dc
output with a magnitude proportional to the _Ni, where Ni is the sequence of numbers
into the computer memory. These signals, as shown in Figure 3-21, use the
103
1
I
< z_:
< I'
I
I
i
<-
E
o
L)
!
a: C
_ w
i'
0
¢,;
o
E_
i " -"
I
Z'__
104
U3
z_ ,m
" z
z o
i
UlJ
I
"1 - '4
L
0 --
LIA
U3 " _ {J
C_
o
°,,_
33
_0
rO
i.
t&l 's
o
z L,
Z
© ,.(3
rr' I=
£ I- 0
z
I.IJ
J
>
©
z rr o
>- r..)
5 LO
o
7- o
f LIJ
z ,,,.._
o
to
C_
,,-4
I
t e'r
b-
0 m
J
105
uJ
_J
D
0.
C3
z z-
O
O
O
L_
t- g
k-
"C
D
T_
D
0
q)
C_ _2
c"
C)
Z
i
_ _2 0
<
-- W
U
-- Z D >
-- <
I-- 6 ©
a %;
_-- LULu
?m
__ n'f3 o
gO3
Z
S Qg
<
-- r..)
0
n"
V-f
--O
r--
CC O
U2 or I..-
< Z !
cn £3 I
_ D rot
-- LLJ_
_ 6
_e<5 .u
zsu
_o__
_-- ",,9<.)
u. • _- t_
'
B
I
i
<
m i
Z <
D f= 6"_
O
O
't
2-
z m_
-- rr,_
-H_ o
..J
106
radar mode control inputs and mode command outputs. Since the mode signals are
To read the radar data, a sequence is initiated under program control by selecting
one of the six radar parameters through the setting of appropriate bits (I to 3) in
output channel 13. Setting bit 4 of channel 13 activates the gating and sequencing
circuits, which then transmit the necessary outputs to the radar. (See Figure 3-21).
The sequence is completed when the data are read into the counter register of the
computer, and the sequencing circuits provide a RADAR RUPT signal to alert the
Figure 3-22 is a timing diagram showing the output and control signals internal to
the computer. The sequence is initiated by the program at a random time with
respect to the timing signals (T 5) that start the sequence. Following the setting of
bit 4 in channel 13, the logic generates 256 gate pulses that the radar uses in
conjunction with the continuous gale reset pulses to generate an accurate 80-mil-
lisecond gate. During this time, the radar performs a measurement and loads the
data into a shift register. The data are shifted out and into the computer radar
counter using the 15 radar sync pulses. The completion of the reading is signaled
bya RADAR RUPT generated in the computer logic. The RADAR RUPT also resets
the activity bits and sequencing circuits in preparation for the next command to
read data. Since the complete cycle takes approximately 90 milliseconds, the program
component part of the computer, yet it is operated through the interface circuits
spacecraft. The DSKY provides the man-machine interface for commands io the
computer through a keyboard and a set of displays for the transfer of reformation
The principal part of the DSKY display is a set of three numeric light registers, as
shown in Figure 3-23. Each register contains five decimal digits consisting of
computer word of 15 bits can be displayed in either decimal or octal number systems.
In addition, there are three two-digit numerical displays, that 1) indicate the major
107
_ RAD4R
). GATE
RESET
PlUPT
PRO@RAM
TO _"
RADAR ACTIVI]
I ZO TROL
Y|
CHI3
READS RADAR
RUP/
RAD&R
DA-a. INPUT
4( RADAP
MODE TO "_
RADAR /
PROGRAM!
_ "_/V _'," _ t.lO D, T
CH33
-- q-_l),, P MOOr
COMMAND
CUTPUIS
TO RADAR i ,P'H CO'JIJA:_D
L
CFI12
* "JC T E
"_(I I SH(;%IJ
108
,(S
CH 13 B4
ACTIVITY
T3
T 5 RADAR
START
RADAR GATE
AT 3200 pps
RADAR GATE
RESET CONT.
AT 3200 p_s
RADAR RUPT
,,1 ,, L II ILl/ I II
RADAR DATA "0" '1 1 1 I
109
+
VERB I
PRO I
0 , REL
i
110
program in progress, 2) indicate the verb code (which shows what action is to be
taken), and 3) indicate the noun code (which shows what action is to be applied).
Electroluminescent lights are used in the DSKY because they are small, easy to
read, and require relatively little power. The lights are driven by an 800-Hz amplifier
in the DSKY with the gain or output amplitude controlled by the spacecraft light
latching relays, whose contacts are used for the decoding logic between the computers
five-bit binary data and the seven light segments of each decimal digit in the display.
See Figure 3- 24. In addition, the latching relays provide memorywith no consumption
The relays are selected and switched using a 15-bit parallel direct-coupled interface
controlled by channel 10. See Section 3.7. The relay selection is accomplished by
a double-ended selection matrix. Four of the 15 bits are used for selecting 1 row
out of 12 (relay word line), and the remaining 11 bits are used to set or reset the
1 1 latching relays in the selected row. See Figure 3-25. Five relays are used for
each decimal digit. Therefore, the 11 relays control two decimal digits and one
The DSKY also provides status displays, as indicated in Figure 3-23. This display
panel is lighted using filament type bulbs, so that white and yellow color codes can
be displayed signifying status and caution signals. The power to light these bulbs
is provided by the spacecraft but is switched via the relays in the DSKY. Some of
these relays are the latching type and are switched by the matrix selection, others
are nonlatching relays that are controlled by dedicated channel bits or logic circuitry
TheDSKY contains a total of 120 latching relays and 12 nonlatching relays to provide
for the display functions described. A few of these relays, that are not used for
D SKY display, provide contact closure interfaces between the DSKY and the spacecraft
subsystems. The computer warning and the inertial subsystem warning indications
to the spacecraft caution and warning panel are examples of this type.
The keyboard has 19 keys, as illustrated in Figure 3-23, that provide the com-
munication between the operator and the computer. Commands and requests are
made in the form of sentences, each with an object and an action, such as "display
velocity" or "load desired angle." The first is typical of a command from man to
III
I--
Z
l.I.l
l,,ij
Z_Z _
--0
0_0
C_
.,-,i
I1)
Z
I-
Z
g .-I
0 !
Iz}
.,-_
>',co
0
"'0
arO
l--I--
Z"'
OZ
C3_ -I=.-Ii.l.I
>'Z F..-ou t_
0 o"_n.-
,J
!
e_uj--
a
.,.,_
ercr.
0,,,
_>
I.--
0 "
cO or"
_Z
I.I.
,_i
0>.
Ouu
n,*
112
ud
_un
>.c,.
wz_
(7
_v V---
,._.m
J,
)-
A zO
t.nuj
v
___x
Z _ o
uJ o
I.- ii .-._
m
CD_
OO
_o
QZ ¢'0
_e I
Z :1
T
!--,!, _ILA..I I I
IOl_
12'1 ,-,-,_,
i'T"'_::_ '1
_ _:::5M I II
n-,.,l_l ii _f
_ k::::::5_ i iI
a.>. iml
w
v
i_l:_
I I_1,
II _1
f_ I1'
!!§ ::::
_ II
1"I"11I I o,
-z_. F-- >-
.J >. ,.,-
:,. _ _
113
machine; the second is typical of a request from machine to man. The DSKY is
vocabulary of "verbs" or "nouns." These verbs and nouns are displayed by number
rather than by written word. To command the computer, the operator depresses
the VERB key followed by two octal digit keys. This enters the desired verb into
the computer, where it is stored and also sent back to the DSKY to be displayed in
the verb lights. The operator next enters the desired noun in similar fashion using
the NOUN key, and it is displayed in the noun lights. When the verb and noun are
specified, the ENTE key is depressed, whereupon the computer begins to take action
on the command.
When the computer requests action from the operator, a verb and anounare displayed
in the lights, and a relay is closed that causes the verb and noun lights to flash on
and off, so as to attract the operator's attention and inform him that the verb and
noun are of computer origin. To illustrate the usefulness of the requesting mode,
consider the procedure for loading a set of three desired angles for the inertial
measurement unit (IMU) gimbals. The operator keys in the verb and noun numbers
for "load 3 components, IMU gimbal angles." When the ENTR key is depressed,
the computer requests that the first angle be keyed in by flashing and changing the
verb and noun lights to read "load first component, IMU gimbal angles." Now the
operator keys in the angle digits and, as he does so, the digits appear in light register
number 1. When all five digits have been keyed, the ENTR key is depressed. The
verb and noun lights continue to flash, but call for the second component; and when
it has been keyed and entered, they call for the third component. When the third
component has been entered, the flashing stops, indicating that all requests have
been responded to. If a mistake in keying is observed, the CLEAR key allows the
operator to change any of the three angles previously keyed until the third angle
The interface between the DSKY keyboard and the computer employs the standard
dc interfaces in the computer. See Figure 3-25. The DSKY key depressions are
coded in the DSKY into a five-bit word. In the command module application each of
the two DSKYs interfaces with a separate channel of the computer. The main panel
DSKY interfaces with channel 15, bits 1-5, and the navigation panel DSKY interfaces
with channel 16, bits 1-5. Each input provides an interrupt such that the computer
program does not have to scan these bits for keyboard activity. See Section 3.2.5.2.
114
3.9 COMPUTERMECHANICALDESCRIPTION
The mechanical construction of the computer was determined in part by the following
design requirements:
in the spacecraft
The construction feature common to both the AGC and DSKY is the use of connectors
and jacking screws. Connector construction more or less dictated the computer
contacts (Malco connectors) are inserted in plastic insulators, that in turn are installed
in a drilled metal plate. The contacts are arranged in columns and rows to form
connectors. In general, the male contacts are installed in the housing of a plug-in
module, and the female contacts are installed in the connector plate that supports
the modules and provides for the interconnection of the modules. Installing the
contacts and insulators in a metal plate provides the rigidity and close tolerance
The wrapost end of the male and female contacts is square in cross-section. Wrapping
the wire around the sharp corners of the wrapost forms a cold-welded joint that
provides secure electrical and mechanical connections. The female contacts and
cold-weld joint. The male contacts are made of gold-plated nickel alloy to facilitate
Connection between the male and female contacts is maintained by the spring action
of the female contact. A rectangular shaped male contact is inserted between two
prongs on the female contact. Maximum insertion force is 10 ounces and minimum
Jacking screws are used to install and remove electronic modules and to join and
separate subassemblies that have integral mating connectors. In most cases the
115
,D
r_
,<
'4.,.)
o
(,.)
,r,,D
116
screws are captive and are threaded into steel inserts (Helicoils) in the mating
surface. The function of Helicoils is to provide repairability if threads are damaged.
logical sequence but not necessarily in order of disassembly. Figure 3-26 shows
an assembled computer. Figure 3-27 is an exploded view showing the relationship
of the component parts. The main components of the computer are listed below.
Tray B cover
Tray A wired assembly consists of the tray, alignment pins, wrapost-type contacts,
insulators, grounding sleeves, wii'e and potting material. Basically, the tray serves
as a large electrical interconnecting device that permits all interconnection to be
accomplished by machine wirewrapping. It is a rectangular structure machined of
magnesium and divided into two compartments, when viewed from the module side
(see Figure 3-28). The divider between the compartments contains the Connectors
that interface with tray B. A recessed shelf at one end of the tray contains an
input/output connector and a test connector. The compartment next to the shelf
contains connectors for 15 modules, these being a power supply module, 5 interface
modules and 9 logic modules. The other compartment contains connectors for 15
Figure 3-29 shows the wirewrap side of the tray. A total of 7468 contacts are used
for the module connectors. Of this total, 385 contacts are inserted in metal grounding
sleeves rather than plastic insulators. These contacts are electrically bonded to
the tray that is used as a ground plane for all circuits. The input/output connector
and test connector require 504 contacts of which 10 are grounded. The connectors
that interface with tray B require 240 contacts, none of which is grounded. These
117
TRAY B COVER
TRAY B
PLUG-IN MODULES
INTERCONNECTION
,.-:.
HEADER
MID SPACER
PLUG-IN MODULES
TRAY A
TRAY A COVER
118
<
i19
o
cn
°,-4
ea
120
contacts are long enough to pass through the two sections of the tray between the
wirewrap field and connector interface at the top of the modules.
Copper bus strips are installed after the tray has been wirewrapped. These improve
dc power distribution from the power supply modules to the logic modules. Two
strips are used in each compartment to provide a very low resistance path from
the 4-volt power supply module to the logic modules.
Four dowel pins are installed in the flange on the wirewrap side of the tray to align
the cover during installation. Six dowel pins are installed in the shelf to align the
mating input/output and test connectors. No dowel pins were used for module
alignment since space was limited in both the modules and tray. In the case of
modules, careful assembly by factory personnel is required to prevent connector
damage.
header assembly. Approximately one half the tray area provides one compartment
for modules. The other half of the tray provides mounting support and connectors
for the interconnection header assembly that in turn provides support and connectors
for the rope modules. The compartment contains connectors for 11 modules. These
j,
are an erasable memory module and 10 modules associated with control circuits
for the erasable memory and fixed memory. The elevated mid-section contains
the connectors that interface with tray A.
inserted in metal grounding sleeves rather than plastic insulators to provide a ground
plan for all circuits. Each of the interconnection header connectors contain 75
female contacts, one of which is the grounding type. A total'of 240 male contacts,
none being grounded, are used in the connectors that interface with tray A. As in
tray A, these are long contacts in order to pass between the wirewrap field and
connector interface.
Four dowel pins are installed in the flange on the wirewrap side of the tray to align
the cover during installation. Four dowel pins are installed in the flange on the
121
0
z
0
<
o
(J
o
(J
C,3
122
module side to align the mid-spacer during assembly. These pins extend through
the mid-spacer and engage mating holes in tray A during assembly of the computer.
An access hole is drilled in the vertical wall of the tray to allow tuning of the
crystal oscillator when the module is installed. Normally, the hole is sealed with
a threaded plug and O-ring. A pressure valve is installed in the vertical wall of
the tray to allow the assembled computer to be filled with dry nitrogen.
The interconnection header assembly houses six fixed memory modules and intercon-
nects them with tray B. It consists of a header and connectors, as shown in the
Figure 3-30. The header is a one piece intricate aluminum structure. It has two
sides, a back, and a center strip that divides it into two sections. The header has
no top and no front. Two transverse strips interconnect the sides and center strip
to provide structural rigidity with a minimum of weight. Both surfaces of the center
strip and the inner surface of each side are grooved to form tracks for installing
the fixed memory modules. Helicoil inserts are installed in the front end of the
center strip and in both ends to retain the module mounting screws. Two integral
flange type supports with connectors are used to mount the header to tray B. Two
dowel pins are installed in each support for alignment between tray B and the header
are installed in the back section to form six module connectors of 96 contacts each.
The mid-spacer and both tray covers are made of magnesium. Screw holes in
each part and matching areas of the trays are specially treated to ensure that
Both surfaces of the mid-spacer and the inside surface of each cover contain an
integral butyl rubber seal. The seal is bonded to a groove in the flange area and
projects beyond the flange surface. During assembly, the rubber is compressed
In general, two types of module construction are used. One method applies only to
logic modules that are exclusively integrated circuit flatpacks. The other modules
used a cordwood construction with welded interconnects. In the E-memory and
123
0
124
r
rope memories, where fine copper wire is used, a combination of interconnection
methods are used, i.e.,soldering for the copper wire and welding of other components.
Logic module construction is shown in Figure 3-31. The top part of the photo shows
the housing or header assembly with the Malco contacts installed. Just below the
header is a multilayer circuit board with the flatpack integrated circuits attached.
The flatpacks are parallel-gap welded to pads on the board. In order to provide a
reliable pad for welding, alnifer, a "sandwich" of aluminum, iron and nickel was
used. The lower part of the photo shows a module with the board installed in the
header. Interconnections between the board and the Malco contacts are made with
welded flat nickel ribbon wire.
Figure 3-32 shows the other method of construction, this being termed welded
cordwood. Components are installed either directly in holes in a solid header or
in holes in a plastic subassembly that fits in a header. Modules that dissipate high
power, like the power supplies, use the solid metal header. [nterconnect_ons between
components and between components and Malco contacts are made with welded nickel
wire. In most cases, a mylar strip is placed in the header over the component
The memory module construction differs from the other modules because of the
special requirement for the assembly and wiring of the cores. The rope memory
b:
is the most unique in that the sense line wiring pattern determines the contents of
the memory. The inhibit wiring is standard for all memories and is installed first.
The sense line wiring is installed with the aid of a tape controlled machine that
determines the routing of the wires for the operator, thereby translating the
requirements of the software to the routing of the wires within the module. The
Some of the features of the computer subassemblies include the potting materials,
125
.o
o
o
!'
u
"F_
ff',l
o;
o,,,,i
126
Fig. 3-3Lt Core Rope Module Sense L,Jne _*iring
127
0
n_
o
N
o
N
128
The potting of modules, trays, and connector wells provide for the mechanical support
of wires and components. In general, foam potting is used for these applications.
[n the case of Malco connectors that provide tray interc0nnection from outside to
inside the computer, like the system interface connector, a hard potting material
is used to seal the area before the remainder of the tray is foam potted. Fragile
components, like the ferrite cores of the E-Memory module, are prepotted in a
soft potting material like RTV-II or, in the case of the E-memory, Sylgard 184. A
change from RTV-II to Sylgard 184 potting of the E-memory was introduced to
correct the wire breakage problem, discussed in Section 7.2.2. In this case the
RTV-II did not have sufficient damping to prevent movement of the core stacks
during vibration. The finished modules and trays then were completely potted using
a material of the lowest density that would meet the criteria of sealing against
moisture where necessary, and of providing the mechanical support of components
and wiring.
Since magnesium was used to save weight wherever possible, it was necessary to
protect against corrosive action. Modules or surfaces inside the computer were
anodized. All surfaces exposed to the spacecraft environment were painted in addition
to the anodize. The paints were required to be odor free and to provide a low
emissivity surface for spacecraft thermal control. Surfaces, visible when installed
in the CM, were required to match the dark gray of the CM interior. Screw holes,
and the surfaces around the holes, are not painted but are treated with conducting
anodize to insure electrical bonding of interfaces between trays, spacers, covers
and computer to spacecraft cold plate. In the case of the computer, spacecraft
mounting hardware, steel bolts with teflon-coated shanks and aluminum washers
under the bolt heads were required to prevent corrosion because mounting hardware
is composed of dissimilar metals (magnesium and steel).
The interconnection header assembly is installed in the cut out area of tray B.
The connectors on the header mate with the connectors on the tray B shelves.
Installation is accomplished by two jacking screws that are retained in each of the
flange type supports on the header. The module is installed by two flange mounted
jacking screws that are threaded into the end surface of the sides and center strip
of the header.
All tray modules are installed, and the mid-spacer is placed on the module side of
tray B with open section of the spacer framing the module compartment. The spacer
is aligned with four dowel pins and is secured by two screws in the tray center
section. Tray B, with mid-spacer intact, is assembled to tray A. Alignment is
ensured by the four dowel pins on tray B. Screws are inserted in the tray B flange
129
and threaded into the tray A flange. Covers are installed on the wirewrap side of
both trays with high torque steel screws and lock washers. Four additional screws
are used to secure and complete the seal of the mid-spacer to tray A, They are
inserted into counter-sunk holes in the mid-spacer and are threaded into the tray
A flange that is adjacent to the front of the interconnection header assembly. All
exposed screw heads are coated with Silicone rubber sealing compounds to prevent
corrosion. The six fixed memory modules can then be installed into the interconnection
header completing the computer assembly.
Prior to assembly of the trays, vibrationpads are installed in some key areas.
Three pads are installed between the modules in tray A and tray B in the open area
of the mid-spacer. The center vibration pad consists of a silicone rubber sheet
that is shimmed to match the spacing between modules. This unit measures
approximately 2- l / 2" by 1- 3 / 4" and is bonded to the top surface of erasable memory
module B12. This vibration pad stiffens the structure and thus reduces the vibration
transmitted to the E-memory module. The shimmed pad was a change from a single
cellular pad and was introduced as a partial fix for the fatigue failures in the wiring
J_
in the erasable memory module. All other vibration pads are cellular silicone
rubber approximately 1 / 8" thick.
After assembly, the computer is leak tested and filled with dry nitrogen to a pressure
of 2 + 0.5 psig.
Temperature control of the computer was achieved through conduction to the cold
plate structure of the spacecraft. Radiational cooling was minimized by the choice
of finishes to meet the requirements of spacecraft thermal control. Under some
conditions, the surfaces surrounding the computer were at a higher temperature
than the computer thus causing additional heat loads instead of providing radiational
cooling. In every case however, the effects of thermal radiation could be ignored
Since the total power consumption of the computer is relatively low, the ther_nal
control was mainly one of distributing the heat load in the computer and providing
conduction paths to the coldplate. For example, module locations in the tray were
carefully selected. The two power supplies were located at one wall in tray A,
where a short path and extra metal could be provided for the heat conduction to the
cold plate. The E-memory, memory drivers, and sense amplifiers are located in
the center of tray B to provide temperature tracking of the temperature compensating
130
circuits and the memory cores. The conduction paths were provided from the
electrical component to the base of the modules and then into the wirewrap plate,
where the heat fans out to the sides of the trays, and thus down the walls of the
tray A cover to interface with the cold plate in the CM and with cold rails in the
LM. ]n the case of the two switching transistors (NPN and PNP) the thermal design
included specifying a special package. The package was the standard TO-18 case
size but with a solid metal header for decreased junction to case temperature rise.
At the time of the Block II mechanical design, the solid metal header was not available
in the TO-18 case size but had been used by semiconductor manufacturers on other
similar cases. Thus the thermal design provided conduction from the element
dissipating heat, such as the transistor chip, through all the mechanical interfaces
to the cold plate.
The goals of the thermal design effort were: first, to ensure that the temperature
of components and especially semiconductors remained below 100°C under worst-
case conditions. The second goal was to provide a reasonably uniform thermal
environment between modules like the memory electronics and logic modules. A
temperature gradient between logic modules would reduce the operating margins of
the logic. Thermal measurements on the finished computer have verified that these
goals were met. The measured temperature difference between logic modules was
less than 5°C and therefore neglectable. The temperature rise through the structure
to the hottest components was low enough to maintain junction temperatures well
below 100°C.
The mechanical construction of the display and keyboard unit (DSKY) was determined
in part by the following design requirements:
1.
Overall form factor is governed by spacecraft mounting requirements
and human factor requirements concerning the size of indicators and
placement of the keys
.
The human factor requirement for spacecraft color, lighting illuminated
keys, and actuating force of the keys
3.
Complete environmental sealing of the assembled DSKY
4. Replacement of alarm indicator and digital indicator from the front.
131
o
w
w
z
0
z - \\\
z_- _
Z_ _
, _
o
,
0
\ ,,-
132
3.1O.l Detailed Description
The following detailed description discusses the mechanical features of the DSKY.
Keyboard module
The DSKY assembly has two major subsections--the front housing subassembly
and the main housing subassembly. The joint between the front and main housing
are separated and sealed by an aluminum gasket that has an integral butyl rubber
on each bearing surface. The housings are bolted together with 16 screws. Two
jacking screws are provided to separate the subassemblies and 212-pin Malco
The front housing assembly contains the keyboard pushbutton switches, keyboard
Nineteen holes are drilled in the lower half of the housing for installation of the
pushbutton switch assemblies that comprise the keyboard. The switch is installed
from the front of the housing. A flange on the switch assembly contacts the front
surface of the housing. An O-ring seal is installed in a groove in this flange contact
surface. The threaded portion of the switch assembly extends through the housing,
where ahex nut and lockwasher hold the switch assembly tight against the housing.
The O-ring is compressed and seals the hole in the housing. The portion of the
switch assembly, that extends through the housing, contains the five-pin electrical
133
ADAPTER
FEED - THRU TERMINALS
PLATE ASSEMBLY
AND WELDED WIRING
IBBER
SEAL _
SEAL
RUBBER_
1TAL
INDICATOR
ALARM
CONNECTOR
INDICATOR _ "
CONNEC[OR
,NMENT
AL PiN (2)
PIN (2) a,
4,
KEYBOARD
SWITCH 119}
<
.._.,,.,,_H FRONT
OUSING
134
FEED - THRU TERMINALS JH FRONT
AND WELDED WIRING
OUSING
MODULE
•: ASSEMBLY
CONNECTOR_
PLATE
ASSEMBLY
'0
O
KEYBOARD,
SWITCH (19)
(CONNECTOR END) i
I
135
The adapter plate assembly, with front and rear gaskets, is mounted on the upper
half of the front surface of the housing with 13 screws. The assembly provides the
seals and mounting surface for the alarm and digital indicators. Feed-through
terminals are installed in the adapter plate to which wires are welded on both ends.
This allows connections to be made from connectors in the rear of the front housing
The connector for the alarm indicator consists of 30 female contacts installed in
an aluminum plate. The connector plate is held to the adapter plate by two alignment
pins and washers, that pass through holes in the connector plate, and are threaded
into insertsin the adapter plate. They engage two mating holes in the alarm indicator
housing to ensure alignment of the electrical contacts during assembly of the alarm
indicator.
The connector for the digital indicator consisis of 160 female contacts installed in
an aluminum plate. Two alignment pins and two socket head screws are used to
,.] The Malco connectors on the rear of the front housing are contained in a large
adapter plate that is secured to the housing with six screws. One connector consists
of 34 female contacts that mate with the contacts on the keyboard encoding module
assembly. The other connector" consists of 212 male contacts arranged in six sections.
The mating half of this connector is mounted on the front ol the main housing.
The alarm indicator, digital indicator, and front cover' are not part of the front
housing assembly, but this isa logical place to discuss their installation. A detailed
indicator is attached to the adapter plate front gasket with six jacking screws that
pass through the gasket and are threaded into the adapt¢,r plate. The rear surface
of each indicator is hermetically sealed by a butyl rubbcr _asket. The front cover
fits over the indicators and keyboard and is attached to the front housing with eight
screws. It encloses the sides and bottom of the keyboard. The cover exposes only
the top surface of the keys and fills the space between them to i_revent simultaneous
The main housing assembly contains six indicator driver modules, power supply
136
WIRE - WRAP END ,/MAIN
)F CONTACTS _ NOUSING
WIRING_ , . _
HARNESS _
NMENT
CG PIN (2)
PLATE
o
ASSEMBLY
• ,_ SCREW
JACKING12)
PNI
VALVE
RECESSED
OF WALL
INPUT
CONNECTOR
137
MINDICATOR
MODULE REMOVED
DRIVER
SHOW CONTACTS
ODULE (6)
SUPPLY
MODULE
;iV!:5 .-.
138
The housing provides for module mounting and interconnection between the 756 female
Malco contacts. The contacts are arranged in six columns of three rows each,
with each column representing the connector for an indicator driver module, that
is plugged into the rear housing compartment. Twelve contacts in the upper left
area represent the connector for the power supply module. A section of the housing
wall is offset to the rear with a 91-pin input/output connector installed in the wall
section. The connector was required to be compatible with the spacecraft interface
and is the only one in the computer subsystem. A wiring harness runs between
A connector plate, consisting of 212 female contacts plus a wiring harness, is mounted
on the front side of the main housing. The plate is attached to the housing wall
with four screws, that pass through the wall from the rear and thread into standoff
ribs on the rear of the plate. The wiring harness is in three sections and runs
between the contacts in the connector plate and the contacts in the housing wall.
This connector and the mating connector on the front housing are aligned by two
pins in the main housing plate that engage mating holes in the front housing plate.
A pneumatic filler valve is installed in the rear of the offset section of the housing
wall. The rear cover does not enclose the valve, so that it is accessible after the
DSKY is assembled. A hole is drilled in the vertical wall of the offset section to
Although not part of the main housing assembly, six indicator driver modules and a
power supply module are installed in the rear compartment of the housing. Each
module plugs into a connector in the housing wall and is retained by two jacking
screws. Two alignment pins in the module housing engage mating holes in the main
housing wall to ensure proper installation. Additional rigidity is supplied to the
installed modules by two L-shaped aluminum brackets. One spans the upper rear
edge of the indicator driver modules and power supply module; the other spans the
lower rear edge of the indicator modules. The brackets are secured by screws
that are threaded into the module housings.
decoding circuit assembly, and relay circuit assembly. The header assembly is an
aluminum housing with 12 male contacts installed in one end. These contacts plug
into matching female contacts in the wall of the main housing. The module housing
is divided into two compartments. The smaller compartment houses the decoding
circuit assembly. The relay circuit assembly is installed in the larger compartment.
Covers are installed on both sides of the housing. The power supplymodule assembly
139
consists of aheader assembly, covers and circuit components. The circuit components
analuminum housing with 12 male contacts installed in one end. The mating female
contacts are installed in the wall of the main housing. The power supply module
and a typical indicator driver module are shown in Figures 3-40 and 3-41.
The rear cover gasket is placed between the rear cover flange and the main housing
rear flange. A butyl rubber seal is bonded to each side of the gasket. The rear
cover is placed on the gasket and both parts are attached to the housing rear flange
with 16 screws. The gasket provide s ahermetic seal, but the pneumatic valve and
The assembled DSKY was leak tested to ensure that the various seals provided
The alarm indicator and cover assembly consists of the alarm indicator, cover
panel, gasket, frame, jacking screws, washers, and retaining rings. (See Figure
3-42). The frame, gasket and panel are bonded together with silicon adhesive to
The cover panel is a flat piece of annealed glass measuring approximately 3 inches
high by 2-1/2 inches wide by 1/16 inch thick. Both surfaces are coated to reduce
reflection. One surface is beveled on all four edges. The frame is made of an
aluminum alloy in the form of a rectangular box with the rear of the frame open
and flanged on both sides. Three holes are drilled in each flange to accept jacking
screws. The front of the frame contains a rectangular opening with a beveled edge.
The panel is bonded to the inside of the front surface of the frame with its beveled
edge in contact with the frame. The molded silicone rubber gasket is placed inside
the frame and is bonded to the panel and the frame. The cover assembly was added
to the initial design, as part of the flammability requirennent, since the material of
The cover assembly (frame, panel and gasket) is placed over the alarm indicator.
The indicator is a sealed unit that consists of a plastic: face plate, filament-type
The indication contains 14 legend areas that are each illuminated by 3 bulbs wired
140
JACKING
SCREW (2)
CONNECTOR
141
SCREW (2)
RELAY
CIRCUIT
ASSEMBLY
CONNECTORS,
DECODING
CIRCUIT
ASSEMBLY
;NMENT
PiN (2)
142
A
z_
\-
,_..4
>.
i
143
in parallel. A recessed areain the rear surface of the housing contains 30 connector
pins. (See Figure 3-43). Each pin is installed in a plastic insulator that is inserted
in a hole in the housing. The insulator seals the hole through which the pin extends.
The rear of the housing is flanged on both sides. Holes are drilled in the flanges
to match those in the frame. The cover assembly fits over the indicator, and the
two pieces are held together loosely by 6 jacking screws, 6 retaining rings and 12
flat washers. The jacking screws are retained in the flanges, and in turn they
loosely hold the cover as sembly and alarm indicator together. Subsequent installation
of the jacking screws in the adapter plate force the cover assembly and indicator
The digital indicator and cover assembly consists of the digital indicator, cover
panel, frame, jacking screws, washers, and retaining rings. (See Figure 3-44).
The indicator is a sealed unit that consists of a glass face plate, electroluminescent
in the housing. The insulator seals the hole through which the pin extends. The
rear of the housing is flanged on both sides, and three holes are drilled in each
The cover panel is a flat piece of laminated glass measuring approximately 4-1/4
inches high by 2-1/2 inches wide by 1/8 inch thick. The front surface is coated to
reduce reflection. The panel is bonded to the glass face of the indicator with a
thermosetting optical adhesive. It protects the indicator face against damage by
impact. A bead of silicone compound is applied along the edge of the panel to seal
the panel-to-indicator interface.
The frame is made of aluminum in the fori'n of a rectangular box. The front of the
frame contains a rectangular opening with a beveled edge. The rear of the frame
is open and flanged on both sides. Holes are drilled in the flanges to match those
in the indicator housing. The frame fits over the indicator, and the two pieces are
held together loosely by 6 jacking screws, 6 retaining rings and 24 flat washers.
The jacking screws are retained in the flanges, and in turn they loosely hold the
frame and digital indicator together. Subsequent installation of the jacking screws
in the adapter plate, hold the frame and indicator firmly together.
145
>
C
Z ,
J: \
\
\
\
\
\
-,J
C
>
Q
\ Q..
\ .--,A,
/;/ ;;;c
i
146
JACKING
CREW (6)
+ ...
+ .
ALl!
HOLE (2)
147
Z
_>-
-.r
z e"
w
o
Z
e_
,,-i
w Z
o _0
n J
t_
.,-¢
7
S
N
148
iS JACKING
CREW f6)
CONNi
ALlt
HO/E
Fig. 3-45
147
Z z
_>-
g
-I- "1*"
Z
w tj
I.i.i w
'1-
r./3
Z
>, r-,
0
..0
;=
.,.4
;:>
X
u,J Z
._=i
0 t4_
'I-
!
._=.i
Q..
¢-.,,
w
_._
Z
.._i
i.i_I
Z
J
°/
.=,=I
148
3.10.1.5 Pushbutton Switch
consists of three functional assemblies: mounting houseing, cap housing and shaft.
The mounting housing assembly consists of the switch, housing, header, and disc.
It serves as the mounting structure for the assembled pushbutton switch. The
connector consists of five feed-through pins imbedded in disk shaped glass insulator.
A_n integral metal ring surrounds the edge of the disc. This assembly is called a
header, and it is soldered to the end of the housing. ScKdered wires connect three
switch terminals to three connector pins. The wires run from the terminals through
a hole in the housing flange and proceed internally to the pins. Non-insulated wires
from the remaining two connector pins terminate at a plastic disc that is bonded to
the inside of the housing. These wires contact two wires on the shaft when it is
!;
The shaft assembly consists of the shaft, plug, cable, and electroluminescent panel
(EL). The aluminum shaft is a hollow cylinder with a square head that houses the
EL panel and cable. The cable consists of two flat copper conductors sandwiched
between insulators with solder pads on each end and is bonded to a recessed area
in the head. The EL panel is placed over the cable an0 bonded to the head. Two
metal tabs on the EL panel are soldered to pads on the cable. The plastic plug is
inserted in the end of the shaft and bonded in place. Two wires are soldered to
pads on tt_e cable in the shaft head and run inside the shaft to the outside of the
plug. Epoxy cement is used to hold the non-insulated end of the wires to the plu_.
When the push button switch is assembled, these _ires contact the two wires in the
mounting housing disc. This completes the circuit between the EL panel and the
connector pins.
Theshaft assemblyis inserted in the cap ho,lsing assembly. A coil spring is placed
in the mounting housing bore. The shaft/cap housing unit is inserted in the bore.
The shaft, which extends beyond the cap housing, is bottomed and held in place with
two set screws. They are threaded into the mounting housing and engage slots m
the shaft. The compression coil spring forces the cap housing against the underside
of the shaft head. The switch is not actuated in this position. Depressing the cap
housing forces it down against the spring. Cap housing movement of approximately
3/16 inch is required to actuate the switch, zkn additional movement of 1/16 inch
is allowed before the cap housing bottoms on the mounting housing. A leaf spring
on the underside of the cap housing contacts a lever on the switch to cause actuation.
An engraved cap is installed onthe cap housing and is held by two retaining springs.
Actuating the switch energizes the ]EL panel and illuminates the cap.
149
;_ i"_i:i ¸_
SECTION 4.0
COMPUTER SOFTWARE
4.1 INTRODUCTION
The computer software developed concurrently with the computer hardware design
hardware was available. In order to provide this testing hardware, many of the
DSKY and utility operahonai programs were developed. Table 4-I is a listing of
all significant program assemblies that were released for development testing of
computer. The first, ECLIPSE, was designed to test the rope module manufacturing
processes and also for use as an aid to computer testing. Earlier "breadboarded"
hardware reliability. The programming was performed with limited support tools
in general, but in APOLLO, this difficulty was increased as a result of the use of a
wired memory. It was necessary to ensure that the program was correct the first
time, because manufacture of new modules was both time consuming and costly.
The pressure to meet scheduled release dates, on the other hand, did force the
between the pressure to release and the pressure to thoroughly verify can best be
illustrated by the results shown in Table 4-II. This table illustrates two major
points: First, there was a strong desire to release programs early, so that most
April 1968 for a mission that flew in April 1969 (APOLLO 9). Second, there was a
strong desire to use the latest version of the program in the operational flight.
A very interesting example was the Luminary program for Apollo ll. The program
assembly (Luminary 69) was released in Nov. 1968. It was to be used for Apollo
l0 and 11. In April 1969 one module was revised for the Apollo l0 mission but
also Luminary 97 was released for Apollo ll. In May, three modules of Luminary
97 were revised to form Luminary 99. In June just one month before flight one of
the modules was revised again. All of this was accomplished without an impact on
151
Precedingpageblank-:
TABLE 4-I
152
TABLE 4-1I
153
TABLE 4-III
DP Add 0.66
DP Subtract 0.66
DP Multiply 1.1
DP Divide 2.5
:,?
DP Sine 5,6
DP Cosine 5.8
DP Square 0.76
DP = Double Precision
154 .,
spacecraft testing even though the normal manufacturing cycle for a module was 45
days.
for the software-hardware interface and an early test of the software development
tools. The main program sections included in ECLIPSE were the utility, DSKY,
and selfchecking programs. The fundamental function of each of these programs
has not changed since their development, and is outlined in the following paragraphs.
Utility functions are performed by program sections that coordinate and synchronize
computer activities to guarantee orderly and timely execution of required operations.
These functions control the operation of lunar mission tasks on either a priority or
a real-time basis. The utility functions also translate an "interpretive" language
functions save the contents of registers A and Q during an interrupt condition, and
enable data retrieval and control transfer between isolated banks in the fixed
4.2.1 Interpreter
Most of the AGC programs relevant to guidance and navigation are written in a
parenthesis-free pseudocode notation for economy of storage. In a short-word
AGC program called the "interpreter", translates this list into a sequence of
155
Use of the interpreter accomplishes a saving in instruction storage over programs
magnitude in execution time over comparable long word computers. The computer
was designed with the idea that its weight, size, and power consumption were costly
items. Mission requirements warrant ahardware compromise of word length with
a minimum of 15 bits, and an instruction repertory of 33 instructions with which to
work. The result, therefore, is a fairly simple machine with limited abilities.
While the computer hardware provides for manipulation of single and double precision
quantities, frequent need arose to handle multiprecision quantities such as
trigonometric operations, vector and matrix operations, and extensive scaler
operations. Thus, in order to fulfill the system requirements planned for the lunar
missions, it was necessary to expand the capabilities of the computer through the
use of the software.
One method of accomplishing this expansion would have been through a collection
To solve this memory wastage problem caused by frequent use of calling sequences,
an entirely new mnemonic language was created in which each mnemonic corresponds
operation codes in one word of memory and any required address constants in the
two following words. To interpret the special mnemonic language, a central subroutine
was designed that encodes the instruction formats using common temporary storage,
and executes the required subroutine sequence of computer instructions.
Table 2-IV, the software is provided with an interpretive language which permits
mission peculiar memory requirements to be reduced, and in most cases sharply
reduces the coding labor necessary to implement the required software functions.
156
The penalty paid for the interpretive language is execution time. A double-preclsion
while the analogous interpretive language order has been estimated to take about
660 microseconds. For most of the guidance oriented computations (such as orbital
against the resulting reduced memory requirements. In other cases (such as digital
autopilot calculations) the execution time penalty cannot be tolerated, and therefore
these computations are performed, using machine language coding, in spite of the
4.2.2 Executive
All AGC programs operate under control of the Executive routine except those that
are executed in the interrupt mode. Executive controlled programs are called "jobs"
as distinct from so-called "tasks", that are controlled by the wait-list routine and
completed during interrupt time. The functions of the Executive are to control
Jobs are usually initiated during interrupt by a task program or a keyboard program.
The job is specified by its starting address and another" number giving it a priority
ranking. As the job runs, it periodically checks to see if another job of higher
first job again becomes the one withhlghest priority. No more than 20 milliseconds
When a job is geared to the occurrence of certain external events and must wait a
period of time until an event occurs, it may be suspended or "put to sleep". The
job's temporary storage is left intact during the period of inactivity. When the
that may be different from its starting address. If a job of higher priority is in
its temporary storage to be used by another job. Approximately ten jobs may be
4.2.3 W aitlist
The function of the Waitlist routine is to provide timing control for other program
sections. Waitlist tasks are run in the interrupt mode, and must be of short duration,
program inhibits all others until it calls for resumption of the normal program.
157
T[e Waitlist program derives its timing from oneof the counter registers in the
AGC. Thecounter priority stage, that controls this counter, is driven by a periodic
pulse train from the computer's clock and scaler suchthat it is incremented every
10 milliseconds. When the counter overflows, than interrupt occurs that calls the
Waitlist program. Before the interrupting program resumesthe normal program,
it presets the counter so as to overflow after a desired number of 10 millisecond
periods up to a limit of I 2,000 for a maximum delay of 2 minutes.
If the Waitlist is to initiate a lengthy computation, then the task will initiate an
non-interrupted time.
The program s associated with operation of the displayand keyboard units are intrinsic
to the use of the computer in the APOLLO guidance and navigation sy._tem. These
programs are long, but their duty cycle is low, so that their use of the time budget
is reasonably small.
Key depressions initiate an interrupt program that samples the key code, makes a
job request to the Executive, and then resumes. When this job is initiated, it examines
the code and makes numerous branches based on past and present codes to select
the appropriate action. Nearly always, a modification of the light registers in the
display is called for. A periodic interrupt program similar to Waitlist0 but occurring
at fixed time intervals, performs the required display interface manipulations, after
it has been initiated by the job. More complex situations occur as a resuIt of lengthy
it is possible to call for a periodic decimal display of a binary quantity, for which
the Waitlist is required to awaken a sampling and display job every second. This
job samples the desired register or registers and makes the conversion to decimal
according to the appropriate scaling for the quantity, i.e, whether it is an angle, a
The display and keyboard programs are highly sophisticated routines to which a
certain amount of computer hardware is expressly dedicated for the sake of efficiency.
They also make full use of the Executive and Waitlist functions to furnish a highly
158
4.4 DEVELOPMENTOF COMPUTERSELF-CHECK PROGRAM
However, the program was divided into functional sections, and when an error
occurred, a record was provided indicating which part was running at the time.
After the computer design was confirmed, self-check served as a confidence tool.
A successful run through all of its routines indicated that no hardware malfunction
existed.
4.4.1.1 Eclipse
The first computer self-checking program (included in ECLIPSE) was an early effort
was exercised and its operation checked for predetern"ined results. This test did
not attempt toverify the operation of each control pulse in the computer, but rather
to verify nominal operation at the instruction bevel. Some attempt was made to
and central.
4.4.1.2 Sunrise
significantly different from earlier versions. The main change in emphasis was
that the checking program exercised and verified the computer operation at the
The main program sections included in SUNRISE are listed and described below.
1o Check of Pulses - Most of the control pulses in a given instruction are used
every time that instruction is used. However, the functions, that some of
these pulses perform, are not utilized until some time later. A systematic
method is used to check the existence of pulses that perform such functions.
As an example, the pulses, that write a data or instruction word back into
erasable after it has been used, are not checked, until that data or instruction
159
Someof the control pulses serve no useful purpose. They appear in various
memory cycles becausethey are utilized on the same line in other memory
cycles. It is more economical,with respect to the physical construction of
the computer, to let them appear where they were not required than to omit
them.
Thereare twomemory cycles and a few control pulses that cannot be checked
pulse in the SHINC and SHANC memory cycles and the WOVR pulse in the
MINC memory cycle are not checked. It is also not possible to check the
No particular effort was made to check the pulses connected with the S and Z
registers and the NISQ pulse. Someof these pulsesare used in every memory
cycle, and the fact that SELFCHK is successfully completed assures the
2.
Check of Special and Central Registers and Erasable l_egisters- This section
of self check ensures that the A, B, C, Q registers and the output of the adder
have all the possible 16 bit combinations pass through them at least once. At
the same time this is being processed, all 15 bit combinations are written
into and called from an erasable register. Next, the erasable memory from
registers17778, ]7768 , and17758 at this time, because they have been used
many times previously during the normal operation of SELFCHK. Then the
special erasable registers from octal 57 down through octal 20 are addressed
to see if a parity error occurs. Finally, the cycle and shift registers are
.
Check of Multiply and Divide Arithmetic Function - There are four multiply
loops in the multiply subroutine. The two main purposes of this subroutine
are to form all the different combinations of adds possible in the multiply
instruction (I to 14) and to change the value of the word to be added from
minimum to maximum for each combination of add. The total time of the
160
The multiply and divide subroutines are a good arithmetic check of the
computer, Therefore, the long activity time of these subroutines may be utilized
of the background idle loop and thus has the lowest possible priority. The
number loaded into the SMODE register via the DSKY controls the manner in
which SELFCHK will be run in the background idle loop. The options are:
d) SELFCHK is off.
OCCURS:
3. Analarm codeis placed in R1 of the DSKY and placed in the FAILREG register.
therefore possible to leave the SELFCHK routine on for long periods. One can
keep track of thenumber of malfunctions, and their location in the three main parts
of SELFCHK, by lookingat the four count registers. The SFAIL register contains
161
1
4.4.1.3 Final Block I Version
The final Block I SELFCHK containeda checkof fixed memory in addition to the
sectionsdescribedabove.
lj Check of Rope .Memory - The routine for' checking the correct contents of a
computer. It makes sure all current drivers, sense amplifiers, and associated
circuitry used in connection with the fixed memory are operating properly.
Second, it is a check on the rope itself. It makes sure none of the sense or
The sum of each bank should be the same as its bank number in the low order
normal sum of the bank as the last word to be added. This bugger word
forces the sum of the bank to be plus or minus the sum of the bank. As an
example, the sum of bank 33 octal may be 00033 or 77744. When bank is full,
the "bugger" word is the last address in the bank. If the bank is not full, two
or more successive TC SELF words indicate the end of the summing process
for that bank. The "bugger" word then immediately follows the last TC SELF
word. Of course, all addresses ins bank up to the bugger word have to contain
SHOWSUM. This routine essentially does the same thing that the routine
ROPECHK does; that is, add up the sum of separate bank s in the rope. ROPECHK
makes sure the sum of the bank is plus or minus its own bank number, while
what the sum may be. SHOWSUM alsodisplaysthe bank number and the bugger
word in R2 and R3 of the DSKY at the same time. The sum of the bank and
bank number in R1 and R2 are shown as the least significant bits instead of
bits 11-15 (the actual bank bits in the computer). Again it is worthwhile
mentioning that the sum of a bank may be plus or minus its bank number.
Undoubtedly the greatest use of this routine will be in restoring the confidence
of personnel in the computer and in verifying that the correct rope modules
fora particular mission are actually the ones in the computer package. Since
there are 24 bugger words for each rope, it is very unlikely that ropes for
162
2
4.4.2 SELFCHKin Block II
The developmentof the Block II AGC SELFCHK was similar to that of the Block I
version. Early efforts were directed at checking at the instruction level, as was
the case in Block I. Subsequently, a thorough test at the control pulse level was
developed. The functional characteristics of the final version were similar to the
affected the details of the program. In particular, the test of the control pulses
was rewritten for the expanded set of Block II instructions. The erasable memory
check was modified to handle the expanded erasable n=emory and its associated
bank organization. The fixed memory check was modified to check the expanded
A routine added in the Block II version is the DSKY check. This routine lights up
Noun, Prog, R1, R2, and R3 registers, it also turns on the computer activity light
The operating procedure for Block II allowed more flexibility in controlling which
into SMODE were defined to permit the operator to initiate selected routines, some
The alarm procedure for Block It was made more flexible than that of Block I.
esther continue at the next address after the error li:le, start at the beginning of
Certain sections of SELFCHK were deleted, as the Block II mission evolved due to
the limited amount of fixed memory available. Specifically, the extensive multiply
and divide checks were not present in SUNBURST, SUNDISK, and following programs.
The pulses check and the DSKY check were not included in SUNDANCE, COLOSSUS,
The factory test ropes were developed by Raytheon Company to sell-off AGCs. as
they were produced. In general, the factory test ropes furnished adegree of diagnostic
SELFCHK programs were, however, incorporated into ",he factory test ropes.
163
w
t_
L_
b--
t
L_ ..J
t_
0
b--
ta_
t_
Z
z
w
k--
{,D ¢¢
t_
Z
c.
a_
b--
0. .
w _.J
f_
t_
w
w t_
>.-
t_
t_
164
ARTEMISand ARESwere the namesof the Block I factory test ropes; NEWSPEAK
and LAMESH,the Block II versions. The degree of diagnostic capability increased
as usageexperience developed. LAMESH, being the latest Block II version, had
considerableflexibility anddiagnosticcapability.
in the Guidance Systems Operations Plan (GSOP). The GSOP is designed to cover
in practical detail all the elements necessary for coding the mission programs.
One of the key elements in the fabrication process is the methods of verifying that
the contents of the memory module are a bit for bit duplication of the binary output
cards", key punched with appropriate orders is submitted to the computer. These
cards direct the computer to generate, list and verify a master deck magnetic tape
for delivery to manufacturing. The tape specifies the sense line wiring of each
module numbers B1, B2, B3, B4, B5, and B6. This completely specifies the bit by
bit contents of each module and the location or address of these contents.
The manufacturing process starts by processing the master tape to produce two
punched mylar tapes; a braid (core rope weaver) tape and a checker (core rope
tester} tape. The braid tape actuates the core rope weaving machine that controls
the weaving of the sense line wires in the memory module. The woven memory is
tested along with the checker tape to verify the contents of the memory following
fabrication. The simplified flow plan and time base for the fabrication cycle is
The verification method depends primarily upon parity tests and verification of the
memory bank sum check and sum check constant. As described previously, the
last word in each memory bank is a constant that makes the sum of all the words
of the bank equal to plus or minus the bank number. The self test, when running in
165
BINARY LISTING
ASSEMBLY
ONE (I)FILE
DISK
CARDS THREE (3}FILES
DIRECTOR J STORAGE
ij
,I
REWIND
MAG. TAPE
M.D.
INCLUDED PAR.
TAPE WITH EXCLUDED PAR,
,; COMPARE
_i AGC '
1_ TAPES
'\', PROGRAM i
I
MAP
I CORE
LI STINGS
ROPE
WEAVER TESTER
FORMAT F ORMAT
L ERROR CHECKING
J
CORE ROPE
TESTER TAPE
CORE ROPE
WINDING
MACHINE
.J
Fig. 4-2 Functional Diagram of Data Processing and Verification
during Manufacturing
166
an AGC program, is capable of summing the contents of each word in the bank and
displaying the results for a test of the memory. This technique then is applicable
addition to parity tests and the more standard bit by bit comparisons of data during
operations such as generating the master deck tape or generating weaver tapes
from the master deck tape. The check sum testing closes the testing loop from
any point, where it is used, back to the binary record of the program assembly.
Figure 4-2 is a functional diagram of the data processing and verification part of
167
SECTION 5.0
5.1 INTRODUCTION
The development of the computer ground support equipment (GSE) paralleled the
computer development. There were two classes of GSE. One was the engineering
tools that were developed to support the hardware and software design, and two,
the production GSE that was developed to support the manufacturing and field testing.
The latter, although similar functionally to the engineering tools, was designed and
equipments.
Late in the production phase of the hardware and software, it became apparent that
the GSE equipments were not adequate for the analysis of transient anomalies.
For example, a transient failure during computer vibration or during software
verification was very difficult to analyze, since neither the computer nor the GSE
provided the necessary test cooperative features. As a result, MIT/IL designed a
system called Trace (see Section 5.3.3) to aid software debugging and in parallel,
additional factory test equipment was designed to aid in the analysis of hardware
transient failures. Each of these equipments were similar to a system called Coroner
which was designed and built very early in the Apollo program. The function of the
Coroner was to store data for a short period of time before and after a transient
failure. Due to a lack of interest and technical difficulties, the Coroner development
was dropped. The value of a capability like Coroner was not fully appreciated until
This section describes the ground support equipment (GSE) used to check the operation
of the computer subsystem. Checkout of the computer can be divided into two
areas:
" -Pr
ecedingPaRe
bia.k 169
,- .o
1 70
l° Internal Operation - proper execution of operation codes, interrupt and
Although there is some interaction between the two areas, two separate pieces of
equipment were used at MIT/IL to provide the full checkout capability. The reasons
for this are partly historical and partly because of the "system environment" in
which computers are used at MIT]IL. (The Computer Test Set incorporates both
capabilities. Its operation is basically the same as the "AGC Monitor" and "Interface
Test Console" discussed in the following two sections).
5.2.1 Monitor
During the computer development phase a means of verifying the "central processor"
portion of the AGC was required. The first monitor was built to serve this purpose.
It provides a continuous display of the accumulator (A), instruction location counter
(Z), memory address register (S), memory data buffer {G), operation code (SQ),
and several status bits. In addition, the "W" register can be used to display the
contents of any register or memory location, or to display the contents of the data
bus (Write Lines) during any particular portion of the micro-program sequence.
This is accomplished by providing external access to the write lines and the various
f control pulses in the computer. These signals were made available at the test r.
•a T_'
supplying write line and control pulse information from the AGC, the contents of
the registers internal to the AGC can be copied and displayed.
By adding comparison and start]stop logic, the monitor can be used to stop program
execution at a certain point or to "step" through a particular sequence. This
c apabiliity, along with the display, allowed the engineer to debug the central processor
Present monitors have an expanded display panel and increased comparison circuitry
due to the increased complexity of the AGC and the use of the monitor as a software
The Interface Test Console (ITC) was designed to check the interface signals of the
computer. The electrical parameters of the various interface networks were
171
specified and tested during the development phase of the AGC. The ITC is used to
"Static" testing of the interface signals is performed to verify the hardware. This
is usually accomplished by supplying a repetitive pattern for pulse inputs and
programming repetitive patterns for pulse outputs. Checkout of discrete inputs
and outputs is accomplished manually. The operation of the [TC is essentially identical
to the operation of the "interface" portion of the Computer Test Set (CTS).
The [TC can also be used to simulate interface data for other spacecraft systems
as a software debugging aide. This will be discussed further in Section 5.3.2.
During spacecraft testing of the early versions of Block I test ropes, computer
"lock-up" problems were encountered. The symptom of a "lock-up" was usually
that of ignoring all input stimuli. The only known cure was to remove the computer
from the spacecraft and to correct the situation via a Computer Test Set in the
GN&C Lab. (Later findings showed that large electromagnetic disturbances could
cause and also cure the "lock-ups". This "cure", obviously, was not the most
desirable).
A "Portable Monitor" was designed to diagnose and cure the computer problems in
the spacecraft, eliminating the need to remove the AGC from the spacecraft. The
capabilities and operation of the Portable Monitor are similar to the AGC monitor.
Due to physical constraints only one data register and associated display are provided,
but its operation is similar to the monitor's "W" register. For example, it can
copy any selected register or memory location. One additional feature is included
in the Portable Monitor that is not included in other test gear. This is the capability
The switchover to the Block II AGC posed a new problem in analyzing malfunctions.
Both the Block I and Block I[ AGCs contain hardware alarm circuits that check for
172
however, illuminates only one common RESTART indicator. In addition, some a/arms
do not cause a restart and are monitored only by the AGC Warning circuit. Since
the warning integrator "averages" its inputs, single or low repetition rate alarms
of a certain class could occur and not be noticed.
Individual occurrences of each alarm can be monitored at the AGC's test connector.
The "Blue Box" was designed to record alarm conditions when other equipment,
such as an AGC Monitor or Computer Test Set, are not available.
The "Blue Box" consists of flip-flops and indicator lights used to record and display
all alarms, two voltmeters, control "pots" to monitor and vary the AGC'S 4 and 14
volt power supplies, and indicator lights to display several of the status bits and
controls to disable some functions of the AGC (interrupts, counter increments,
restarts). Although the "Blue Box" cannot "freeze" the AGC upon occurrence of a
restart, its ability to display the various alarms and status bits is quite useful in
analyzing malfunctions, when other more sophisticated test equipment is not available.
The Restart Monitor was designed for use in spacecraft testing and flight operation
where access to the AGC's test connector was not practical. Its function is to
monitor the alarm outputs of the test connector. Since the test connector is not
readily accessible when the AGC is installed in the spacecraft, the indicator lights
used in the "Blue Box" were replaced by circuitry that allowed the computer to
interrogate and reset the "indicators" under program control. This is accomplished
Since the AGC employs "ropes" for program memory, a method of providing a
173
Through appropriate interfacing betweenthe AGCandthe core rope simulator, data
that would normally be containedin a set of "ropes" is transmitted from the CRS
to the AGC. From the software point of view, there is no difference in performance
betweenusing actual "ropes" or CRS data.
There are several different versions of core rope simulators in use with varying
interface methods and additional capabilities. However, all versions utilize a
read/write ferrite core memory to store AGC program data. The memory is cycled
"AGC Monitor" is the name of the CRS most commonly used at MIT]IL. Its name
is a "carry-over" from the early days when the Monitor did not have core rope
simulator capability (see Section 5.2.1). A brief summary of its main hardware
features follows:
the CRS memory and the AGC erasable memory if desired. All of either
memory or selected portions can be "dumped" onto magnetic tape for
later processing.
3. Display hardware and logic to properly interface the CRS and AGC.
operation code (SQ) and status bits, and memory contents (G).
3. Display, either continuously or selectively, any register or memory
location in the "W" register of the monitor.
4. "Single step" program execution.
5. Stop program execution, when specified conditions are met (execution
174
6. Load or read any memory location without disturbing program execution.
Capabilities 2 through 6 are not required for core rope simulator but are available
5.3.1.2 Portafam
The Portafam is a compact core rope simulator intended for use in areas, where
physical constraints (such as inside the spacecraft} preclude the use of a "standard"
CRS.
data for CRS purposes. The remaining 12K, called "trace memory", is
used as a "pushdown" stack for storing diagnostic information.
2. Tape Subsystem -consistmg of the tape transport and associated control
All tape records utilize both lateral (vertical) and longitudinal parity
along with a two bit sequence code included in each byte of the tape.
the tape subsystem, the memory subsystem, the AGC, and the operator
display and control panel.
175
There are four basic operations performed by Portafam: simulation of AGC rope
data, verify loading of the memory, storing diagnostic information in the "trace"
memory, and retrieval of the "trace" memory information. Simulation of rope data
is accomplished by monitoring the AGC's rope connector for fixed memory accesses.
When fixed memory data is required by the AGC, the information is retrieved by
the corresponding location in Portafam memory and transferred to the AGC via the
interface adapter.
an AGC Restart. Since it is not possible to infer the cause of a Restart from the
rope connector, all Restarts are assumed to be the result of erroneous data in the
Portafam memory. The tape unit is started and each location of the data memory
is compared against the tape data, with all discrepancies being recorded in the
._m AGC data word is assembled from tape. This information is compared against
is detected, the tape information is, usually, loaded into the memory. The same
is present. If any errors are detected in the above sequence, three words are
written into the "trace" memory that contain the memory address, type of error,
and the data in error.
The diagnostic information stored in the "trace" memory consists of the memory
address accessed each AGC memory cycle. Since erasable memory activity cannot
cannot be provided..Any discrepancies between tape data and contents of the memory
are also recorded.
The "trace" memory information can be retrieved in several ways: manual readout
via the control panel, "dumped" onto tape by manual request or automatically upon
sequence.
(Section 5.2.2), the ITC possesses the capability to simulate, in "real time", the
176 _"
1. Reading K-start tapes and simulating the timing of the spacecraft
checkout Uplink computer.
2. Downlink interrogation at the 50 word per second rate. The ability to
record Downlink transmissions at a 10 word per second rate.
The K-start capability is used toverify tapes used for ground checkout, and provides
a convenient means of input for special tests.
The Downlink recording capability is used to verify the AGC Downlink programming
I, CM, and L.M). The Uplink portion is, basically, the K-start reading capability
mentioned in the last section. One of the Downlink units has the capability of recording
information at the 50 word per second rate.
Additional test cooperative feature is provided by the Trace system. This system
aids software testing and debugging by recording the contents of selected AGC
storage of selected data during the operation of the computer. The contents of the
Coroner memory can be dumped onto the tape recorder for analysis off line.
The Coroner's function is to arrange incoming AGC register datainto various formats
according to the conditions programmed on the Coroner control panel and to store
the data in the Coroner's "pushdown" memory. The memory capacity of the Coroner
is 8192 x 64 bit words. In order to achieve maximum flexibility with this memory
several modes of operation were provided which permits selectivity in the data
recorded. Some of the selectivity features include the following:
177
CORE
AGC ROPE
S IMULATOR
BUFFER BOX
I
ADAPTER BOX
TAPE
CORONER
RECORDER
f
f
f
f
f
t
I
f
4,.---
l
TRACE
SOFTWARE
178
a. Provision to ignore interrupts and counter increments.
The Coroner provides the ability to stop the computer on various conditions such
as:
These variousmodes provide for considerable flexibility for the analysis of software
bugs and operating conditions. The data which is collected during a trace operation
may be displayed one location at a time for "on-line" analysis, or in the dump
mode the contents of the Coroner memory and the settings of the Coroner controls
The analytical software was designed to operate on the IBM 360 series computer
and print out the magnetic tape data in various formats to ._id in debugging. There
are eleven possible forma_s for the printout. The iollowmg two modes illustrate
information printed depends upon the Coroner mode data which is included
179
SECTION 6.0
6.1 INTHODUCTION
Integration of the digital computer with the APOLLO guidance system entailed the
compatibility, and the solution of problems encountered during field testing. Because
of the multiplicity of interfaces required for both command module and lunar module
systems, spacecraft systems integration presented a significant task for the interface
designers. This was because a reasonable amount of standard circuitry was required
for simplicity in the computer, and also to provide for multiple application of the
circuits in the two different spacecraft configurations. The interfaces between the
computer and the spacecraft systems were specified in considerable detail in the
Interface Control Documents (ICDs). However, the interfaces between the computer
and the guidance system were not as rigidly controlled by specification. But because
the same circuits were used to interface both the guidance components and the
Along with the systems integration effort was the requirement for verifying the
effort acquired greater significance than the requirement to satisfy the military
inadequate for the demands of a digital system. The specification limits, for example,
digital signal lines. Conversely, the specifications were not stringent enough in
those areas that required the computer to be immune from electrical disturbances
and radiation.
fell into three categories: operator or procedural errors, hardware design problems,
and software difficulties. The computer and displays provided excellent detection
of anomalies, but the diagnostic capability was limited. During spacecraft testing,
the only diagnostic information available was provided by the display programs for
information was obtained by the analysis of down telemetry data. The down telemetry
181
Preceding
pageblank,
was a fixed format of system data transmitted at a rate of 100 words per second
and repeated every two seconds. The display data was included in the down telemetry
list. The analysis of this data and the knowledge of the computational sequence
provided the only information to verify the cause of anomalies. Some transient
faults took considerable effort before they were satisfactorily explained. Not until
late in the program {Spring, 1970) was the computer modified by adding a restart
monitor to provide more information on the cause of errors. Refer to Section 5.2.5
for more detail.
There are very sound reasons for these objectives, but they did result in an inflexible
approach to negotiating the Interface Control Documents (ICDs). The computer
interfaces with a large number of spacecraft systems in both the lunar module and
the command module, most of these systems were designed by separate groups of
contractors who desired custom interfaces to suit their own applications. The merits
of the MIT/IL standardization goal were clearly recognized and strongly supported
by NASA/MSC. This made standardization possible even though many other APOLLO
The facts that the LM and CM computers were identical and that the computer
electrical interface design was frozen before many of the other subsystems, strained
the early ICDnegotiations somewhat but did simplifythe associated decision process,
since the number of choices were limited. Dual use of the computer might have
seemed extravagant, since there were interface functions utilized in the lunar module
but not in the command module and vice versa. This extravagance, however, was
felt to be worthwhile, since it simplified manufacture, production testing, EMC testing
and qualification, Later it simplified the negotiation of new interfaces in each
application, such as the addition of uplink to the LM and the addition of VHF ranging
to the CM. The latter was designed to make use of the radar interfaces of the LM
application.
182
Essentially, the Block II configuration has four typesof interfaces: Atransformer-
coupledinputcircuit, atransformer- coupledoutputcircuit, adc-coupledinputcircuit,
anda dc-coupled outputcircuit. The display unit containeda fifth type of interface,
namelyrelay contacts. {,_nother interface circuit, a micrologic interface, was used
for testing purposes but was not utilized during flight.) The Block I circuits were
basically the same as Block II, except that more use was made of relay contact
closures in the Block I DSKY.
correlations tests. While an attempt was made to negotiate identical loads on the
interfaces, and therefore, specifications, it was extremely difficult in some cases
because of individual differences.
great many circuits and also reduced the criticality of the interface design. The
possibility of utilizing a specific parameter (such as pulse rise time) was made
more difficult because of the wide variation allowed in the specification. The objective
was to ensure that the interface would not be sensitive to pulse shape and would
required more critical timing, and therefore made use of the rise and fall times of
the pulses.
A.nother basic objective was to keep the_data rates low. This created problems in
ICD negotiations but for the most part was successful. Since the AGC processes
pulses by cycle stealing, with many inputs being processed at the same time, saturation
of the computer was possible. A limit of 3.2 KHz for I/O counters was established.
The low rate had a positive effect by constraining designers who tend to specify
higher data rates than necessary. In addition, the low data rate tended to reduce
power consumption.
183
TABLE 6-I
BLOCKII BLOCKI
TABLE 6-II
BLOCK II BLOCK I
81 Outputs 76 Outputs
34 Inputs 25 Inputs
184
6.2.1 Circuit Types
In Block II there are four types of multiple usage interface circuits and also a
relay closures available from the display unit. The special A/D converter ("A"
circuit} was used for the proportional hand controller inputs in the lunar module.
coupled output "X", a dc-coupled input "D" and a tic-coupled output "C". The "D"
and "C" circuits are designed for 28 volt dc signals, and the "Y" and "X"
transformer-coupled circuits are designed for pulse data. Table 6-I shows the
number of circuits of each type in Block II and Block I. The main differences
between Block I and Block II were: one, the reduction in the number of relay outputs
in the display unit to improve reliability, and two, the increase in the overall number
of circuits in the AGC due to increased utilization of the computer such as the
digital autopilot, etc. The design description in Section 3.7 treats the various interface
functions in more detail.
There was an additional interface (test connector interface mentioned briefly above)
that was designed for use with the factory test equipment. This interface was designed
with the philosophy of putting into factory test or ground support equipment all
circuitry not required during the flight. This would reduce the amount of circuitry
in the computer. The result was a logic level interface with the ground support
equipment that had a minimum drive and a minimum noise rejection capabiliity.
This interface design was a source of many transient failures due to noise in both
the operational and ground checkout configurations. The noise problems in the
and shorted the interface signals to ground. The ground checkout problems were
minimized by using extreme care in shielding and grounding. Table 6-1I lists the
In addition to the interfaces listed above, whenever the computer was required to
supply a 28 volt output, a resistor was inserted in series to eliminate the possibility
that an external load might short and overload the computer circuit breaker or
internal wiring. There were 24 of these circuits designated "R" circuits. Their
function was to supply power to functional elements like switches. The signal return
was an input to a "D" circuit. The only 28 volt circuit, not employing this series
Since the same computer was used in both the lunar module and command module,
185
)
|mummuln
I
I
!
(
<
1
I
I
I
I 1K
i
I
I
I
I I
I 71 T I
I pLOGIC GATE iI
186
The numbering system was advantageousin that the electrical 'design could be
identified andspecified before the functional design. Useof the numbering system
permitted release ofdrawings anddiscussionof signals that hadnot yet beennamed
or definedfunctionally.
susceptible to noise and EM[. Specifically, those interfaces where fast response
pulse signals were required. These signals tended to be more susceptible to noise
because their amplitudes were lower and their speed of response faster than the
tic-circuits. The transformer output circuit was designed to have signal
The output circuit (X circuit) was designed to utilize a minimum of parts and to be
driven by the output of a logic gate. The circuit is shown in Figure 6-1. The
transistor and transformer are the minimum number of parts for circuit operation.
The other parts are required for circuit protection when operating under a variety
of conditions. The 220 ohm series resistor is acompromise between alow output
will vary depending upon pulse length, repetition rate and load. As a result the
The components used in the design were those selected as standard throughout the
computer. That is, the input and output transformers are the same, the diode is
the standard switching diode, and the transistor is the standard NPN. The
The use of these parts and the desire for a standard pulse output circuit resulted
in a design that was not optimized for every application. This is a rather typical
example of a trade-off between electrical performance and the requirements of
187
lmm_miDm|
I I
I I
I I
I
I ---o
INPUT
c
iili
2:1 $1_
OUTPUT i _
',
ii
I
rilmiim_
I I
I I 2K
I I OUTPUT
I I
I I
I I INPUT
I i o "
, _
I
I
I
I
I
I I
L __LOGiC
GAT__J
Fig. 6-3 DC Output Circuit
188
standardization. For some of the high frequency outputs, such as the clock
synchronizing signal, a better waveform would have resulted with a specially designed
transformer. However, if each of the many outputs of the computer were allowed
the freedom of individually selected components, the overall design would have been
much more complex and many special circuits would have been required, thus limiting
The circuit shown in Figure 6-2 was considered the simplest possible circuit for
chosen was a 2:1 step-down so as to increase the noise rejection capability at the
input impedance of 200 ohms that allows a reasonable signal to be developed and
yet minimize the effects due to mismatch of the line impedance. In Block l aresistor
of 470 ohms was required in series with the micrologtc input to keep the input
impedance constant for both on and off condition of thernicrologic gate. This resistor
was omitted in Block II, since the low power" micrologic had a higher input impedance.
The dc interface circuits, like the ac coupled circuits, were designed with a minimum
number of components but with much higher noise rejection. The signals that they
interfaced with are in general noisier, and the response required is slower than
those signals used with the ac circuitry. Accordingly, the dc circuits were designed
These circuits resulted in better reliability, fewer interface connector pins, fewer
wires in the harnesses than the ac circuit and hopefully the low power, large signals,
This circuit is shown in Figure 6-3, and here again there is a minimum of components.
The circuit consists of a transistor and a resistor for current limiting. Basically
this circuit was designed with characteristics such that it could replace the relay
type function, that is a high impedance when not conducting and a low impedance
when conducting. The "C" circuit's simplicity is an advantage over a relay, but
the absence of isolation in the ground return required special consideration. However,
the replacement was desirable. The relays took up more volume, were less reliable,
189
SUBSYSTEM X
®
"-2BV
I
"C" CIRCUIT I
T1 FILTER NEIINORK
VGP
_D-mm
I
I
_K OUTPUT I I
INPUT o.--.----'xr_
I
I
I
I
2K
I
I tJLOGIC GATE I
L ........ J
190
The intended use of the "C" circuit is shown in Figure 6-4. This figure indicates
that the voltage developed across the interface circuit when nonconducting is 28
volts plus S1 and $2. S1 and $2 are noise sources in the AGC power return and the
subsystem power line respectively. The noise could also be induced in the loop
composed of "C" circuit, S1 ground, the battery, the 52 path and the filter network.
EMI considerations require the signal return to be included in the shield with the
signal conductor. However, the $2 loop necessarily contains other currents, such
inside of the shield, one would not only have the base current of T1 included, but
due to the long emitter base path noise would be injected into the base of T1 and
amplified. Thus the interface has its own problems and cannot help but violate a
The "C" circuit puts the burden of filtering on the receiving end. In principle the
interface is noisy, since Sl is an uncontrolled noise that would add to the signal
when T1 is conducting, and when T1 is off, voltage induced between the signal line
and power lineis asourceof noise. The circuits, shown in Figure 6-4, with adequate
time constants in the filter" network would accomplish the required noise rejection.
To insure that subsystems were designed with adequate filtering, the "C" circuit
For the circuit application shown in Figure 6-4, the noise rejection specifications
were:
TI on: -50 volts, if noise pulse does not exceed 0.5 milliseconds width at
T1 off:-50 volts, if noise pulse does not exceed 1 millisecond width maximum
This circuit is shown in Figure 6-5, and the number of components again are
minimized. The resistor divider network is necessary to convert the 28 volt input
to a level compatible with micrologic circuitry. The actual values of resistors and
similar to thai of the "C" circuit also applied for noise rejection of the receiving
network.
191
o
.i,-4
192
6.2.1.3 Special Circuits
Although the circuits described above covered most of the AGC interfaces, there
are some situations that were unique, These are described below.
In Block II a special interface circuit was designed for the hand controller in the
LM. This circuit was called the "A" circuit (Figure 6-6), and three were required;
one each for pitch, roll. and yaw. These provide an analog to digital conversion of
the three degrees of freedom of the hand controller. The conversion is accomplished
by generating a pulse length proportional to the peak amplitude of the input. The
circuit in Figure 6-6 can be divided into two parts. The upper half of the transformer
secondary is used to charge capacitors C3 and C4 to the peak of the input voltage,
and on the application of a pulse to pin A, to hold Q5 off for a length of time proportional
to the voltage across C3 and C4. The bottom half of the transformer secondary is
used to detect phase. The 800 cps signal is squared up, and the output at pin P
The input is an 800 cps amplitude modulated signal, and the outputs are: one, a
signal on pin W, that disappears for a time proportional to the amplitude of the
input signal, and two, a signal on pin E that can be interpreted as indicating the
phase of the input. When the amplitude signal disappears, it allows a 3200 pps
pulse train to be gated into an AGC counter. The number of counts is proportional
to the amplitude of the 800 cps input signal. The amplitude is proportional to the
angle through which the hand controller is moved, and the maximum linear deflection
The input is utilized by the program setting a bit in an output channel that results
in a pulse on pin A starting the gating process. The input can be measured amaximum
of 33 times a second, as one has to allow time for the capacitors C3 and C4 to
charge up to the input amplitude. The phase signal, pin E, is strobed just before
the gating sequence starts. The excitation to the hand controller is derived from
an 800 cps supply in the GN&C. This in turn is generated by pulses from the AGC,
so that the computer knows what the excitation phase of the hand controller should
be and can therefore determine the polarity of the hand controller deflection.
The phase signal, pin E, is a squared up version of the input. One of these signals
and an 800 Hz reference signal were brought out to the computer test connector, so
193
28ph
+28V "A"._ +28V COM
+I4V (BPLUS)
POWER i
+]4 V SW (BPLSQW)
SUPPLY I +4V
+28V "B"
+4 V SW
OV
28 V LO
7,,
194
that one could check the phasing from the AGC through the GN&C 800 Hz amplifier
and LM hand controller loop. Pin V was brought out, so that one could monitor and
This interface is shown in Figure 6-7. The Command Module has two redundant 28
volt buses. To isolate these buses from one another, series diodes were placed in
each high.
In the LM there was only one power bus for the LGC. The external power wiring
connected the two diodes in parallel. The diodes provided another function, that is
they prevented accidentially applied negative voltage from damaging the computer.
The combination of the chokes and capacitors in the power input lines provided
filtering for noise on the power lines whether generated internally and conducted
out orvice versa. This design evolved after considerable EMC testing of the Block
I computer. These tests included the audio and transient susceptibility tests that
are part of the EMC specifications. These also included RF transients induced by
electrostatic discharges (spark test) to the computer case and cabling. In Block I
the configuration of the filters was similar to that shown in Figure 6-7, but initially
the computer signal ground was isolated from the computer case. The results of
the transient testing indicated the signal ground to case isolation was detrimental.
The distributed capacity between the wiring and the case was quite large and provided
return paths for transient currents between the power lines and case. It thus made
the computer quite sensitive to spark type transients, even though it was insensitive
to the transients between power lines. Many filter configurations were tested but
in order tomake a significant change in the test results, the computer signal ground
and case was connected at multiple points. In the Block II design the case was
designed to be the ground return with a minimum of wiring between ground connector
pins for redundancy. This change with the filters shown made the computer immune
to power line transients much greater than 50 volts and electrostatic discharges to
In Block II mechanical design the power supply modules, the interface modules,
system connector and the interconnecting wiring were all located physically in order
195
6.2.2 Interface Control Documents (ICDs)
One of the main objectives at MIT/IL was to have a single electrical [CD for the
computer in each spacecraft. Since the computer interfaces with many different
subsystems, this was a difficult objective. It did require much coordination but
was felt to be worth the effort. The program management at NASA/MSC recognized
the potential advantages and directed the spacecraft contractors to cooperate in the
the spacecrafts would have been impossible without the strong backing and support
of the NASA management.
Initially it was desired to have functional descriptions included in the ICDs. Because
of the lead time required to build the computer and due to the fact that the software
would be written somewhat later, the initial ICDs did not contain the functional
descriptions. Some of these were added later, and parameters affecting the software
were defined in other documents. There were some signals negotiated in the ICDs
whose functions were not used by the programmers. Also, a number of signal functions
were defined after the computer design was released.
_knother objective of the ICDs was to have the actual interface circuit schematics
included in the document for information only. This would help minimize some of
the ambiguity contained in the specifications, and would give the electromagnetic
compatibility test engineers information on how to simulate the various interface
circuits for their EMI tests. It also allowed one to recognize that when there were
some cases this objective was not realized until too late in the program to be
useful. The reason for the information being late was primarily contractual. That
is, the spacecraft subcontracting chain was too long to respond very fast.
6.2.3 Summary
The typical interface functions are described in Section 3.7 and in the ICDs for the
CM (MH01-013B0-216) and the LM (LIS3?0-10004).
As can be seen, the main objectives of the interface design was simplicity and
reliability. Nevertheless, one had to pay tribute to the component manufacturers
for making the objectives possible with the quality and flexibility of their products.
196
A typical example was the _NP.N transistor that was used in the "X" and "C" circuits.
The "X" circuit required a high frequency switching transistor, and the "C" circuit
required a high voltage low leakage transistor. These extremes are usually considered
incompatible.
It should be noted that the dc interfaces violated the EMI specifications. If simplicity
entailing slow response and low frequency, the intent of the E_MI specification can
be realized with simple circuits. To meet the EMI specification, the power supply
would require some form of dc isolation, so that 0 volts could be tied to structure.
The interface circuits require dc isolation, so that the current in the signal ground
is in fact the return signal current. The signal and return can then be a twisted
pair.
This seclion will discuss the electromagnetic interference (EMI) philosophy, the
specification problems, the interference problems encountered and the tests run.
It also contains a list of milestones that may help define the interrelationship between
the computer development schedule and the class of design problems associated
and in digital equipment they result in intermittent failure. In a word EMI problems
to minimize this impact various approaches have been used. One approach has
been to conform almost blindly to an EMI specification and control plan and then
continually tighten up the limits when a higher confidence level is required. One
a hard nosed attitude be presented toward all such requests. The results of this
When a design engineer is faced with a conflict between EMI requirements and other
conformance tothespecification. The EMC group tries to control the design through
197
organization charts, authority statements, and EMC sign-offs. The design engineer
proceeds more or less independent of the EMI requirements and presents the EMC
group with a completed design that can't be changed because of a schedule or cost
impact, or the responsibility is passed to a subcontractor who has a more limited
view of the complete system problem. It should be noted that in most cases neither
The approach taken by MIT/ILduring the computer development was that the EMI
problem, like other design and reliability problems, requires engineering judgement
design constraints like weight, power and reliability. In the case of the computer's
susceptibility to interference, considerable design effort was expended to make the
computer less sensitive to interference then that required by the specification.
Special tests were introduced to explore the susceptibility. These test methods
and the designs necessary to protect the computer will be described below.
6.3.2 Milestones
The interaction between the dates related to the contractual requirement for
electromagnetic interference specification, hardware design release and EMI testing
are indicated in the list of milestones.
198
7. Mar. '64 Power lines transient tests run on Block 0 and
12. Feb. -Mar. '65 EMI problems with System 5 in MIT/IL Systems
static discharges. )
GN& C system.
199
6.3.3 Specification Problem
The main problems with the EM[ specification were due to either ambiguous statements
or test requirements that arenot applicable to a system like the GN&C with a digital
control computer. The latter set of problems were probably due to the fact that
the specification was originally written for a particular system where it was
meaningful, but in the attempt to apply it more generally, it lost its relevance.
design requirements was the most difficult part of the development. That is, the
specification provided very little aid in determining good design practice for digital
equipment.
somewhat more severe than that expected during normal operating conditions.
The first problem encountered had to do with the interpretation of the 50 volt
transient. The purpose of this test is to apply a 50 volt 10 microsecond wide pulse
to the power input of the equipment under test. If the equipment has a large
capacitative input, how could a 50 volt transient be developed? The capacitor would
short it out. What actually happened in such tests was that the transient was developed
across the power line lead inductance. The fact that the specification does not
control the energy that the transient generator could supply to the test item, and
that the power source might be shorting the transient out, posed problems. The
AGC had an inductive input, so the transient could be developed quite easily. The
GN &C system had a capacitive input. When testing the GN& C, an open circuit amplitude
was used to set up the transient generator, where the open circuit was really a 250
microhenry choke in series with the 28 volt power supply. The reason for the
"open circuit" interpretation was that the amount of energy in the transient was
able to be controlled. The correct interpretation of the test was important, since
the GN&C had a voltage quadrupler that could be a problem.
For the computer the specification was interpreted as being applicable to all
combinations of power leads and structure. However, this interpretation was not
generally accepted. For the computer it was important, since, in operational
200
environments, transients canbe developedin all combinations.
The purpose of the test is to insure that the subsystem can operate, while an audio
signal modulates the power bus. The audio modulation is accomplished by inserting
a transformer secondary in series with the 28 volt power bus. While the NASA
requirements seemed to specify the open circuit output at the transformer secondary,
other military EMC specifications called for measuring the output when loaded by
the subsystem under test. None of these specifications made allowances for either
the load presented by the subsystem or the waveform distortion that resulted from
this loading. These differences made the interpretation of the NASA specification
more difficult.
Since the GN&C had a capacitive input, and if the injected signal was measured
when loaded by the system, the system could dissipate excessive power in the
capacitors at the higher (15 kHz) frequency range of the specification. This problem
was resolved by taking into account the capacitor dissipation and by reducing the
closed circuit input to prevent damage. As a result, the system was not tested at
the specification limits.
how low and how long the supply voltage could be without degrading the performance
appreciably. The computer was designed to go to sleep when a loss of power was
detected, then restart when power returned, but the electronics of the Inertial
Measurement Unit could not tolerate loss of voltage for extended periods. In the
computer, if the voltage went below a level of 20 volts, the computer would shut
itself down and save enough information to allow the program to be restarted.
The test methods used to specify the tolerance limits on radiated susceptibility
were found inadequate for testing the guidance computer. The computer was
completely insensitive to the radiation specified, but until design changes were made,
the computer was very sensitive to electrostatic discharges. One can argue whether
201
6.3.3.2 Interference Testing
This test establishes a limit on the interference that may be injected into the power
distribution system as the result of the normal operating condition of the subsystem.
A problem arose because of conflicting limits between the ICD and the EMC
specifications. The reasonableness of the limits, and which specification was the
The AGC power supplies were pulse width modulated and synchronized at 51.2 kHz.
As a result of high frequency and the synchronization of the two power supplies
being out of phase, the conducted interference was relatively easy to filter using
simple LC filters. All these precautions helped but were not enough to enable the
equipment to pass the EMI specification limits. This was one areawhere a trade-off
was made between a reasonable amount of filtering and relaxing the EMI specifications.
Another problem was that in addition to the EMI specifications, one also had to
conform to a Power Interface Control Document, which specified a limit in the voltage
or current ripple injected into the power distribution without a firm specification
This part of the specification was a major problem of interpretation. In fact even
the intent of the specification was vague. The specification should be concerned
with interference between signals and controlling shield currents. Instead EMC
specialists seem to concentrate on the specification of noise in each signal path
when no signal is being transmitted. The signal amplitudes and noise tolerance of
any one signal path should be under control of the interface control documents,
such that the interface circuits are designed to operate under the signal and noise
specified. Then the shielding, grounding, and wire routing should be provided to
202
The problem of interpretation of the specification develops because the specification
shows the measurements being made with a current probe encircling a cable coming
out of the system under test. The problem here is to determine whether it is encircling
the whole bundle (several wires and their returns) or just a single wire. Quite a
few EM[ specialists have taken the latter interpretation and put current probes around
individual signal leads and then tried to impose the EM| specifications on that
measurement. For digital signals this would mean any signal present after the
pulse had subsided or transmission was over and would be a specification independent
on a signal path were to be the cause of interference, then the signal, when present,
The radiation testing was straightforward. Here the specification limits were not
met. The limits were relaxed as a compromise between excessive radiation and
additional shielding. The Block I design was much worse than Block II. The steps
taken to reduce the susceptibility of the computer to static discharges also reduced
the level of radiated interference. In Block II the requirement for moisture proofing,
that resulted in metal covers enclosing the subsystems, also reduced the radiation.
The covers were designed for low conductive paths between the mating gasket
for grounding and shielding. The approach used in the computer developed from
past experience as modified by early susceptibility tests, mainly power line transients
Initially, the AGC had all its signal leads shielded and the shields returned to zero
volts, grounded at the signal source only. This was done so that any shield currents,
resulting from unbalanced signal lines, would return to the source through the shield
When the sensitivity of the AGC to transients between zero volts and structure and
the susceptibility of the AGC to static discharges was determined, the above
philosophy changed to that of connecting the AGC zero volts to structure (case} and
to the multiple point grounding of all the input and output shields. This resulted in
violating the single point ground requirements (making two vehicle ground points}.
203
The logical remedy was a transformer coupled dc-dc power supply to isolate the
AGC zero volts from the power bus, but a new power supply design was too late to
phase in. The field experience has shown that the advantage of making the AGC
insensitive to zero volt-to-structure transients and static discharges more than
compensated for the violation of the single point ground specification.
This section contains the specification limits in the GN&C qualification and also
the additional tests that were used as development tools in order to evaluate and
reduce the susceptibility of the computer to transient conditions. See Table 6-V.
These tests were run on the computer subsystem while operating the GN&C.
The qualification test limits may appear to be very loose, when compared to EMI- 10A,
but they are felt to be more realistic than the EMI- 10A limits for this type of equipment
in this kind of application. The actual EMI-10A limits are shown as broken line in
the figures. A listing of the figures and tables for the test limits follows together
with their titles.
i. Narrowband DC Lines.
B. Narrowband AC Lines.
C. Broadband.
A. Broadband
A. Narrowband.
B. Broadband.
204
Fig. 6.12 Conducted Audio Susceptibility Test Limits
A. Conducted.
B. Radiated.
The radiated transient test called out in Table 6-V is designed to simulate interference
generated by static discharges. The circuit for the te_t is shown in Figure 6-13.
Section 6.3.3. The major hardware problem was the sensitivity of the AGC to static
discharges and power line transients developed between the power lines and case.
These problems could have been disregarded, since there were no requirements to
operate in the presence of these interferences. The steps taken to remedy the
problems, connecting the computer signal ground to structure and using the connector
shells to provide a short ground path for the cable shields, also reduced the self
generated internal noise, and reciprocally reduced the RF radiation. When these
changes were incorporated into the Block II computer, it was very tolerant to power
transients and spark discharges. Another class of problems resulted from the
interface design that was used between the computer and OSE. See Section 6.2.1.
[n the test configuration with the GSE connected, the computer was more sensitive
to interference than in the flight configuration. This sensitivity was the result of
the types of circuits used inside the computer and the interfacing hardware in the
GSE. In the operational mode the computer has a special module that plugs into
There were a great many tests run on the computer both in a subsystem configuration
and with the guidance and navigation system. These are summarized below.
205
...O
O
I..,
O3
,J
N
=r"
I u
>-
_.)
iI I
0
t,cJ
I =
N
"r / I
v,
/ I
/ I
/ I 0
I
I
I ,-1
I
0
N
=1-
I
I
I
I I I I I I
206
N
-r
N
"I"
i O- I--- .,,w
E--,
c_
ZZ _-_
U
.,,,.._ ,,,.,-,_ Z Z
8 Z
0
m
#
:>- O0 r,-.
I i I "0
0
"_ I I
I
N I I
:2:: i ob
I I I
I
o
I I
I
I I
I
I i
I
i I
I
I I
I I
i I
I
I I
/ I
U
-r / I
I
/ I
I
/ I
I
/
/ I /
/ / I /
I / I /
I / I /
I / I /
I i I /
N
"r
t [ I i I
207
N
/,
N /
"r
/ eq
/
/
/ L_
/
/ C
/ t'q
/ <
0
/
LO
J Jl_
N !
"-i'-
-.,.,,I
>-
E--,
Z
L_
O'
W
t_
N
OJ
"r"
_3
v-i
!
¢.¢,
N
N
I I I I I
2O8
N
"I"
:E
U t'q
%
%
l
C
l %
L'q
l
Z
l %
Z
e,-,, l o
z.t3
ee_
0
l % ,,-i
U
4X: e,,,-
e_ l % !
0
o3
Z l
l % E
%
l
l
>-
\ F-,
Z
i,.l.i
r _
I,.I.I I
I
i
I
U I "c
"I- I
:E I ¢J
I E
I
I
I
I
I
-I I
"'1
.,.-,
,-,I
Z
=1 I
r.o
N
"z- ol
:E 0 ,-,-I
i,,.,.I e_ ,%
zl
I
I I
I I
I
I
I
I
I
I I
N
I l I I I I i
( QNVS(]VO_9 EIO_-I
ZHW _13d) llOA -rl O'l 3AOBV 8Q GNVgAAOEIEIVN
209
N
-r
.1...
00
oq.._
E
°,,.._
.l
N
'-r
QJ
)-
b"J
O "I3
w
EL al:
N z I1;
'-,r"
,o_ 0
L)
Z
I,i,,I
O I
N
1-
N
",r I I I
o O
210
TABLE 6-111
TABLE 6-1V
211
TABLE 6-V
TRANSIENT TESTING
A. CONDUCTED TRANSIENTS
± 50 Volts + 28 Hi,+ 28 Lo
+ 50 Volts _ 28 Lo, Case
+ 50 Volts + 28 Hi, Case
B. RADIATED TRANSIENTS
212
Q9
D
,,J
"C
W C
Q9
213
The initial tests (Spring '64) were primarily concerned with power line transient
and audio susceptibility. As a result of these tests a choke input filter on the power
lines was recommended because the computer had to ignore the 50 volt 10 microsecond
transient required by the specification, but had to detect a power drop out and put
itself to sleep without losing information. These tests also detected the susceptibility
of the computer to transients between power lines and case. The Block I configuration
introduced the choke input filters on the power lines.
In the Fall of '64 some preliminary GN&C system tests were made,and special
tests were run on the computer input and output circuits (C or D circuits) to determine
if there were any EM[ problems with the single wire I/O configuration. The purpose
of these tests were to validate these l/O circuits and the proposed Block II
In the Spring of '65 the first occurrence of the static discharge problem was identified
on a Block I configuration. Test equipment, which would provide a controlled static
discharge, was developed, and a series of tests were run in order to study the
problem. This problem was resolved with the multiple point grounding of all the
f
signal shields and improved grounding of the AGC zero volts to structure.
specifications, the Raytheon test plan, and the AC test plans for Block I and Block
lI. In addition, meetings were held with North American, NASA, Grumman, and AC
Electronics. One of the major problems for this committee was specifying the
load impedances for the various interface signals. Realizing the difficulty of
interpreting specifications, MIT/IL had tried to get the computer interface circuits
put into the electrical ICD (for reference only}. However, this was only realized
fairly late in the program. Part of the problem was that there were several layers
of subcontracting, and that the prime contractor did not have this information himself.
This not only would have facilitated the simulation of the interface loads for the
various EMI tests, but in addition, if a particular circuit was causing a problem,
one could make this information available to the other contractors.
Raytheon ran EMI tests on a Block I computer in Feb. of '66, and the results
indicated that the AGC failed some specification limits of MIL-I-6181 D.
214
System EMI tests were run by AC on a Block I GN&Csystem I in the Spring of '66.
This system passed using the revised specification limits, although it would not
Preliminary tests were then run (May '66) on a Block II computer and GN&C system
at Grumman in the GN&C Test Lab. These were primarily susceptibility tests that
the GN&C system and the AGC passed. There were some anomalies noted, but
In the Spring of '67, the Block [I qualification EMI tests were run on GN&C system
Out-of-spec conditions were critiqued and for the most part attributed to ground
There is a definite need for a realistic set of EMI specifications. Since this will
never be realized, the only solution is for the EM] and design groups to work together,
should be mandatory. The impact of design decisions on both factory test and system
One will need to have some specification limits to work to, but these limits will
have to vary as a function of power level involved as well as type of signal. This
has already been done to some extent in the present specification. The principal
control that the EMC groups should have is to help decide on the reasonableness of
3. APOLLO GN&C System Test Group Memo #1044, EMI test results by Richard
Sheridan, 31 July 1967.
215
8
±
_--L.---4b
216
the weight and reliability factors vs. the EMC. In this area there will have to be
more interchange.
The use of transformers and relays to isolate one subsystem from another is
reasonable, (in fact MIT itself pushed for this in the early part of this program),
but this does have its penalities. Transformers are fairly large, and because one
always wants the smallest one possible, they can have reliability problems. Moreover
they require two pins on the connectors and two wires in the harness. Also if one
does not use transformers on the receiver as well as on the source, one could have
unbalanced lines and shield currents that could cause cross coupling (see Figure
6-14). A signal on line A will induce a current in the shield ground, since the
capacity C H of the signal high to the shield is not shorted out, while the capacitance
of the return to the shield C R is shorted. The shield current (is), because of excessive
shield length, could develop a signal in the shield lead that could cause a signal to
worse if one loses the shield ground at either end. Similarly the penalties, when
using relays, are size. reliability and EMI problems. A relay interface can use up
to 2 or 3 pins in the connector and wires in the cable. Thus one can see the basic
conflict between isolating subsystems on the one hand and on the other hand reducing
The C and D interface circuits used in the AGC were essentially transistor input
and output circuits using a single pin with the power bus furnishing the return.
They were designed to require little power, use few components and be noise tolerant.
Return lines were available if the receiver or source did want to stay isolated or
comply with the requirement to have the return conductor in the same shield as the
hot (single) conductor. The absence of ground isolation in these interfaces did not
The system integration problems, that were experienced during GN &C and spacecraft
checkout, were the most troublesome during the Block I development. As operator
experience developed, and as the software and hardware anomalies were eliminated,
checkout ran quite smoothly. Since transient or non-repeating type anomalies were
the most common, it was extremely difficult to analyze the symptoms and satisfactorily
explain the anomaly. Although there were many failures, and all had to be explained,
there were only a few that were indications of design faults or software bugs. In
general, many of the faults in Block I were the result of electrical transients of
217
many types. Power-line transients and transient behavior of subsystems during
power up and power down were the most common. The interference on signal lines,
induced by operation of various switch contacts, were the result of marginal shielding
and grounding. In some cases these transient signals were due to coupling within
the computer between signal interface and other logic signals. All of these electrical
interference problems indicated that the early computers and interface cabling were
more sensitive to interference than desirable, even though the system would pass
There was one interference type problem that occurred during the APOLLO 6
mission. The AGC generated frequent uplink alarms both during and in the absence
of ground initiated uplink data. During the phase of the mission that required updating
of some of the contents of E-Memory, the computer would reject or interrupt the
transmissions and signal uplink alarms. The interference conditions made the process
of loading data into the computer very difficult.
The alarms were determined to be the result of noise on the uplink interface wiring
that the computer would interpret as signal, since the noise amplitude was equal to
or greater than signal. The computer circuits would reject pulses under one volt
in amplitude. The computer logic and software was designed to test uplink data
(normally of pulses with an amplitude of more than 4 volts) for errors in order to
protect the AGC operations against erroneous inputs. An error in the data caused
by anoise pulse greater than 1 volt would cause the computer to reject the transmission
and signal an uplink alarm.
The uplink interface between the radio link and the ground support equipment for
prelaunch checkout consists of two signal lines ("1" and "0") transformer coupled
that feeds information into one of the E-Memory input counters by performing a
memory cycle steal. When a pulse is transmitted on the "0" line, the contents of
the uplink register are shifted to the left one place, and a "0" is introduced in the
least significant bit. When a pulse is transmitted on the "1" line, the contents of
the register are shifted to the left one place, and a"l" is added in the least significant
bit. Thus the data word is shifted serially into the uplink register. The format of
the data word requires the first bit of the 16 bit data word to be a "i" An uplink
interrupt is generated in the computer when aone is shifted from the 15th to 16th
218
bit position of the register. The interrupt software transfers the data to storage
and then clears the register to complete normal transmission of one word.
Two methods were used to protect the AGC from erroneous transmission. The
first is logic that tests for input pulses coming too fast, and the second is a coded
data signal. The data format has the same bit configuration as the five bit DSKY
key codes that allows processing by the same software as that used to process
DSKY entries. Each word (15-bit transmission ) represents one 5 bit key code (K).
The 15 bits contain the code KKK. The software decodes the transmission by testing
for the presence of akey code (K) in the pattern KKK. In the presence of noise the
investigation that not only located the source of the noise In the spacecraft but also
the sensitivity of the routing and shielding of the spacecraft cabling used on this
umbilical input lines, used during prelaunch checkout, were determined to be the
lines that were susceptible tothe interfering noise. After launch these lines remained
connected to the umbilical and also passed through several connectors within the
spacecraft. The radio telemetry/GSE control, shown in Figure 6-15 was added to
eliminate the noise pickup after launch. The investigation also determined that
manyof the checkout problems betweenthe ground support equipment and AGC were
not operator errors but were very likely the result of the noise at the interface.
This problem had an interesting side issue that involved the history of the development
of the uplink and the coded data. Early in the program, when M[T proposed and
designed the interface to use coded words in place of uncoded words, there was a
great deal of opposition to this design approach, since the efficiency of transmission
was lowered, and there was already extensive coding in the RF link. The argument
was thai the probability of a bad data transmission being sent to the computer was
since the computer sends every uplink word down the do_alink for verification on
the ground. In the light of the noise problem, the lack of the coded data would have
made it almost impossible to get a reliable load into the computer. In a case like
APOLLO 6 the noise could have caused a catastrophic failure in the AGC, since
there would have been no way to prevent the noise from entering the computer.
The problem associated with the test connector was first detected during the early
Block I spacecraft integration tests and verified during the ZMI studies. The test
219
AGC RAD i0 LINK
,¢"R_ ,u
I I I I
'l
_._ I0 TELEMETRY/GSE
CONTROL
._ TO UMBILICAL
CONNECTOR
220
connector interface was shown to be susceptible to electrical interference. Since
this interface was designed with a philosophy of minimum fly away hardware, computer
input logic signals were carried directly to the test connector. In the spacecraft
configuration (the only configuration in which the interface was not used) these logic
input wires were unterminated and provided coupling internal to the computer between
high level system mode interface signals and computer logic. A special test connector
cover was designed for both Block I and Block II computers which grounded these
test signal inputs and prevented the coupling. In the mechanical layout of the Block
I computer the test connector interface and two of the interface modules were adjacent,
thus permitting coupling between the wiring. In the Block [I design the interface
modules and wiring were located to provide the maximum isolation between interface
typical of the type that is extremely difficult to analyze. When the actual cause of
the alarm was determined, it was not the result of an integration problem. The
initial symptoms had indicated the problem was the result of noise. A previous
problem due to signal coupling between IMU moding signal inputs to the AGC and
unused test connector inputs in the computer had just been solved by installing a
protective shield and grounding cover on the computer test connector. During
known instance of this alarm during this test sequence. The obvious deduction was
that the test connector "fix" was causing the problem. Further testing seemed to
confirm this deduction, since the TC Trap occurred with a low probability but was
A "witch hunt" committee was formed to investigate the problem. The committee
did an extensive study to determine the source of noise and the area within the TC
Trap alarm circuitry that was sensitive to noise. The study could not identify any
source either internal or external to the computer, since there were no moding
operations for several seconds before the occurrence of the TC Trap. The study
did provide a clue, since it determined that the TC Trap occurred within 20
milliseconds after the computer executed a program called pseudo-verb 36. 'Analysis
that there was no software bug. In order to gain more information for the committee
to use, a simulation of the hardware and software configuration was set up in the
System Test Lab at MIT. The simulation did result in occasional TC Traps both
with and without the test connector cover, thus eliminating the cover as a factor.
221
CHANNEL 13 CONTROLBIT
r" ........ '1
WRiTE'I" I I
I I
I I
I I
I I
I I STROBE
I I
I I
I I
I_RADAR SYNC
CLEAR m
i I OUTPUT
L ........ J
iNSTRUCTION
COMMAND I
WR ITE "1" J
j
CLEAR
Fl
CHANNEL 13
OUTPUT
STROBE
SPLIT
RADAR SYNC V
222
Analysis of the conditions in the software with the aid of the AGC monitor (see
Section 5.3.1.I), revealed that the alarm came about due to executive activity
coincident with pseudo-verb 36. The problem was the K-start tape (test programs
used for spacecraft testing which were loaded into E-Memory) for pseudo-verb 36
improperly used the resident subroutines in the E-Memory. The K-start tape had
The radar problem was identified during testing of LM-5 (APOLLO ii mission
launched July 16) in April and Mayor 1969. Previous to this time occasional errors
in reading radar data were written off as not being mission critical. Therefore the
problem was not investigated. The failure in LM-5 repeated several times and
The results of the investigation determined that there was an AGC hardware-software
interaction resulting in a split radar s)mc pulse output. The radar would interpret
the split pulse as two data sync bits and as a result would send two data bits to the
computer during one bit time. Since the input counters of the computer depend
upon cycle stealing, the computer would not read two data pulses that came within
a period of less than 12 microsecond. The computer would ignore the second data
bit. The result was that one bit of data out of the 15 would be lost, and the remaining
lower order bits shifted left (toward the more significant end of the word) by one
bit. This analysis explained the symptoms experienced during LM-5 testing.
The split sync pulse was generated when the software wrote into channel 13. See
Figure 6-16. The write operation clears and restores the output bits of channel 13
that control the radar gates. The clear and restore action takes about 250
nanoseconds. The timing of the action in the channel due to the performance of
that instruction is partially synchronized with the timing strobe for the sync pulse
output. The fact that there is some synchronization between the twelve time pulses
in a MCT and the strobe pulses provides a beating effect that is coupled with a
more random timing of the program steps executing the instruction. The result is
a fairly low probability of getting asplit pulse. There are many conditions determined
by the timing at start-up where the probability of a split pulse approaches zero.
This also says that if conditions exist where one split pulse is generated, then the
probability of getting additional split pulses is much higher than it would be if all
The remedy for this problem was a change to the software that would prevent the
software from using the output channel during the process of reading radar data.
223
There was a possibility of hardware design change which was rejected, even though
it was a rather simple tray wiring change. The hardware design change would
require recycling the computers to the manufacturing facility which was not
considered expeditious.
The ACC logic design was such that it made the interface susceptible to this transient.
If the control for the radar interface had been derived from the other output of the
flip-flop in Channel 13, there would not have been a problem, since there is no
6.4.5 Miscellaneous
There was a class of integration problems that resulted from the lack of understanding
about how the computer and other subsystem interfaces operated during the power-up
lo When the uplink equipment was turned on or in some cases when turned
off, the equipment would emit one or more pulses. These pulses would
remain in the AGC register and would Cause the first data transmission
to be in error, unless the register was cleared before transmission.
. When the computer was turned on, the computer would indicate a warning
alarm for as long as 20 seconds and would trigger the spacecraft master
caution and warning.
, When the computer was switched between standby and operate, a power
transient internal to the computer would modulate the clock sync signals
These problems were relatively minor in terms of corrective action required but
were troublesome to analyze. The corrective action taken was to modify the operatiug
procedures and update the ICD to identify the signal behavior during the transient
conditions.
Ironically one of the most troublesome integration problems was the mechanical
rE ....
interface with the two spacecrafts': The configuration of the two cold plates was
different so each had a set of unique problems. The LM had two cold rails which
provided mechanical support along the edge of the computer. In avacuumthe cover
of the computer would deflect slightly due to internal pressure and put additional
224
stress on the cold rails. The cold rails were designed for minimum weight but had
have been a weight impact for both CM and LM. The mounting bolts, which were
provided with the computer, were being changed almost constantly in order to track
the various configurations and account for the mistakes in the Interface Control
Documents and bolt specifications. These problems may appear to reflect upon the
abilities of the mechanical designers, but that was not the case. They point out the
difficulty in documenting and communicating a design when working under the many
Both APOLLO Ii and APOLLO 12 missions had anomalies that are of interest.
During the lunar landing phase of APOLLO II, the computer in the LM signaled an
alarm condition several times. These alarms were an indication to the astronauts
that the computer was eliminating low priority tasks because it was carrying a
computational load in excess of its capacity. The computer was designed and
programmed with the capability of performing the high priority tasks first and causing
low priority tasks to wait for periods of reduced activity. Several times during the
landing the computer had to eliminate low priority tasks and signaled the astronauts
of this fact via the alarms.
The over-load condition resulted from the fact that the rendezvous radar was on
but was not in the GN&C mode. In this mode the radar angle data was being sent to
the GN&C witha phase different than during normal operation. The analog to digital
converters in the GN&C system could not lock onto the angle signals. The resulting
hunt or dither caused a maximum data rate into the AGC counters that consumed
more than 15% of the computational time. The loss of computational time was
The APOLLO 1 2 anomaly was attributed to lightning striking the vehicle during the
first few seconds of launch. The lightning induced temporary power failures in the
fuel cell system. The transfer to the backup battery power resulted in a power
transient and a condition of V-Fail in the AGC. Subsequent tests on the computer
225
SECTION 7.0
RE LI ABI LI TY
Basic to the success of the APOLLO guidance computer was the realization that
failure rates and component counts, showed the resulting computer failure rate to
be well above that which would be required to meet the computer's apportionment of
the mission success probability (Ps = 0.998). Even considering the mission plan
for operating the computer only 10 percent of the mission time (for the balance of
the mission the computer would be in standby, which in theory reduces the probability
of failure), made the failure rate only marginally acceptable. Under these conditions
specification, manufacturing and testing. The tight assembly, ir,spection and test
procedures during the manufacturing process detected many problems, each of which
were closely monitored, and for which corrective actions were developed. The
resulting emphasis on quality has paid off by decreasing the actual failure rates of
the computer considerably below the original estimates, even though the component
count increased after the original reliability estimates were made.
During the early stages of the computer design, an effort was made to constrain
the number of different components to a selected few, thereby concentrating the
their designs excessively. Not only the types of parts were limited but also the
range of values. For example, resistors were limited to one type and to a tightly
r I ecedingpageblank 227
restricted number of different values. The constraints were reviewed frequently
and relaxed asnewrequirements were justified, but the existenceof the constraints
accomplished a greater than normal degree of standardization. The benefits that
resulted from the effort to standardizewere: (1) a reductionin the level of activity
neededto specify the componentsand the level neededto develop testing methods
that were capableof continuouslymonitoring the quality of the components,(2)a
reduction in the efforts required to track the manufacturing problems that were
related to a componentdefect or testing procedure, and (3) more important to the
reliability of the componentwas the large volume of procurements that provided
increased competition between vendors and greater motivation to meet the reliability
requirements.
Component selection was started in parallel with the development of circuit designs.
Initially the design engineers were required to specify the general characteristics
of the required components and the possible vendors for the component. Then,
after a vendor was selected, sample purchases and engineering tests were made.
One of the earliest and most important reliability tests was an internal visual
type Of tests that could be used to qualify the part, and provided information necessary
to establish process controls. Additional engineering tests, both environmental and
activity that lasted well into the design and production of the Block II computer.
The most prominent example of the activity involved in component selction and the
only one type. The initial Block II design also used one type but had to be changed
to two types as a result of logic coupling in the substrate between the two independent
gates on the single chip (see Section 7.4.2.3}. The resulting types, that were a dual
logic gate and a dual expander gate, differed only in interconnection pattern on the
chip. Therefore the manufacturing and testing of the gates were otherwise identical,
and the engineering effort could be concentrated on the development of a single
device.
228
To select standard transistors and diodes was probably more difficult because of
the wider variety of applications. The NPN transistor was a good example of this
problem because the range of application varied from the very low current high
frequency operation in the oscillator to the high current memory drivers and high
type transistor. But it also required high gain at low currents as well as fast
switching and low leakage. This range of applications was satisifed by the
that could be mounted in a metal base TO-18 header. The case configuration was
selected as the result of thermal design considerations. The metal base TO-18
header provided a package configuration with a low junction to case thermal resistance.
Transistors for a relatively few special applications, such as the oscillator which
required high gain at low currents, could be selected during computer assembly
from the normal production distribution of parameters for this single transistor.
NPN. Diodes were standardized to one type and selected for special application
like the matching of forward voltage drop in the rope sensing circuits.
A few circuit applications could not be met using the se standard parts. Most instances
were in the power supplies, where very high power and current were required.
Comparing the effort of specifying, evaluating, qualifying, and monitoring a low usage
used in the pulse width modulated power supply. This component is a single usage
item but had vendor and application troubles several times during the computer
production. The individual problems with this device consumed as much analysis
conducted; the parts were released for production procurement; and then subjected
to the component flight qualification program. These parts had no screen and burn-in
requirement other than that which was specified in the specification control drawing
(SCD). Critical parts, like the integrated circuits and high usage transistors, followed
229
VENDOR DATA AND
APPLICATION
INFORMATION
QUALIFIED
SUPPLIERS
4 _._ QUALIF ICATION
FLI GHT TESTS
LIST
ONE TI ME
SMALL SAMPLE
T
TESTSTO
PRODUCTION
COMPONENT
PROCUREMENT
REQUI REMENTS PARTS TO
PRODUCTION
DATA
PART
230
QUALIF ICATION
PROCUREMENT
ENGINEERING ENGINEERING
EVALUATION _ g m QUALIFICATION
QUALIF lED
SUPPLIERS
LIST
!
LOTS PASSED
TO PROOUCTION
PROOUCTION
PROCESSING
PROCUREMENT FAI LED LOTS
I FLIGHT
FPSI
DATA
PARTS
: ecedn-g;age-b
i ank', 232
.... :j- . * _
:-7 ,':A:.< : - :
. q,
7 , -
:.. _ : -
'' !7:"
_: .: ....
" - 7: ' :,
"- . .: ;:
..... ?. . . .- . '
parameters for the specification control drawing (SCD) were determined to insure
proper device operation in every usage mode and to establish the logical design
tests alone were insufficient to determine the ability of a vendor to control his
during the production cycle. The procedure requiring continued monitoring of vendor
quality and processes was written into the procurement arid processing specifications.
7.2.3 Specification
Data generated during the engineering evaluations and qualification tests were used
to prepare the specification control document (SCD) for procurement of the more
critical parts. Based on the performance of a part durin_ vendor qualification, the
qualified supplier list (QSL) was formed to specify the vendor sources acceptable
for production parts. Less critical components were specified with vendor supplied
data and qualified after production procurement began. See Figure 7-I. Many other
7-1 and 7-2. That is, a limited number of engineering tests were conducted to
determine vendor qualification, but the specifications were derived from vendor
supplied data.
and real reliability needs. The need for the FPS or its equivalent evolved from a
great deal of data and also from sobering history. At the outset of the program
there were many component problems. One instance occurred when the reliability
group stated that some parts should not be used in fabricating computers. However,
because of production schedule pressures, the faulty components were used, and,
as predicted, the modules with these defective parts developed failures and had to
required that the reliability be better defined with a quantitative measure of the
233
quality before the component was released to production. A reliability specification
similar to the specification control documents (SCD) was required. Then, the quality
of parts, on a lot basis, could be evaluated from quantitative data. The Flight
Processing Specification (FPS) became the tool that generated quantitative data for
experience that the FPS forced component part process control without explicitly
stating it, while NPC200-2, "The Quality Program Provision for Space System
Contracts", April 1962, stated process control without the ability to enforce it.
That is, NPC200-2 required that processes would be documented and not changed
without approval. However, the FPS provided vendor motivation because lots would
be rejected, if the vendor lost control of the process in such a way that the change
The FPS was initially developed for the integrated circuit, because as the most
numerous component in the computer, the integrated circuit was the predominant
4
component controlling the computer's reliability. It was shovm that a computer
mean time to failureof 3000 hours was aminirnumin order to achieve the necessary
hours were assigned to the integrated circuit together with realistic failure rates
for the other component parts of the computer, the overall reliability of the computer
fell considerably short of the mark. It was further stated 3, "Even if we assume an
we have calculated it, is still not adequate". Extrapolating to the integrated circuits,
a failure rate of closer to 0.001%/10 hours was required. The discrete transistor
had not demonstrated a reliability this high and even today, the standard product
lines of integrated circuits will exhibit failure rates between 0.1 and 0. 01%/ 10
hours. As a result, any program requiring high reliability like APOLLO, must
resort to extreme material and process control, captive vendor assembly lines,
From aposition of technical director for the APOLLO system the only means available
to insure the required reliability was to impose the flight process specifications as
a contractual requirement. One benefit of this requirement was that the APOLLO
managers became aware of component reliability and actually used the data as a
quantitative tool in the management decisions. The main purpose of the FPS was
to establish a firm non-varying procedure that would provide data whose significance
knowledge of the order of testing, the method of testing, and the method of reporting
234
Another side effect was briefly discussed previously. APOLLOexperience showed
that componentreliability could be compromisedwhena higher priority wasplaced
on production schedules, and there was no requirement for documentationthat
identified the compromise. Thereliability required by NPC200-2,althoughimposed
upon the contractor, did not provide the detailed reliability proceduresnecessary
to makethe requirement effective. This is not a criticism of NPC200-2. It would
beimpossible to write a specification that would detail all things for all components.
The details of a general specificationare the responsibility of the prime contractors.
The flight processing specification did indeed contain the detailed description of
how to executethe requirements of NPC200-2.
In general the FPS approach turned out to be suchan iron clad documentthat no
deviationwas possiblewithout a waiver. Althougha delugeof controversy followed,
andpressure wasapplied to loosenthe requirements,it wasfelt thatevery conceivable
effort should be expendedto provide highest possible quality componentsfor
production. A good procedure, therefore, would highlight componentproblems and
not success. If the FPS was to be a good managementtool, the deviations and
problems must appearfor managementdecisionvia the waiver route. In contrast,
the looseningof the requirements would create fewer waivers andwould create the
conditionwhere the requirement for reliability was paid for, but not documented,
andnot necessarily realized. The waiver, indicating the lack of reliability, became
part of the data packagefor a computer and provided documentationfor judging the
reliability of the computer},ears after the componentswere tested.
Therejection criteria and other details of the FPS were not determined arbitrarily.
In the case of the integrated circuits, the FPS was formalized after engineering
qualification had been completed, after 100,000 integrated circuits had completed
screen and burn-in, and after significant field data 5 were available. Only one vendor
approached the low failure rate required by the FPS rejection criteria (this was
the case for both Block | and Block It, but the vendors were different in the two
cases). The acceptance numbers for the Block II FPS were established from the
Block ! experience. Thai is, if these acceptance numbers had been used to reject
lots in Block I, there would have been no integrated circuit failures. These numbers
would have resulted in approximately 20 percent of the lots being rejected. The
lots would pass. The other 20 percent were considered troublesome and proved so
Figure 7-3 depicts the general flow of paris and data as required for the flight
processing procedure. The devices, procured by lots, proceed through the screen
235
Z
,,,i I
>
0 o
o
z
t
I
e_
u
C
._-,I
m
m
5
o
_!
_ I _ 'r t
o
<
r.m 0
o
w
m
0 0 --
!
Z p,.
_._ -._
_g
o a.
Z
236
and burn-in test sequence (Table 7-I) to determine whether the lot is qualified for
flight. That is, the FPS procedure is a lot by lot flight qualification in contrast to
production run rather then depending upon process control to insure that the quality
is maintained.
After completion of screen and burn-in tests, the lot is stored until failure analysis
is completed. After failed units are catalogued , analyzed, and classified to complete
the lot assessment, a written report is prepared and, if the lot passed, the devices
that passed all tests are identified with a new part number as a flight qualified part
and sent to module assembly. A semiconductor part with the flight qualification
part number is the only part that can be used in flight qualified computer assemblies.
From failure analysis, rejected parts proceed to reject storage, where they will be
available for future study• Failed lots are rejected, unless special analysis and
consideration qualifies the part for flight computer production bywaiver. The waiver
The accumulated data, from the screen and burn-in sequences and failure analysis,
were used to evaluate vendor production capability, device quality, reliability, and
Flight processing specifications that were eventually written for many of the standard
computer parts included:
of documents briefly summarizing the salient features of the flight processing for
the dual NOR gate. NDI002359 is the flight process specification (FPS) for this
237
TABLE 7-I
FAILURES REMOVED
I
PHYSICAL DIMENSIONS
I 5 UNITS
TO TEST 3 SAMPLE lO TEST 2
!
CATASTROPHIC FAILURES
i 1
ELECTRICAL TEST LEAD TENSION. LEAD FATIGUE
FORWARDED
100% TEST 3 SAMPLES 5 TEST 2
TO FAILURE ANALYSIS
J
THERMAL CYCLE VISUAL
17 UklIS EACH
10o % TEST4 SHOCK AND INTERNAL
REMOVED FROM TEST
] VIBRA TESTS INSPECTION
SAMPLE B2
AND USETD BE STORED
150°C BAKE
TEST 20
100% TEST 5
TEST 6Yt
CENTRIFUGE
iO0°/o 1
CATASTROPHIC FAILURES i
! CONTINUrTY TESTS i
FORWARDED
' 1
TO FAILURE ANALYSIS I 100% TEST 7 ' i
]
CENTRIFUGE Y2
100% TEST 8
CATASTROPHIC FAILURES
]
FORWARDED --
ELECTRICAL
I00% TEST TEST
q I--
TO FAILURE ANALYSIS
I i
E B BACK BIAS
PROP DELAY
SAt_PLE Z0O TEST II
I
SAMPLE 200 TEST 10
I
CATASTROPHIC FAILURES
hFE TEST
FORWARDED _-
SAMPLE 200 TEST ]2
TO FAILURE ANALYSIS I
I
FAILURES REMOVED LEAK TESTS ' VIBRATIOt_
SAMPLE 77 TEST II
FROMTEST AND USE
100% TESTS |3AND 14
I
OPERATIONAL LIFE
SHOCKIB
TEST I
100% TEST 15
I
I
FAILURES FORWARDED
TO FAILURE ANALYSIS:
ELECTRICAL TEST
]O0%TEST 16
I
I
CONTINUITY TEST
TEST lq ]
I
FAILURES FORWARDED
TO FAILURE ANALYSIb _
X-RAY INSPECTION
10C%TEST 21 ] TO VISUAL
INTERNAL INSPECTION
AWAIT QUALIFICATION
FOR FLIGHT HARDWARE
238
gate. It specifies procedures for lot acceptance resulting in flight qualified parts.
. The operational stress, environmental stress, and the test sequence. This
computer operation. Table 7-I is the flow diagram for the NOR gate.
2. The electrical parameter tests to be performed during the screen and burn-in
4. Disposition of failures. The conditions are defined for removing failures from
the screen and burn-in procedure and forwarding them to failure analysis or
ranging from noncatastrophic failure (Group 0) that are 100 percent screenable
to failures that could not be identified (Group 4) and are therefore assumed
not screenable.
example of the acceptance criteria used on the NOR gate. The significance
of these numbers may be illustrated by the fact that a lot of 5000 gates exhibiting
more than one Group Ill failure during test 7, 9, and 16 will be rejected. (A
However, the lot can pass with one Group III failure and no more than 15
Group I failures during tests 7, 9, and 16. (A Group I failure can be caused
centrifuge.) Although the very small number of failures allowed may seem
excessively limiting, the numbers were developed from the early experience
with the gate and were deliberately set low to provide a very sensitive control
of quality.
239
TABLE 7-11
240
7, Maximum acceptable number of failures for non-electrical tests such as leak
8o A report for each flight qualified lot. The report must contain the complete
history of the lot with the specific data and analysis required for flight
The specification, ND1002257, defines the rejection criteria for internal visual
inspection of the NOR gate. ND1002257 serves a dual purpose. It is applied by the
device manufacturer during a 100% preseal inspection for removal of defective parts,
and by the customer on a sample basis as a destructive test for lot acceptance as
part of the requirements of the FPS. Some of the problems in alot may be detected
only by destructive internal visual inspection and certain failure modes can only be
observed after the sealed and branded device has been exposed to operational and
environmental stresses.
The internal visual inspection criteria were defined after most failure modes of
the APOLLO logic gates were determined. Devices were not rejected merely on
the basis of aesthetics, but only when a fault that contributes to a known, potential
attempt to reject all of the visually observed faults contributing to failure because
individual interpretation.
Strict process controls are used throughout the assembly. Processes like welding,
wirewrapping, potting are specified and are under tight control. As an example, in
the case of welding all lead materials are controlled. The weld setting of the welding
machine is specified for every set of materials to be welded, and the in-process
made on each welding machine to verify that the machine and the operator are
producing weld joints that can pass destructive type tests. The material, size, and
sacrificing the reliability of the component. The standard lead materials used are
241
kovar, dumet, and nickel. The interconnection wiring is nickel, thus limiting the
number of different kinds of weld joints that must be made during assembly. The
fact that the process of welded interconnection lends itself to tight control was one
of the primary reasons for its use in the APOLLO computer design.
Final acceptance procedures were designed to test the functional capability of the
computers and DSKYS in addition to subjecting the assemblies to stresses that would
excite potential failure mechanisms. The final assembly was subjected to extreme
vibration, temperature, and voltage that were in excess of the maximum mission
requirements. The modules are subjected to temperature cycling, operational tests
under thermal extreme, and in some cases operational vibration tests to detect
design and workmanship defects. Some of the tests that were specified initially
were changed to increase their effectiveness as a screen. The history of vibration
testing as applied to the detection of component contamination represents an example
of how the procedures were changed to increase the effectivity.
Briefly, the history of vibration testing starts with sine vibration that was changed
to random. Later the vibration axis of the computer was changed to increase the
decreasing the requirement, since the test was not contributing significantly to the
screening of potential failures. The Block I long term aging required 200 hours
operating time before sale of a computer. In Block II the requirement was reduced
to 100 hours, since the experience during the Block I testing and in field operations
indicated that no potential failure mechanisms were being detected by the test.
The manufacturing problems during the development and production phase of the
the component application and its design characteristics. The latter were usually
detected during computer assembly and test.
242
7.4.1 Component Defects
illustrated by problems with the switching diode, the two switching transistors, the
7.4.1.I Diodes
Three major problems with the switching diode were detected during FPS processing.
current that was a generic problem of the mesa process used early in the
program. All the early production orders were given to a single vendor who
used the mesa process. The problem was alleviated by removing that vendor
from the QSL (Qualification Status List) for that part and by changing to a
. A minor problem was intermittent short circuits in the diodes caused by loose
conducting particles entrapped within the package. This problem was controlled
the lot rejection criteria of the FPS, and contamination control processes
.
The most serious diode problem was the variation in forward voltage drop
that depend upon the inherent stability of this parameter. After several lots
that the unstable condition was caused by a change in the contact resistance
screen was developed and introduced informally into the vendor's processes.
However, during a later production procurement, the vendor screen was not
the flight processing (FPS) again flagged the problem by rejecting lots with
excessive failures. The problem was resolved the second time by the
243
7.4.1.2 Transistors
All significant transistor problems were related to the internal leads and lead bonds.
I° In the gold aluminum system of leads and bonds, "purple plague", (an aluminum
were not properly controlling the bonding pressures and temperatures. The
vendors whose parts continued to exhibit this failure mode were eliminated
. Another set of problems developed when some vendors were permitted to change
the process to theall aluminum system of leads and bonds. It was discovered
during FPS testing that there was a time-dependent failure mode resulting
from motion in the aluminum lead wire when the transistor was switched on
and off at a relatively slow rate. The moving lead and the resulting fatigue
of the lead was associated with 1-mil aluminum wire and wedge bonds. A
process change eliminated the problem by using larger diameter wire or by
a different bonding technique that did not constrict the wire near the bond.
See Reference 8 for further discussion of this failure mechanism.
Occasional die attach problems appeared and caused problems in the ap-
plications that required low thermal resistance for proper heat conduction.
Only the most severe die attach problems were detected during centrifuge
test of the FPS. Others caused some failures during manufacturing when the
improvement in the vendor's die attach process, but the ability to screen for
defective elements during FPS testing could not be improved. A measurement
to verify that each unit meets the specified thermal resistance would be a
suitable screen but would be difficult and expensive to implement. Therefore
no change was made to the procedures. The margin of safety in the thermal
design of the computer was adequate, even though transistors may not meet
the specified thermal resistance.
Although the single gate in the TO-47 package exhibited various vendor problems,
only the problems with the major supplier will be discussed. The units from other
244
suppliers were not used in flight computers. The major problems were bonds opening
I. Open bonds that predominated early in the program, were caused by insufficient
variety of bonding problems reappeared. Since the part was replaced by the
was very difficult to eliminate. The shorting material usually originated from
the package material itself (i.e., nickel and kovar) and could not be detected
with X-Rays. Since there were very few problems that were the result of
The three major problems with the dual ,NOR gate were package leaks and leak
testing, open bonds caused by a gold rich, aluminum-gold intermetallic and shorting
1o The leak test problem occured as a result of failures due to corrosion of the
that the corrosion was induced by agents in those packages that were gross
and had escaped the leak test procedure. Corrosive agents, e.g. water, that
were used in the leak test procedures, were forced into and retained within
sealing process that created a larger number of gross leakers. With the
larger number of leakers and the ineffective test procedure, defective units
escaped the leak tests and created the problem. The solution required the
245
.
The open bond problem experienced with the logic gates was characterized
Many engineering tests were initiated to determine the cause of the outbreak.
The conclusions of the study were that the testing in the FPS was reasonably
but not entirely effective, and that the failure mechanism was not time or
temperature dependent. The mechanisms that caused the failures were never
mosphere surrounding the chip during the lidding process. However, two
computer failures were of this type. (See field experience Section 7.5).
3.
The problem with loose conducting particles in the logic gate developed in
severity throughout the production cycle. The change in severity of the problem
result of corrective action to alleviate some poor die attach problems. The
corrective action was a harder die scrub during die attach that resulted in
gold "pile up" around the chip. The "pile up" would break loose thus becoming
asourceof conductive particles within the package. Other sources are pieces
of lead material, gold-tin solder from the cover sealing process and chips of
silicon.
August 1967 MIT/IL had completed a study on the use of X-Rays as a screen
and had attempted to change the FPS to provide for a I00 percent X-ray screen.
The change was not processed until August 1968 because of many debates
the following is a quote from one published memo: "to perform i00 percent
that the time consumed in debugging computers with intermittent failures during
vibration was not conducive to good efficiency either. When this bec a_me obvious,
it was almost too late to X-Ray screen because most of the lots were in module
assembly. However, the few remaining lots were processed through X-Ray,
The only remaining corrective action possible was the introduction of a module
246
introduced in the early Fall 1968 was effective, since no more failures occurred
during computer vibration, but it was also costly and time consuming.
lots and failure analysis of vibration failures were not completed to the point
of confirming the failure and identifying whether the failure was X-Rayed.
However, the gross failure rate during vibration was lower for those modules
Transient failures in the Block [ DSKY during vibration testing was the first indication
of contamination in the DSKY relays. The indication of failure was the intermittent
display of all eights on the DSKY numeric panel. Analysis confirmed that an all
eights display could be induced by shorting between the normally open and closed
contacts of any one out of over one hundred relays used to switch the numeric displays.
Since the application was extremely sensitive to the presence of conducting Particles
screening techniques.
A vibration profile was devised that would subject the relays to a vibration environment
designed to excite loose particles without damage to the relay. The vibration was
open-contact failure modes. Earlier, it had been assumed that open contacts were
caused by particles lodged in the armature that prevented contact closure. It was
later determined that many of the open contacts were mechanically closed but
failure mode were never sufficiently verified with tests or data to determine the
origin and causes of the problem. For instance, the hypotheses did not explain why
and the necessity of the vibration screen for contamination, a special engineering
test was devised whereby a lot of relays (85 good relays) would be subjected to
intervals of vibration until an interval was reached during which no failures occurred.
After 16 vibration intervals a zero-failure interval occurred, and the test was stopped.
247
A data review revealedthat the failure distribution up to the fifteeenth interval was
completelyrandom. Therefore the question arose whether the zero-failure interval
was also a random event, andif the 17th and18thinterval would also generate zero
failures, or would additional failures be generated? Also, since only 26 relays
survived, the effectivity of the vibration as a screen wasquestioned. A significant
point that developedfrom the test was that most of the opensoccurred at onecontact
incorporating materials different from the other contact.
Subsequently the relay FPS was imposed, and a vibration screen was introduced at
the module level. The FPS specified a vibration screen, internal visual inspection,
etc., with lot rejection for lots with excessive failures due to contamination. When
fully flight-processed relays were built into the modules, additional vibration failures
occurred at the module level, and at least three DSKYs failed during sell-off following
screening of all the relays and modules. The only conclusion that can be dra_nn is
that the corrective action taken reduced the frequency of failure at the final assembly
The field experience, although good, should not be accepted as a verification for
this type of relay processing. The wearout mechanisms of this relay were never
evaluated following the vibration environment to which the relay was subjected, and
indication that the screens were not I00 percent effective. In addition, there was an
module before launch. During the mission there was no further indication of failure.
This section deals with manufacturing problems that were the result of marginal
hardware. Although there were relatively few of these problems, they were of interest
because they illustrate where engineering analysis or testing to worst case conditions
did not excite the latent failure mechanism. The randomness of the variables that
trigger the failure masked the failure mode during all the preproduction and
qualification tests.
7.4.2.1 EL Panel
248
during lunar module thermal vacuum tests. The initial conclusions were that the
failure was induced by a blow on the panel surface. Later investigation determined
that the glass strength was marginal when subjected to the environment of temperature
and vacuum. The vacuum is critical, since the panel is sealed at one atmosphere,
and in the vacuum environment the glass must withstand a pressure differential of
one atmosphere. Analysis revealed that either invisible surface scratches that
weakened the glass or the normal distribution of the strength would be sufficient to
result in a small percentage of failures.
Because the marginal design was not discovered until most production units were
complete and many were delivered, a fix was developed rather than a new design.
The fix was accomplished by bonding safety glass to the surface with an optical
cement.
A much more complicated problem developed when there were several failures of
the erasable memory modules due to breaks in the #38 copper wire used for internal
wiring of the core stacks and from the core stack to module pins. See Figure 7-4
for thecrossosectional viewof themodule and the location of the failures. Analysis
of the breaks concluded that they occurred when the wire was subjected to tensile
or fatigue stresses. The investigation determined that the cause of the break was
excessive motion of the core stack and module pins within the RTV- 11 potting material
during vibration testing. The analysis necessary to determine the flight worthiness
of parts delivered and to determine a satisfactory solution to the problem was probably
one of the most difficult "witch hunts" during the computer development.
determine the flight worthiness of computers delivered with these modules. Using
this model and the failure experience, it was possible to develop a probability of a
failure of a module in the flight environment after being subjected to a known vibration
history. As might be expected the results did not produce a ground rule against
which to judge the flight worthiness of aparticular module. There were manyvariables
in the analysis, the value of which could only be assumed. For example, the vibration
environment of the module in flight, the relation between stress in the wire and
displacement of the wire, the weighting factor between the damage caused by sine
vibration and random vibration, since the module encounters both, and many other
variables of similar nature. However, results of the mathematical model provided
a knowledge of the relationship between the various variables that was extremely
useful for evaluation of the merits of the proposed design changes.
249
z
e_
el
O O
o
l.a..l
.._
0
>-
w N
i
,.Q
r/l
i
t,..-
250
The design change, that was eventually accepted, was a change in the potting compound
from RTV-I1 to Sylgard 184. This change resulted in abouta factor of four reduction
in the damping factor of the potting material that, according to the mathematical
model, would reduce the damage by a factor of several hundred. In addition, changes
were made in the test procedures that would limit the length of exposure to vibration.
Previous to this change the accumulated vibration time on the modules varied between
fifteen and several hundred minutes. Since the damage is a linear function of exposure
time, the reduction in this parameter did not make a significant change in the
chemical, electrical, and mechanical effects was necessary. It was kno_nn from
previous experience that many desirable potting compounds would crack the ferrite
cores used in the memory. This and many other properties of the potting materials
and had passed a step stress test as an engineering qualification, and that during
the design other approaches to packaging the memory were investigated but had
failed the engineering qualification. The intent of these tests was to determine the
capability of the design and of the subassemblies to withstand the specified vibration
levels. The stress levels of vibration and exposure time, that the module was required
to pass, were considerably more than the expected exposure during the production
cycle. The distribution of random variables associated with the module manufacturing
processes apparently masked the failure mode during the engineering qualification
time indicated that the failures per unit of vibration were almost constant. That
is, the failures were not the result of a wearout mechanism. A wearout mechanism
would cause the failures per unit of vibration to increase with accumulated vibration.
Since the failure probability experience in production was quite low, the probability
of detecting the failure mechanism during the engineering qualification tests would
failure, a vibration life test would have to be run using several modules in place of
_"Blue Nose" is an expression in the parlance of the MIT logic designers indicating
a logic gate used without power applied, such as a gate used to increase the fan-in
as described in Section 3.2.1. It takes its name from the graphical symbol used to
denote it.
251
COMPUTER COMPUTERTEST SET
,,
I
I +v
I
Vo I 't 1
'
!
!
!
!
!
I
!
! .--
!
LOG IC GATE I INTERFACECIRCUIT
(NOT CONNECTED N.C.I I
V0
TIME
252
characteristics of the isolation regions of the integrated circuit NOR gate caused
the problem because: (i) the behavior of the isolation regions was not understood
during the design, and (2) the engineering evaluations were not detailed enough to
expose the existence of marginal conditions. The problem developed late in Block
I production in the interface between the computer and computer test set. Figure
7-5 shows the circuit schematic, and the parasitic elements that caused the problem
are shown as dotted lines. When V o rises to about 2 volts, the diode-capacitor
coupling occurs through the resistor substrate, diodes D 1 and D 2. to the unused
transistor. This couplingis a feedback paththat slows the pulse rise time as indicated.
The rise time will be a function of the gain of the unused transistor as well as a
function of the repetition rate of the driver. Diode D 2 behaves as a capacitor that
charges rapidly but discharges slowly, since the reverse impedance of D 1 is in
series. The first pulse of a pulse train will be slow, as shown in Figure 7-6, and
all succeeding ones faster, if the period between the pulses is small compared to
the discharge time of D 2. Since the magnitude of the effect is also dependent upon
the gain of the unused transistor, it can be seen why engineering tests may not
detect the problem. The condition required to detect the slow rise time is one
where the transistors are high gain, and the rise time of the pulse is critical yet
the data rate is low. Late in the Block I production a shift in the distribution of the
transistor gain to a higher average gain caused this problem to be detected and
become very troublesome. The most expeditious solution at that point in production
was to select the low gain components for use in the critical locations. Another
possible solution, that could not be as easily phased into production, was to ground
During Block II production a similar "Blue Nose" problem developed that was made
more complex by the fact that there were two gates on one chip with common isolation
regions and common power supply. With the Block [I gate the resistance coupling
between outputs of an unpowered chip resulted in additional signal load on a "i"
output signal if the mate was a "0" signal output. The "I" o_ttputwas required to
supply the load current of the two collector resistors to ground via the transistors
of the other gate. For a heavily loaded gate this would be excessive. During Block
[I the problem was solved by grounding all unused logic inputs and making a special
version of the logic gate that opened the metallization on the chip between the collector
and collector load resistor, thus making a "Blue Nose" gate a nonstandard logic
element. Another solution would have been a change from a 10-to a 14-1ead package
with independent power pins, thus decoupling the collector resistors between the
two gates. The minimum impact on test equipment and module design resulting
from the metallization change made the special gate a much more attractive solution
253
7.4.2.4 Diode Switching Problem
This defect is also an application type problem. It was first detected in July 1968
when a set of rope memory modules failed to operate correctly, when running
determine that static matching of the diode forward voltage drop was insufficient
for the rope application. In Figure 3-13 of Section 3.5.2 (Simplified Rope Sense
Lin e Switching Diagrams) diode pairs, like D 1 and D2, are matched for forward
voltage drop. As long as the turn-on time of both diodes is approximately equal,
the circuit functions according to the design requirements. If the turn-on time is
considerably different (on the order of 0.I _sec), then a voltage difference develops
that can be large enough to cause the sense amplifier to read a logic "i" in place
of a"0". The failure mode was triggered by a shift in the distribution of the turn-on
time of the diodes to slower average value. The memory module specification and
test equipment could not detect the fault except under extreme conditions of transient
unbalance. Under more normal conditions the transient would die out rapidly.
Thus only static unbalance was specified and controlled by the module specifications.
The operating conditions between the computer and module test equipment, although
designed to be the same, were different enough to cause the transient unbalance to
be more sensitive when operating in the computer. As a result, the latent problem
was undetected, until the parameter shift of the diodes triggered what was a design
deficiency in the module testing and in the use or specification of the diode. The
problem was solved by providing a match of the forward voltage drop during the
The failure history of the computer has demonstrated a failure rate which is
considerably lower than predicted early in the development. The early prediction (1)
estimated the mean time between failures (MTBF) of about 3000 hrs. A summary
of the history (up to Dec. 1971) of 42 flight configuration Block II computers shows
5 field failures which were mission critical. Of more interest are the failure modes
that were experienced, the relationship between these failures and the effectivity of
the screening procedures used during manufacturing. From the field experience
accumlated during the program the probability of mission success has been calculated.
This results in Ps=0.996 for the command modules mission which requires a post
launch operating time of approximately 200 hrs.
The flight type computers were maintained on strict quality control surveillance .
254
of complete unit history records, failure reporting and corrective action for all
time, etc. Failure reporting and corrective action was documented and reported
via AI.'Rs (Apollo Failure Reports). Failures of primary interest are those with a
"CAUSE" classification of "Part" in the failure reporting system. Failures with a
"Cause" classification such as "Secondary", "Induced", "Procedure Error", "Test
Error", "Handling" etc. are not considered here although Table IIl provides a
breakdown of the majority of the failures into these classifications. The DSKY
failures are less interesting and are not covered in detail since DSKY components
are of a largely obsolete technology (pushbutton switches, indicater panels, and
relays). The data package for each computer contained all the pertinent data and
)R
was maintained current as the computer was tested in preparation for flight. (
The failures of primary interest for ti_is section of the report are those that occurred
in the field or more precisely while on flight status which starts with the date of
acceptance by N ASA as determined by the Material Inspection and Receiving Report
(DD-250) and ends when the computer was removed from flight status. Table IV
defines this period for each computer. The removal from flight status is defined
as the end of a flight for those computers which have flown, or when allocated to a
ground function such as system simulations, or for the qualification test system
when the system completed tests. As indicated in the table, the period of interest
starts in the Fall of 1966 when the first computer was delivered for' qualification
tests, runs through the production period which ended in the Spring of 1969, and
through the operational period up to Apollo 15 and terminates at the end of the
period of complilation for this report (31 Dec. 19_1).
Of the 19 failures listed in Table III which occurred while the computers were on
flight status 5 are of particular interest since they are of the type for which no
factory and subjected to a vibration screen more severe than the original acceptance
level and an order of magnitude higher than flight levels. See section 7.4.1.4.
Failures like this, which were indicated when the computer was being tested at
factory test environments more severe than normal mission enviroments, are not
counted against the computer for purposes of reliability prediction unless they
corroborate field failures, for example, the one contamination failure which occurred
255
TABLE 7°III
On flight status 19 36
256
TABLE 7-1V
AGC CENSUS
OP TIME
DD 250 END DATE REMARKS
S / N DA TE HOURS
34 (C-18) I0/ Ii/ 67 11I 24/69 Flew with APOLLO 12 C]V] 1530
257
TABLE 7-IV (Cont)
AGC CENSUS
DD 2 50 OP TIME
S/N END DATE REMARKS
DA TE HOURS
258
in section 7.4.2.4. All flight hardware which is sensitive to this design problem
has been purged of the defect. The next failure listed in Table V (also not counted)
was a transistor open bond at the post. This was an aluminum wire interconnect
bonded to a gold plated post (not the transistor chip) which was open. Analysis
indicated there was no evidence of a bond having been made between the wire and
the post. None of the previous testing had caused the contact to open. The computer
had been on flight status for over a year without indication of this defect and had
design change. After this retrofit, the failure was first detected when the computer
was operating at the upper temperature limit of the thermal cycle. The failure
was difficult to isolate since it was not repeatable, but after further diagnostic vibration
and testing at the upper temperature limit of thermal cycle, it was again detected
and located.
but is not counted against the reliability since the leakage resistance was at least a
factor of ten above that which would cause failure in a mission. The history of
testing which detected the failure started with a sequence of lightning strikes on
the Apollo 15 launch complex about one month before launch. The lightning damaged
the GSE power source to the spacecraft. There was no detectable damage to the
computer; however, the computer was replaced asa precaution and retested. During
a special test of the interfaces this transformer was determined to have excessive
leakage. Analysis confirmed the defective transformer but concluded that the defect
was not induced by lightning and concluded that the leakage resistance was high
The only failure of inteconnections (weld) was in a rope module. This failure was
detected during spacecraft vacuum test. Since the rope modules are not enclosed
within the computer, thevacuum environment stressed the case and caused the weld
to open. Subsequent to this failure the module acceptance tests were modified to
include an operating vacuum environment which has detected two more defective
welds. Since the introduction of this additional acceptance test spacecraft testing
The open multilayer board in a logic module was detected when analyzing the module
for suspected contamination failures during the module vibration. The computer
CC-32) from which this module had been taken was part of a GN&C system which
had exhibited an anomolous condition during spacecraft testing. As part of the analysis
several of the computer modules were subjected to vibration. This was the only
failure detected and it could not be related to the original system failures.
259
TABLE 7-V
FAILURE CLASSIFICATION
7"
17275 z/_/69 Nit 50 (C-34) Nor Gate Shorted interconnects
F_
Conductive contamination
17272 :/29/6._ NR 43 (C-27) Nor Gate Open bond
r_
O Gold rich, aluminum-gold
23837 21t 15/7: DELCO 55 (C-39) Nor Gate rater metallic
Design Problem
Sensitive to forward
switching time; all fhght
23759 6/28/71 DELCO 36 C-20) Transformer hardware purged.
Primary seeotdary
leakage
Intermittent high
impedance short
1893B 11/15/68 KSC 31 (C-15) Weld Joint Ir, t ermltt ent open
Rope module exhibited an
open during spacecraft
Vacuum test.
260
Another class of field failures which are not listed" are associated with connectors.
The Malco connectors at the interface of the computer and the rope modules are
subject to damage during mating of the modules or interface cabling. This class of
problem was controlled by careful handling but in summary there was more
connector damage then might be expected from this type of connector. Damage is
most interesting class of failures in the DSKY is that which resulted from
contamination in the relays. During the manufacturing cycle special vibration screens
were developed for testing at the component level, at the module level, and finally
at the DSKY level of assembly. See section 7.4.1.5. "The experience of continued
module just before launch. Contamination of any one of 108 relays that operate the
electroluminescent panel can cause the panel to read all eights while the relay contacts
are shorted by the contamination. The APOLLO 12 DSKY experienced this condition
prelaunch but during the mission there was no further indication of failure. Since
that experience, a small test program has been developed which will cycle all relays
and hopefully clear a failure if it were to occur during flight.
In summary, the contamination in flatpacks and DSKY relays has continued to plague
the APOLLO program.
As discussed under Section 7.4.1.4 and 7.4.1,5, the methods for screening components
were modified during the production cycle in order to increase screening ef-
fectiveness. In the case of the flatpacks, the computers at the end of the production
run had the most effective screens which included 100% X-Ray of the components,
monitored vibration at the module level, and operating vibration at the computer
level. Earlier computers had various combinations of these tests but most of them
had only operating vibration at the computer level. Experience has shown both for
the DSKY and the AGC that a field return which is subjected to the latest methods
of module vibration will very likely have failures due to contamination. One of the
computers, after successfully flying a mission, had a contamination failure when it
was returned to the factory and its logic modules were subjected to the vibration
test. Notice that there is no evidence of contamination failures in flight. The total
history (including the testing prior to DD250) of the computers indicates there have
been 58 failures resulting from contamination in flatpacks, Most of these occurred
during the vibration part of the acceptance test procedures, The 10 failures
discussed previously occurred when computers were returned to the factory and
261
TABLE 7- V'I
DSKY CENSUS
262
TABLE 7-VI {Cent)
DSKY CENSUS
263
I-- _E
1" -I-
"' CD 0
-.I 8
I.I. O
Z c_
n-
I
"I" 0
I-- 0
8 0 0
0
O r-- O_
o"
o o d
0O oO
O_ O_
o_ d_ d
-J v
UJ
<Lu J _J
(J
>-
>-
_CD O 0
I-- O 0
¢'N
,q.
t-y
,q-
N_
CQ nn
i e_2
Z
II II II
o _E
I-
m < O 0
O 0
> nn _)
I _D gD
>
E_
< <
,4
-I-
O
< c0
Z
C_ o P_
< ¢0
I--
Z
Z
Z
CD I.U
O
(.9
<
ILl U- z
Z uJ ILl
ILl _No I'-
ILl
n- ILl I.M
---j ..J n_
.-I
(DZ
I.l. z <,,,
264
were subjected to the latest vibration methods of the acceptance test proceedures.
Only AFIR 17275 (listed in Table V) was related to a failure during operation in the
In general the life cycle of the computer includes assembly and test as part of the
manufacturing cycle, followed by GN&C system assembly and test (which is completed
when the system is sold to NASA by means of DD250), a period of storage which
includes testing to insure operability as a ready spare, installation into the spacecraft
followed by a lengthy cycle of prelaunch checkout, and finally a mission. The life
cycle is completed for the Command Module System at splashdown. In case of the
Lunar Module, the cycle is completed when the operation of the ascent stage of the
LM is terminated. In the previous section this cycle was divided into two major
periods: first prior to DD250, and second the remaining period defined as flight
status. This later period of total age and operating time for each production computer
Table VII classifies the time computers have spent on flight status into each
environment and identifies each failure with the environment which induces the failure.
The failure environments identified under the five columns are the following: Column
A. aging time, which is the total time on flight status; Column B. Vibration, which
results from shipment, handling and flight; Column C. thermal cycle, which results
from the normal turning power on and off Column D. operation, which is the portion
of Column A that the computers have spent in normal operation. The column labeled
Flight is that portion of operating time listed under Column D which computers
have spent in flight. The aging time and operating time are derived from Table IV.
Vibration time is estimated from the records for shipment, handling, etc. The
The failure modes listed in Table V are catagorized in Table VII according to the
type of environment which induces that type of failure. The three failures under
Column A are those of the four logic gate failure. These failure modes are time
operation; therefore, these are assigned to the aging time column. The logic gate
open winding which, due to the potted contruction, is stressed by temperature cycling.
The failure was intermittent under the conditions of computer warm up. As indicated
there are no failures which are classified under operation since the failure rates
associated with these four failure modes are not accelerated by the additional
265
TABLE 7-VIII
Resistors 2918
Wire Wound 111
Tix Oxide Film 2807
Transistors 550
NPN Switching 443
PNP Switching 94
Power 13
Diodes 3325
Switching 330O
Zener 25
Transformers 123
Pulse 120
Signal 3
Inductors 108
Thermistors 4
Cores,
Magnetic 35840
Ferrite 32768
Tape Wound 3072
Integrated
Circuits 2826
Dual Nor Gate 2460
Dual Expander 334
Sense Amplifier 32
Connectors -
Pins 19957 Malco
266
The MTBF and success probabilities are calculated as indicated in Table VII for
(Ps) of the mission is the joint probability that both computers survive all
environments. From the information in Table VII and the parts count of Table
VIII, the failure rate of various components can be calculated. These failure rates
may be of interest but the following conclusions that can be derived from the APOLLO
i. The composite MTBF for the computer, when operating in the mission
environments for an Apollo Command Module flight of 200 hours, can be
hours since none of the failure modes experienced are accelerated by computer
operation.
2. It can be concluded from the material presented :hat the computer failure
flight computers were necessary in order to shake down the problems and
develop confidence in the reliability statistics.
Considerable effort was expended to make the various methods of testing and
shown a tendency to move around under fairly severe vibration, but has shown
no tendency to float freely when at zero gravity.
6o The gold rich bond failure mechanism is a long time dependent failure mode
which was detected during screening tests. The defective bond results from
the manufacturing processes and is weak initially, however, a crack develops
and propagates with time until the open is detected. The ECDU in the guidance
system, which also uses the logic gate, has experienced the same failure
mechanism thus adding to the total base of information on this part.
267
SECTION 8.0
SUMMARY
It is possible now to critique many aspects of the computer and the development
program. Some items of interest are the designj the contract arrangement, and
From the development point of view, the program should have allowed more time
for design and design evaluation. As can be seen from the milestone charts of
Section 3 the time allowed for the design was very short and requirements were
changing during the early development. The design and production evaluations were
accomplisned in parallel with early production, with the identified changes being
phased into production. The initial planning did not allow for changes in design
(mid 1962) did not allow for a concept of Block design change or any significant
configuration change within a design. Program planning in the early part of 1963
indicates the second production system, which included AGCT, was to be flown in
the Spring of 1965. Also, in the planning for Block If, during the Spring of 1965,
the production prototypes were scheduled to start in August 1965 and to be followed
by the flight hardware in December 1965. As a result the design efforts and evaluations
of both Block I and Block II overlapped. If block changes in design were planned
for initially, the change process may have operated more smoothly.
In retrospect part of the problem could have been diverted bythe use of additional
manpower and placing more emphasis on design analysis and testing in the design
phase, A good example of where more testing could have been valuable was the E
rvlemory vibration fatigue problem that developed during production testing. MIT
conducted overstress tests on one memory but should have done more extensive
testing on several. It was felt by the design engineers that the cost of the memories
and test time did not warrant the benefits, especially after the first one survived
excessive stress. This also highlights one of the related problems which is the
fact that engineering judgement many times under rates or camouflages a possible
and preproduction testing might have exposed some of the problems sooner.
types. First, the formal design reviews which included the critical Design Review
by NASA as well as the MIT design reviews as part of the process for release of
the NASA drawings and specifications. Second, the engineering tests and analysis
the various reviews conducted more or less independent of the design team. These
reviews were initiated at the request of NASA and were usually called to investigate
a particular problem area. Many of the reviews of the second and third category
the only output or results. The formal design reviews culminated in the release of
The basic fun6tion of the MIT design review was to process all documentation for
During the development of the computers the magnitude of the task and the type of
changes that were introduced following the production of several flight computers.
Likewise the MIT and support contractors team, which performed the review,
"! fluctuated from design engineers to production engineers. The continuity of the
activity was provided by the chairman of the review team which was an MIT
responsibility. During all phases of the design review activity, close cooperation
between the design team and the production team was essential because design
Most of the drawings and designs were generated within MIT but some major
documentation tasks and design tasks like the Block II DSKY, power supply and
was turned over to the support contractors werethe module and computer procurement
and procedures therefore it was better for the support contractor to prepare the
documents with MIT _'eview to insure the adequacy of the test requirements. The
design review provided the integration of the design and documentation efforts and
was the focal point for the documentation of design information and requirements.
The second form of design review was conducted on an informal bases and was
conducted by and more or less at the discretion of the design engineers. Many
design analyses were made on critical areas of the design and in several cases
engineering tests were performed to verify the design. The thermal design analysis
the design to be influential. The thermal tests which were conducted on thermal
270
models and prototype equipments verified the analysis and design. The E-Memory
engineering tests nor the qualification tests revealed the marginal condition that
existed in the design. Their failure modes were dependent upon the strength of
materials and workmanship defects but the probability of occurrence was low enough
to make detection by testing one or two samples unlikely. One might say, the major
deficiency in the engineering analysis and test part of the design review is that it
was not properly staffed and organized in such a way that design deficiencies could
be exposed before they became visible in the production p_ase. One may only
hypothesize that a more active design analysis may have eliminated some of the
design problems earlier in the program.
The third category of design review was conducted for the most part by groups
outside the design team. The designers would participate in the review in order to
provide information but in general did not contribute actively in the review. The
byAC Electronics in May 1966. This report summarizes the findings of a special
review team which was organized at NASA request and spent considerable time at
MIT, the support contractors, and spacecraft contractors. The activities of this
review team was somewhat limited since most of the Purchase Specifications,
Qualification Test Specification, Interface Control Documents, etc. had not been
completed and released. In spite of the incomplete documentation the review team
5
performed a very worthwhile function and identified some marginal areas in the
design.
Another area that would have benefited by more attention early in the design was
the equipment and methods used for the final test of the computer. The computer
design had fault detection circuits and selfcheck software but these were designed
primarily to indicate faults during the mission phase and not for fault isolation and
verification during acceptance testing. When it became known how difficult it was
to verifyan indication of an anomily with the computer and computer test equipment
time consuming.
271
8.2 CONTRACTUAL ARRANGEMENTS
The contractual arrangement was difficult to manage with MIT/IL the prime
contractor responsible for design and technical direction, and AC Electronics the
prime contractor responsible for the production of the hardware with the computer
subcontracted through AC to Raytheon Company. In addition the fact that the GN&C
product with a reasonable profit for the company. MIT being responsible for design
and having technical direction emphasized the quality of the product. NASA provided
provided a catalyst which prevented thedesign and production activities from relaxing
The most difficult part of the contractual arrangement was related to the processing
of design changes which had cost or schedule impact. The process was extremely
slow in response and in many cases open loop in that the contractual details were .
processed through a different channel then the documentation for the design changes.
This made it difficult for MIT to monitor both the introduction of design changes
and the documentation which specified the changes. In many cases the processing
t,
through contractual channels would cause changes to some of the technical details
which were undesirable. The beneficical aspect of this process is the checks and
ba'lances which resulted.
In general three approaches to reliability that were used in the APOLLO computer;
first, emphasis on the reliability constraint; during design, second, qualify all
components, materials, and assemblies; third, rely on process control during the
procedures for test and inspection at each level of manufacturing and assembly
were designed to provide monitoring for the production process. Some unique method s
of testing were implemented such as the Flight Processing Specification (FPS) for
qualifying components on a lot by lot basis and the use of acceptance testing
272
contaminationin of componentsas well as defective interconnection. The result of
the methodsused are demonstrated by the successof the computeras indicated in
Section7.5 but there are several other points that canbe n_ade.
I. Qualification testing should be designed to determine the failure liroits and
failure modes rather than just proving the assembly or part can pass the
maximumstress levels assumedfor the operating system. A single statistical
accident, that is, a subsystem passing a level of test, may conceala serious
design deficiency. A system of step stress tests if properly designedshould
provide better failure limits which can be used to determine the margin of
100% test and inspection techniques like those used on the computer are more
rapid data reporting and motivation of the people. In general the experience
good in that problem s were emphasized and corrected at a low level of assembly.
This resulted in higher quality parts being used in the fabrication of flight
computers than would have been used if only screen and burn-in procedures
were followed. It is the visibility into failure modes provided by the analysis
and the rejection of lots that brought the problems to the attention of
and good management are still essential to realizing success. The FPS
management and coroponent vendors can depend upon. Even though the
procedures were not 100% effective in screening all failure modes they did
make all of them visible early in the production, so that corrective action
could be taken.
continuous support and attention to every detail. Better tools for failure
reporting and failure analysis need to be developed in order to make the feedback
material traceability, and process controls are important yet must be flexible
enough to allow for changes due to reliability or design type problems. For
documentation package for each system thus providing the flexibility for changes
yet providing complete and detailed documentation of each unit. The main
273
purpose of these documents is to provide complete information to management
but the documents and information must be in a form for easy assimilation
of the information.
Some of the approaches used in the APOLLO Computer were, and still are, quite
accomplish real time control, etc. were used in the design in order to provide the
weight, volume, and reliability. Frequently the question is asked whether the
designers would take the same approach if they had the opportunity to repeat the
design process. The question is difficult since in many cases hindsight does not
consider all the constraints under which the original designers were operating. A
typical example of this type of problem surrounds the question of whether the word
length could have been increased when redesigning for the Block II computer. Using
AGC type technology, it is still debatable whether there is enough space within the
computer to add another two bits, therefore during the design it would have been
necessary to justify the need for more volume in addition to justifying the requirement
There are many reasons why the use of read-only memories are desirable. These
of 5 to I). One study indicated that if constrained to the AGC envelope and
technology, the maximum coincident current memory would have been ap-
addition, the integrity of the data contents during power sequencing or other
for hardware would have been much higher. This point was very difficult to
establish during the design phase, but actual cost comparison between the
two approaches has varified the difference. The result favors the rope
memories even if additional power, size and weight required for the erasable
4. The inability to change the program without rebuilding one or more modules
274
In contrast there are many factors that make the read-only memories undesirable.
Probably the two most important are the time lag required by the manufacturing
cycle and the necessity of maintaining a manufacturing capability until all mission
Early in the development, studies indicated that 16 bits with double precision
instructions were sufficient for the computations necessary. The constraints that
the word length would place on the memory addressing, instruction codes, and
computational speed were not considered critical when compared with an increase
in volume, weight and power. An increasein size would probably have been required
to guaranty the proposed design could be built within the allocated volume. A larger
instruction set and more flexible memor)" addressing would obviously make the
software coding easier but would the difference be adequate justification for the
increased hardware? There is no straightforward answer even yet, but for the
APOLLO program it seems that minimum hardware was the correct decision.
The most controversial feature of the interface design is the DC isolation for signals
and power return. These interfaces violated the requirements of the EMI
specifications but again, minimum hardware was considered more important. The
use of an interface configuration which utilized high amplitude, low power and low
response time signals made it possible to design an interface tolerant to noise that
met the intent of the EMI specification with very simple circuits and one wire
supply and interface signal isolation, suctl that, the signal and signal return current
are balanced and transmitted over a twisted pair. It is interesting to note that the
only problem with noise in the interfaces was on the transformer coupled signals
which were transmitted over shielded twisted pairs (see Section 6.4.1). The reason
i s, this type of interface was designed for fast response and thus was more susceptible
to high frequency noise. While this circuit was more desirable from the EMI
specification point of \'Jew, the configuration was not sufficient to protect the signal
In summarizing the capabilities of the AGC some of the very important features
are not obvious. It is easy to state the number of words of memory, number of
275
I00,000
10,000
(.0
,=J
t..j
>-
O
>-
t'r
'4" O
14J
,'!
100Q
..'-,
DYNAMIC COUNT
10 SEC PERIOD
_ _ _ _ STATIC LISTING
TOTAL COUNT
276
instructions, number of interfaces, volume, weight, etc. Nlore difficult are statements
or facts that can be used to evaluate the functional capability which is influenced by
electronics for restarting, etc. The most significant approach to evaluation of the
The instruction codes both voluntary and involuntary were designed to provide
flexibility for the types of computation and control functions needed in the APOLLO
instructions which were considerably slower but provided much more powerful
arithmetic operations. The voluntary set of instructions although more limited than
desirable from the software point of view were chosen with consideration for the
computations required of the computer. One way of evaluating the instruction set
count is obtained from an all digital simulation of ten seconds of powered descent
and the static count is obtained from the assembly listing. Manual inputs (DSKY
and hand controller) and uplink were not active during this simulation. Interpretive
codes (1700 were processed during this ten second period) are not broken down
into the machine instructions therefore the instruction codes resulting from
process interface signals and to assist programming real time control functions.
Table 8-I lists the [/O and interrupt activity during the same ten second period. It
is interesting to note that the time required to process counters consumed about
TABLE 8- I
CDU X COL" Y CDU Z CDt ]" CI)U 5 PIP,X X [']PA Y _|Y_A Z, L Pf.:NI<
_O 35E 355 C r_ 50 5£ 5¢
NNN.AD GYI_OCMLb CDU_AC _',D _-I_ _'CM[J CI)U/.CMD CDI!T(_1[) CD!.SC_:D THRtS: ¸ AI_T_I
90 24 50 50 50 _ 40 S ,;¢,
Interrul_t Ac[iwly
T 6RUPT TSRUPT T3RU PT _4R_IPT KEYR UPT1 KI:Y RU PT2 L:_RL_JT D_)_.VN RU PT I_ADA _ !IA N_C N_ RI
13 I_0 118 131 0 r,
500 3C b
277
Analysis of this dataindicatesthe instruction set is fairly well designed. Instructions
like AUG, DIM and EDRUPT are probably less valuable than originally estimated
as can be seen from both the dynamic and static usage. Some computation time
MP would bea trade-off between speed and memory size since .hIASK appears more
often in the static listing. Interchanging Ih'CR with MP would limit the address
field available to MP. In the light of this analysis, a more ambitious shuffling of
usa ge.
The built-ir_ failure detection circuits with the software capability to restart has
made the difference between success or possible failureof some APOLLO missions.
The APOLLO 11 Lunar landing being the prime example {see Section 6.4.5). In
the case of the APOLLO 12 lightning a few seconds after launch, the computer
capability had not been available, there would have been no mission impact at that
point but initialization in orbit could have been difficult. These and other mission
experiences has verified the value of the restart capability and has also verified an
early assumption that transient failures in digital systems occur more frequently
If it were possible to compare this computer with other aerospace computers available
now, the AGC still stands out as being very competitive when size, power, reliabillty
and computational capacity are considered even though the AGC design is 8 to 10
years old.
278
REFERENCES
December 1966.
(CONFIDENTIAL).
and E.C. Hall, Part IV, Appendix A, Abstracts Section 9, July 1965.
8. MIT/CSDL Report E-2218, "Lead Failure Stud}, for the Motorola I-MIL
11. MIT/CSDL Report E-2129, "Keyboard and Display Program and Operation ,
12. MIT/CSDL Report R-700, Volume V, The Software Effort', by M.S. Johnson,
July 1971.
279