1967 11_#31 11 #31

1967-11_#31 1967-11_%2331

User Manual: 1967-11_#31

Open the PDF directly: View PDF PDF.
Page Count: 808

Download1967-11_#31 1967-11 #31
Open PDF In BrowserView PDF



November 14 - 16, 1967
Anaheim, California

The ideas and opInIOns expressed herein are solely
t.hose of the authors and are not necessarily representative
of or endorsed by the 1967 Fall Joint Computer Conference
Committee or the American Federation of Information
Processing Societies.

Library of Congress Catalog Card Number 55-44701
210 Summit Avenue
Montvale, New Jersey 07645
© 1967 by the American Federation of Information Processing Societies, New York, N. Y. 10017. All rights
reserved. This book, or parts thereof, may not be reproduced in any form without permission of the publishers.

Multiprogramming for hybrid computation
The IADIC: A hybrid computing element
PHENO-A new concept of hybrid computing elements ....................... .

Textile graphics applied to textile printing ................................... .
Holographic display of digital images ...................................... .

Half-tone perspective drawings by computer ................................. .

VISTA-Computed motion pictures for space research ......................... .

Current status of large scale integration technology ........... " ............... .
Large-scale integration from the user's point of view ......................... .
A family of linear integrated .circuits for data systems ....................... .

The effect of digital compensation for computation delay in a hybrid loop on
the roots of a simulated system . . ...................................... .
Hybrid Apollo docking simulation ... . .................................... .
Hybrid, six-degree-of-freedom, man-and-the-Ioop, simulation of a lifting reentry vehicle
Solution of integral equations by hybrid computation ......................... .

Graphic CRT terminals - Characteristics of commercially available equipment
How do we stand on the big board? ....................................... .
The CRT display subsystem of the IBM 1500 instructional system ............. .
Conic display generator using multiplying digital-analog decoders ............. .
System architecture for la.rge-scale integration ............................... .

Management of periodic operations in a real-time computation system

M. S. Fineberg
O. Serlin
J. 1. Crawford
M. J. Bodoia
W. Giloi
H. Sommer

J. R. Lourie
J. J. Lorenzo
L. B. Lesem
P. M. Hirsch
J. A. Jordan, Jr.
C. Wylie
G. Rommey
D. Evans
A. Erdahl
G. A. Chapman
J. J. Quann

R. L. Petritz
M. G. Smith
W. A. Notz
M. B. Rudin
R. L..O'Day
R. T.Jenkins

E. E. L. Mitchell
B. B. Johnson

S. S. Weiner
P. F. Bohn, Jr.
G. A. Bekey
R. Tomovic
J. C. Maloney

C. Machover
.M. L. Kesselman
R. H. Terlet
H. Blatt

H. R. Beelitz
S. Y. Levy
R. J. Linhardt
H. S. Miiller

H. Wyle
G. J. Burnett

A generalized supervisor for a time-shared operating system ...... ............. .
A real time executive system for manned spaceflight ....... ; ................. .
Executive programs for the LACONIQ time-shared retrieval monitor ........... .
An executive system for on-line programming on a small-scale system ........... .
Mass storage revisited· .. . . . . . . . . . . . . . . . . . . . . . ., .......................... .
High-speed themal printing ... ............................................ .
Solid state synchro-to-digital converter . . . . . . . . . . . .. . ........................ .
A new high-speed general purpose 110 with real-time computing capability ....... .

On designing generalized file records for management information systems ....... .
The planning network as a basis for resource allocation, cost planning
and project profitability assessment .... .................................. .
Winged word.s: Varieties of computer applications to literature ............... .
Music and computing: The present situation ............................... .
Computer applications in archaeology ................ ................... .
Computer applications in political science . . . . . . . . . . . . . ...................... .
The B8500 half-microsecond thin film memory

T. C. Wood
J. L. Johnstone
D. B. J. Bridges
L. V. Moberg

A. S. Hoagland
R. D. Joyce

S. Homa, Jr.
G. P. Hyatt
D. B. Cox, Jr.
K. Fertig

F. H. Benner

H. S, Woodgate

L. T. Milic
A. Forte
G. L. Cowgill
K. Janda

R. H. Jones
E. E. Bittman

Bit access problems in 2


D 2-wire memories ........................... .

Engineering design of a mass random access plated wire memory .......... . .... .

A new technique for removable media, read-only memories ................... .
Low power computer memory system ... : .................................. .

Development of executive ro,utines, both hardware and software ................. .
System recovery from main frame errors ....... ............................ .

Language' directed computer design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ............ .

An approach· to the simulation of time-sharing systems ....................... .
Hxperiments in software modeling ........................... ............. .
Design, thru simulation, of a multiple-access information system : .............. .

SODAS and a methodology for system design ............................... .

Requirements for a shared data processing system for hospitals ................. .
Use of displays with packaged statistical programs ........................... .
MEDATA - A new concept in medical records management ................... .

P. A. Harding
M. W.·Rolund
C. F. Cho.ng
R. Mosenkis
D. K. Hanson
R. E. Chapman
M. J. Fisher
D. E. Brewer
S. Nissim
G. V. Podraza

A. Tonik
R. Armstrong
H. Conrad·
P.· Ferraiolo
P. Webb
W. M. McKeeman

N. R. Nielsen
D. Fox
J. ,L. Kessler
L. R. Glinka
R. M. Brush
A. J. Ungar
D. L. Parnas
J. A. Darringer

J. P. Bodkin
W. J. Dixon
C. Horton
T. M. Minckler
L. D. Cady

Requirements for a data processing system for hospital laboratories ", .......... .
An advanced computer system for medical research "."." ......... ,., ....... .

1. Etter
W. J. Sanders
G. Breitba:rd
D. Cummins
R. Flexer
K. Holtz
J. Miller
G. Wiederhold

Planar magnetic film , , , , , . , , ' , . . . . . . . . . . . . . . . . . . . . . . . . . . ................. .
Plated wire ......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .
Bipolar Semiconductor .. ................................... ............. .
Magnetics ... , ..... , ........... " .... , .. ,....... . ............... '....... .


Time-shared information systems: Market entry in search of a policy .. , ..... .
Communication Services-present and future ...... , ... , ... ,., ... , ........ .
Communication needs of remotely accessed- computer .... " .... , .. , ........ .

M. R. Irwin
W. B. Quirk
W. E. Simonson

Another look at data ' , ... , ... , . , , , ...... , , .... , ............. , ... , . , ...... .
Dataless programming ." .. , ...... , ..... , .... , ......... ,." .. , ............ .
PLAN IT - A flexible language designed for computer-human interaction .. , ... ',.,
A formal system for the specification of the syntax and translation
of computer languages .. , .. '.'". . .. ,., .... " .. " ... ".,", ....... , ... .
Generalized translation of programming languages .,.,', .......... , ...... " .. .
Computer change at the Westinghouse Defense and Space Center , ... ', ..... ',' ..
Machine-independence and third-generation computers ................... ,.,'.
Hybrid executive and problem control software ", .... ", .. ,' .......... , .... .
Diagnostic software for operation and maintenance of hybrid computers , .. ,., ... .
A large multi-console system for hybrid computations: software and operation ., ..
Simulation languages and the analog/hybrid field ... , .. , .. "., .. ,., ......... .
Bulk core in a 360/67 time-sharing system. , ........ , , ' . , ........ , . , , ........
Modular computer design with picoprogrammed control .......... ,., ... , ......
Intercommunication of processors and memory .... , ........ , ...............
Stochastic computing elements and systems , .... "., .. , .. , ..... , ...... , ...


AutoSACE - Automatic checkout for Poseidon
A practical method for comparing numerical integration techniques
Real-time spectral analysis on a small general - purpose computer . ,
Further advances in two-dimensional input-output by typewriter terminals .... , ...
A graphic tablet display console for use under time-sharing .. , .. , ..... ,., ..... .
Multi-function graphics for a large computer system .. ,",., ... , ... , ..... , ... .
Reactive displays: Improving man-machine graphical communication. , ...... , .... .
Graphic language translation with a language independent processor ., ..... " ...

W. Simpkins
A Fedde
S. Dunn
J. Petschauer

G. H. Mealy
R. M. Balzer
S. L. Feingold

J. J. Donovan
H. F. Ledgard
R. W. Jonas
W. B. Fritz
M. H. Halstead

E. Hartsfield
R. E. Lord
C. K. Bedient

J. C. Strauss
H. C. Lauer
J. G. Valassis
iW. W. Pirtle
W. J. Poppelbaum
J. W. Esch
C. A/uso
P. P. Shipley
G. W. Schultz
J. M. Colebank
A. G. Larson
R. C. Sin!(letol1
M. Kiner
F. Grossman
L. Gallenson

C. Christensen
E. Pinson
J. D. Joyce
M. J. Cianciolo
R. A. Morrison

Design of fault-tolerant computers ......................................... .
Some relationships between failure detection probability and
computer system reliability ............................................. .
A distributed processing system for general purpose computing ................. .

JOSS: 20,000 hours at the console: A statistical summary ..................... .
How to write software specifications ....................................... .
Observations on high-performance machines ................................. .
The Greenblatt chess program ............................................. .

A. A vizienis
H. Wyle
G. J. Burnett
G. J. Burnett
L. J. Koczela
R. A. Hokum

G. E. Bryan
P.· H. Hartman
D. H. Owens
D. N. Senzig
R. D. Greenblatt
D. E. Eastlake
S. D. Crocker

Data Processing Program for Technical Papers
To maintain good control over,the status of the three hundred technical papers submitted for this conference from receipt through distribution to reviewers, return from reviewers, final review and selection, and final disposition, a special
data processing program was written to keep track of status and issue timely status reportso Special acknowledgment is
made of the work of Mrs. Bernice Bjerke, who wrote the program, and to Aerospace Corporation for underwriting the
costs of writing, operating and documenting the system.

Multiprogramming for hybrid computation
McDonnell Automation Company
Division of McDonnell Douglas Corporation
St. Louis, Missouri

gramming. are probably new, so it is worthwhile to
establish a clear frame of reference at the outset.
A significant recent development in hybrid computation
is the increasing use of multiprogramming techniques
What is a time-critical hybrid job?
1 2 3
and multiprocessing hardware. • • To some extent this
As far as the digital computer is concerned, a timetrend is motivated by the development of multi-user
critical hybrid job simply represents certain loads on
systems in the pure digital field. However, the primary
the central processor (or other processors, if any),
justification for hybrid multiprogramming is economic.
memory and I/O facilities. It does not matter much
It is possible to show that, by sharing a large, powerful
whether the hybrid nature of the program is due to
central facility, the cost-per-computation can be rethe presence "in the loop" of analog computers, analog
duced by almost an order of mag~itude! as compared
hardware, or both. What does matter is that the timewith the alternative of using several smaller, whollycritical job must receive its share of the processor withcommitted computers. *
in a firm time limit. This time limit is shorter, by one
Associated with any multiprogramming system, hyor two orders of magnitude, than the response time in
brid or batch, are two fundamental requirements. There
other "real-time" systems such as airline reservations
must be a mechanism through which the available reor on-line banking. Another peculiarity of the timesources of the system (processor(s), working storage,
critical hybrid job is that it will rarely, if ever, tolerate
I/O) are allocated intelligently to satisfy users' needs
the sort of partial degradation ("overload") that is quite
while maintaining maximum throughput. Equally imacceptable, though undesirable, in a commercial "realportant is the need to guarantee the integrity of the systime" environment. If, for any reason, a time-critical
tem: users' programs must be protected !rom, and
hybriq job fails to get its quota ~f processor time even
independent of, each other, and the operatmg system
.once during a run-in one run the job may need the
must be immune to interference from a~y and ~ll u:;r.s. ~ processor hundreds of thousands of times-that run
The presence of time-critical tasks In the Job mix
must in most cases be abandoned or restarted.
complicates both the resource allocation problem and
There is another' important aspect in which the hythe task of safeguarding t~e syste~:s integr~ty. The
brid job differs from others; "page leafing" techniques
system must not only provide ~uffl~lent ser~lces,. b~t
cannot be applied to it, nor can it be relocated octhese services must be rendered m time, that IS, WIthIn
casionally in core, because the time frames within
a firm time limit. It is also necessary. to de~ect whenever
which it needs processor service are much too short
a job is attempting to use more than Its assigned share of
to accommodate either of these operations in the
resources, before this infringement affects other. users.
present state of the art.
The software and hardware features that permit successful resolution of these requirements in a time-critical
The goals of hybrid mult~progra~ming
environment, are the subject of this paper.
To be classified as a hybrId multIprogrammIn~ system, a computing complex must be capable of SimulA definition of hybrid multiprogramming
taneously servicing two or more time-critical hybrid
The concepts and terminology of hybrid multiprotasks in addition to pure digital batch processing. The
reas;n for insisting on a minimum of two hybrid jobs
*The debate between the proponents of these opposing viewis not purely semantic: the requirements imposed. on
points certainly deserves a wider recognition. For more dethe system configuration to enable it to run two timetailed discussions, see references 5, 6, and in particular, 7.


Fall Joint Computer Conference, 1967

critical tasks simultaneously are much more demanding
than those for servicing only one such job, whereas
the extension from two to any arbitrary number is
relatively straight forward.
The batch load may represent overflow from a pure
digital facility, or additional hybrid jobs in the digital
checkout phase, or it may be the primary load of the
system, the' hybrid jobs being occasional users only.
In any case, the most important criterion by which
the success of a hybrid multiprogramming system must
be measured is the degree to which each hybrid user
is made to feel that he has a committed computer at
his disposal. To maintain this illusion it is necessary to
guarantee protection and independence to all jobs. Protection requires that errors committed by one program
must not be allowed to interfere with the successful
running of programs other than the offending one. Independence implies that the coding, loading and checkout of one program need never be geared to the presence, absence or idiosyncrasies of other programs.
Almost equally important is the need to maintain
maximum throughput while servicing job mixes with
varying proportions of time-critical hybrid simulations,
other real-time tasks, and batch jobs. The economic
justification for hybrid multiprogramming depends to
a large extent on the ability of the system to service
I/O-bound batch jobs concurrently with the hybrid
jobs, which make relatively light use of peripheral equipment but represent a heavy load on the processor. Consequently the system cannot be regarded as a highly
successful one if the software features that are needed
to serve time-critical tasks significantly degrade the
throughput performance for all other jobs.
These are the ground rules; they need to be kept
in mind in th"e following discussion.
The central processor allocation problem

The proper allocation of the central processing unit
(CPU) in the presence of two or more time-critical
jobs is of prime importance in a hybrid multiprogramming system. These time-critical jobs, from the standpoint of the CPU, are characterized by three parameters (Figure 1):
1 Repetition Period, or Frame Time (Tf). This is
the period between two successive instants at which
the job demands CPU action.
2 Response Time, or Tolerance (Tr). This is the
period within which the equipment external to
the digital computer must have a "reply." Tolerance is measured from the instant of CPU request.
3 Compute Time (Tc). This is the amount of CPU
service, in terms of CPU-seconds, that the job
needs when it asks for the CPU.

A" 0



_Tc. _ _




Figure I-The parameters of a hybrid job: T f is the repetition
period, usually marked by clock pulses which cause A~D
transfer. Tr is the response time; in this figure the digital
computer finishes its computation just in time to meet the
response-time constraint. Tc is the execution time" of the digital program.

Perhaps the most common hybrid job is the one for
which all three parameters are constant (or nearly so)
and Tr = Tf. Typically, an external "real time clock"
is used to generate pulses at intervals T f, (which are
hence also called "clock periods"). At the instants
marked by the real time clock pulses ("clock interrupts"), analog-to-digital (AD) conversion is initiated.
At the same instant, digital-to-analog (DA) data, which
is computed and stored in the DAC buffers during
the previous clock period, is also converted. To account for the fact that the DA data represents results
of computations based on conditions existing at the
previous clock interrupt, the digital program normally
includes a predictive algorithm that extrapolates the
DA data to the time at which the data" is actually
transferred to the analog domain. Because of this extrapolation, the "external world" (analog domain) is
insensitive to the actual time of execution of the digital
step, as long as all the required computation is completed prior to the next clock pulse.
A somewhat more complicated type of job is characterized by Tr  .::


Figure 2-Standard quanitizing action of present analog
to digital converters

C ...




pulse period, 6 T, equals q/Xmax.


(3) R is chosen to make the integral of the feed-

back pulse,
q (where


VT, equal to a quantum level,
== Ih AT). Solving this relation-

ship for R yields the value for R or R == VT

Before discussing the error sources associated with
the IADIC, some of its more obvious merits should
be brought to light. These are listed below:
(1) Integration is performed in real time and continuously in the analog domain.
(2) Integration is performed in parallel.
(3) Integration is performed with digital precision
(Le., resolution).
( 4) Once the integrator is placed in the operate
mode, it stays in operate mode for the duration
of the run. Thus no information is lost by going
through repeated "Hold" and "Reset" modes.
(5) The integrator output is not limited; therefore,
it can exceed the quantum level before, during,
or after a feedback pulse, and again no information is lost.

Error analysis

Figure 3-.Quantizing action of the lADle

The following error sources will be considered in
this analysis:
( 1) An error due to the inaccuracy of the comparators which sense the quantum level q.
(2) An error due to an inaccuracy in the feedback
(3) An error in the reset pulse for the integrator.
( 4) An error due to the hardware limitations.
It will be shown that the first two errors are canceling or negligible. The significant error sources are
reset pulse inaccuracies and hardware limitations.

Comparator error

The first error to be evaluated will be comparator
inaccuracy; th~ result of this error is illustrated in
Figure 6. The quantum level at which the comparator
should change state will be defined as q (see Figure
6), and e will be defined to be an error due to comparator inaccuracy. Therefore, the actual level at which
the comparator changes states is q
e. The effect



Fall Joint Computer Conference, 1967


of this error is ·to cause a feedback pulse to be generated
at tl instead of to (the proper time), but the feedback
pulse will reduce X(t) by the correct value (q), and
an error of e will be left on the integrator. On the
next cycle (t2 to t3 ) , the comparator will trip at
e. This is a level change of q (not q
e) and
produces a new output pulse which is properly interpreted as a change of one quantum (q). Therefore.
the integral does contain an error due to the comparator inaccuracy; however, this error does not accumulate and represents only a small percentage of
one quantum. The decision to apply a reset pulse to
the integrator and not place the integrator in a reset
mode condition was predicated on minimizing the effects of this error and the next error to be discussed
(feedback capacitor error).


q o O.5000





Figure 4-A scaled lADle


Feedback capacitor error

The next error 'source to be considered is an error
in the feedback capacitor. The output of an lADle
with a feedback capacitor error of E is shown in Figure
7. At any time. t, the integrator output can be determined from Figure 7 to be:
( 1) Output of integrator at t == output of integrator

at t l - 1 - integral of one reset pulse + integral
of input from t l - 1 to t_
Substituting actual parameters into equation (1)




(2) 6X(t) == q -

(l+E)q + (1+E)




t i -1


Now, if we let the integrator span the quantum
for this interval (i.e., 6X!== q), equation
2 becomes:

Figure 5-Typical wave shape for a clock pulse
q ____+-______~----~t~i--I--------------~tl~---




11 x (tl




Figure 6-Effect of comparator error

Figure 7-Effect of capacitor error

The IADIC: A Hybrid Computing Element


(3) q


(1+E)q + (I+E)



which reduces to:





Although the feedback capacitor was in error
by the factor E, the actual value of the



and the output of the IADIC spanned the quantum (q) in the interval t'-1 L. t L. t,. Because
the input of the IADIC (X) and the feedback
pulse are sensed by this integrator, it is obvious that the first count of the IADIC will have
an error due to E, but every. subsequent count
will.be independent of E. The decision to apply
a reset pulse to the integrator and not use a
reset mode was predicated on reducing the
effects of capacitor errors and comparator


Feedback pulse error

The next source of error to be considered is the
accuracy of the feedback pulse. For proper operation,
the integral of every pulse must be repeatable, accurately determinable, and equal to q (quantum level).
A single feedback pulse as illustrated in Figure 5 will
now be considered_
If the integral of this feedback pulse is defined --to
be q, then:



(feedback pulse) dt

= ;C


V dt


= RC = q

= Feedback pulse resistor value


= Integrator capacitor value
= Reference voltage
= Pulse duration.

(see' Figure 1)

It has been shown that the capacitor value error
does not contribute significantly to the lADle error.
Errors in the reference voltage are insignificant because all measurements are, measured relative to the
same reference voltage. The two most significant errors
are the feedback resistor value and the pulse duration. State of the art summing resistors are adjustable
to within +0.0025 percent; however, the resistance
of the switch may be on the order of 50 to 100


ohms, which is a significant error if a lOOK feedback pulse resistor is used. Assuming that the fee4back resistor can be trimmed to account for switch
resistance, then the resistance error would be due
to stability of the switch resistance during a run.
The pulse duration is a function of the "turn on"
and "turn off" times of the switch. Again, if we assume
that the area of the pulse can be calibrated in some
fashion, then the actual "turn on" and "turn off" times
are not important, but the stability of these times
is important. We may now itemize the major contributors to pulse area errors by recognizing that there
are three (pulse generator, logic, switch) sources of
"turn on" and "turn off" time errors. These major
error contributors are as follows:
( 1) Switch resistance stability.
(2) Turn on time stability of the pulse generator.
(3) Turn on time stability of the logic circuits.
( 4) Turn on time stability of the switch_
(5) Turn off time stability of the pulse generator.
( 6 ) Turn off time stability of the logic circuits.
(7) Turn off time stability of the switch.
The authors were unable to obtain data on these
types of errors: however, the required values to obtain reasonable accuracy can be derived. If the lADle
is to be as accurate as a good analog integrator (1.0
JLf capacitor), then the feedback pulse area should be
accurate to ±0.025 percent. 9 Assuming that this is
a one sigma value and that an of the above error
sources are independent and equal, then each of the
seven error sources may contribute an error of
0.00945 percent to the pulse area.
Now assuming a lOOK ohm feedback pulse resistor
and a nominal pulse width of 10-4 second, the required accuracies of the seven error sources in order
to obtain 0.025 percent lADle accuracy are:


= 10

9.45 x 10-5
= 9.45 ohms.
(2) Turn on time stability of pulse generator, logic,
and switch = 10-4 x 9.45 x 10-5 = 9.45 nanoseconds.
(3) Turn off time stability of pulse generator, logic,
and switch = 10-4 x 9.45 X 10-5 = 9.45 nanoseconds.
Although the authors were unable to obtain stability
data on switch resistance, rise time, and decay time,
the required values above do not seem unreasonable
to the intuition when one considers nominal values
of 50 to 100 ohms for switch resistances and 20 to
40 nanoseconds for rise and decay times.
It should be noted that the expected accuracy of the
lADle will be different for monotonic and nonmonotonic functions. Since independent resistors. switches,
( 1) Switch resistance stability




Fall Joint Computer Conference, 1967

and perhaps logic circuits are used for positive and
negative pulses, the error for nonmonotonic functions
will be larger by approximately yz:
To summarize, the IADIC error is almost entirely
due to errors in the feedback pulse area and although
little or no data are available to determine this error,
a value of 0.025 percent appears to be attainable.
D. Hardware limitations
The decision to provide a resetting feedback pulse
and not to reset the mode of the IADIC (see Sections
A and B) when a quantum level is reached places
severe specifications on the hardware of the IADIC.
Because the IADIC may be in operate mode for a
long period of time, integrator drift will be detrimental to the accuracy of the IADIC. Therefore, the
hardware must be designed to ensure drift-free operation. Also, the hardware must be designed to obtain
a feedback pulse with a repeatability which will not
degrade the operation of the IADIC. Therefore. to
ensure proper operation, the following hardware requirements must be met:
( 1) Biases caused by any switch (especially switches S1 and S2 - Figure 1) in both the on and

off states must be miminized and balanced.
(2) The integrator must be designed to ensure that

the integrator rate limiting (due to maximum
amplifier current) does not distort the feedback pulse. This rate limiting will affect accuracy and will limit the minimum feedback pulse
duration. The amplifier must also be designed
to minimize drift.
(3) To obtain quantum equal to a small percentage ( 10-6 percent) of the variable either
the comparator levels must be set low or the
integrator gain must be high (or both). As the
integrator gain is increased, the probability of
obtaining drift-free operation will decrease.
Thus, the requirement to obtain drift-free operation will place a limitation on the maximum
integrator gain, and comparator setting accuracy
will place a limit on the minimum integrator
(4) Switches SI and S2 must have "turn on" and
"turn off" times repeatable to 9.45 nanoseconds. To obtain this repeatability the nominal
switch time should be on the order of 50 to 100
nanoseconds. Thus the current to be switched
must be limited, which places a restriction
on the minimum value of R and therefore the
minimum quantum level.
(5) DOW,6 Howe,7 and Driban8 have presented
discussions on the effect of capacitor dielectric

absorption on the accuracy of analog integrators. The circuit to compensate for dielectric
absorption developed by Driban8 could be incorporated into the design of the IADIC to
eliminate this dielectric absorption effect.


Analog to digital interface

Getting the count pulses from the IADIC into the
digital computer is an infinitesimal problem compared
to the normal method of analog to digital conversions
which requires: (1) analog sample and hold, (2) multiplexing, and (3) analog to digital conversion. The result of this conversion is a digital number which has
to be inputted to the digital computer.
Several schemes were conceived to accomplish the
task of getting the count pulses from the lADle into
the digital computer. The final method for imputting
the count pulses was to count and store these pulses in
a special buffer register. A bank of such registers would
be designed into the digital computer. This method excites the imagination because a direct line of communication is established between the analog and digital
computers and emphasizes the phrase "copartners in
computation. "


Several papers1,2,3 have been written which tend to
validate the proposition that a hybrid computing element is the optimum device to interface an analog
computer with a digital computer, but the authors of
these papers are primarily concerned with digital to
analog communication utilizing the MDAC (Multiplying Digital to Analog Converter). The hybrid computing element (IADIC) introduced in this paper should
provide the flexibility and versatility to analog-todigital conversions that the MDAC provides to digital
analog conversion.




Hybrid analog/digital techniques for signal processing
AFIPS Conference Proceedings vol 28 pp 379-388
Hybrid techniques for generation of arbitrary functions
SIMULATION vol 7 no 6 pp 293-308, 1967
Hybrid technique for analog function generation
AFIPS Conference Proceedings vol 23 pp 213-227
An analog R. C. integrator with a digital output
Proceedings of the National Electronics Conference
vol XVI pp 611-618 1961

The IADIC: A Hybrid Computing Element

Notes on analog-digital conversion techniques
MIT Technology Press 1957
An analysis of certain errors in electron differential
analyzers II-capacitor dielectric absorption
IRE Trans. on Elect. Compo vol EC-7 pp 17-22
March 1968
Design fundamentals of analog computers components




D. Van Nostrand Company Inc Princeton New Jersey
1st ed chap 2 pp 37-41 1961
Spurious damping in analog computers
Masters Thesis Drexel Institute of Technology
pp 49-55 June 1967
Electronic analog and hybrid computers
McGraw-Hill Book Company New York chap 3
pp 110 1964

PHENO-A new concept of hybrid computing elements

Technical University
Berlin, Germany

PHENOs are based on the well-known fact that a
digital-to-analog converter with variable reference
(MDAC) can produce the product of an analog and a
digital variable. 1 While for multiplication and division
this principle can be used directly, it has to be modified
for function generation. In order to obtain a system of
computing elements in which any input or output variable can exist in analog or digital form, optionally,
D ACs and ADCs (analog-to-digital converters) are
combined. The straight-line-segment approximation of
arbitrary functions is done by splitting the (digital)
argument of the function in two parts. The first group
of r bits defines the nearest preceding breakpoint, while
the second group of (n-r) bits is used for linear interpolation (n being the digital word-length). In a second
method of function generation, which is particularly
suited for multivariable functions, digital table look-up
is combined with analog interpolation. On the base of
PHENOs, this procedure provides minimum table lookup execution time and avoids stability problems.
The ADCs are key elements with respect to operation speed. Here, adaptive continuous converters, using
the up-down-counter principle, show best performance.
Constant band width/accuracy ratio is obtained by
automatically adapted register length, i.e. for input increments greater than the least significant bit this bit is
dropped, resulting in a doubled step size, etc. The conversion rate is further increased by using a subranging
At the time being, the ADCs operate with 6 MC
dock frequency. Therewith, a continuous ADC can
track a 100 cps sine-wave with 0.01 % accuracy and 1
kc sine-wave with 0.1 % accuracy. Static errors of
multiplication, division and function break points are
less than. 0.01 % .

PHENO-equipped analog computers will essentially
not be more expensive than high-precision analog computers containing very precise time-division or quartersquare multipliers, but they will produce a much better
bandwidth/ accuracy ratio. Additionally, they require
no expensive interface when being linked with digital
computers, since the variables are partly existing in
digital form, anyhow. On the other side, PHENOs can
be used to build inexpensive, small-scale, special-purpose computers for military and process control application. For this, additional elements have been developed, for example, units which the the combination of PHENOs' with DDA-elements possible
(DDA == digital differential analyzer). As opposite
to usual analog computing elements, PHENOs
permit miniaturization and operation under difficult environmental conditions.
Principle of PHENO

In a ladder network according to Figure 1 the shortcircuit transfer conductance is2






Sk ==

(switch connected with ground)
1 (switch connected with ell)

and, therefore, .proportional to the digital number
d* == dnd n-t . . . d2d1 stored in the register. Connecting
the output terminals 2-2' with the input of an operational amplifier with feedback resistor Rr == R results
in an amplifier output voltage, which is related to the
input voltage by

e.. == ell • d*


By exchanging the input and output network of the


Fall Joint Computer Conference, 1967
er (FGDAC) may operate with variable refrence, ti
performs the operation

amplifier we have the inverse relation
eo = d*

(3 )


------=- ~io
I '









= el • f ( d * )

(5 )

If the output of one FGDAC generating the function
fl (x*) is used as reference of a second FGDAC generating the function f2(Y*), we can obtain the expression

I n-stage re~ister






which, in many cases, gives a good approximation of
functions of two variables f(x,y).
Using a FGDAC as part of an ADC gives the operation

Figure I-Principle of Df A-conversion

Hence, we obtain in the first case the product of an
analog and a digital variable, while in the second case
we get the quotient of both variables. In both cases
the results are given in analog form. In the following,
such a multiplying digital-to-analog converter will be
called 'MDAC.'
Most analog-to-digital converters (ADC) are based
on the principle that by a certain strategy the register
setting d* of a digital-to-analog converter (DAC) has
to be found in such a way that the output of the DAC
equals the input voltage et2 that has to be converted.
When using a MDAC with reference voltage ell, we can
obtain a register setting
d* == K - -

eo = el [fl(x*) • f2(y*)+a1f1 (x*)+a2f2(Y*)] , (6)


i.e., d* gives, in digital form, the result of dividing two
analog variables.
It is important to have an element for arbitrary
function generation as for multiplication and division.
In an analog computer (as well as in digital table lookup programs) the most simple solution of that problem
is a straight-line-segment approximation of the desired
function. This kind of function generation can be obtained for functions of one ( digital) variable by a
modified digital-to-analog converter, in which the argument of the fun:tion is split into two parts. The first
r bits of the digital input of length n define (in binary
code) the abscissa at the nearest breakpoint (the function being approximated, for example, by 2r straightline segments of equal length), while the remaining
(n-r) bits are used for linear interpolation within the
actual segment. For that purpose, this second part of the
digital input is fed to a MDAC which has the function
increment l::etween the two actual breakpoints to reference. Of course, it is just a matter of coding to obtain any other distribution of the breakpoint abscissa.
Since this function generating digital-to-analog convert-

(f-l being the inverse of the function f (d *) which is
generated by the FGDAC).
By com")ining the operations according to eqs. (2)
through (7) (that means combining digital-to-analog
and analog-to-digital conversions) multiplication, division, function generation or combinations of these
operations can be arbitrarily performed with analog
and/ or digital inputs and outputs.
The purpose of this new technique is to exceed the
accuracy limits of usual nonlinear analog computing
elements. Since any operation of the PHENOs is based
on conversion techniques, maximum static accuracy is
that of high-precision converters. An analog accuracy
of 0.01 % (single-scale) and a digital resolution of 14
bits plus sign can be achieved. Hence, the PHENOs
are well-matched to the static precision of best linear
analog computing elements.
The dynamic errors depend on the conversion speed
of MDACs and ADCs. The MDACs are not critical,
because all switches in Figure 1 are set simultaneously.
Even in the more critical case of variable reference
switches, their settling time (to an error smaller than
0.01 %) can be kept in the range of 1 ILs, approximately.
The conversion time of a successive-approximation
ADC is a mUltiple of that, because complete parallelism
in the ADC operation is too expensive. Even when
using an expensive subranging procedure, a conversion
rate of 200,000 per se::ond is the highest that could
be achieved till now. This extremely fast successiveapproximation ADC would lead to the same phase
error as in linear· analog elements with 60 kc 3 dBfrequency. The successive-approximation ADC starts
each conversion from zero; i.e. it does not matter
whether or not the input signals are continuous. Because the PHENOs are assumed to operate continuously, however, we can take advantage from this fact
in order to increase conversion speed. An ADC which
operates strictly on continuous signals is called a 'continuous converter.'

PHENO-A New Concept of Hybrid Computing Elements
The most simple principle for continuous converters
is that of using up-down-counters. Here, dynamic errors
are almost negligible as long as the condition holds




< - - . fc



(n being the digital word length, fc the counter clock
frequency and 2- n e erer the step size).
When the input voltage slope is greater than the
counter clock-frequency multiplied by the magnitude
of the counter increment, the ADC is 'overrated,'
resulting in a time-increasing error. fc depends on the
settling time required by the comparator and the analog
switches. It is a function of the magnitude of the least
significant increment.
It is difficult to find appropriate semiconductors for
building analog switches with variable reference and
10-4 -accuracy (circuits with alloy· chopper-transistors
with high V BE reverse voltage or circuits with field effect
transistors have a relatively poor bandwidth). On the
other hand very fast variable reference switches with
10-3-accuracy are easy to implement. Therefore, it is
of advantage to use a subranging technique by dividing
the entire input signal range into k equidistant subranges. The actual sub range in which the input is falling
is then expanded by a factor k (e.f., k == 16), so that
a conversion accuracy of kel 0-4 is solely required. When
the input crosses a boundary between two adjacent subranges the next one. has to be selected. In this paper we
will show a special technique by which that can be done
within one clock interval. Of course, the comparator
and the analog switches can now work much faster since
they have to settle only to an error less than k.10-4.
An other important measure in order to increase
conversion speed is in using an automatically adapted
register length; i.e., when the converter is going to be
overrated n will be diminished. For example, when an
actual input increment exceeds the magnitude of the
least significant bit, this bit is dropped, resulting in a
doubled step size, etc. By this means a constant bandwidth/ accuracy ratio is obtained.
As we shall show in this paper, by using this advanced technique we designed PHENOs which have an
accuracy-'_andwidth performance suiting the most precise linear analog computing elements and exceeding
the nonlinear ones.
Realization of the AD-continuous converter
PHENOs operate in a ± 10 V-range. In order to be
able to use fast current-switches of 0.1 % accuracy,
we divide the ± 10 V-range into 16 subranges. Therefore, each sub range covers 1,25 Volts of the input


voltage. A schematic block diagram of a subranging
converter ~s shown in Figure 2. In the subranging techniques one has to select, of all subranges, the one that
includes the input voltage, e.g., by subtracting all lower
subranges from the input signal. By the same operational amplifier the resulting difference is multiplied by
the factor 8. Thus, the following subrange-ADC has to
operate with the reduced accuracy of 0.1 %. Subtraction,
subrange-selecting D / A-conversion, and amplifying
must be executed with an accuracy of 0.01 % (with
respect to the input). One subrange contains 1024 steps,
which is the range of operations of the fast subrangeADC. As long as the input remains within a specific
subrange, it operates with the 6 mc clock frequency.
When running into the adjacent subrange, a new subrange must be provided with an accuracy of 0.01 %.
This operation takes much more time (some microseconds) than the clock rate of the subranging converter (0.16 fLs) gives. Therefore, considerable errors
could arise due to the slowly operating 0.01 %-accurate elements. The following section outlines measures
that eliminate these errors, although slowly operating
elements are used.

Figure 2-Schematic block diagram of a traditional ADC
with wbrang!ng

Principles of subranging continuous-converters
When the input signal is crossing the boundary of
one subrange, the converter has to switch over to the
adjacent one. If the next sub range is prepared by a
second subrange-selecting DAC, the required signal for
the sutranged-ADC is available at any instant.
For a special reason (which shall be explained later),
the subrange-ADC converts positive and negative input
voltages. As long as the voltage is positive the next
higher subrange is prepared. If it is negative, the adjacent lower subrange will be prepared.
Preparing of a new subrange is started when the input of the subrange-ADC crosses zero. Therefore, elements with 0.01 %-accuracy have a time interval available for reaching the steady state which is 1024 times
the clock-interval of the subrange-ADC. Hence, the
subrange-ADC operates over the full scale within subranges which are always in a steady-state, so that no


Fall Joint Computer Conference, 1967

additional errors can occur. The price for this IS In
providing a second subrange-selecting DAC. Figure 3
shows the block diagram of the complete continuous
The subrange-selecting DAC 'SSDAC l' is active,
when even-numbered subranges are used, and 'SSDAC
II' operates on odd-numbered ones. Whether or not
a subrange is even-numbered is determined by flipflop
FF 1, which switches the subrange-ADC to SSDAC I
or SSDAC II. Furthermore, FF 1 marks which system
is actually used and which one is in the preparing
state. Usually, subranging ADCs, which are known
from the literature, 2 have only one sub range-selecting
DAC. When the input reaches the upper boundary of
a subrange, the subrange-selecting DAC is set to the
next higher subrange, and the ADC is reset to the
lower boundary of that subrange. If the input voltage
decreases or if there is an overflow in the DAC-system,
the ADC must be switched back to the subrange just
left. This may cause an instable operation, in cases when
the input fluctuates around a subrange boundary.
This can be avoided by expanding the range of operation o~ the subrange-ADC to negative values. Nevertheless, the converter is set back to zero (and not to the

lower boundary) when the input crosses the upper
boundary. If the input is now decreasing, after just
having left a subrange, the converter can use the negative part of the new range. Due to this principle the
converter will always remain in the new subrange after
a subrange-change and, therefore, stability at the
transition-levels is secured.
If fC}r example the subrange-ADC in Figure 4 reaches the value 16, it is reset to zero and 16 is added
to the register of the subrange-selecting DAC. If the
input decreases immediately after a subrange-change,
the subrange-ADC continues to operate in the new subrange. Two special outputs ("Ae" and "i") are provided for a particular application described in section
4. Note that with "6,e" we have in analog form the
equivalent of the last 10 bits of the digital output, while
at terminal "i" we shall get an impulse every time the
input ell is going to cross a subrange boundary.
Automatic step size adaption of the subrange-ADC
Formula 8 of chapter 1 reads:
- (el )


< - - . fe

In order to reduce the time-increasing errors of the

0.01- accuracy

0.1- accuracy

register output

r---~brQnge-ADC - - - - ,


















_________ JI

SSDAC - register


- --4 bit-- --output





Figure 3-Block diagram of a PHENO-ADC

PHENO-A New Concept of Hybrid Computing Elements
usual up-down-counter ADC we can either choose a
higher clock frequency or a larger step size.
The transient function of most analog switches are
almost exponential. Thus, the transient time for 0.0 1 %
accuracy is equal to 9 time-constants. and the transient time for 0.1 % -accuracy is equal to 5 time-constants. By doubling the clock-frequency the error would
increase by the factor 100. On the other hand, errors
increase only linearily with the step size, so that a con.stant error bandwidth ratio can be obtained.

The step size 2--;;-- of a counter-ADC depends on
the magnitude of the reference voltage and the digital
word length (register length) n. The static error of
PHENO is less than tmV. Assuming a lOY-reference
voltage, we obtain a relative error of 0.01 %. With
decreasing reference voltage the step size decreases,
too. While· errors of the comparators and switches are
constant, the maximal slope of the input voltage is
By an automatically adapted register-length the required step size can be matched to the slope of the
input-voltage. The criteria for changing the step size
can be obtained by measuring the summing-junction
offset of the subrange-ADC. Traditional counter-ADCs
detect whether the summing-junction has a positive or
negative offset, and thus the counter is set in the 'up' or
'down' mode. Additionally, in our case the amplitude
of the summing-junction offset is measured by two additional comparators. According to the used step size,

the threshold voltages of these comparators have to be
varied. A converter-'overrating' may occur under different circumstances. E.g.: if there is a positive step
(i) a positive overflow, the step size has to be halved
(ii) no overflow, the stepsize has to be retained
(iii) a negative overflow, the step size has to be
For negative steps similar considerations will hold .
Hence, the sign of the last step has to be stored,
and, in order to decide how to change the step size,
that information has to be combined logically with the
outputs of the overrate-detecting comparators.
Our AD-continuous converter has 8 possible step
sizes, starting with t mV. The other step sizes are given
by successive doubling. The actual step size is stored
in a 3-flipflop counter, which determine the register
length and the threshold of the comparators.
Implementation of PHENOS

The elements
In table I existing standard types of PHENOs are
listed. In addition to elements for AD- and DA- conversion, multiplication and division as well as function
generation, special elements such as incrementing
ADCs and accumulating DACs have been developed.
They give the possibility of combining PHENOs with
digital differential analyzer elements (DDAs). By combining them, new systems can be created, e.g., hybrid
integrators, etc.




Figure 4-Scheme of sub range-transition
The numbers at the arrows indicate the range of
operation of the various subranges, the encircled
numbers give the setting of the actual SSDAC


Fall Joint Computer Conference, 1967

It should be emphasized that the possibility of "slaving" several elements also exists. For example, one
ADC can be connected with two or more MDACs or
FGDACs, giving the possibility of" "multichannel"
multiplication or function generation.


Analog switches and variable function
generator circuitry
The operating speed of MDACs and ADCs depends
mainly on the transient time of the analog switches. In
our subranging continuous converter two types of analog switches are required: (i) a very fast one with
0.1 % -accuracy and (ii) a very accurate switch
(0.01 %), which is uncritical in terms of speed.
Newly-developed, inexpensive variable reference current switches are meeting these requirements. The transient time of the simple, 0.1 % -accurate switch plus
comparator (/LA 710) is 150 ns. The transient time of
0.01 %-accurate switch is about 500 ns.
The principle of function generation has been ex.plained in section 1. The most significant r bits of a
digital number with length n define the breakpoints.
The remaining (n-r) bits are used for linear interpolation.
The function-ordinates at the breakpoints are adjusted by potentiometers, which are sources with inductive output impedance. The switches must provide
that the currents flowing in the potentiometers are not
affected ty switching (Figure 5).
As Figure 5 shows, the settings of potentiometers
Pt. . . P r are not affe~ting one another. A-::cording to
the digital number, a decoding matrix causes one pair
of FETs, e.g., F t and F't, to be switched on and the
transistors TI and T2 to be switched off. All other
switches are used the opposite way. If Fl is switched on,
the voltage -VI appears at the output of amplifier
At. At the same time a current (proportional to the
difference (V2 - V t » flows through the FET'2, resulting in the voltage -(V2 - Vt) at the output of amplifier
A 2. -(V2 - Vt) acts as reference voltage of a MDAC
which linearily interpolates between breakpoints.
The FET-switches 1 through r operate with an accuracy of 0.01 %; their settling time for that accuracy
is atout 2/Ls. By inserting them in the feedback loop of
an operational amplifier, errors due to their temperature-sensitive on-resistance are avoided. The FETs l'
through r' switch the difference voltages of two adjacent breakpoints to the summing-junction of the amplifier A2. Here, the temperature-variable on-resistances
of the FETs are part of the resistors which define the
slopes of the straight-line segments. This is possible
since the maximum function increments between adjacent breakpoints are limited and only small error
propagation can occur.






IL- _
_ _ _ _ _ _ .J

interpolating MDAC
Figure 5-Circuitry of a FGDAC (schematic)

The transistors T t through Tr are in on-state when
the related FET-switches are switched off. By that
measure, discontinuities of the currents flowing in the
potentiometers are avoided.
Incrementizer for linking hybrid and DDA
DDA-elements are processing increments of digitally represented variables. Generally, these increments
1, -1, or 0, corresponding to
only have the values
the least-significant bit of the digital word.
When applying that DDA-technique to analog signals, increments smaller than the digital aperture may
occur if the rate of change of the analog signal is too
small (compared with the clock interval). Thus, the
DDA may not give any response at all, though the
analog signal can slowly vary over the entire scale.
This difficulty can be avoided by accumulating consecutive increments and continuing that until the sum
is going to exceed the threshold which corresponds to
the least-significant bit. In our counting-:ADC this procedure is performed by comparing the sum of all preceding output increments with the actual input. Thus,
a counting-ADC can be used for linking analog and


PHENO-A New Concept of Hybrid Computing Elements
Hybrid integrators
Analog computers perform integration with .respect
to time. The generalized integration of arbitrary functions can be performed with a hybrid integrator. For
this purpose integration is approximated by Euler's

z(x) == K S ydx == Zn(X)








K °


Yk o 6 xk, 6Xk == +1 or -1 (10)

Referring to Figure 6, the hybrid integrator consists of two ADCs and one DAC. ADC I produces
the increments 1 oder -1 (with respect to the clock
period T*l). The analog switches SI and ~ generate
the product (Yn6xn) which is added to the sum


as part of a combined hybrid computer system offer
particular possibilities which do not exist in conventional hybrid systems.
As an example of great practical importance, we consider the problem of multivariable function generation.
On the base of PHENOs, the well-known digital
table look-up routine can be combined in a simple
way with an analog interpolation, resulting in minimum
execution time. Because of a direct analog path between input and output signals, the stability problems
of pure digital function generation are avoided.
The generation of arbitrary functions is executed by
straight-line-segment approximation. For example, in
the case of a function of one variable we have the interpolation formula


= fl



+ mi (x -

for XI

obtained before. The result is converted by ADC II
which works with a higher clock rate. The output of
ADC II is stored in DAC I (in digital form) and its
analog equivalent is fed back to summer S. The resulting Zn(X) is available in digital as well as in analog


XI) ,
X L. XI+ 1 ; fl == f(xl)


The breakpoint values fl (i == 0,1,2 ... ,B-1), B being the total number of breakpoints (e.g., B==24==16,)
and the average slopes ml are stored in the memory of
the digital computer. The necessary mUltiplication of
(mi and X-Xi) now can be performed by a MDAC.
Note that now, contrary to the FGDAC which was
described in section 3.2, the slope is given in digital
form while the function argument is analog. Hence,
for the digital table look-up routine, the argument x
first of all has to be converted by an ADC.
Because of the special subrange technique used in
the PHENO-ADCs, the last 10 bits of the 14-bit output word are available in analog form . .If the remaining 4 most-significant bits are used in order to define
the function breakpoint (corresponding with B == 24
== 16), the last 10 bits or their analog equivalence,
respectively, are identical to the increment (x - XI).
Thus, we can use the very simple setup outlined in
Figure 7.

Figure 6-Hybrid integrator, programmed with PHENOs
NOTE: Asterisks denote digital variables

PHENOS in hybrid computer systems
For being linked with a digital computer, PHENOequipped analog computers only require an inexpensive control interface but no data interface. Since all
required analog-to-digital conversions are simultaneously performed by independent continuius converters, no
errors due to the time shift of analog multiplexing or
to the skewing time of sample-and-hold circuits can
o:::cur.4 Moreover, PHENO-equipped analog computers

Figure 7-Hybrid generation of functions of one variable
on the base of PHENOs

Here, the function argument X is fed into a PHENOADC and converted in digital form. Simultaneously,


Fall Joint Computer Conference, 1967

the ADC gives out the analog signal (x - XI) which
is fed into a MDAC in order to build the product
m*. (x - XI).
The digital representation x* of the function argument is transferred into the digital computer, but only
the 4 most significant bits are required for the table
lpok-up routine. By appropriate indexing these four
bits can directly be used to give the (relative) addresses
of the memory cells in which the corresponding breakpoint abscissa f. and the average slopes m *. can be
found. 3 Therefore, the digital program has to execute
the following routine:
(i) Load x* into accumulator;
(ii) Shift x* to the right so that the most significant
4 bits give the relative address of the memory
cell in which f* I is stored;
(iii) Load f*J into DAC;
(iv) Add B to the address. This modification gives
the relative address of the memory cell in which
m *I is stored.
(v) Load m*1 into MDAC.

Now, for any breakpoint of the two-dimentional grid
the values f*J,k' mXJ*, and mYk * have to be stored. An appropriate modification of the above outlined special
indexing technique leads to a very efficient table lookup routine by which those values can be loaded into
the DAC and the two MDACs (requiring now 38 /Ls
on the SDS 930). Note that only one additional pair
of ADC and MDAC is necessary for each additional
input variable.

(In the case of the digital computer SDS 930 for
which the above routine was programmed, the entire
instruction sequence requires about 16 mem9ry cycles
== 28 /Ls).
That digital table look-up routine is not necessarily
part of the intrinsic hybrid computation. Since the ADC
provides an interrupt signal ("i") when the input 'x is
going to cross a sub range boundary (which is identical
with crossing a function breakpoint), the hybrid computation can be interrupted. While the analog computer
remains in the 'hold' mode, the actual values fl* and ml*
can be replaced by f*l+l and m*l+l, and then, the hybrid
computation may continue. During the real-time operation of the combined system there is an analog path
between input and output of the function generation
procedure. Hence, the stability problems are avoided
which can arise when a digital computer is inserted in
analog 100ps.4
We have to emphasize that this procedure is similar
to the one previously proposed by A. I. Rubin. 5 But
when PHENOs exist, our approach is simpler and
less expensive.
The above principle .can easily be expanded to the
task of generating functions of more than one variable. If, for example, a function of two variables f(x,y)
has to be generated, we use the interpolation formula *

PHENO offers a particular flexibility in building
precise, inexpensive, miniaturized, hybrid special purpose computers. If only 'static' operations have to be
performed (su~h as summing and subtraction, multiplication and division, function generation), a combination of PHENOs and analog summing amplifiers will
be sufficient. The accuracy is strictly dependent on resistors, electronic switches, and operational amplifiers.
Since all these components can be realized with small
temperature drift, operation under extreme environmental conditions is possible. A high degree of integration and, therewith, miniaturization can be obtained.
In the case of 'dynamic' problems, i.e., problems
which include integration, either the hybrid integrator
of section 3.4 may be used or a combination of PHENOs with DDA-elements. The first approach is advisable if only a few integrations are required. For the
second approach we shall give a typical example.
In case of a special purpose computer for solving a
proportional navigation problem, the solution of the
following equations is required
dl'M == K • dI>A-integrator
V Mdul
u1dVM I>I>A-integrator
V Mdu2
u 2 dVM I>I>A-integrator
accum ulating-I> AC

• dO"
Ko • f(e*)
K· 1



AMBILOG computers: hybrid machines for measurementsystem calculation tasks
Proc. 17th Annual ISA conf New York Oct 1962
A nalogl digital conversion handbook
Maynard Massachusetts 1964
The application of hybrid simulation for VTOL-aircraft
and certain reentry-problems
Proc. 4th Internat. Analogue Computation Meetings
Brighton 1964 pp. 18-29
Error-corrected operation of hybrid computer systems







d k=f(ei2 ) ej2

G d



Figure 9 shows the resulting computer block diagram on the base of PH ENOs according to Table 1
and I>I>A-components.



eo =e·l·d~











eo=eilof(d' .



eo =ejr r.1dk /Jd

Table I

~ eo



Fall Joint Computer Conference, 1967





Figure 9-Block diagram of a special purpose computer,
solving eqs. (13)-(19). The computer consists
of PHENOs and DDA-elements

Textile graphics applied to textile printing
International Business Machines Corporation
New York, New York

Description of textile graphics

Textile Graphics is a computer-aided technique l for
developing a textile design and textile patterning
mechanism information from an artist's drawing. The
computer is operated by a textile designer-technician who understands the particular textile machinery for which he is adapting the original drawing.
The designer-technician inputs the original drawing
by a combination of graphical input devices; tracing
on an on-line digitizing tablet, drawing free-hand with
light-pen on the screen of the IBM 2250 and manipulating the design with function keys.
After the original design is in core it is developed
into the information to control the patterning mechanism of a specific kind of textile machinery. For
example, a design to be woven must represent each
interlacing of warp and weft; a design to be knitted
must represent each stitch of the knitted mesh; and
a design to be printed must represent the areas of each
color as separate images.
The development of this information is done according to both structural and aesthetic rules. The designer-technician interacts with the computer using
the function keys, light-pen, 2250 and photographic
When the design control information is developed,
it may be outputted under function key control.
The form of the output is commensurate with a specific patterning mechanism. For example, for a Jacquard loom which is controlled by punched cards,
Textile Graphics output is the pattern of the holes in
these cards; for a Raschel machine which is controlled by a chain of cam-links, Textile Graphics output is a map of the heights of the successive links;
and for textile printing machines which are controlled by etched copper rollers or silk screens, Textile Graphics output is a set of color-separated films.

Previous applications of textile graphics
The first application of Textile Graphics was to
jacquard weaving. 1 The Jacquard loom is controlled
by punched cards and the designs which it produces
may be described in computer terms as rectangular
(mxn) binary matrices with a "1" in any position. The
size of m and n may vary from "one" to several thousand.
This direct analogy between the representation of
computer data and textile design information was
noted in a description of Charles 8abbage's Analytical Engine. It said that his "computer" weaves algebraic equations like a Jacquard loom weaves flowers. It is this analogy which motivated the original
work in Textile Graphics. 2
Textile Graphics was then applied to developing
design control information for lace which is manufactured on a Raschel machine. Although the Raschel machine is a warp knitting machine and not a
weaving machine like the Jacquard loom, its design
control information is currently developed on a grid
paper analogous to the point paper described in Ref. 1.
This practice permitted the natural extension of Textile Graphics to lace and other knitted fabric design.
A new application of textile graphics
This paper describes the application of Textile
Graphics to textile printing. The application to textile printing differs from applications to other forms
of textile design because the printed textile design is
applied after the textile is fabricated.
Since the patterning mechanism is independent of
the fabric forming mechanism, there is no need to
represent the design on a grid paper, (which for other
textiles is translated into row by row, design forming
information). However, we will show that for a large
class of designs, the color-separated images which
printed textile designs require can be more efficiently
produced using Textile Graphics.



Fall Joint Computer Conference, 1967

First, the major current methods of producing
printed textile designs are presented. Then, the types
of designs are analyzed and reclassified to give more
insight into new methods of obtaining color separations.
We combine different parts of current methods with
Textile Graphics to expedite the production of the
design control information (color separations) for
approximately half of printed textile designs. In
addition, a new category of printed textiles, whose
color separations are easily generated using Textile
Graphics, is exhibited.

Current method of preparing designsfor
textile printing
Description of textile printing
There are two major methods of printing designs on
textiles. One of these, a roller method, uses etched
copper rollers to apply the paint directly to the fabric.
The area to be printed is etched in intaglio and the
remaining portions are left intact. A separate roller
is required for each color.
The other method, a screen process, uses fine silk
screens through which the paint is "squeegeed" onto
the fabric. Here, the area to be printed is left intact;
the remaining portions are masked. A separate screen
is required for each color.
Since the roller printing method accounts for the
bulk of textile printing production, we will illustrate
the application of Textile Graphics to this method.
There are analogous procedures for the screen
Designs to be etched into copper rollers are transferred to the rollers in one of two ways. Either they
are traced, with a stylUS, into a coating on the roller,
or, a film bearing the design is wrapped around the
roller and then photographically exposed. The first
of these processes is called the "pantographic process"; the second is called the "photographic process." Each of them will now be described in greater
An outline of the pantographic process
The starting point for producing a copper roller by
the pantographic process is an artist's sketch. The
first step in this process begins by putting the artist's
sketch in a magic-lantern-like device and projecting
it, enlarged, on a coated zinc plate. The projection is
then traced with a sharp stylus which incises the design into the plate. The people who perform this operation are called sketchers and are the most skilled
and use the most ingenuity in the pantographic operation.

During this process "improvement" may be made
to the original design. For example, lines intended to
be made symmetric or with uniform thickness, which
were not made precisely so by the artist, will at this
stage be made so.
In addition, there may be a special treatment along
the boundary of two adjacent colors. Frequently an
extra line is placed at a specific distance from the
boundary. This line, called a double line, prevents
adjacent colors from running together. This double
line does not actually appear on the printed fabric
but is put on the zinc plate and later traced by stylus
onto the copper rollers.
After the zinc plate is prepared, it is given to another
person called a tracer. The tracer puts the plate on
the flat table-like surface of a machine called a pantograph. The pantograph machine has a stylus with
which the tracer will follow lines incised into the zinc
plate. As the tracer moves this stylus along the groove
in the zinc plate, a row of styli are simultaneously
moved. These other styli are tracing the design onto a
coated copper roller with the appropriate degree of reduction and number of repetitions across the width of
the roller. The areas of the zinc plate have been color
coded, and the outlines of each color are traced onto
a separate roller.
In addition to the original outline which the artist
drew, and the double boundaries mentioned above,
other information is imparted and traced onto the
copper roller. For example, a sizeable flat area will
be incised with parallel, diagonal lines called a
ground. When to use ground lines is part of the knowledge of the engraver in the shop who knows that the
paint must be kept at a certain level in the area to
prevent blotching and running during the printing
process. Therefore, he will specify to the tracer the
density of the lines within each area. A device called
an indexing drum is put on the pantograph and aids
the tracer in placing these ground lines into the
appropriate areas.
Another addition to the original artist's information
is called slashing: the design is placed on the roller
so that lines which are perpendicular to the edge of
the roller will be slightly angled. The reason for this
is so that the metal doctor blade, which squeegees
the paint, will not tend to break down the edges
(boundary outline) of the roller. Slashing is anticipated
in the initial set-up of the styli which trace on the
roller. Each successive stylus is progressively displaced along the circumference of the roller.
After tracing, a roller is sent to a touch up bench
where it is reviewed and imperfections are corrected
before the etching process. The roller is then dipped
in acid to etch lines into it. Lines which are to be

Textile Graphics Applied to Textile Printing
etched deeper go through more than one etching stage.
Between these stages, certain areas are painted out.
After the rollers are etched, they are chrome-plated.
The photographic etching method
Implicit in the discussion of the pantographic method was the assumption that the original artist's
design could indeed be conveyed by tracing. This is
certainly not true of all original artist's designs. Many
of them, which have been created by brush effects,
and so forth, cannot be recreated by a stylus alone.
Therefore, other techniques are necessary to transfer
the original art work to the copper rollers. These
other techniques are divided into three major categories: 1. those which are purely photographic; 2.
those which are purely manual; 3. those which are a
combination of photographic and manual. The object
of each of these processes is to produce color separation films - that is, a separate film for each color used
in the printing process. This is not a separation into
red, yellow, blue, and perhaps black. When the textiles are printed, the color which actually appears
?n the. fabric is the color of the paint used in printmg. It IS not a mixture at printing time of the primary
After these color-separated films have been made,
the process for etching the design onto the drum is the
same for each of the three techniques named. Therefore, we . will discuss this common etching process
after the individual processes for preparing colorseparated films.
Photographic etching Type 1purely photographic
In cases where it is desirable to reproduce the original artist's drawing exactly in the printed textile, and
furthermore, where the number of colors in the design
as well as their nature is such that each color can be
separated by a series of photographs with appropriate
color .filters, then the purely photographic Type I process IS employed. This is, however, applicable in a
minority of the cases. In the purely photographic
method, the original design is photographed once for
each color in the design. A filter is used to remove all
of one color from the design. The resulting film represents the filtered color separated from the other
colors. This part of the process produces one film
for each color.

ceramic designs as well, the original art work is not
of an acceptable quality for direct reproduction. The
r~asons. for this are many, but, for example, a simple
hne whIch maybe of varying degrees of thickness in
the original art work must be more carefully drawn
to have only a single degree of thickness for the reproduction process. Even the artist would acknowledge this and it is not intent which produces the original uneveness but ~ather the carrying out, on impulse,
of the idea. This kind of inaccuracy seems to be a
necessary concomitant of the artistic expression. The
restraint and precision necessary for the reproducible design is not and cannot be present in the original
creation. There have been many attempts to constrain
the artist as he works, constraining him to particular
colors or to work with a precision with which he does
not now work. These attempts have been unsuccessful, and we believe it is because of something inherent
~n the ori?i?al creative process. Therefore, the majorIty of ongmal designs must be manually recreated.
In this manual method, the art work is placed on a
table with light penetrating it from below. A clear
acetate film is placed on top of the artist's drawing.
Another person, also called an artist in the mill art
shop, prepares an acetate mask for each color of the
original design. He may prepare an acetate copy of
a? original color using brushes. He is of course doing
hIS best to reproduce exactly what he sees shining
~h~ough the light table. However, since this is a copy,
It IS to some extent an interpretation, no matter how
faithful he attempts to be.
Type III - A combination of photographic
and manual methods
Some of the manually painted acetate masks may
be negatives of certain colors, others may be direct
copies, hence positives. By photographically com?i?ing n~gative and positive films in different ways,
It IS pOSSIble to create masks of other areas.
In the simple example shown in Figure 1,


Photographic etching Type 11purely manual
As in the case with the reproductions of most art
work in textiles, and also true in some wall paper and


Figure I-Color "B" is the negative of colors "A" and "C"


Fall Joint Computer Conference, 1967

if one creates films for A and C, then a film for Bean
be created' by photographing A superimposed on C.
This third category may use some of the original art
work to photograph through acetate masks. For example, if there is brushwork in the original which is
directly reproducible then it may be photographed
and combined with acetate masks of other areas.
Choosing method I, II or III
There are cases when it would appear that it purely
photographic method is applicable. However, in many
cases, there may be an additional consideration;
namely, the design will not evenly fit into the basic
repeat size of the fabric on the printing machine.
Therefore, it must be reduced or expanded by a 'certain
percentage. Although the camera can be adjusted to
perform this reduction or expansion, nevertheless,
this results in producing a striated effect on the negative rendering it inapplicable for direct photographic '
reproduction. In cases such as this, a design which
seems to be of the purely photographic type may actually be of the purely manual type.
Common processes to types I, II, 111photographic etching
After the original color-separated films have been
made by one of the three methods above, each film
is used to produce what is ,called a long film. The
long film bears the original design with as many repeats of it as are necessary to fully' cover the roller
and is the same size as the copper roller, that is, the
same width and as long as the circumference of the
roller. This long film is wrapped around a copper
roller which is then photographically exposed and
In order to make the long film, the individual
color-separated films are put, one at a time, into a
machine called a "step and repeat" machine. The
data which accompany the original color separation
film to this machine consist of the number of times
the design will have to be repeated on the drum, and
the placement of each repeat. There are step and
repeat machines which accommodate these data in
some automatic method such as a punch tape control.
Other models set the data manually. However, the
purpose of the machine is to subject the color-separated film to a number of exposures in different positions. They will be developed on the single "long
film." After the long film is developed, it is sent to a
room for inspection and correction before it is
wrapped around the copper roller and exposed. The
roller is then etched in acid.

Applying textile graphics
Categories of printed textile designs
From the previous descriptions of the two basic
methods of preparing copper rollers, it seems reasonable to divide textile print designs into two categories: traceable designs and non-traceable designs.
Traceable designs are those whose boundaries
can be created or recreated (traced) by a stylus.
The areas inside the boundaries are characterized by
flat painted effects which could be made by a brush
although they might as well be made by a device such
as a felt-tip pen. Non-traceable designs are those
which do not possess these properties. They are
characterized by brush and stipple effects.
It should be obvious that traceable designs could
be produced on a copper roller by either the pantographic process or the photographic process as these
two methods now exist. Indeed what we call traceable designs are sometimes now produced by either
process, so that calling such a design by the name
"pantographic type" as the industry now does is an
artificial distinction.
Using textile graphics for traceable designs
Textile Graphics may be used to develop long
films for traceable designs which constitute about
half of printed textile designs. The input to the computer is an artist's sketch and the output is a series
of color-separated long films.
There are three phases of this computer-aided
application: input, development and output. During
the input phase, part or all of the original artist's
drawing is traced on a digitizing tablet; any untraced
portions are built up with "symmetry" and other
function keys. The regularizing of the design (described above), which is currently done by the
sketcher, is done in this phase.
In the development phase, the designer-technician
interacts with the computer to develop the additional
information needed for printing the design. This information, (described above) which consists of color
separations, double boundary lines, ground lines,
and slashing is currently divided between the sketching and tracing phases of the pantographic operation,
or between the painting and photographing phases of
the photographic operation. The purpose of this
development phase is to develop one complete repeat of the design for each color.
During the output phase, the designer specifies
the "step and repeat" information to the computer
and a series of long films is outputted on the photographic plotter.

Textile Graphics Applied to Textile Printing
Input - phase I

Because a great deal of regularizing "of the original
artist's sketch takes place during the tracing phase or,
what is called in the printing mill, the sketching phase,
it is necessary to retain this tracing in any computer
assisted process.
The artist's sketch is entered into the computer by
tracing it on a digitizing device. The tracing styli of
commercially available digitizers are electrostatically
or capacitively coupled to a flat surface upon which
the art work is positioned. As the tracer moves the
pencil-like stylus along the boundaries of the design,
this outline coordinate data are transmitted into the
computer. The data are collected in the computer's
main storage and simultaneously displayed on the
IBM 2250 display screen. The 2250 also has a keyboard of "function keys." When the operator depresses one of the keys, the computer program
determines which key was depressed and branches
to the appropriate section of the program to perform
the requested "function." Using these function keys
and the light-pen, the designer-operator can translate,
enlarge, reduce, erase, or repeat part or all of the displayed design. If the design has symmetry, the
operator may elect to trace only a portion of it and
request the computer to generate and display the remainder reflected about any chosen lines of symmetry.
The advantages of this input technique over both
the tracing that is performed in the pantographic
method and the painting that is carried out in the
photographic method are significant. Less care
and precision is required of the operator (sketcher)
because the program "smooths" the free hand tracing.
Even assuming no data smoothing, the tracing is
physically easier. It requires no more pressure on the
stylus than that normally used for pen or pencil on
paper, while in the pantographic process, the sketcher
must inscribe the design into a zinc plate, and in the
photographic process he must paint the outline on
film with brush and ink.
The on-line graphic devices speed up the tracing
phase of the process for a number of other reasons:
(1) The pantographic sketcher is working on a
design at a fixed enlargement. The simpler areas of
a design are unnecessarily traced at this enlargement.
Conversely, the photographic sketcher is working
with a design at actual size, so that the complex
areas of the design must be painted at actual size.
The computer-aided approach permits the sketcher
to trace various sections of the design at different
degrees of enlargement. Under function key and light
pen control, the completed sections are then overlapped and given a common enlargement factor.


(2) When there is symmetry present in the artist's
sketch, the sketcher may need to trace only a portion
of the design. The computer program may calculate
and display the remaining symmetrical portions.
(3) Any regular shapes, e.g., squares, rectangles,
and circles, present in the design would not have to
be traced at all. The desired shape is retrieved from
an expandable library of frequently used shapes stored
in the computer, and displayed on the CRT. It is
given the required degree of enlargement and then
rotated and translated into position within the design.
(4) Sketching errors are easily corrected with the
light pen.
(5) It may be clearly the artist's intent that lines of
varying thickness in his sketch should actually be of
constant thickness. The sketcher, using brush and
ink, would find this operation tedious, at best. Using
light-pen and function keys, the sketcher maintains
uniform line thickness of any desired amount.
(6) Both the tracer operating the pantograph
machine and the sketcher painting acetate film will
circumscribe the entire outline twice. In the pantographic process, the boundary line separating two
colors will be traced on each of their respective
rollers, while in the photographic process, the boundary line separating two colors, will delimit each area
painted on their respective films. Tracing on a tablet
will eliminate all of the former tracing operation and
half of the latter.
(7) In pantographic tracing, if the length of the
basic design is a submultiple of the roller circumference (and it frequently is), additional complete
tracings are required. A digitizing tablet eliminates
this requirement.
Development - phase II

When the outline of the design has been completely transmitted to the computer, a function key
will initiate an algorithm which assigns a unique label
to each disjoint area of the design (Figure 2), and
displays the labeled areas on the 2250. This algorithm
is described in detail in Ref. 1. It performs a raster
scan of the design and assigns a zone number to each
row segment between "strikes." Every zone is
checked against the preceding row to determine if
there is any vertical overlapping. If there is, the current zone is given the same label as the zone with
which it has common columns. By successive applications of this process, and reassigning labels when it
becomes apparent that two zones are equal to each
other, it is possible to separate all disjoint areas.
In Figure 3, when the scan reaches row (n + m) it
detects that the entire row is one zone. This row-zone


Fall Joint Computer Conference, 1967

Figure 4 - Example of zone diverging

Figure 2 - Design with each disjoint area assigned a unique label


n + m


Figure 3 - Example of zone merging

is the same as zone 1 because no curve has intervened.
On the other hand, the zone of this row is the same as
zone 3 for the same reason. Therefore, the algorithm
concludes that zone 1 and zone 3 are in the same connected area. A table of zone equivalences is kept, and
after the entire design is scanned, each row-zone is
assigned its unique area label.
Figure 4 is the inverse of Figure 3.
I t should be noted that this algorithm does not make
demands on the· user to label his own areas as he
creates them, a common procedure in some graphics
applications. The purpose of our a~proach is to
permit the designer to operate as naturally as possible.

Colors are separated in the following way: the designer uses a function key to enter the "EQUATE"
mode. Then he detects, with the light-pen, the labels
of all areas which he wants to be the same color. These
labels all become the same as the first label detected.
A separate file is created containing the set of boundaries for this color. This process is repeated for each
Some areas of different color, which have a common
printed boundary may actually have such boundaries
etched into the respective color rollers at a slight
displacement. This displacement prevents "bleeding"
of the paint during printing. Such a displacement can
be specified on the total design by specifying a double
line at such places. The designer specifie-s, with function keys and light-pen, the areas and the amount of
displacement between their common boundary. Then
a double line is created along this boundary which
will give rise to the proper displacement on the rollers.
The ground lines, which are parallel, diagonal
lines within., the boundaries of sizeable areas, are
used to prevent the paint from running out of the
intaglio area on the roller. The areas which need such
lines are determined by an engraver and specified
by him on the original drawing. The designer-technician transmits this information: name of area,
angle of lines and distance between lines - with function keys and light-pen. He may display the design
on the 2250 either with or without these lines depending on whether he is looking to make a technical
or an aesthetic judgment.
The engraver also specifies the slashing angle of
the design. The designer, who transmits this, may also
view the design with or without this "angling."
Output - phase III

The output phase of the process is the generation
of "long films." These are efficiently produced by an
on-line high speed photographic plotter. The film is
wrapped around a cylinder and the cylinder is rotated

Textile Graphics Applied to Textile Printing
under a CRT. The scanning electron beam of the
CRT is digitally modulated, res~lting in a plotting
time that is independent of the density of the information plotted.
The computer program was initially supplied with
the exact width and circumference of the copper
rollers to be used. The basic design has been exactly
scaled and adjusted to provide the specified number
~f repeats, both vertically and horizontally, that will
completely cover the roller.
A separate film is now plotted for each roller in the
design. For example, the design shown in Figure 5 will












Figure 6a,b,c- The three color separated films of design
shown in Figure 5

A new designing tool
Figure 5 - Three color design

result in the color separated films shown in Figure 6.
The double line, ground lines, and slashing (which
are not shown in the figure) would, of course, be
present. Using the on-line plotter to automatically
produce the "stepped and repeated" long films has
eliminated the set-up time and possible errors that
result when using either the engraving machine in the
pantographic process or the "step and repeat" machine in the photographic process.
Looking ahead to a "second generation" textile
graphics system, it appears feasible to replace the
film and cylinder of an on-line plotter with the copper
rollers and to directly photo-expose the design.

With Textile Graphics it is possible for the designer to do something which he has not been able to
do before.
Both the photographic etching process and the
pantographic etching process have a library of
"effects." For the pantographic process this is a set
of small round mills which are pressed onto the roller
over its entire surface; and for the photographic process this is a library of negatives with repetitive
patterns. Both methods use these libraries to generate
an entire copper roller with this effect repeated over
We store such a "library" within the computer.
While sitting at the 2250 console, the designer can
specify any of these "effects" to occur within any
disjoint area which he points to on the screen. This


Fall Joint Computer Conference, 1967

greatly enhances his ability to generate patterns
since· he can use these effects like a Jacquard designer
uses "weaves."1
An illustration of this technique is shown in the
following figures. 7
The outline of the design is the same as Figure 5.
The design is to be printed in four colors. Areas 1, 4, 7
are color #A, areas 2, 6, 8, 9 are color #B, area 3, 5,
color #C. The background, area 10, is color D. Note
that in areas 1, 4, 7 there is an "effect" which is'ruso
color D. This is represented in figure 7.
We have demonstrated a computer-aided method for
. generating color-separated "long films" for . traceable textile designs; starting with an artist's drawing.
These films are the direct input to the roller etching
This method merges parts of two processes which
are almost distinct at the present time. Namely, the
tracing of the pantographicpro'cess is maintained, but
the etching is continued by the photographic process.
This method is a new application and extension of
the Textile Graphics techniques described in Ref. 1.
Previously, Textile Graphics had been applied only
to Jacquard weaving and to warp-knitting.
We have shown that Textile Graphics can significantly shorten the lead time between the creation of
the original art work and the etching of copper rollers.
The next logical step is to tie the technique into a
fully integrated system monitoring the other operations in the mill. For example, the colors specified for
the design, and the anticipated yardage to be· produced using this design, would be inputs to inventory
control and production scheduling programs. Raw
material requirements, finished goods inventory,
costing" and printing machine down-time analyses
are other areas of importance that can be made available to the textile manufacturer on demand.





On-line textile designing
Proceedings of ACM 1966 National Conference p 537
The textile designer of the future
Handweaver and Craftsman p 8 Winter 1966
Warp knit engineering
National Knitted Outerwear Association 1966





Figure 7 a,b,c,d - Color separated films for four color design
showing "effects"

Holographic display of digital images
by L. B. LESEM and P. M. HIRSCH
IBM Scientific Center
Houston, Texas

Rice University
Houston, Texas

and transform it into a optical hologram, thereby allowing us to construct the three-dimensional image of
the scatterer of the sound waves. The same procedures
would translate a radar hologram into an optical one.
These processes may also make possible magnification of microscopic images in the computer; the optical
hologram of a microscopic object could be translated
so as to yield a greatly magnified image. Such an image
may well be free of the aberrations which so plague
three-dimensional microscopy.
The fulfillment of these ideas depends upon the
solution of several problems which have inhibited the
development of computer-simulated "holograms. Efficient
computational techniques must be utilized in order that
large-scale holograms may be generated in reasonable
amounts of computer time. In this paper, we discuss
first the mathematical representation of holography,
then the computational techniques which we have used,
and finally we exhibit some of the results of our efforts.

An optical hologram is a two-dImensional photographic plate which preserves· information about the
wavefront of coherent light which is diffracted from
an object 'and is incident upon the plate. A properly
illuminated hologram yields a three-dimensional wave,front identical to that from the original object, and
~hus the observed image is an ~xact reconstruction
of the object. The observed image has all of the usual
optical propertie~ associated with real three-dimensional objects; e.g., parallax and perspective.
The computer-simulation of the holographic process
potentially provides a powerful tool to enhance the
effectiveness of optical· holography. The construction
of holograms in a computer provides a potential display device. For example, mathematical surfaces can
be displayed, thus permitting design, to be visualized
in three dimensions. In addition, computer generation
of holograms can provide a new optical element (Le.,
lenses, apertures, filters, mirrors, photographic plates,
etc.) without introducing the aberrations usually associated with such elements. Thus "perfect" systems
can be examined, and experimental parameters can be
easily varied. Also, a computer can perform operations, such as division, which are difficult or impossible,
using real optical elements. Furthermore, computer
holography can be used to filter the degrading effects
of emulsion thickness and non-uniform illumination
from optical holograms.
The computer generation of holograms is part of
a larger problem. Interpretation of holograms; i.e., the
construction of digital images from holograms, con5titutes the "inverse" problem. Together, these two
processes hold considerable promise. One can construct
computer techniques which would take an acoustic
hologram (the wavefront from a scattered sound wave)

Mathematical representation of the
holographic process

Consider a monochromatic wave from a point source
Po, which is incident upon an aperature A in a prime
opaque screen. Suppose the screen is a distance r from
Po and let the point P lie a distance s from the screen.
Using Kirchoff's boundary conditions (Born and
Wolf l ) one obtains the so called Kirchoff diffraction




cos(n,s)] dA

where B is constant which depends on the initial
amplitude of the wave. In the limit of small angles and



Fall Joint Computer Conference, ·1967

plane wave illumination this integral further can be
U(a,b) -


f f


F(x-a, y-b) dxdy


where *
F(x-a, y-b)

= ex p ~r 'k [(x-a)2 + (y-brl] 1~

L 2z


The integral given in equation (2) can be extended
by superposition to become
T *.F = B

f f

T(x,y)F(x-a, y-b) dxdy



where the region A is a collection of apertures each
with transmittance described by the complex function
T(x,y). The integral in equation (3) is a convolution
(T*F) of the function T(x,y), the image, with the
function F(x-a, y-b) , the propagation function.
If one adds a plane reference wave, ArelkOa, incident
at a small angle () to the hologram plane to the diffracted wave front, the intensity of the total wave
front is given by:

I T * F (a,b) + Arelkoa 12
= :T * F (a,b) 12 + A/ + (T * F)Are-lkOa
+ (T *F)* Are-Ikoa

In the reconstruction process, the hologram whose
plate darkening corresponds to the function H(a,b)
is illuminated by a plane, coherent, monochromatic
wave. Again, there is a convolution, but now (H(a,b)*
F (a-x, b-y». The result of this convolution is three
wave fronts: A wave with amplitude I T *F(a,b) 12
A/ is propagated in the direction of the illuminating
wave. A wave with amplitude (T.F) * F is propagated
at an angle () to the illuminating wave. This wave yields
a real image, or a reconstruction, of T at a distance z.
A wave front with amplitude (T.F).F is propagated
at an angle -(} to the illuminating wave. This wave
is identical with that which would be observed from an
object located a distanc~ -z from the hologram, and
thus yields a virtual image. Thus the first two terms in
Eqn. 4 represent a central order image, the third term
the real image' and the fourth term the virtual image. The
term e-1koa acts as a shift operator and spatially separates
the real image from the other two images; similarly the


"'We have recently modified this propagation function in order to spread the information over the whole of the hologram.
This spreading is analogous to that produced by the diffuser
plate used in optical holography. The numerical "diffuser"
is achieved by multiplying F(x,y) by an appropriate real-valued
function, e.g. l-e -C(X2 +y2) for some constant c. Our technique does not increase bandwidth needed to describe the object whereas the optical diffuser does.

term e-1ko separates the virtual image from the other
Comp..utational techniques
The computer, generation of holograms has been
inhibited by the massive task involved in the straight
forward numerical calculation of the convolution integrals of Eqn. 3. The first computer-generated holograms were reported by B. Brown and A. Lohmann2 in
1966. These holograms were of the "binary mask" type
which uses only two grey levels to encode the information in Eqn. 4. In 1966 J. Waters8 extended this binary
mask technique to three dimensions.
Huang and Prasada6 suggest~d the use of transform techniques for holograms which, to first approximation, may be considered as Fourier transforms. In
1967, we7 made holograms with 32 grey levels using
an array of 64 X 128 for the object. At the time of
this writing we have 105 resolution points in our image.
Since Eqn. 3 is a convolution integral, it may be
readily evaluated using Fourier transform techniques.
Indeed, the Fourier transform of H (a,b) is just the
product of the Fourier transforms of T(x,y) and
F(x-a, y-b):


T(" 1])F(" 1])


The convolution can be computed by taking the in~
verse Fourier transform of Ha,1]). In evaluating T • Ii:digitally' we use finite Fourier transforms3 rather than
infinite integrals.
A mathematical flow diagram of the program for
hologram construction is given in Figure 1. A major
part of the program is that in which T * F is evaluated
using a fast finite Fourier transform subroutine. In .our
work T(x, y) is defined in basic "building blocks,"
arrays of 64 X 128 elements. These arrays are mapped
onto the hologram plane using a propagation function
F(x-a, y-b) which is defined over 128 X 512 elements. Conventional techniques for performing this
map would require 2 29 machine operations (by a machine operation, we mean a complex multiply and
add). For an array of N elements, the fast finite Fourier transform technique requires only N log2 N operations; i.e., 221 operations in our example.
In the two-dimensional case, a further simplification can be made. The propagation function F(x, y)
is separable; i.e., F(x, y)
F 1 (x).F2 (y), where


*The first holograms, constructed by D. Gabor5 in 1948 lacked
the reference beam. He showed that the terms (T"'F) and
(T* F) '" were present on his photographic plates, but he could
not spatially separate them. A. Lohmann first proposed the
two-beam technique described here. Independently, E. Leith
and J. Upatnieks discovered the two-beam technique and made
the first usable holograms with a monochromatic laser source.

Holographic Display of· Digital Images
B(r,s) == T(r,s)





OF T(XtY) ,
T{l' .71)

OF F(a-x,b-yh

T{r .71)

Ftr ,n)


The finite Fourier coefficients B(j, k) and F(j, k)
are given QY
NF-l MF-l

. L2: B(r,s)exp(-2'7T1(--+--»

NF-l MF-l

F(],k)== L.,; L.,; F(r,s)exp(-2m( NF + MF-.»
r==O 8==0



T. F(a,b)

The inverse finite transform
B(j,k).F(j,k) is defined as

OF T-F(a,b)


T4' F+e ikO'


IT"F + e ikdl IS


Figure I-Flow diagram for hologram construction


Fl(x) == e and F 2 (y) ==~; . Thus the Fourier transform of F satisfies F(t, T}) == F 1 (t).F2 (1])' If the
propagation function is an- NF x MF array, the savings in machine operatio'ns accomplished using the
separability property is (NF.ML log2 NF.MF) (NF lo~ NF + MF log2 MF + NF.MF /2), a saving
of 24 operations in our example.
These savings are not fully achieved- however. The
convolution which is obtained is not good over the
NF x MF points of the propagation function, as can
be demonstrated by the Helm-Sande theorem on finite
convolutions.· If the object T(x,y) is defined over
NF x MF points, where NF>NT and MF>MT, tben
the finite convolution of the two is written as
NF-l MF-l

W(n,m) ==


r==O s==O
n==O,I, ... , NF-l
m==O,I, ... ,MF-l



B(r,s)F(n-r, m-s)

2: 2: B(j,k)F(j,k)exp(2m(-jn +




'=0 k==O




NF-l MF-l



r==O,l, ... NT-I
s==O,I, ... MT-l
r=N~ NT+l, . . . ,N~l
s=MT, MT+l, ... , MF-l

r=O 8==0








The Helm-Sande theore mstates that W (n,m)=A(n,m)
only for the region NT