,. Digital Computer Switching Circuits .",.

,. Digital Computer Switching Circuits .",.
~
.",.
,.
Digital Computer
Switching Circuits
Basic operational requirements of digital computers and fundamentals of the means for
obtaining them are set forth. For the most part familiar switching circuits can be used hut
they must meet the special requirements of positive action that are descrih~d here
a specified place. He must then be
told where to find his next instruction, unless all instructions are ReriaHy listed and no variations in
their order are to be made. ExpJidt
instructions as to where to write
K UTOMATICALLY-SEQUENC~'D digi- partial results and when and where
tal computers are machines to refer back to them for further
that have no intelligence, yet carry use comprise a sort of automatic
out, without intervention, lengthy memory. The sheets of paper, numroutine~ of mathematical cakula.:
bered for identification, form a
tion. An understanding of general ~torage'for numbers; his whole prod~!lI)I'tl considerations require~ a gram is stored on paper before he
'Htf\~,\ of the procedures followed
~brts to work.
by a human computer using desk
Even the power of decision can
calculator.
be mechanized. If a human comA human computer does more puter is supposed to compute one
than arithmetic; he not only carries intermediate re~mlt to a specified
out the elementary processes of degree of accuracy by a method of
addition, subtraction, multiplic-a- successive approximations, he must
tion, and division, but he also de- continue until further steps make
cides what numbers to add, multi- insignificant changes. He is thereply, etc., and what to do with his fore instructed to keep repeating
results. These results of his arith- the procedure until a tentative anmetic ar~ only stepping stones to swer, taken to ten places, equals the
hi .. final goal, jnst as the numbers
previous tentative answer. and then
IJp"n which he performs his arithto proceed with the main program.
ml'til" were previous stepping
We see that our automaton must
stones. Some problems require mil- be given instructions, or orders, inlions of arithmetic op\1'ations to corporating the foJlowin~ informaarrive at a relatively smaH set of tion: (1) where to find operands;
numbers representing the final an- that is, the two numbers to be comswer.
bined by addition, multiplication,
If we reduce the human computer subtraction, or division, (2) which
to an automaton having only the arithmetic operation to perform,
ability to read, write, and do arith- (3) where to write the result:
metic, we need to givt! him a very either in a specified place for furdetailed set of working instructions. ture reference or on his final anThese instructions include original swer sheet, and (4) where to find
numeri~al data from which he
his next set of similar instructions.
An electronic computer operates
works, and an explicit program of
operations to be performed. He on a similar routine. Machines be-.
must be told, for example, to read - ing designed and built will pt!rform
numbers in two specified places, this cycle of operations in a miHiadd them, and write the result in . second or less, working with num-
B, C. H. PAGE •
t
ii" I. Jo:lectTOtliC Computers ~f'rtifJH
\"ational Bureau of Sf ttl! (lm·tlH
HCpoTtment of ('Olll"If'}"Cf'
WashillgtQII. /I, c,
.n
•
.'
110
bers having ten decimal place~.
Such speed means that thesE" mRchines will make it practical tu
solve problems requiring so man~'
millions of arithmetic operation~ a:o'
not to be considered at present. })i,
recting ~uch a machine is a major
administrative problem. As Dr. VOJ!
Neumann of the Institute for Advanced Study expressed it, uProgramming a problem for such a machine is equivalent to writing a
detailed set of instructions for
twenty automatons with dE"~k calculators sufficient to keep them
busy for two years, working a fort~·­
hour week." These automatons have
no ability to think for themselves!
Leaving the mathematical and
administrative problems to others,
we can proceed to the basic elt'(·tronic problems. We must first ha\'e
(A) an electronic alphabet for writing numbers and orders, (B) :,
medium on which to write, (C)
means of writing and reading, and
(D) means for interpreting the
written word. These words may lw.
numerical, as 3721499825, or coded
orders, as A0173Q75B6. When a
number-word (number) is read, it
must be translated into what the
machine recognizes as numE"I·j(·~1
form. An order-word (order) must
be interpreted by being converted
to a set of voltages, to operate
switches.
Reading a word consists in part
of tran~mitting it to the organ
which i.s to interpret and be affected
by it. Thus numbers are tran~­
mitted from storage to arithmetic
unit, or vice versa, and orders art
sent from storage to the central
control organ, or dispatcher. In adSept• ...,~ J9U - ELECTRONICS
l6{f
e·
II Mil
o
I
riv~1
2·
ilA nAft
3
4
5
6
or
t,.,·o numbers .causes the
of a third number.
Wht'ther this third number is the
sum, difference, product, or quotient of the other two depends upon
tht' di~patching system of the arithmetic unit. Separate arithmetic
units-can be built for the four cases,
but it is also feasible to make a
universal arithmetic unit which will
perform anyone of the four processes upon request of the central
control. Hence. the central control
must not only dispatch numberwords and orders, but must also interpret orders and actuate circuit
changes.
tran~mi8sion
(A)
7
TIME IN MICROSECONDS
(PULSE TRAIN
REP'I'IESENTING 3431 IN BINARY SYSTEM)
REGISTER FLIP-FLOP
TranlmilSion and Representation
REGISTER
•
ACTIVATING
PULSES
(0)
SHIFT
SHIFTING REGISTER PULSES
(ADJ,T·ONAL 6ATES ARE NECESSARY FOR
wR ·I .... G IN NEw INFORMATION AND
AUTOMATICALLY ERASING OLD)
SIMPLIFIED MERCURY-TANK
DYNAMIC MEMORY
FIG. I-Put... ar..tored .tatically 1ft
flip-flop •• dpamically In delay line.
•
dition, both kinds of words are
transmitted to storage from the input as needed, and final answers or
desired partial results are transmitted to the machine output.
An order must not only tell the
central control which numbers to
dispatch to the arithmetic unit
from storage, but must also tell centrol control which arithmetic operation is to be performed and where
the result. is to be sent.
In addition to the central control
organ, there must be various local
control stations. The arithmetic
unit itself, for example, is primarily a traffic unit suc.h that the ar. ELECTRONiCS - s.ptembe" J941
A NUMBER, say 43712, can be
read and transmitted in two fundamentally different ways. If one
transmission channel is used for
each column, we can simultaneously
transmit a 2 aiong the first channel,
a 1 along the next, 7 along the next,
etc. This simultaneous transmission
of the digits of each position along
their appropriate channels is a
PARALLEL operation. Its characteristic feature is that it distinguishes
between digits by a spatial relation,
transmitting all digits at the same
time.
Conversely, we could transmit all
digit~ over a common channel, at
successive times, in the order 2, 1,
7, 3, 4. The separate digits would
be distinguished by their time of
arrival on a common line. This is
a SERIAL process, digits being distinguished by a temporal relation.
If ten pulses, made recognizable
from each other by modulation, are
available, any number can be transmitted either serially, over one liDe,
or in parallel, over many lines, from
one organ to another. We will consider only serial operation because
it is more illustrative of traffic
(switching) dispatching problems,
as well as because it is the system
employed in the machines that will
first be constructed.
ORDERs to various parts of the
machine must also be capable of
transmission, hence they can be expressed conveniently as numbers in
some arbitrary code. Thus numbers and orders are represented in
the same way, being strings of dieits. We know which is which when
we put them into the machine, so
that I f our programmer dispatches
only orders to central points and
numbers to arithmetic points, it
will not matter that the machine
by itself cannot distinguish orders
from numbers. In fact, this is a
convenience, because by considering an order as a number we can
modify an order by operating on it
with the arithmetic unit.
REPRESENTING the ten digits by
pulses of different amplitude would
reduce machine reliability, makine
results depend upon tube constants
and supply voltages. It is better to
have only two amplitudes to distinguish. If these two amplitude!'
represent digits 0 and 1, we mUflt
find a way of representing numbers
in term8 of these two digits. In
decimal notation, the number 352
means
2 X
l~
+
5 X
1()1
+ 3 X 1()2 =-
:2 +50+300
Each successive digit position to
the left represents the coefficient of
the next higher power of 10. We
therefore need digits only to 9; a
coefficient of lOin any place is
equivalent to a coefficient of unity
in the next place. If we dri
use of 10 as our base, and u"•.
stead, we write a number • .,dl iV
37 in the following binary m~Anner,
100101, meaning
I
.... -
lX20+0X21 + 1 X 22+0 X ~
() X 24 + 1 X ~ - 1 + 4 + 32 = 37
+
We pay for the simplicity of having only two different digits by
needing approximately three times
as many columns to write a number
in the binary system as in the decimal system.
To represent 0 and 1 and the corresponding pulse trains, we choose
a basic pulse repetition rate of 2
mc, and synchronize all parts of the
machine so that successive pulses
(representing 0 or 1) occur at
these half-microsecond intervals. It
. all trains of pulses are locked to
this reprate (repetition rate), we
can use the presence of a pulse to
represent 1, and the absence of a
pulse to represent O. Thus the sixmicrosecond pulse train shown
graphically in Fig. lA represents
the binary word 110101100111
(read from right to left) which has
the (decimal) value 3431. Voltage
and tube parameters need only be
held within the tolerance ran&e to
111
,
I...-Q1.'
•
•
•
keep the pulses within their an.
plitude range of reliable operation,
Now that we have a scheme for
representing numbers as pul~
trains, we are ready to analyze
problems of storing numbers.
STORAGE - Typical machines operate with numbers of ten significant figures i.r.l the decimal system,
so will require roughly 35 binary
... places. A 35 binary place number
at 2-mc rep rate will be represented
by a pulse train having a duration
of 17.5 microseconds. It is impractical to put information into a machine or to print results at such a
rate, over 50,000 words per second.
We need a speed changer, or device
for storing the many words being
written into it at one speed, and capable of being read at some other.
~peed. either faster or slower. One
~cheme is magnetic recording of the
pulse trains on either wire or tape.
:\Iagnetic pulses cannot be packed
more closely than about 200 per
inch if they are not to overlap and
become incapable of resolution. The
reprate of reading and writing
magnetically for a given pac.king
is proportional to the speed at
which tht· wire is transported.
Hen('+' Wt' can magnetically ~ecord
pul:4e train~ leisurely and run them
mto the machine rapidly or conversely, can record fast signals on
a fast wire, arid later read the wire
at
speed which an electric typewriter can reliably be expected to
follow.
.
Inside the machine we need two
- types of memory, one that stores a
train of pulses statically and another that stores the high rep rate
t rains of pulses.
ST ATIC REGISTER The first of
these, the static register, is needed,
among other places, in the arithmetic unit, to set up central voltages in accordance with the O's and
l's of a number. Basically a static
register is a flip-flop such as that of
Fig. 1B which has two stable states.
High and low plate voltages can be
taken to represent the stora$e of a
lor. O.
In a practical flip-flop, grid capacitors are used to speed transition from one state to the other.
Minimum transition time depends
upon mutual conductance of the
tubes. A more rapid flip-flop than
the one shown can be made by U8-
a
•
,
112
GATES
-
GRID CONTROL
.IID INPUT
DIODE CONTROL
+
+
+
1ST INPUT
(A)
SERIES GATE FOR POSITIVE PULSES
GATE POR POSITIVE INPUT PULSES
2
(8)
GATE FOR NEGATIVE INPUT PULSES
PARALLEL GATE FOR NEGATIVE PULSES
BUFFERS
-2----~~~~---(C-)--__+-+~
WIv-
SERIES BUFFER FOR NEGATivE PULSES
BUFFER FOR NEGATIVE INPUT PULSES
(0)
PARALLEL SUFFER FOR POSITIVE PULSES
SUFFER FOR POSITIVE INPUT PULSES
FIG. 2-Gate. and buffer. consHiu!e the operatinq element. of the arithmetic: unltL
Germanium diode. may be used for compactne..
I
I
I
I
IL ________ ...JI
FIG. 3-Ba.ic functional componenfa of diC)ital compuler. and their interrelatlon
ing such tubes as th~ 6AK5, connected either as pentodes or triodes.
Provision is also made for setting
the' flip-flop in either state by applying a negative pulse to the appropriate tube. The diodes are i§olation buffers to disconnect the
pulse sources when pulses are not
being applied. This not only reduces loading on the transfer pulse
from one tube to the other, but also
prevents this pulse from being
transmitted to other flip-flops via
the input circuit.
Tying the two input leads together provides a' binary counter.
The plate-grid coupling capacitances provide enough memory
(time lag) for the flip-flop to remember in which state it was prior
to the application of a pulM ap-
plied to both tubes. As a result, an
input pulse changes the state of
the flip-flop and provides a scale-oftwo, or binary co un tel'. Cascaded
binary counters have many applications. For binary counter purposes, the grid input arrangement~
can be omitted and a posit.ive pulse
applied to the common cathode lead.
By using 35 flip-flops, one for
each binary column, we can statically store a 35 place binary number.
Writing a number into a register
consists of setting its flip-flops in
accordance with the succession of
O's and l's in the binary numb(>r .
Reading' the register consists of
causing ~t- to generate the pulse
train .orresponding to its array of
0'8 and 1's.
FEEDING BEGISTEa There are
~,
'''''-ELECnONICS
•
•
•
•
~ wo ways of ~nverting a serial
: rain of pulses 'into the parallel
I'orm for storage in th~ static rerster. The, pulses can either be fed
nto the register from the end or
,t't up in' parallel alongside it.
The latter scheme is indicated in
Fig. Ie; the train of pulses is fed
ntQ a delay line of 0.5 !'oS sections,
-1/ that just as the last pulse ap·t'ars at the input the previous
lulses appear at the various junc.ons. The delay line ,thus motlt>ntarily converts the serial pat"rn of voltage peaks versus time
:lto a spatial pattern .of voltage
.'rsus position; voltage appears at
he junctions corresponding to the
positions of the binary 1's in the
<lImber represented, no voltage apIt'ars at the positions correspondn~ to O's. When this space pattern
s obtained, all th~ ga~s are opened
.y an-'lIctivating pulse, and the l's
lre entered into the register via the
..et 1 input lead~. The register can
tt! cleared by applying a pulse to
th~ set o inputs.
If the plate outputs of the flip;Iops are connected to successive
lunctions of a duplicate delay line,
dearing the. register (by simultaneously setting all flip-flops to 0)
"'ill introduce pulses into the line
at the 1 positions; thes~ pulses will
I'ome out of the delay line as the
desired train.
The other scheme for sending a
t rain into a static register is somewhat similar to the operation of
some desk computing machines that
have only 10 keys, 0 through 9.
Pushing 3 enters 0003 on the dials,
then pushing 5 shifts the 3 along
as the 5 is entered, showing 0035,
etc. This sequential to parallel conversion can be accomplished by the
shifting register of Fig. ID.
The set 0 lines are all connected
to a shift pulse bus. A shift pulse
then clears all flip-flops, and any
registering 1 generate' output
pulses. _These pulses arrive at the
set I leads of the next flip-flops,
transferring the l's one place to
the right. Clearing a flip-flop registering 0 generates no pulse, so
leaves the next flip-flop cleared to
O. Hence every time a shift pulse
is sent in, the contents of the register shift to the right. If the shift
pulses come at a 2-mc reprate,
evenly interspersed between the
ELECTRON ICS - September, 1941
2-mc ltlpal, JK'lses sent into the line art' loo great. Each word to,
left-hand ftip.ft.op, every time the be 8tor~ requires 17.5!&8 of line to
regiswr is ahi.... jt will find the hold it; this implies a total of 17.5
next di«it of the t8in in the left- milliseconds of electrical delay line.
hand flip-flop and 35 shifts will re- whether in one or several segmenb.
sult in a Atatic storage of the 35 To transmit the individual 0.2 !A.~
pulses in the train. We now stop the pulses without excessive distortion
shifting and have the number requires a bandwidth of 10 mc.
Even with the optimistic figure of
stored.
Reading the register (regener- 6 db per !J.S attenuation in lines
ating the train of pulses) is sim- having this bandwidth, attenuation
ple. The output of the right-hand wou~d be 105,000 db, requirinJ!"
flip-flop Js connected to a transmis- 7.000 tubes such as the 6AK5 ha\'sion bus 'and 35 shifts are made, ing a gain of 15 db per stage. Thi:-,
sending the successive l's and O's is excessive.
A practical way to simplify dyonto the line, and leaving the register cleared to all O's, assuming namic storage is to store puls{'~
that no signal is coming in from the . acoustically rather than ele('trieall~
\Ve can convert the 0.2 !A.s pulse:-:
left.
The static registers described into 0.2 ,""S packets of h-f u~ing a
above require two tubes per binary carrier frequency of 20 or 30 mt.
digit, or 70 tubes per word stored, These h-f pulses can then be used
to d.ve a quartz crystal which in
80 are uneconomical for the main
storage. (A general purpose com- . turn generates waves in a mercury
puter needs storage facilities for column. A receiving crystal at the
at least 1,000 words). However the far end senses theSE! wave!'! giving
static register is useful in' the a signal that is amplified and rectiarithmetic unit for intermediate fied to regenerate the pubes. At8torage between two organs with tenuation in mercury is approxi~
different speeds, such as internal mately 0.06 db per :J.:o' at a rsrripr
parts of the machine and the mag- frequency of 30 mc, or 1I1If' iN"
netic wire. One word at a time can cent of that for the electrical
be written at any speed, and then The pai r of crystal transducer ..
read at any other, permitting syn-. with the line introduce:, a ill!''' ,.:
chr0!1izing input data pulses with about 50 db.
I f one long delay line is used.
the 2-mc clock, which would be
impossible to do by trying to run coupling losses would be negligible,
but a single delay line of 17.5 millithe wire at an exact speed.
The other internal high-speed seconds would require on the avermemory, or scratch paper, of the age a waiting time of 9 millisecond:;,
machine can either hold pulse before the desired word would be
trains as a static array, or remem- available. This is too long. A pracber them dynamically; that is, in tical compromise between equipthe form of pulse trains available ment and speed is to subdivide the
for retransmission on demand. Only memory into lines, or tanks, of 20
the latter choice will be discussed word capacity. each having a dpl .. '"
here.
of 350 '""s. Thus 50 lines are net'dt".l
DYNAMIC MEMORY-The simplest involving 50 pairs of transducerway of achieving dynamic memory having 2,500 db attenuation. Addis to feed pulses into a delay line ing the attenuation of 1,050 db in
whose output is connected back to the mercury, we have a total of
the input to keep the pulses circu- 3,5~0 db attenuation (to be comlating. An amplifier and pulse re- pared with the 105,000 db of elecgenerator are needed at the delay trical lines) and requiring only'
line output to compensate losses. about 250 amplifier tubes. A typical
Distorted pulses from the line are reci&:.culating tank circuit is shown
used to control a gate feeding fresh in Fig. IE.
pulses from the master pulser, or
\Ve now have conceptually a
clock, back into the line. Such a source of input signals, a receiver
gating combination in the recircula- for output signals, an arithmetic
tion system is referred to as a pulse unit. static registers and dynami<.'
reshaper.
nipmory tanks. Signals must be disThe losses of an electric delay patched from one to anothel' of
113
\
Table I-OperatioD ot (In Elementary Adder
•
He
Tf"rminal~
I~PUT
A
I~PUT
8
I~PUT
C ICA RRY)
Ut"'f"n'ar~'
,\ddf"r
OUTPUT 0 (DIGIT)
ELEMENTARY
-
ADDER
OUTPUT C (CARRY)
"
I.i~l
III A ..
In B.
uf Hinurl Input-Output
0
0
II
0
In C."
Out D.
Out C ..
0
1
0
1
1
1
1
0
0
1
0
0
1
0
(I
1
0
I
0
1
0
1
0
0
(I
Comhinution~
1
1
0
1
0
1
1
1
1
1
'.' 1
,..:plcction requil'c!-! no swit('he~
aside from the timing gate.
The timing circuit can be operated by dividing the master clock
rate. The 2-mc reprate drives a
counter which counts up to 35 and
then throws a flip-flop, giving an
output which is on for 35 pulses, or
one word time, and off for the next.
By ff'eoing these rectangular
waves of word duration into a scal€'of-20 counter, we can devise a circuit which will give an.output (to
control a gate) for the duration of
any desired one of the twenty
words.
Rult's of :\ritlarnt'ti ...
Binary olH'rations
A sing-Ie iuput I ~t'nerates 8 1
and 110 carry
~) Two input l's-f!t'm'rate II carry
but no output
J)
'n
Thff~
inplit l's f!I'Jlt'rate hoth
and Olltput and a carry
Logical concept"
(1) (A AND B) or (A AND C.) or (8 :\~D
C) ,Senerate8 8 carry
(2) A or B or C generates an output digit.
unless one of the above AND combinations occurR. which operates 8
gate to prevent the transmission of
the digit
(3) A AND BAND C generates hoth
digit and carry
FUllc'lions of Elementary Adder
Tr8J1smit a di~t if A ()fi R ()R C and not A A.ND B, A AND C, nor B
or if A :\ND B .\1\0 C
I ;enerate a carry if A A:XO B, A AND C, or B Al'4D C
•
.~ND
C,
th~:-.t' urgan:-;, In general, any organ
use of a buffer between an oscilmay oe called upon to send signals lator and a modulated r-f amplifier
to any other. The simplest way of is well known. In our case of passdoing this is to connect all tank
ing pulses of only one polarity, we
inputs to a common point through do not need a triode or pentode
switches (electronic gate~) and to buffer, but can use a diode. This
connect the arithmetic unit output diode is normally biased with back
to this point. Then opening the voltage so that it presents a high
proper gate will allow the signal to impedance to the common otis. A
proceed to the chosen tank, and to pulse on the ous increases the back
I
,t her.
('(ll)versely, if several
\'olta)!e on the diodes and is pro"" an' T.O be capable of sending tected. A pulse from a sour,ce, ho~­
c'" eral receivers, all sou rces can ever, reverses the polarity on that
't' \..'onnected in parallel to ., ~om­
one diode apd goes through with
mon transmisdion bus, and the re- ::mall loss. The advantage of such
ceivers connected to this bus buffers is that germanium diodes
through gates. Then by opening a can be used, greatly reducing shunt
receiver gate, and instructing the capacitance.
proper source to transmit, the deWith gates and buffers we can
sired result should follow. In prac- perform circuit switching, or spatice, this would not work, for with
tial selection for traffic control. If
many sources in parallel, each we stored our 1,000 words in 1,000
source would oe loaded by the paral- one-word tanks, there would be an
lel combination of the output im- .exorbitant number of 5witl:ht's with
pedances of all the others. \\' e need,
their attendant IosRes and control
Ot.'t ween each source and the com- problems. We could compromise on
mun bus, a buffer which allows only 50 tanks holding 20 words each. \\'e
one way traffie, so that a signal can can choose anyone i·f . liese 50
come from a source through the tanks by spatial switdllllK and any
buffer to the bus, out the other one of the 20 word~ in a tank by
sources cannot load the bus. The temporal selection. Thl' tt'mporal
114
Arithmetic Circuits
To understand how to combine
gates and buffet·s to make a circuit
that will do arithmetic, it is con\jnient to interpret gates and buffers in terms of their' logical
behavior.
A GATE is essentially a device
having two inputs and one O'JtP!Jt.
Either input can be considered
as the signal. and the other as tht'
control. Obtaining output from a
gate is dependent upon stimulating
both inputs; that is, it requirE'~
stimulation of one input AND the
other input. Logically the gatp detects the AND concept, one thin)!
AND another.· .
..
BUFFERS, on the OtlH'T hand, that
feed two or more ~hmaJ~ to a ('ommon point jCiw an ilutPUt signal if
anyone of the sourcE'S is excited;
that is, if one OR another input of
the row of buffers is stimulated.
Hence two buffers connecting two
inputs to one output constitute the
logical concept of OR. one signal
OR another.
Typical gate and buffer circuits
u:-ling tubes are shown in }<"ig. 2.
The series gate of Fig. 2A has both
grids normally biased beyond cutoff; both must be driven above cutoff to produce an output. The parallel gate of Fig, 2B has all tubes
nurmally conducting. If the load
-re:-\istor is large compared to the
conducting re~istance of a single
tuiJe, the common plate voltage wilJ
remain low unle~s all tubes are cut
off by si~llals.
The series 'and parallel buffers of
Fig. 2C and 2D represent inver~('
operating conti itiun~ on the. corresponding gute eircuits. The norSeptember, 1948 -
ElECTItONICS
~-tfl
•
mal-abnormal conduction states are
interchanged, and the circuits are
stimulated by pulses of sign opposite to tho~e required by the corresponding gateR. A signal on any
input produces a ch~nge in the output.
Th(' diode circuits of Fig. 2 are
alJ parallel circuits. Gates, requir-
ing the AND or multiple coincirlence, have all their diodes normally conducting, while buffers
have an their diodes normally nonconducting. Diodes are generally
of the germanium type.
Adder Is Basic Element
'.
To add two digits, the basic operation of arithmetic, we need two
inputg and one output. If the sum
of the two digits is greater than 9
in the decimal system, or greater
than 1 in the binary system, a carry
will be produced to add in the next
digit position. Hence we need three
inputs, one for each digit in the
given position, plus one for the
possible carry from the previous
position. We also need two outputs,
one for the output digit, and one
for the carry. Thus each digit 'position requires a device as shown in
Table I. Operating characteristics
of this elementary adder can be deduced from the laws of arithmetic.
The desired outputs for the eight
p08sible input combinations of 0
and 1 on the three inputs are li~ted
in the table.
There are two types of adders:
parallel and serial.
A PARALLEL ADDER is made of 35
elementary adaers, one for. each
digit position. Various digits are
set up in a static register, as pre..
viously discussed, and the steady
register output voltages representing O's and l's activate static elementary adders. The carry output
lead of each place can be permanently connected to the ca\'ry input
lead of the next, requiring one type
of elementary adder to satililfy tht>
rules of arithmetic. Alternclt i H·ly
the sum and carry digits can be
formed statically in each place,
and the carrier transmitted to their
neighboring adders an instant later.
Part of the difference in tht> circuitry is involved with the fact that
a carry may generate a carry, as
in adding 7774 to 2226. PropagaELECTIONICS - September_ "4
tinn
1)(
tnt,
carry down the line can
bf' han.U..d in various ways.
,,-
times as" the next digit.
" the example:
THK SERIAL ADDER uses a single
~; I
:n
complil'att·ci elementary adder for
SUl,(,p~8jve digit places in sequenct'.
;;71
I ~ _'_
:-\~,
Pul~e trains are not set up in static
aa
form. but are fed in dynamically.
:)74
the two numbers ar..riving simulta1779-'
neously. If an output 1 pulse is
~enerated, it is transmitted im-'
Because in' the binal'~' sy~tem,
mediately as one digit of the sum. only 1's and O's occur, we have for
If a carry pulse is generated, it is the partial products either the muldelayed 0.5 !L8 and returned to the tiplicand itself, or zero.
carry input, arriving there coinciBinary
Decimal
dent with the input digits of the
10111
23
lOt
5
next place.
.
An elementary adder can be made
10111
11.5
00000
of gates and buffers. Rules of
lOlll
arithmetic shown by the list of in1110011
put digit combipations are stated
in Table I. The preventing opera- This allows us to use a ghifting
tion in case (2) implies a negative register (previously described) togate, or logical AND NOT, which gether with a basic adder, to peris easy to devise from diodes by form multiplication. We do or do
using several bias levelg. With this not add in the multiplicand accordterminology, the functions of an ing to whether the right-hand digit
elementary adder can be described of the multiplier i~ 1 or 0, shift the
logically as at the bottom of the number in tht> rf"~ister, and repeat.
table. The complicated combina- Thus a basic arjthmt'~ _ 1111 it contions of AND and OR are strai~ht­ sisting of registers, \\~.
forward logically and electron ically. sh iftect Wh('ll desired. ,
but lead to a practical circuit em- buffer~. can (.lither .~f1d
ploying (in one design) nine pen- accordiuJ.! ttl whf'th"1 _t Jl"t.~ .• ,~.
todes and 36 diodes! Some of these pIe ~ignal to add, or whether it g-~t.,
elements are incorporated to re- ahw a signal to shift and repeat.
shape pul8es, and several diodes are Other modifications permit ~lIb­
used as limiters and d~c level traction and division. \Vhirh operarestorers.
t ion is to·l.H' performed is controlled
Any adder can be con~idered as by signals from cen~ral control.
a problem in traffic control where usually quasi-static voltages to kef"l'
the signals (numbers) that are put certain gates open until the operain control the transmission of tion is completed.
pulses throughout the adder. This
Before examining mf"ans for ('onlocal control is one step more com- verting pulse trains representing
plicated than the central control, or arbitrarily coded orders intI' vat.·
traffic dispatch between organs. In ('ontrol voltages, Jet us yllil\\" ,
the ceptral control problem, control the o\'erall organization uf t ht·
voltages set up the paths to be puter.
taken by signal pulses. In the local
The input portion of the machine
control, pulse paths, and times sends all its words, both numbers
(clock beats) at which pulses occur and orders, to the high spt'ed
are set by the signals themselves, . memory storage. From storage,
so that there is no longer a clear- orders go to the central control,
cut distinction between signal and logically through a decoder, but this
control pulses.
decoder is the main part of the
MULTIPLICATION is a more com- 'central control and so is not usually
plex problem. Drdinary longhand considered separately. Central conmultiplication consists essentiall~' of trol must dispatch operating' inadding the multiplicand (57-l' it~ 8tructions to all machine unit~, including the input, for it must tell
many times as the right-hand \.i~.tt
the input when there is room in the
of the multiplier (31) ahlfUnii
columns, adding on the multiplic.a,,&.f memory for more data and orders
115
•
to continue the problem. The geu(?ral scheme is ~hown in Fig. 3. Tht·
only feature of the diagram that -i:-;
unnecessary is the transmission of
orders (not control voltages) to and
frmn the arithmetic unit.
This
i:-; a useful wav of pyramidingthe hierarchy of 'eont~ol to :-ll'hieve
H'rsatility of operation_ Because
orders themse]ve~ are coded to appear as numbers, orders can be
modified by performing arithmeti<.:
lIpun them. This feature ~impJifie:-:
proA'l"ammjn~
the mathematical
problem in h'rms of dispat<.:hing
orders. but need not concern the
.. Ip("tronic circuit designer.
We have mentioned that orders
are coded in numerical form. Suppose for example that eight differt'nt orders are desired; that is,
19'ht different lines are to be ener;. i/t'd. Any eight things can be
repl"t'sented in code form by the
binar~' numbers 0 to 7; that i~, 000,
001, 010, 011, 100, 101, 110, 111.
These are the eight combinations
of three places, each having either
two values. Electrically, we can
hav~ three wire~, each of which
ma~'
h:l\'p voltage applied. If
"";f,,:., .• "
11lllse trains they can be
. ,'I'led to the static three wire
\ nmbination by setting up a static
register of three flip-flops. We then
have three wires,. anyone or more
of which may be hot, repr;esenting
t>i~ht different possibilitie~, and we
wish to excite anyone of eight
leads in accordance with these
choices. In general, we have N
wires of two possible states each
(hot or ('old) giving 2'\' combina• jlll)~. and wish to excite only one of
~ lI.1tputS. In practice, instead of
ll:o'ill~ S wires from N flip-flops,
ha\"in~ some hot and some cold, it is
better tu bring two wires from each
tf ip-ftop, one from each side. \\! e
then have /ttl pairs of wires, each of
which has only o"e side hot. All
input pair~ are thus excited one
way or the other, avoiding complif:ations of zero-voltage input signals.
The simplest case of a decoder is
\\'here N = 2, so that there are two
input pairs and fOllr output leads.
The circuit of Fig, 4A shows this
ease. The horizontal and vertical
lines are connected through diodes,
gO that the diodes in any column
form a gate, or AND circuit. If
,I pper and lower lines of the top
I'air are excited positively, output
f lum the left-hand lead is excited,
and so on for the four possihle
,l"omoin'ations of input,
SIMPLE DECODER ( 8 DIODES)
ALL DIODES NORMALLY CONDUCTING(A)
or
•
•
116
For larger decoders,' it will be
convenient to indicate the presen(.'e
of a diode connection between t\\"o
lines by a circle at the c rossO\'e I'.
There are no direct connections.
Figure 4B shows a simple decodel'
for foor input pairs, yielding 16
possible output excitations. Combinations of upper and lower pair
excitations that result in excitation
of each of the 16 lineg are indicated
on the figu reo
This dired check of the possible
l"omhinations can be called a one~tage decoder.
Fewer diodes are
required if we decode in two stages,
namely, by mixing two pairs as in
Fig. 4A to get one line out of four,
and doing the same with the other
two pairs to get one line out of
another set of four. \\' e then have
two set~ of four line~ each, in which
only one'line of each set is extited.
These two sets can be fed into the
circuit. of Fig. 4C. Thus in using
Fig. 4B, each output line requires
a quadruple coineidence fol' excitation, and 64 diodes are needed. By
using two circuits of '·'ill. 4A and
one of Fig. 4C, makifl~ ..;ucce~:-;i\"e
simple coincidences,
we nt'E:'cI
8 + 8 + 32
48 de('odt'rs, or a .
sa \'ing of .25 percen t .
Multistage decoding exhibits
even greater savingt> as X increa.Re~. For ~T
8, allowing
select ion of anyone of 256 memory
tanks by virtut' of the 2'
256
different gate~ that ma~' be opened
by an 8-pulse signal, a th ree-stclg'e
decoding requires only 608 diodes
as aga..inst 2,048 for .",ingle-stage
decoding ..
=
U
U U U U U U U L L L
L L L
L L
U
U U U L L L L
U U U U L L
L L
U
U L L
U U L l
U U L L U U L L
L U L
U L U L
U
.
;
:"> >> :cc . :c
"
:
U L
.
:
> "
U L U l
:
> :
~ "
:
U L
:
>
> :
I
FOUR PAIR DECODER (64 DIODES)
=
=
(8)
Traffic Handling Systems
-.
:. :.
~
">
<
~
"
•
.~~
: < .?
. ; flill
:.
:
~
> <
<
">
<> :
: :>
:
•
r
TWO Sf TS 0, FOuR WIRES
(32 :lIOOES)
(e)
FIG. 4-·Switchin9 circuit. use unidirectional conductance of diode.
Having seen how a coded order
can be eonverted to the selection of
a gate opening voltage. it is of interest to consider briefly the" general traffic handling- plan. Tht'
mathematician prepares his instructions to tht' machine in term~
of numerical data, coded orders to
select which basic opel'ation the
arithmetic unit is to perform, fOl'
~equencing the machine or for expres~il1g the routine to be followed.
In general two kinds of wOl'dg al'e .
put into the machine memor\":
numbers and orders.
Assume that the memOI"y is capable of storirig 1,000 words and, for
$eptembe" 19"- ELECTRON;CS
",:;:-,,:,.2:1,,1. i'": ' . . ;,.";;,.
•
•
•
simplicity, that the two kind8~ of
words are of equal duration, or
number of pulse positions. TheM
1,000 words occupy definite posi, tions in two dimensional space-time.
Hence we can consider their positions as' pigeonholes numbered from
1 to 1,000 and call (or transmission
of a word to or from any pigeonhole. The simplest way of enterinK
the input data is to take the first
thousand words from a magnetic
wire and store them sequentially in
the thousand cells. This can be
done by using a counter to ~easure
off a word, and cause unity to be
added to the address to which the
next word is to be sent.
High speed reading of the
memory can also be done sequentially by giving the address 1 as the
instruction for the cell to be read
and by having a built in arrangement for automatically adding
uni ty to the add ress of the cell to
be read. It will then automatically
read cell 2 as soon as it has. finished
with cell 1 and- is ready to read
again.
A procedure that may be more
flexible for repeating subsequences
and setting up branch operations
( choice of next order dependinK
upon present results) and also more
convenient in practical programming, is the four address code. In
this system each order is composed
of four addresses (or memory cell
locations) : the address of the first
operand (number to be arithmetically operated upon), the address of
th. ~~onci operand, the code for the
"prratiop to be performed, and the
.ddress of the next order to'be read
after completion of the present instructions. This system is more
efficient if memory reference is slow
compared to other operations; that
is, if waiting time for a word to
be reached in the sequential reading of a dynamic memory is relatively large because it allows the
_essentially simultaneous look-up of
both operands.
A variation of the four address
system is the use of a fifth address
in the words on the input wire, to
designate the cell into which that
word is to be stored. The fifth
address is automatically deleted as
the word is entered into the
machine.
In electronic digital computers,
III
..... tubes, for example, are called
~pon to develop a pulse of usable
level, or not called upon a.t all.
Variations between tubes, aging,
or tolerances of resistors do not
affect accuracy, until, they become
so extreme that the signal falls out
of usable range. A ten to twenty
per cent variation of signal
strength has no effort on a series of
pulses. 'ideally a computing machine works perfectly or not at all.
Actually, as tubes deteriorate, there
is a threshold at which operation
may be erratic. By setting a limit
checking circuit for a' safe level
margin, this otherwise possible
operation can be put in the class
with complete breakdown.
Errors can occur due to noise
generatin~ a false pulse at an
allowed pulse time when the word
transmitted has a zero In that position. This noi~e pulse may be indistinguishable from a proper
pulse. Oceurrence of errors due to
such random causes can be guarded
against by one of several checking
schemes.
• One of the most elaborate checking schemes that has been proposed
is to check the arithmetic and the
transmission. The arithmetic can
be checked in a fashion similar to
the ancient system of casting out
9's, where each number is expressed
as ita-excess over a multiple of 9;
that is, it,has a value of 0-8. This
is done by adding sideways. The
9's excess of a sum of numbers is
equal to the sum of their individual
excesses, (expressed as an excess
if larger than 9). The 9's excess of
the product of two numbers equals
the (excess of the) product of their
excesses. A simple auxiliary addition or multiplication on the excesses has often been used for
checking arithmetic. Fo·r example,
multiplying 371 by 24 gives 8904.
The 9's excess of 371 is found by
adding the digits 3 + 7 + 1 = 11,
'I + 1
2. Similarly the 9's
excess of 24 is 6. The product of
these two excesses is 12, having
itself an excess of 3, which agrees
wi th the excess of 8904, 8 + 4 ~
12, 1 + 2
3. A cQTresponding
procedure of casting out (2" - 1)
can be set up for binary computation, and a small auxiliary arithmetic unit operated simultaneously
wi th the main unit.
=
t
=
This type of checking lends itself
to verifying correct transmission
of a number. The excess count of
a number can be stored with it in
the memory for performing the
parallel arithmetic check. It can
be used as a transmission check by
taking the excess count of a number received by the arithmetic unit
and comparing it with the received
check count. Very peculiar transmission errors are required to make
the new count of an incorrectly
transmitted number agree with
either its original count or an incorrectly transmitted count. This
type of checking is based on arithmetic.
Checking the address selection
exercised by central control can be
done by storing with each word its
address. When the word and accompanying address is read,. the
, read address is checked against the
called-for address. This checks
both the spatial and temporal
phases of word selection in the
machine.
Electronic design of machines ia
fast progressing to the point where
they will be more perfect than the
mathematics set up for them. I
refer to such varied factors as
round-off error, inevitably introduced by working to a fixed number
of significant figures. If a machine
performs 1,000 arithmetic operations a second for days on end.
what relationship does the final
answer have to the original hypotheses? Some mathematical research
is being done on this point. A
more vital question is the design of
mathematics suited for machinett.
Many procedures use machines for
replacing human computers, using
numerical computational schemes
developed for the human brain.
Characteristics of an electro~ic
machine are different from those of
a human brain, and it is reasonable
to suppose that computational procedures can be devised which, although unsuited for hand computing, are well adapted to machine
routines. Such procedures have
been developed for a few special
problems.
'
The writer thanks the Raytheon
Manufacturing Company and th~
Eckert-Mauchly Computer Corporation for supplyin&, some of the cir.
cuit details shown in the figures.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement