MCUG 3 72_Proceedings_of_the_Fourth_Meeting_of_the_Minuteman_Computer_Users_Group_Jun72 72 Proceedings Of The Fourth Meeting Minuteman Computer Users Group Jun72

MCUG-3-72_Proceedings_of_the_Fourth_Meeting_of_the_Minuteman_Computer_Users_Group_Jun72 MCUG-3-72_Proceedings_of_the_Fourth_Meeting_of_the_Minuteman_Computer_Users_Group_Jun72

User Manual: MCUG-3-72_Proceedings_of_the_Fourth_Meeting_of_the_Minuteman_Computer_Users_Group_Jun72

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

DownloadMCUG-3-72_Proceedings_of_the_Fourth_Meeting_of_the_Minuteman_Computer_Users_Group_Jun72 MCUG-3-72 Proceedings Of The Fourth Meeting Minuteman Computer Users Group Jun72
Open PDF In BrowserView PDF
..

f.;" .
•• ,

"1

...
.'
;

"

•
"

,

..
~

PROCEEDINGS
OF THE
FOURTH MEETING
OF THE
MINUTEMAN COMPUTER
USERS GROUP

* * *

*

REPORT MCUG-3-72

Meeting held
June
5-6, 1972
,.,
Silver Spring, Maryland

PROCEEDINGS*
OF THE

FOURTH MEETING
OF THE

MINUTEMAN COMPUTER
USERS GROUP

EDITED
by
CHARLES H. BECK

Meeting held
June 5-6, 1972
Silver Spring, Maryland

Report MCUG-3-72

* SPONSOR:
Systems Laboratory
Department of Electrical Engineering
School of Engineering
TULANE UNIVERSITY

PREFACE

Of the nearly 1,000 reliable computers, originally costing $234,000 each,
from the LGM 30 Minuteman ICBM Weapons System, approximately 400 have been
declared excess by the USAF.

These Minuteman D17B Computers can be classed

as extremely flexible general-purpose minicomputers.

Government activities,

industrial contractors, universities, and other organizations have acquired
these excess Dl7B computers for development and use in many fields of research,
education, and other applications.
The Minuteman Computer Users Group (MCUG) was formed to provide for an
effective information interchange and the various forms of assistance needed
by the users.

Those who are members of this cooperative, voluntary group

assist each other by sharing results, programs, applications, interfacing
techniques, maintenance procedures, and spare parts.

The MCUG membership is

in excess of 145 Government activities, industrial contractors, colleges,
universities, and other organizations.
The fourth meeting of the MCUG was held at the Sheraton-Silver Spring
Hotel in Silver Spring, Maryland on June 5-6, 1972.
included in the Appendix.

The registration list is

The persons who attended this meeting numbered 67

and represented 46 organizations.

Previous meetings have been held in Miami

Beach on July 19-20, 1971, Houston on November 16, 1970, and Anaheim on
June 11-12, 1970.
These

PRO~EDINGS

are a permanent record of the material presented at

the meeting on June 5, 1972.

This publication of the MCUG describes such

topics as procurement, simulation, state description, design of a hardware
divider, design of a binary display, and use of the Dl7B in a hybrid computer
system and an automated data acquisition and waveform analysis system.

The

agenda also included a successful demonstration of the D17B/AutoAnalyzer
if

Analysis System developed in the Systems Laboratory at Tulane University under
a research contract supported by the Army Medical R&D Command.

This cost-

effective development included an ASR35 Teletypewriter as the peripheral I/O
device which provided for full alphanumeric communication with the D17B in a
conversational interactive mode.

The D17B/AutoAnalyzer Analysis System was

delivered to the Division of Biochemistry

at

the Walter Reed Army Institute of

Research where it is used for automated blood serum analysis.

In addition to

the technical sessions there was considerable exchange of information during
the workshop sessions on June 60
The assistance and encouragement of Mr. Richard F. Babler and Mr. John
Po Bartell of the Defense Supply Agency are gratefully acknowledged.

We also

thank Mr. Billy G. Bass of WRAIR for the time and effort required to plan for
demonstration of the D17B/AutoAnalyzer Analysis System at Walter Reed.
Methods of Joining the MCUG
10 Send a check or purchase order in the amount of $100 to the MCUG Chairman

at the address given below. Specify MCUG membership and/or documentation
for checkout, operation, and progrannning of the Minuteman D17B Computer.
2. Request an invoice for $100 to cover the items listed above.

Drc Charles Ho Beck
Professor of Electrical Engineering
Tulane University
New Orleans, Louisiana 10118
These PROCEEDINGS can be obtained by sending a check or purchase order
for $20 to the MCUG Chairman at the a.ddress given above.

MCUG members may

rot' $6c

The following documentation is included in the MCUGmembership:
MCUG-1-71, Dl7B Computer Wire List and Logic Equations
MCUG-2-11 t DI7B Electronic Module Schematics ,
MCUG-3-71, Proceedings of the Third Meeting of the MCUG
MCUG-4-n~ Minuteman D17B Computer Programming Manual
MCUG-l-12~ Dl7B Power Supply Schematics
.'
MCUG-2-72, Minuteman Dl1B Computer Programming Manual Supplement
MCUG-3-72, Proceedings of the Fourth Meeting of 'the MCUG
Charles H

0

Beck

Chairman t MCUG
iii

MINUTEMAN COMPUTER USERS GROUP MEMBERSHIP
Harvard University, Physics
Haskell Indian Jr. ColI., Voc-Tech.
Heidelberg College, Physics
Hughes Aircraft Corp., Culver City
Indiana University of Pennsylvania,
Physics
Johns Hopkins University, Chemistry
Kansas State College, Pittsburg,
Industrial Technology
Knox College, Physics
Kutztown State College, Physical Sci.
LSU School of Medicine, Neurology
LSUNO, New Orleans, Science
Lowell Technical Inst., Lowell, Mass.
Linfield College, Research Institute
Mankato Area Voc-Tech. School,
Computer Maintenance
Mass. General Hospital, Boston
McDonnell Douglas Corp., St. Louis
Medical University of South Carolina,
Neurosurgery
Merchant Marine Academy,
Computer Science
Merrimack College, Electrical Engr.
Michigan State University,
Cyclotron Laboratory
Michigan Technological University,
Electrical Engineering
Milwaukee Area Technical College,
Electronics
MIT, Charles Stark Draper Laboratory
MIT, Educational Research Center
NASA, MSFC, Huntsville
Nat'l Bureau of Standards, Wash., DC
Nat'l Center for Health Statistics
Nat'l Library of Medicine, DHEW, PHS
Naval Ordnance Station, Indian Head
New Mexico State University,
Electrical Engineering
New York Institute of Technology,
Electronic Technology
Newark College of Engineering,
Mechanical Engineering
Northwestern University,
Material Science
Occidental College, Physics
Ocean Systems, Inc., Reston, Virginia
Oklahoma State University,
Biochemistry

Aerospace Corporation, Los Angeles
AFCRL (LGW), Hanscom Field, Mass.
Air Force Institute of Technology,
Engineering
Arizona State University,
Electrical Engineering
Armstrong State College, Savannah, GA
Arnold Research Organization,
ArnoldAFB, TN
Augustana College, Physics, SD
Austin College, Computer Center
Ball State University, Physics
Beaver College, Psychology
Bluefield State College, Technology
Bowling Green State University,
Psychology
Brigham Young University,
Electrical Engineering
Buena Vista College, Electronics
Bureau of Mines, Laramie
Bureau of Mines, Pittsburgh
California Institute of Technology,
Geological & Planetary Science
Center for Diseas~Control, DHEW
Cleveland State University, Physics
Christian Brothers College,
Computer Science
Colorado State University,
Atmospheric Science
Delaware River Basin Comm., Trenton
Department of State, Nassau
Des Moines Area Community College,
Electronics
Dillard Univ., Mathematics & Physics
Drexel University, Electrical Engr.
Duke University, Electrical Engr.
Eastern Michigan Univ., Ypsilanti
East:e,rn Washington State University,
Ppysics
Einstein College of Medicine,
Radiology
Fighton, Inc., Rochester, NY
Florida State University, CAl Center
Fredericksburg Geomag. Ctr., Corbin
Ft. Belvoir, Electronics
Glastonbury High School, Physics
Goddard Institute for Space Studies
Hahnemann Medical School, Radiation

iv

MINUTEMAN COMPUTER USERS GROUP MEMBERSHIP (Continued)
University of Florida, Ophthalmology
Univ. of Houston, Electrical Engr.
Univ. of Illinois, State Water Survey
Univ. of Iowa, Neurobiology
University of Kentucky,
Mechanical Engineering
University of Miami, Physics
Univ. of Michigan, Aeorspace Engro
Univo of MississippI, Chemistry
University of Missouri-St. Louis,
Chemistry
Univo of Nebraska, Electrical Engr.
Univo of Nevada, Reno, Electr. Engr.
Univo of Nevada, Las Vegas, Physics
Univo of New Hampshire, Electr. Engr.
Univ. of Oklahoma, Mathematics
Univ. of Pennsylvania, Geology
Univ. of Penn
Johnson Foundation
Univ. ef Pittsburgh, Pharmacology
Univo of So~th Florida, Physics
Univ. of Texas i Applied Research Lab.
Univ. of Trieste, Italy, Geodesy
Univo of Virginia, Psychology
Univo of Washington, Psychology
Univo of Wisconsin, Computer Science
Univ o of Wisconsin, Electrical Engr.
Univ. of Wyoming, Electrical Engro
USAFSAM, Medical Systems Division
V. Ao Hospital, Lexington
Vo Ao Research Hospital, Chicago,
Theraputic Radiology
Vo Ao Research Hospital, Gainesville,
Nuclear Medicine
Virginia Institute of Marine Science,
Gloucester Point, Virginia
Washington University, Psychology
Washington & Lee University, Physics
West Virginia University,
Electrical Engineering
Wisconsin State University,
Engineering Mechanics
Worcester Foundation for Experimental
Biology, Shrewsbury, Mass.
Wright State University, Computer
Center

Oklahoma State University, Physics
Pennsylvania State University,
Chemistry
Polytechnic Institute of Brooklyn,
Electrical Engineering
Princeton University, Computer Center
Purdue University, Aeronautics,
Astronautics & Engineering Science
Raytheon Corporation, Bristol, Tenn.
St. John Fisher College, Physics
San Diego State College, Biology
Singer-Kearfott, New Jersey
Sloan-Kettering Institute, Biophysics
SMU, Computing Laboratory
Southwest Minnesota State Cellege,
Electronics
Space Rad. Effects Lab., Newport News
Stanford University, Linear
Accelerator Center
State University College, Breckport,
Data Precessing Services
State University of NY, Mat. Science
Stephen F. Austin State Univ., Physics
Stevens Institute of Technology,
Electrical Engineering
.
Technitrol, Inco, Philadelphia
Tektronix, Inc., Atlanta
Teledyne-Ryan Aeronautical, San Diego
Tennessee Technological University,
Mechanical Engineering
Texas A & M University, Physics
Tulane University, Electrical Engr.
Union Carbide (Nuclear), OakRidge
USDA, ARS, Ames
USDA, Research Service, Beltsville
University Computing Coo, Dallas
Univ. of Akron, Electronic Tech.
University of California, Berkeley,
Fl~ctrical Engineering
Univ. of Colorado. Electrical Engr.
Univ. of Arizona, Optical S.ciences
.
Univ. of Dallas, Chemistry
Univ. of Delaware, Electrical Engr.
University of Florida,
Metallurgical & Materials Engr.

0 ,

v

TABLE OF CONTENTS
Page

·....... ·..
• · · . ·
MINUTEMAN COMPUTER USERS GROUP MEMBERSHIP · · · · ·
MINUTEMAN D17B COMPUTER PROCUREMENT
·······• ·······
MINUTEMAN D17B COMPUTER DESCRIPTION . . · · · · · • · • · · · · · · ·
MINUTEMAN D17B COMPUTER SPECIFICATIONS • · · · · · · ·
····•
• · ·
SOFTWARE SIMULATION OF THE MINUTEMAN D17B COMPUTER
PREFACE • • • • • • • • • • • • • • • • • •

'

ii
iv
1
2

4
5

Bruce Chatterton and Gary B. Lamont
AFIT/ENE
Wright-Patterson AFB
APL SIMULATION OF THE D17B

• • • • • • • • • • • • • • • • • • • • • 17

Harry S. Warford
USAFSAM, Medical Systems Division
Brooks AFB
A HARDWARE DIVIDER FOR THE D17B GUIDANCE COMPUTER • • • • • • • • • • 27
Alfred M. Williams, Boeing Co.
and
James D. Bargainer, University of Houston
STATE DESCRIPTION OF THE D17B COMPUTER

•••••••••••••••

37

Douglas J. Allen and Gary B. Lamont
AFIT/ENE
Wright-Patterson AFB
USE OF THE D17B IN A HYBRID COMPUTER SYSTEM • • • • • • • • • • • • • 66
Lansing B. Evans and Charles H. Beck
Systems Laboratory, Electrical Engineering
Tulane University
DESIGN OF A BINARY DISPLAY FOR THE Dl7B COMPUTER

• • • • • • • • • • 76

Harry S. Warford and D. S. MOran,
USAFSAM, Medical Systems Division
Brooks AFB
AUTOMATED DATA ACQUISITION AND WAVEFORM ANALYSIS
USING THE Dl7B COMPUTER • • • • • • • • • • • • • • • • • • • • 83
Charles H. Beck and Yih-Young Chen
Systems Laboratory, Electrical Engineering
Tulane University
• • • • • • • • .. • • • • • • 93

APPENDIX - REGISTRATION LIST' •••
vi

1

MINUTEMAN D17B COMPUTER PROCUREMENT
Approximately 800 Minuteman D17B Computers are expected to be declared
excess by the USAF through 1974.
was approximately $234,000.

The original acquisition cost per system

These computers can be acquired by qualified

agencies, contractors, and grantees as the systems become available through
appropriate ADPE reuti1ization agencies on an "as is" non-reimbursable basis
as follows:

DoD Agenci es
Contact respective service Rqs. for ADPE Acquisition for approval and
for forwarding of Requisition Form 1419 to DARO.

DoD Agency Contractors and Grantees
Contact respective contracting officers for approval and for forwarding
of Form 1419 to Defense Supply Agency, DSAH-DARO, Cameron Station, Alexandria,
Virginia 22314.

Civil (Non-DoD) Agencies of the Federal Government
Contact respective Office for ADPE Acquisition for approval and for
forwarding of Transfer Order Form 122 to GSA Excess Equipment Utilization
Branch, Crystal Mall Bldg. 4, Washington, DC 20406.

Civil Agency Contractors and Grantees
Contact respective contracting officers for approval and for forwarding
of Form 122 to GSA as listed previously.

Authorized Donees
Contact respective state surplus property offices for acquisition through
DREW Office of Surplus Property Utilization, 4452 DREW North Bldg.,
Washington, DC 20201.

2

MINUTEMAN D17B COMPUTER DESCRIPTION

Functional Capabilities and I/O
The D17B is a small
and has the

capab~lities

general~purpose

of:

computer.

It is totally programmable

receiving and sampling analog signals, digital

data, or pulse-type input signals; logical decision-making and performance
of arithmetic operations using an instruction set of 39 machine language
instructions; and transmission of output data in the form of analog, digital
and pulse type signals under program control.

Because of the extremely flex-

ible I/O capability of the D17B, it can be quite useful in a wide variety of
applications.

Central Processing Unit and Control
Since the D17B is a serial-binary computer,.simultaneous access to all
the bits of a memory location is not needed either for instructions or data.
Hence, the arithmetic registers need not be constructed entirely o.f flipflops.

Instead, they are in the form of circulating loops in memory.

The

Dl7B has four double-rank arithmetic registers which are Accumulator (A),
Lower Accumulator (L), Instruction

Regist~r

(I), and Number Register (N).

Because the L-register is addressable, it can be used as rapid-access storage
in addition to performing normal arithmetic functions.

There are two non-

addressable arithmetic registers, the 1- and N-registers, which are used
without programmer control and one 3-bit pseudo-index (phase) register.
The central processing unit (CPU) has I/O access to four rapid-access
memory loops of 1, 4, 8, and 16 words in addition to the main memory which is
arranged in 21 ·channelsof 12.8 words each.

Two input buffer loops of four

words each provide additional input capability to memory in the form of
direct data entry.

These are the V- and R-loops which can also be used as

general-purpose rapid-access memory loops.

3

Programmed data channels cause data transfers into the arithmetic registers.

All machine functions are processed and interpreted in the CPU.

The

memory channel address from which the next instruction is to be taken is
determined by the location counter.

When the CPU is ready to accept another

instruction from memory, the address is specified by the channel address
stored in the location counter and the sector address specified in the
previous instruction.
The phase register can modify the operand address of one of the multiply
instructions.

This register also serves as a selector switch for choosing one

of two pairs of inputs to one of the incremental pulse-type input loops and
for selecting one of four external positions for each of the three D-A analog
voltage outputs.
The Accumulator holds the results of all arithmetic operations and serves
as an output register for parallel digital data, pulse-type signals, D-A
analog voltage outputs, and telemetry data.

The Lower Accumulator is involved

in certain arithmetic, input, and logical operations.

A real-time clock is

provided by internal timing signals derived from the clock channel of the disc
memory.

Specifications
The D17B is basically composed of two semi-circular sections.

One half

contains the power supply circuit cards which generate the various dc voltages
required in the computer and a 400 Hz
motor in the 6000 rpm disc memory.

3~

signal for providing power to the

The other semi-circular section contains

the discrete DRL and DTL logic components of the computer itself.

Some of

the detailed specifications for the D17B Computer are given in the following
table.

The high degree of reliability and ruggedness of the computer are

evidenced by the strict requirements of the Minuteman ICBM Weapons System.

4

MINUTEMAN D17B COMPUTER SPECIFICATIONS
Manufacturer: Autonetics, a division of North American Rockwell
Model: D17B
Year:
1962
Type:
Serial, synchronous
Number System: Binary, fixed point, 2's complement

°

Logic Levels: ·0 or False,
Volts; lor True, -10 Volts
Data Word Length.(bits): 11 or 24 (double-precision)
Instruction Word Length (bits): 24
Maximum I/O (words/s): 25,600
Number of Instructions: 39 types from a 4-bit op code by using five bits
of the operand address field for instructions
which do not access memory.
Execution Times:
Add (ps): 78 1/8
Multiply (ps): 546 7/8 or 1,015 5/8 (double precision)
Divide: (Software)
(Note: Parallel processing such as two simultaneous single precision
operations is permitted without additional execution time.)
Clock Channel: 345.6 KHz
Addressing: Direct addressing of entire memory
Two-address (unf1agged) and three-address (flagged) instructions
Memory:
Word Length (bits): 24 plus 3 timing
Type: Ferrous-oxide-coated NDRO disc
Cycle Time (ps): 78 1/8 (minimal)
Capacity (words): 5,454 or 2,727 (double precision)
Input/Output:
Input Lines:
Output Lines:

48 digital
28 digital
12 Aria10g
3 Pulse
Program:
800 5-bit characters/s
Physical Characteristics:
Dimensions: 20" high, 29" diameter
Power:
28 V dc ± 1 V at 19'A
Circuits:
DRL and DTL. DoUble copper clad, gold plated, glass fiber
laminate, flexible polyurethane coated circuit boards.
Software: .Minimal. delay. coding using machine language modular
special-purpose subroutines.·
.
Reliability: 5.5 years MTBF

5

SOFTWARE SIMULATION OF THE MINUTEMAN
D17B COMPUTER
Capt Bruce Chatterton

Gary B. Lamont

Electrical Engineering Dept
Air Force Institute of Technology
wright-Patterson Air Force Base, Ohio 45433
ABSTRACT
A software program has been developed which simulates the functions of
the Minuteman D17B Computer at the register transfer level.

The simulation

program is written in the FORTRAN Extended Language to be used on the Intercom
System (teletype) of a CDC 6600 Computer System.

The simulation program was

developed at the Air Force Institute of Technology as an aid to research in
the D17B Computer utilization program. The simulation program can be used
as a teaching aid, for executing D17B programs, and for debugging program
tapes to be run on the D17B Computer. The simulation program consists of
a main program and eight subroutines. A programming language was developed
for the D17B Computer Simulation Program which contains numbers and load
codes, switches, and miscellaneous commands.
I.

Introduction
A software simulation of the Minuteman D17B Computer has been developed

at the Air Force Institute of Technology (AFIT) (Ref 2). The general
1.e;Telopment objectives and results of this simulation are presented in this
paper.
The purpose for developing the D17B Computer Simulation Program was to
create an aid that would be useful to the research effort of the D17B
Computer utilization program. This research effort is concerned with getting
a D17B Computer operational in a laboratory environment and finding useful
applications.

6

The simulation program has shown itself to be useful in many areas. The
simulation program can be used in learning the basic operations of the D17B
Computer. It can also be used as backup capability for running D17B programs
when the actual computer is not available. Its most important use, however,
is that the simulation program can provip,e error checks for the D17B programs
which it executes. The hardware version of the D17B Computer has no executiontime error checking capabil~ty.
The capability for entering D17B programs from punched tape has been
incorporated in the D17B Computer at AFIT~ Provisions were also made in the
simulation program for reading and executing the data from these same punched
tapes. Therefore, the simulation program can be extremely helpful in the
preparation of the program tapes which are to be read into the D17B Computer.
The simulation program helps in tlle preparation of the program tapes by
detecting and locating invalid symbols punched on the tape, by decoding the
program instructions, and by detecting addressed locations in memory that
are out of range of the program being executed.
Problem statement and Objectives. The prime objective of the D17B Computer
simulation program was to simulate the functions of the D17B Computer. To
pursue this objective;l the following criteria were established~
1. The simulation program was to simulate the D17B Computer at the
register transfer level. A register transfer approach was used because
it allowed the D17B to be simulated at the information and data transfer
level. Thus, it was not necessary to simulate the logicr equations required
to clear and set each flipflop_ The register transfer approach also
allowed for easability in tracing the information flow in the simulated
computer as data is loaded and programs executed.
2 •. The FORTRAN Extended Language was the computer simulation language
chosen for writing the simulation program. This language was chosen because
of access to a computer system which contained the FORTRAN Extended Compiler.
The Computer Design Language (CDL) described in reference 3 was used in

7

writing portions of the simulation program, but because of the nonavailability of a CDL compiler, a transformation to the FORTRAN Extended Language
was made (Ref 3, Chaps 1-5). CDLis much more descriptive of computer
operations than FORTRAN.
3. The simulation program was to simulate the actual computer as
closely as possible. The same algorithm implemented on the D17B Computer
was used in the simulation program for most functions. This close correlation between the actual computer and the simulation program makes it
possible for a user to use both the computer and simulation program using
only one set of programming techniques. In the areas where a close simulation could not be realized, a quasi-simulation was used. The quasisimulation uses the same register inputs and generates the same results,
but the method of obtaining the results differ.
4~ The real-time control functions (Fine Countdown and Incremental
Inputs) of the D17B were not to be included in the simulation program.
The Fine Countdown function involves the V-loop and the U-loop forming
a digital integrator which operates without program control. The Incremental inputs are inputs to the D17B which are incrementally supplied
to the V-loop and R-loop without program control. The instructions
associated with these functions could be added by a user who is
r~searching the area of real-time control applications for the D17B.
The remainder of this paper will be devoted to a description of the
organization and structure of the D17B Simulation Program and the D17B
Computer Simulation Language.
II.

D17B Computer Simulation Program

The organization and structure of th~ D17B Computer Simulation Program
will be described in this section. The simulation program simulates the
D17B Computer at the register transfer level and is written in the FORTRAN
Extended Language to be run on the Intercom System (teletype) of a Control
Data Corporation (CDC) 6600 Computer System.

8

The concept used in, writing the simv.1ation program was, to have the person
-, ~ '.' .,

'

~ ,.". ~.

,_;'

: .' .

'. ,

:. ,•• J

. ":. \.'

.

"...~:-

.' -,

.

' . ."

" .

using ,it. provide the same ,data to the progI'aIJ:), as h,e. would ,if ,he were using the
.,.'

actual

•

'.'

• ..,

compute~

:,.

•

'.

•

>"

in the Jaborato:ry.

,•

",

'"

"

'.r

• :~.

'

h

"

.-

" ..

:;~.:

'

'.'.'

•

•

•

J'he sw:itches, ;must be ,set to the proper

. '

• : '., .

~,

•

position to accomplish loading and computing.

'.

'h'

.'

-.'

,. . '

~stbe

The data

.

error free 'to

successfully execute a p~ogram., ,The type of di 13Pll3,Y (register or memory) is
specifiec;l by. the ~us:er. ,
. ;., •

:.

~

subroutines.

.

1"

.

Simula1;i~oA ,Progr~

The D17B. qomputer,.
~.

.."

'.

,';

,"

~

~

•

,.'

consists, of. a, main program ande.ight

".".,

.~

",'

.. '

'","

The main program .i¥l",a .qompilation. of
.·n

.;;;

.

., .

... ",'

.

.'

".

~;

. .

.

• ,

,~.

1-.

thr~e

•

•.

. .

".'

distinct sections each
.'

.

of which.. performs , a major
.function.
TheSe.
thre.e, sections
are:
.
'::
.,
..,
.
.

1.

~

' "

:,.,'..

".

,'.

Eeadingand
TI'ansla tiop
Section
. ,
.......,
t....
'.
':. "
.~

2.

Noncomp~te

3.

Compute Mode Section

Mode Section

Fig. 1 shows the program flow between trese.

~eotiolls

of the main program and

the subroutines •.
The Reading
and,
TraJl.Slation. Section
is.,
..
..
' . '

,

; ,",

portion of the simulation program.

.

thet~ansla ter
..

~

and
inte:r:preter
' .

All input data., is read, interpreted, and
;

,

.

'r'

.

".....

~

translated in this . portion. 9f the main program., Input data is read as alpha,;..

."

betic and nUlI1eric characters.

~his

,....

-'

'

data is then iniierpreted. as octal qr

binary data, a D17B load code, a switch
designation (setting), or a miscel'.
.

laneous connnand.

,

~

The miscellaneous commands, are responsible for a variety.

of functions which include tbe, following:
•

.

. ' ,

'

.

.

•

register and melD.ory display,
I ·

discrete data storing, incremental data, storing, and mode tracing.
fer of operation to the noncompute mode or9neof the

sub~outines

A transis made to

utilize this data.
The Noncompute Mode Section of the simulation program simulates the noncompute mode of the D17B computer.

The noncompute modeis'responsible for

synchronizing, idling','preparing1to, load,preparing to compute, 'loading data
into memory, and verifying "the contents' ,of, memory.
The Compute Mode Section of the simulation program simulates' the compute
mode of 'the D17B Computer.

The compute mode is'responsible for searching,

reading, and writing memory and instruction' exec.ut1:on. '

abnormal program termination

S.ubroutine
DISPLAY

~

.,
ST ART

READING

o
o

c:T

&

~

NONCOMPUTE

STOP<

..,fle{ld 8. Interpret
more Data

SECTION



..o

L.....t>-

SECTION

I

Subroutine
fJlEMORY

Subroutine
-

Subroutine
STORE

Subroutine < _ . -

4-

Subroutilio
FLAGSTO

Subrotlt inc
DISCHET

_._-.'.,.
1-'

COMPUTE

MODE

TRANSLATION

is

~d

s::!

Load Data

:>-

Subrout ilw
INCHEr}:;:

UNLO!':D

10

The subroutines

as~ociated

with the D17B Computer Simulation Program were

made for three purposes:
1. Those functions which were needed several times through the program
were created as subroutines. Subroutines falling into this category are
Subroutine LDA.D, Subroutine. UNLOAD, aha. Subroutine DISPLAY ~ Subroutine LOAD
provides the functio:p. .of.l,oad~ng, the .,contents of the accumulator into addressed
memory locations. Subroutine UNLOAD performs the funQt~o~ ~~ unloading an
addressed word of memory. The information
unlo~ded is. then used either as an
.
instruction or an operand. Subroutine ,DISPI,.A~ prov~q.es the simulation program
,"

'-""-.

.

.

(

.

j ' . , '

with the capability of displaying the binary contents Qf all registers and
loops which are specifi~d by. the user. The contents of a register or loop is
provided as output only when the contents of that register or loop cha:Oges.
2.

Those ,functions which are only called from one place in the main

program, but which are of -such importance that a. separate location is beneficial to the organization of the simulation program., are also subroutines.
Subroutines in this . category are Subroutine STORE, Subroutine FLAGSTO, and
Subroutine MEMORY. Subroutine STORE implements the D17B store (STO)
instruction, which stores the contents of the accumulator in the memory
,
,

location specified by the instruction register. Subroutine F,LA,GSTO
performs the function of deciphering the flag store locations bits of the
..
instruction register. The contents of the accumulator are then stored in
the deciphered channel at the sector address associated with the first
wordtime of execution of the present instruction. Subroutine· MEMORY
provides the capability of displaYing th~ contents of memory (channels 00
thru 50) whenever a memory command is us~d. Only those portions of memory
that have . been wri.tten. into since·· mem?I7.was" .last.··initialized will be shown
in the output listing •.
..

~

~

0/- • ," "

~

~

;

.

••

3. Those f~ctiol'ls which Will not be. used ,very f;requently and could be
removed from the simulation program. if it' w.s determined that they were not
really neededarea:lso subro~tihes. However,' to be abl'e' to utilize all the
instruction set or the"-D17B' Computer' and all the channel designations, these
,

I.

"

:

~

,.

..,~

11

functions had to remain as a part of the simulation program. Subroutines
in this category are Subroutine DISCRET and Subroutine INCREME. Subroutine
TIISCRET provides the capability of entering discrete data and storing it
for use in a prograrrlsing the discrete input instructions (DIA or DIB).
Subroutine INCREME provides the capability for entering quasi-incremental
data into the four words of the V-loop or the four words of the R-loop.
The D17B Computer Simulation Program requires approximately J5K of
core memory to execute on the CDC 6600 C9mputer. The majority of programs
require between two and five seconds of central processor time. In five
seconds, approximately 1000 D17B instructions can be executed by the
simulation program.
III.

D17B Computer Simulation Language
The D17B Computer Simulation Language is the programming language which

was developed as the input data for the D17B Computer Simulation Program.
For purposes of describing this language, it has been divided into the
following categories:
1. Numbers and Load Codes
2.

Switches
J. Miscellaneous Inputs and Commands
The number systems and load codes accepted by the

Numbers and Load Codes.
simulation program are:
Octal Numbers - 0, 1, 2,
Binary Numbers - 0, 1

3, 4, 5, 6 7

Load Codes - HALT, LOCATION, FILL, VERIFY, COMPUTE, ENTER, CLEAR, DELETE
'l'h"'~e jifferent representations of the numbers and load can be specified
and will be accepted by the simulation program as valid data. These three
representations are Octal, Binary, and ASCII. The Octal representation represents the type of input that would be supplied from a teletype keyboard or
switches on a control console. The Binary representation represents the type
of input which appears on the character'input lines going into the D17B

12

Vomputer. The ASDII representation represents the type of input data on a
punched tape which can be entered into the D17B Computer by a tape reader.
The numbers and load codes in the three representations are as follows:
ASCII
Binary
Octal
Numbers -

Re12r esentation
a
1
2

J
4
5
6

Load Dodes -

7
HALT
LOCATION
FILL
VERIFY

RsU2r~sflnta tion

10000
00001
00010
10011
00100
10101
lalla
00111
01000
11001

Re12rflsflntation
a
1
2

J
4
5
6

7
8
9

110~0

Z

01011

;

11100
<
01101
CLEAR
01110
?
DELETE
11111
Switchese With the simulation language in this category, it is possible to
specify switches and designate a setting or mode. The simulation program
COMPUTE
ENTER

~

accepts these switch designations and provides this information to program
variables associated with the switches. The form for specifying switches
is as follows:
Switch(Arg)
where Switch is theq.esignated switch mnemonic name, and Arg is the switch
setting or mode position of the switch. The switches and allowed settings

13

are as follows:
Switch Name

Switch Mogmonic & Settings

Timing Signal
Power On/Off Switch
Initiate Loading Switch
Master Reset Switch

T(ON)
PR(ON), PR(OFF)
FS(ON)
MR(ON)

Cold-Storage ~ite Switch
Discrete Switch
Mechanical Input Switch
Compute Mode Switch

EW( ON), EW( OFF)
Db(ON), DD(OFF)
IM(ON)
K(HALT), K(SINGLE), K(RUN)

Miscellaneous Inputs and Commands. The simulation language iI.1 this category
provides many functions. The functions that will be described are listed as
follows:
Register and Memory Display
Mode Tracing
Execution Specification
Register and Memory Display. The binary contents of any of the registers
(A, I, L, N~ or loops (U, F, E, H, V, R) can be displayed by use of the register
command. The register command has the following form:
REGISTER(Arg)
where Arg is a list of the registers. and/or loops to be displayed.
To. display the Gontents of memory (channels 00 thru 50), a memory command
is used. The memory command has the following form:
MEMORY(Arg)
where Arg is the type of display requested, either BINARY or OCTAL.
Mode Tracing. MOde tracing is used in deciphering the contents of a
program. In the noncompute mode, the modes of operation are listed as output.
In the compute mode, the instruction being executed is listed as outpUt and a
flag store is indicated if it was programmed. The mode tracing capability is

14
requested by a signal command with the following form:
SIGNAL
Execution Specification.

There are numerous occasions when a programmer

will inadvertently write a program which loops on itself resulting in eXecution
going on to infinitum.

To prevent this from happening in the simu1~tedcomputer,

provisions were made for counting

~he 'number of execution cycles in' the 60mpute

mode and terminating the program run when the number exceed~aspecified ~ount.
'The programmer can specify th,e number' of executions allowed' by an eXecute; command.

"
The form of the execute
command is as follows:

EXEGU'~(Arg)

where Arg is any four digit deci~l n~ber from 0000 to 9999.
Other misce11aneo'us inputs and'command'providethecapability of settin.g

and clearing f1ipflops~ initialization of the" contents of memory and certain
specified variables, storing of discrete input data, and storing of quasi...
incremental input data.
PrOgramming Methods. D17B programs are executed on the simUlated computer
,

by arranging the simulation language in a program form.

,

D17B programming

techniques are described, in the Minutemab. Computer Use,r'S Group Programming
Manual (Ref 1). The simu1ation program allows data to be input without a
format, so a programmer can write a continuous program With each simulation
language word separated by a blank.
The approach' for arranging' the input 1a'nguage.. in program form found
most advantageous by the author is to visualize a hardware control console
with switches for each element of thesf.mulation language'.

To"write a program

then requires that the programmer write' down the simulation language word for
each switch that he would push on theco1'l.sole.

This approach works because of

the similarity between the simulation program and the'hardware ver'sion of the
Computer.
An example program which wa:s:' run on the simulated cOmputer has been
included in this paper as Appendix A.

15

IV • Cgppl,uion
The lott'lfare simulation program ot the D17B Computerprelented in this
paper hal been operational linoe November 1m. The simulation program was
de",eloped to simulate thetunot1ons of the D17B Oomputer. One of the objeotives
,ot this limulation wal to have the ,Iimulation pro,rd. lillUlate the aotual oomputer al ololel,. al pollible. This objeotive wal lDet beoause the _jorit,. of
the In.7! tunotiol1l have been i1101uded in the ,simulation prOll'''. The loading
aDd interaotion funotionl ot the nonoompute mode have been used. In the
88apute mode, the learohing, readiDlh and. writil1l.lIIID017 and inltruo't;ion exeoution are all part of the siJlulation proc.raa. Wherever po••ible, the lame
allOrithm illplelDented. on the Dl7B' WILl Uled in'the· .imulat1on program. Thi.
a~roach re8Ulted in lome i08£fioie11Oiel in the simulation program, but a
by-produot ot usi. the .... al,orithm i. that the liDIulation proaram OaD be
used a. a teaohiDl aid tor learrd.ni the operatiollot the »1'18 Oomputer. .uIO
, enol" deteotion va. bui1t into the .imulation 'proar" aJ2d hal been "'e1"1 helpful
in creatiDl proar" tape. to be run on the D17B Ooqmter.

IiliJi ARf.Pht
Bttot, O. H. WI 0SJllWderf:£Mt.'M MeMl. "port ICt1O-4-71.
." Orlean., Louisiana. Tulane Unt"'eraityS,. . . LaboratOl7, Department
or .1ectrioallltllineeriDl, September 1ml.
.

2.

i

I' POltiQA

Q& the. MilQ1itan IlJ.'lI Q'8PPtv.
Malter The.i.. Wri,ht-Patteraon AlB, Ohio, Air 'oroe lnstitutn ot
Technolol7, Department ot Il.•ctrioalll'lli!1lerin~b Maroh 1972.

Ohatterton, B. §gnarl

3. Olm, I.
Je1"878

.IPtrgd'lQi;1on tOOC81?1rl;ef OrI'P1Milg.

Prentioe-Hall, Ino., 1970.

_l.wood 01itt., lew

,if,

'I IOlU':D1SPOSEDTOPJUNTER. tyPE "I''' AHI) "yotfRNArU:"C OTHEJt""
WISE TYPER • H
'

l ' OUTPUT

****.****.***********************************"'**********
**
**
**
D178 COPlPUlER
**

.*

*."'*

"'*

SIMULATION PROGRAM

**
"
,**
***.*********~************************.********** •• *••••
*.*

OATE=

TIME:

03/07/12

•• "UNrOUT OF INPUT

(ENTER PROGRAM'

'~OGRAPJ

J4.28.'8

**

S ADDI Tl OH It 1"L£ PROGRAM
pltC ON) MRlotU FlU O,N) twUltU 'ILL
4It010002IHTE1t640l0008EHlER CLEAR 1 ENTER
i'lEf'10RY( OCTAL) PUt( ON) EXEcutE'OOD.) SIGNAL R[GIITlRC A)
'p IU

0''''

**

"'*

MEMORY

RESULTS 0' IlI'IU&'ATION

J( CRUN)

**

'DUM' *.

CHAH . SECt

00000

440aooos

77777777

00000001

•• gHD O,.M".CRYDUMP.. ", (PORTlONS OF "tMORY, NOT LlstED CONTAIN NO
INFORMATION PAODUCED BY THE 'RISEln 'ROGa,," RUtH
H(j. 0' El(ECUr'Cltf• .,EC1'IEO i
,.81 GHAL ON" MOllIIWILL. 8£ TRACED

0(4) I'O(2)'Utl 1I>LI IUI-MOO£ 0' HA.HUAL. HA'-t
PRIPARE rOCOMPUtE lua·MOOI 0' MAHUAL. HALT
COl1PUTE PlOOI
TMA.'ER lHlT'UIC'UOH- (TRA)

'I'"'

CLiA. ,. AID 1HI'ltU<:,"lO' -(Ct.A),'
A(14·1):000 000
000000 000 001
AUD t HI TRUC tl 0;., til , (M)'J
A(24-.) : 000 000000 lot 000 000 010010

NO. 0' EX£CUTIOtfS KA\I£EXCEEDiO Hp. SPEct"Er) .. 'JOGRA, TERMINATED
au. AtfOTHERPROGRAt'S TyP' RUtl, TO ITOP tyPE HALT .. HALT

'0

..

Elf0 OF '''OOOAM

14.3.1 .14 .stOP

EXECUTION TIM!:

.777

SEC

APL SIMULATION OF THE Dl7B
HARRY S. WARFORD, CAPT, USAF, BSC*

Introduction
A simulation of the Dl7B serves a broad spectrum of applications.
It allows a rapid development of software by not only emulating the basic
machine, but by providing an inexpensive and rapid means of providing a
large array of outputs. All manner of I/O devices can be simulated for
development when the actual application may be dedicated and require few,
if any, I/O devices. Additionally, the simulation is useful where no
Dl7B exists. Students can receive hands-on experience with many types
of machines by merely calling on a simulation such as the one under
development here. Program debugging likewise proceeds at an accelerated
rate since all the powers of a large system are available with built-in
tracing routines.

Program Development
This simulation is by no means complete at present but has been
developed in strict accord with actual machine procedure so as to render
it easily expandable to a full simulation. The serial nature of the
D17B has been preserved at the word level by controlling the simulation
with a sector counter advancing one sector at a time as in the rotation
of the disc memory. Figure I is a simplified flow chart for the machine
and illustrates how each phase is controlled by tests performed on the
sector count.
Development from this flow chart proceeded with APL on an IBM 360
series system and later on an IBM 370 series system.** APL has proven
to be an ideal language for this simulation due to its inherent capability
to handle vector quantities. This was the author's first encounter with
APL, hence many of the expressions are not as efficient as they could be.
However, the development proceeded with few difficulties to the wide choice
of APL operators.
The main program illustr.ated in Figure 2 was first developed with
dummy instructions in place of the execution routines. Those routines not
yet implemented are left in as dummy statements providing only a printed
indication of proper decoding. As development continues, some of these
will be deleted entirely as they produce outputs that cannot effectively
be simulated or have no apparent use in a general purpose system.
*To be presented by Major M.A. Jenkin, USAF, MC
**This simulation was started during a course taken by the author at
Trinity University, San Antonio, Texas.

Along with the basic program, several short routines are provided
to simulate necessary panel switches to allow program loading and
execution start. These are given in Figure 8 and will be discussed in
greater detail following the discussion of the main routine and execution
routines.
At present, twenty-two instructions have been successfully simulated.
Most of these were straight-forward but for clarity all are listed here
with comments as to considerations given for simulation.
CLA: Clear and Add. Present operand, now in
N-register, replaces contents of A-register
ADD: Add. Contents of A-register and N-register
added modulo 16777216.
SUB: Subtract. Contents of A-register and complement
of N-register added modulo 16777216.
MPY: Multiply. Sign of product predetermined; contents
of A-register saved in L-register; rounded product of
magnitudes formed then corrected for proper sign.
Sector counter advanced 12 additional counts.
SAD: Split Add. Contents of N-register and A-register
decoded into split format and center bits of A-register
saved. Split words added independently but simultaneously
modulo 2048. A-register reassembled.
SSU: Split Subtract. Contents of N-register split and
complemented. Jump to SADI to complete as normal spii.t
add.
SMP: Split Multiply. Middle of L-register saved; contents
of A-register encoded into split word format and saved
criss-cross fashion in L-register. N-register encoded into
split word format and signs independently but simultaneously
predetermined. Products of magnitudes formed then corrected
according to each predetermined sign. During process, products
are rounded. Sector counter incremented 12 additional counts.
COM: Complement.
subtraction.

Contents of A-register complemented by

MIM: Minus Magnitude. If contents of A-register are not
negative they are forced negative by jumping to COM.
ANA: And to A. Contents of L-register and A-register are
encoded into 24-bit vectors and logically anded bit by bit.
REsults are decoded into 24 place binary number and left
in A.

ARS: Accumulator Right Shift. Contents of A-register
shifted right by division with simulated loss of rightmost bits by floor value if original A-register not negative.
For negative A-register, complement of A-register is first
shifted then complemented to provide for extension of sign
bit. In either case, sector counter is incremented
appropriate number of counts as determined by number of
places shifted.
ALS: Accumulator Left Shift. Contents of A-register shifted
left by multiplication and limited to 24 bits by residue
modulo 16777216. Sector counter incremented appropriate
number of counts as determined by number of places shifted.
SAR: Split Accumulator Right Shift. Contents of A-register
encoded into split word format and middle bits saved. Each
half word shifted right by scheme similar to ARS. Arregister
put back together and sector counter incremented appropriate
number of counts.
SAL: Split Accumulator Left Shift. Contents of A-register
encoded into split word format and middle bits saved. Left
shift of each half word proceeds as in ALS. A-register
reassembled and sector counter incremented appropriately.
SLR: Split Left Word, Right Shift. Contents of A~register
encoded into split word format and middle bits and right word
protected while left word shifted right. A-register reassembled and sector counter appropriately incremented.
SRR: Split Right Word, Right Shift. Contents of A-register
encoded into split word format and middle bits and left word
protected while right word shifted right. A-register reassembled and sector counter appropriately incremented.
SLL: Split Left Word, Left Shift. A-register encoded into
split word format and middle bits saved. Left half word
shifted left; jump to SALI to reassemble A-register and adjust
sector counter.
SRL: Split Right Word, Left Shift. A-register encoded into
split word format and middle bits saved. Right half word
shifted left; jump to SALI to reassemble A-register and adjust
sector counter.
TRA: Transfer. Fetch instruction specified by transfer
ins-truction. Change active channel register.

TMI: Transfer on Minus. If contents of A-register positive
continue to next instruction. If negative execute TRA.
STO: Store. Correct operand address to allow for physical
placement of write head and store contents of A-register
at the corrected address.
HPR: Halt and Proceed. Type out PROGRAMMED HALT and proceed
only after GO has been typed into terminal.

Results of Execution Routine
Example of instructions were prepared as three-line programs with a
simulated binary display providing the output. Additionally, a longer
program was prepared and the accumulator monitored by a simulated octal
display. The results are too lengthy to present here but have proven to
be faithful copies of the machine results.

Utility Routines
As mentioned earlier the main program is supported by short simulations
of pertinent panel functions. The three programs in use to date are listed
in Figure 3. These programs treat the instructions and data as though they
were eight place, octal, whole numbers whereas the D17B number range is
approximately! 1.
MRC simulates the master reset function and presets· the I-register
to TRA to channel 0, sector O. The FILL Routine accepts the octally coded
instructions and data with the exact coding used in the actual D17B system
at the School of Aerospace Medicine. RUN places the computer into operation.
No equivalent to halting the comput~r by moving the switch out of RUN has
been implemented. Instead, the attention button is being used.

Conclusions and Projections
An effective simulation with considerable attention to detail has
been started for the D17B.
Three tasks remain to complete the task: 1) simulate the remainder
of the instructions, 2) include the flag store feature, and 3) include
the rapid access loops.
Following completion of the D17B simulation, a logical next step
might include an assembler to run on the D17B but designed on the simulation.

SET
SECTOR
COUNTER

FETCH & DECODE
INSTRUCTION
INCREMENT
SECTOR
COUNTER

NO

FIG. l.a.

FLOWCHART FOR D17B

B

INCREMENT
SECTOR
COUNTER
NO

READ

OPERAND

YES
FLAG
STORE

EXECUTB
INSTRUCTION

FIG. 1. b.

FLOWCHART FOR D17B, CONT.

''>'4

.(...0

[2]
[3J

MACHINE
OP'l,X+-25pOPEHR
OPFX+-32pOPERR
OPC+-ZERO,SCL,TMI,OPERR,SMP,MPY,SMM,MPM,FORTY,CLA,TRA,

[4J

SECT+-l?127

V

[lJ

S~O,SAD,ADD,SSU,SUB

[5j
[6 J

IS:+(DI[2J=SEC~)/UECOUE

+IS ,SEC'l'+-128 I (S8Cl'+1)
lBCODE:DI+-, 16 2 128 32 128 TM[C;SE.'C:l'J
[8j
U+-DTO AR
[ 9]
SEC '1'+-12 8 I (S ECl' + 1 )
[luJ +(DI[O]€ 0 2 8 10 11)/NOOP
[11J CPER:S8CT+-128ISECT+l
[7J

[lLJ

+(DI[4J~SEC1')/OPER

[13J
lffl+M[DI[3];DI[4J]
[14J NOOP:+(DI[lJ=O)/UNPLG
[15J +UNFLG,pU+-'A SPORED'

[16] UNPLG:+OPC[DI[OJJ
[17J ZERO:OPZX[8,9,10,11,12,13,14,15,24]+SAL,ALS,SLL,SRL.

SAR,ANS,SLR,SRR,COA
[18J -t]PZX[DI[3]]
[19J SAL:ARSP+, 2048 4 2048 TAR
[20J MID+-ARSP[l]
[21J
ARSP+,2048IARSP x 2*DI[4]

[22] SAL1:AR+(8192xARSP[OJ)+(2048xMID)+ARSP[2]
[23] +IS,pSECT+128IsECT+1rDI[4]
[24J ALS:AR+16777216IAR x 2*DI[4]
[25] +IS,pSECT+128IsECT+1rDI[4]
[26J SLL:ARSP+, 2048 4 2048 TAR
[27J MID+-ARSP[lJ
[28J +SAL1,pARSP[OJ+2048IARSP[OJ x2*DI[4J
[29] SRL:ARSP+, 2048 4 2048 TAR
[30J MID+ARSP[lJ
[31J +SAL1,pARSP[2J+2048IARSP[2J x 2*DI[4J
[32J SAR:ARSP+, 2 1024 4 2 1024 TAR
[33] SAVE+ARSP[ 0] ,ARSP[ 2],ARSP[ 3 J
[34J ARSP+LARSPt2*DI[4]
[35J
AR+-ARSP[4J+(8192xARSP[lJ)+(2048xSAVE[lJ)+(SAVE[OJx«
2~(DI[4J+l)pl)x2*(23-DI[4J»)+(SAVE[2Jx«2~(DI[

4J+l)p1)x2*(10-DI[4J»)

Figure 2 . a.

Main Program

[36j+IS.pSECT+128ISECT+1fDI[4J
ARS:+(AR>8388607)/ARSl
+ARS2.pAR+LARt2*DI[4J
ARS1:AR+16777216-f(16777216-AR)t2*DI[4]
ARS2:+IS,pSECT+128ISECP+lfDI[4]
SLR:ARSP+, 2 1024 8192 TAR
SAVE+ARSP[0J,ARSP[2]
ARSP+LARSPt2*DI[4J

[37J
[38J
[39J
[40J
[41J
[42J
[43J
[44J

AR+SAVE[lJ+(U192xAHSP[lJ)+(SAVE[O]x«2~(DI[4]+1)p1)x

2*(23-DI[4]»)
[45J
+IS.pSECT+120IsECT+1rDI[4]
[46] SRR: ARSP+. 8192 2 1024 TAR
[47 J SA VE'+ARSP[ 0 J,ARSP[ 1]
[48J
ARSP+LARSPt2*DI[4J
[49J
AR+ARSP[2J+(2048xSAVE[0])+(SAVE[1]x«2~(DI[4]+1)pl)x

[50J
[51J

[52J
[53J
[54J
[55J
[56J
[ 57J

[58J
[59J
[60J

[61]
[62J
[63J
[64J

[65J
[66J
[67J

[68]
[69J
[70J

2*(10-DI[4]»)
+IS.pSECT+128IsECP+1rDI[4J
COA:+IS.pO+'COA'
SCL:+IS,pO+'SCL'
TMI:+(AR>8388607)/TRA
+IS
OPE'RR:+O,pD+'OPERR'
SMP:LSP+ 4 2048 TLR
AR S P+ 2 04 8 4 2 04 8 TAR
MID+ARSP[lJ
LR+ARSP[OJ+(2048xLSP[OJ)+(8192xARSP[2])
NRSP+ 20484 2048 TNR
SIGN+(ARSP>1023);.e(NRSP>1023)
PROD+(ARSPL2048-ARSP)x(NRSPL2048-NRSP)
LPROD+LPRODfSIGN[0]x2048-LPROD+(+/ 1024 2 512 TPROD[O
J)-512TPROD[0]
RPROD+RPBOVrSIGN[2Jx2048-RPROD+(+/ 1024 2 512 TPROD[
2J)-512TPROD[2]
AR+(8192xLPROD)+(2048 x MID)+RPROD
+IS,pSECT+128ISECT+6
NPY:SIGN+(AR>8388607);.e(NR>8388607}
LR+AR
PROD+ 8388608 2 4194304 T(ARL167.77216-AR)x(NRL
16777216-NR)
AR+PROD[ O]+PROD[ 1J

Figure 2 .b .

Main Program, Cant.

[71] AR+ARrSIGNx1G777216-AR
[72] +IS,pSECT+120ISECT+12
[73] SMM:+IS,pO+'SMM'
[74] MPM:+IS,pO+'MPM'
[75J FOHTY:OPFX[l,4,5,8,9,11,12,13,14,17,lB,19,20,
21 ]+BOC, BOA, BOB ,RSD, HPR, DOA, VOA, VOB, VOC ,ANA ,MIM. COM,
DIB,DIA
[76] OPFX[24,25,28,29,30,31]+HFC,EFC,LPR,LPR,LPR,LPR
[77] +OPFX[DI[3]]
[78] BOC:+IS,pU+'BOC'
[79J BOB:+IS,pO+'BOB'
[80J BOA:+IS,pO+'BOA'
[81J RSD:+IS,pU+'RSD'
[82J liPR: 'PROGRAMMED HAL'i"
[83J WAIT:START+~
[84J +«2tSTART)='GO')/IS
[85J +WAI'l'
[86J DOA:+IS,pU+'DOA'
[87J VOA:+IS,pO+'VOA'
[88] VOB:+IS,pO+'VOB'
[89] VOC:+IS,pO+'VOC'
[90J ANA:+IS,pAR+2~«24p2)TAR)A«24p2)TLR)
[91] MIM:+(AR>16777215)/IS
[92J COM:+IS,pAR+1G777216-AR
[93J DIB:+IS,pD+'DIB'
[94J DIA:+IS,pO+'DIA'
[95J HFC:+IS,pO+'HFC'
[96J EFC:+IS,pO+'EFC'
[97J LPR:+IS,pO+'LPR'
[98J CLA:+IS,pAR+ml
[99J TRA:+IS,p(pC+DI[3J),(pDI[2J+DI[4J)
[100JSTO:SECT+12BlsECT+l
[101J +(DI[4J~SECT)/STO

[102J +IS,pM[DI[3];(12BISECT-2)J+AR
[103JSAD:NRS+, 2048 4 2048 TNR
[ 1 0 4 JSAD 1 : AR S P+ , 2 04 8 4 2 04 8 TAR
[105 J i4ID+ARSP[ 1]
[106] ARSP+204B I ARSP+NRS
[107] +IS.pAR+(8192 xARSP[O])+(2048xMID)+ARSP[2J
[108JADD:+IS,pAR+16777216IAR+NR
[109JSSU:+SAD1.pNRS+2048-(, 2048 4 2048 TNR)
[l10JSUB:+IS,pAR+16777216IAR+16777216-NR

Figure 2.c.

Main Program, Cont.

VFILL[UJv
V PILL
[lJ
'PROCEED'
READ:L+I!]
en
[3J

~ox\A/(3pL)='END'

[4J
[5J

~«(-ltL)='/').«-ltL)='V'»/LOC.ENT

LR+OO TV ( 8 t - 9 t L)

[6J

~REAV

[7]
[8]
[9]

LOC:~READ,pIR+LR

ENT;ADR+ 32 128 TIR
M[ADR[O];ADR[l]]+AR+LR
[10J
IRS+ 131072 128 TIR

[llJ

v

~READ.pIR+(IRS[0]x131072)+128IIRS[1]+i

(a)

V

[1]

VMRC[ OJ V
MRC
IR+l0485760

V

(b)

VRUN[O]V
V RUN

[1]
[2J
[3]

DI+ 16 2 128 32 128 TIR
C+DI[3J
MACHINE
V
(c)

:fig!.lX"e 3. aJFill Routine, b) Master Reset, cl Run Routine

27

A Hardware Divider for the Dl7B Guidance Computer
by
Alfred M. Williams
The Boeing Company
Houston, Texas
and
J. D. Bargainer
University of Houston
Houston, Texas 77004

The Dl7B Guidance Computer for the Minuteman I, ICMB is capable of performing addition, subtraction and multiplication through
hardware algorithms.

However, division must be performed through

a software routine.

A hardware division c.apability can be acquired

by modifying the Dl7B operation codes and by incorporating additional hardware.
DI7B.

This paper outlines such a modification to the

The division algorithm is presented along with a description

of the hardware operation.

The divider is designed to perform

full-word and split-word division and determine a fractional quo~

tient and "remainder.

Both the quotient and remainder are' accessi-

ble to the programmer through the computer registers once the
operation is complete.
The Division Algorithm
A non-restoring division algorithm was desired that was capable of performing division. with either positive or negative num-'
bers in either the dividendi or divisor.

It was also desired that

the algorithm be easy to implement on the DI7B.

28
A divider; algori thm which

~ee:l:s

these r,equ;irements
is the
.
..

following fractional divide algorithm.
1.

Let ro

2.

Let
q

3.

=x
=

1

~

.

= q l oq2 ••• qn

To find x/y

ero is the first partial remainder)

1 if'ro and y have the same sign

o

otherwise

Iteratively

= 2r. 1+(1-2q.)y

r.~

~-

~

lifr±_l and y ha,ve the same sign
q. =
:.
~O otherwise
:
"
~

.

The partial remainder r. isthere,fore found by, left
~

shiftingr i-1' ,and th,en ad;¢ling,,'yifr q'i is 0 and s:ubtracting y if qiis 1.
4.

;".,'

Repeat the ,i tera,tionn ,tJ.mes , or, Ul1,til ,the pal;"t.::.ial,
remainder is z'ero.'
000.~1

5.

Add L

6.

When r.~

7.

When r f - 0 then correct the quotient by: 'addinSJ

=

to correct the quot,ier:t.

0 then q.

~

::::.

,1, and qj

1.000 ••• 0.

=

0

'"

j.> i.

';

.:

The divider algorithm implemented on the:D17B closely fol.,..
lows this outline; however, the last step in ,the process, correctionof the pse:udo q:uotient",is
correction

.factor~..

no~

perfo:r'med,by adding a

I,nstead., the sign digi,tis pomplemented and

a "1" is forced ,into the ,leas-.t ,sig:nifi,cant.::. dig.it.::. if the remainder
is non-zero.

The end resu .lt of this ,technique;is the same as

29

that acquired by adding the correction factor to the pseudo quotient.
The division operation designed for the Dl7B assumes that
the dividend is stored in the accumulator.

The division instruc-

tion is interpreted by the instruct.ion processor and a divisor is
loaded into the number (N) register from the specified memory
address.

At the end of the division operation, the quotient is

stored in the accumulator and the remainder is stored in the
lower accumulator.

This arrangement was chosen because the quo-

tient was desired after most division bperations.

In the case

where the remainder is desired, it is possible to transfer it
from the lower accumulator to the accumulator by loading alII's
into the accumulator and executing the ANA instruction.
It was necessary to add a delay flip· flop to the accumulator
to perform the left shift required by the division algorithm.

A

delay flip flop was aisoadded to the lower accumulator so that
the quotient digits could be stored in the proper order.
logic was designed to do each of the following tasks:

Control

(1) force

the least significant bit of the partial remainder to "0" prior
to each add cycle, (2) determine whether addition or subtraction
was performed _during the next add cycle, (3) determine the quo;...
tient digit and store it in the lower accumulator, (4) monitor the
accumulator for a zero remainder,
tient,

-(5)

correct the pseudo quo-

(6) count the number of shifts performed to determine when

30

the operation was completed.
The design took into account one more characteristic of the
DI7B.

The D17B operates on two types of numbers, full-word and

split-word numbers.

A full-word number is composed of 24 bits,

of which one bit is a sign bit • . A split-word number is composed
of two ll...,.digit numbers.

As a result, two different division

operation code.s were required, one that would perform
division and one that would

p~rform

fl1~l-word

split-word division.

Divider Design
The D17B has 16 .basic operation codes.
used.

All 16 codes are

Each operation code is determined by the state of

flip flops, 04, 03, 02, and 01.

th~

four

Four of the operation .codes are

used for multiplication, two are used for split-word and fullword "normal" multiplication and two are used for split- and fullword "modified" multiplication.

The mqdified multiplication op-

eration was redundant to.the normal multiplication operation and
was replaced by the division operation.
To delete the IImodified" multiplication operations, it was
necessary to modify the multiplication enable signals, OMO, OMF,
and OM.

Each of these signals enabled a period in the multipli-

cation operation and was modified by ANDing the 02 signal with
them.

During multiplication the 02 flip flop is.. used as the

addition/subtraction indicator to the carry/borrow flip flop, Ak.
The Ak flip flop was enabled for addition if 02 was true and for
subtraction if 02 was false.

This function could no longer be

31

performed by the 02 flip flop and a' spare flipflop replaced
it.

After these modifications were completed, two operation

codes were available for
04 03 02 01,

0'4

(34)

i

division'~

The operation code',

was us'ed'for' full-word division and,

03 02 01 (30), was used for split-word: division.

The 01

flip flop was used to distingu'ish"be'tween:"full-word and
split-word division.
The operation codes chosen'for division" maintained two of
the "modified" multiplication operation' characteristic's.

First,

the number located at the specified memory address wasautomatically loaded into the N register during the first cycle of division.

Second", the Q flip flop was one set at the end of the

first word time of division.' A spare flip flop in the computer,
labeled the DIV flip flop, was used'to designate .the division
operation.

The first word time of division was indicated by the

signal (DIV

Q).

signal (DIV Q).

All

remainin(~r

word times' were indicated by the

The D flipflop was' u'sed to 'separate the middle

word times from the last word time.
A word time counter is initialized during'thefirst word time
of 'division.

The counter is composedofthe'CB,5--CBlflip flops.

These flip f lops" are des igrted' to coun tdowna t Tptime.' , They are
initialized to (24) or (11000) 2 for full-word, division and (11)10
or (01011)2 for split-w6rd division.

At Tp time of the first word

time the, accumulator recirculation 'control flip. flop, Ac, is set.
This disables normal recdrculation o£ the accumulator flip flops
and makes it possible for the, accumulator to be extended by one

32
bit.

The one bit extension creates. the one bit shift required by

the divide algorithm.

Also, at Tp time of the first word time, the

lower accumulator recirculatioI) control flip fJ.op, Lc, is set.
This disables normal recirculation Of tl1.e lower accu;m,ulator flip
flops and makes it possible for the lower accumulator. to be extended by one bit.

The lower accumulator is used to store the pseudo

quotient and the one bit delay is required so that the quotient
bits will be stored in the proper order.

During the first word

time of division, the divisor is loaded into the N
memory_

regis~er

from

A spare flip flop designated the N2 flip flop CopiE:sthe

sign of the divisor loaded into the N register.

The sign of the

divisor is compared with the sign of the. number in the accumulator.
If both signs are the same the

N~

differ, the N2 flip flop is reset.

flip flop is set.

I~

the signs

After the N2 flip flop has com-

pleted this operation, it indicates whether addition or subtraction
is performed during the next add cycle.

It also indicates the proper

pseudo quotient digit.

This logic isoperatipnal only if a non-

zero remainder exists.

If a zero remainder does exist, then the N2

flip flop logic is modified so that the flip flop is set at the next
compare time and reset for all remaining modify times.

The C5 flip

flop performs a delay so that the detected addition/subtraction
operation information will be available during the add cycle.

It

copies the N2 flip flop at TI time during full-word, division and
at Tp and Tl2 time during split-word division.
During the middle word times the dividend, located in the
accumulator, is shifted to the lei't and the divisor, locC'l.ted in

33

the N register, is subtracted from or added to it.
The shift of the dividend is performed by adding a delay
flip flop to the accumulator.

The C4 flip flop was used to

provide the required one bit delay.

Extended Accumulator

-

Logic for the C4 flip flop is designed so that it will
copy the Ax flip flop.
The Ap flip flop is designed to copy the C4 flip flop.
A23 flip flop copies the A24 flip flop.

The

The A24 flip flop is

designed to function as the adder/subtractor flip flop during
division and theAk flip flop is used to determine the carry or
borrow.

Addition/Subtraction time is determined by the Nl flip

flop (a spare flip flop).

The add cycle is initiated at T2 time

and continues through Tp time for full-word division.
word division the cycle occurs from T2
time.

~

For split-

T13 time and TIS - Tp

If a zero remainder exists, the add cycle will not be

initiated.
The SB3 flipflop is used to copy the adder flip flop and
determine if a zero remainder exists.

It is reset prior to each

add cycle and set whenever the A24 flip flop is true.
The J and C2 flip flops are used to store the remainder
status.

Both flip flops are initially reset during the first

word time.

The J flip flop determines if a zero remainder exists

34

in the least significant split word during split-word division.
It. copies the SB3 flip flop at T13 time," during spli t-woiddivision and the C2 flip flop during full-word division.
The C2 flip flop determines if a zero remainder exists
during full-word division or in the most significant split word
during split-word division.
time.

It copies the SB3 flip flop at Tx

The lower accumulator stOres the pseudo quotient 'gener-

ated during the middle word times of division.

It is extended by

one bit through the addition of the C3 flip flop.

Extended Lower Accumulator
The one bit delay is required if the pseudo quotient digits
are to be stored in the proper order.

The loop re.circulation

control flip flop for the lower accumulator, the Lc flip flop,
has previously been set during the first word time of division,
so that the C3 flip flop can copy the Lx flip flop at the beginning of the second word time.

The C3 flip flop is also de-

signed to function as the quotient flip flop, that is, the C3
flip flop is responsible for decoding and injecting into the lower
accumulator the pseudo quotient digit.
place at To time for full-word division.

This detection takes
It is accomplished by

requiring the C3 flip flop to copy the N2 flip flop.
During split-word division, the pseudo quotient is detected
at TO and T13 time.

At these times, the quotient digit 1.S stored

35

in the C5 flip flop and it is necessary for the C3 flip flop to
copy the C5 flip flop.

When the C3 flip flop is not detecting a

quotient digit, it copies the Lx flip flop, as previously stated.
The Lp flip flop is designed to copy the C3 flip flop during
division.

The L24 flip flop copies th Lp flip flop during divi-

sian.
The operations just discussed are performed recursively during the middle word times of divisiono

At the end of this period,

the pseudo quotient digits are stored in the lower accumulator
The remainder is stored in the accumulator

0

0

During the last word

time of division, the pseudo quotient is corrected and transferred to the accumulator and the remainder is transferred to the
lower accumulator.
The remainder is transferred from the accumulator to the lower accumulator by having the Lp flip flop copy the Ax flip flop.
Correction of the pseudo quotient is performed by the A24 flip
flop and the C3 flip flopo

The A24 flip flop is responsible for

complementing the sign digit of the pseudo quotient.

It comple-

ments the Ap flip flop at Tp time during full-word division and
at Tp and T12 time during split-word division.
The least significant digit of the pseudo quotient is forced
to "1" by the C3 flip flop if the remainder is non-zero.

During

the last word time of division, the C3 flip flop is set or reset
at TO time for full-word division and at TO and Tl3 time for splitword division, depending on the remainder being non-zero or zero
respectively.

The transfer of the pseudo quotient from the lower

36
accumulator to the accumulator is performed by the Ap flip flop.
It copies the C3 flip flop during the last word time of division.
At the end of the last word time of division, it is necessary
to reset the recirculation control flip flops for the accumulator,
Ac, and lower accumulator, Lc and to reset the DIV flip flop.
The logic to implement the division algorithm was constructed
on three cards with the same size and shape as the logic cards of
the D17B.

All flip-flops used in the modification were spare

flip flops already in the computer and only gating logic was added.

Approximately 350 diodes were used on the three cards.
Complete documentation of this modification including, wir-

ing lists, circuit diagrams and negatives for etching the boards
is available and we would be happy to send this documentation to
anyone requesting it.
Bibliography
Yaohan

Chu, Digital Computer Design Fundamentals, McGraw Hill

Book Company Inc., 1962
Autonetics, Minuteman Computer Logical Description Engineering
Manual 2065

14 January 1960

Air Force, General Purpose Digital Computer
llG2-10-5-3-5

Technical Order

December 1960

Air Force, Digital Computer Electronic Modules
llG2-10-5-3-l0

15 October 1962

Technical Order

37

STATE DESCRIPTION OF Dl7B COMPUTER
Gary B. Lamont
Capt DouglasJ. Allen
Electrica.l Engineering Department
Air Force Institute of Technology
Wright-Patterson Air Force Base, Ohio

45433

ABSTRACT
This report presents a state description of the D17B Computer. A set
of control flipflops were chosen and from this choice the states of the

of

computer Were defined. The discussion of each state includes a set
register transfer equations that enumerate the information transfer during
that state.
This approach was taken to present a compromise between a simple veitch
diagram of the computer modes and a complete listing of the logic equations
for the computer. Hopefully, this description will not only be a graphic
study plan of the machine, but also an aid for maintenance and trouble
shooting.
Introduction
A state description of the D17B Computer is a method of portraying the
functional operations of the computer using the configuration of the control
flipflops •. A given configuration of the control flipflops is defined as a
state of the computer and the paths between the states represent the functional
operations. A set of register transfer equations that outline the information
transfer between registers may be added to complete this description.
This approach is used for computer synthesis by Chu (Ref 2: 396-429) and
is one basic method of. modern computer design. As an analysis technique this
method places the burden of defining which.flipflops are to be considered as
control flipflops on the analY~er~ After this decision is made, the process

38

is straightforward.

In this presentation two primary considerations were used

to choose the control flipflops. First, an effort was made to define the
states so that the state description would parallel previous descriptions of
the machine. Secondly, the control flipflops were chosen to make the descriptionlas simple and concise as possible.
A state description offers three advantages: (1) it presents a systematic
way to study the machine, (2) the description presents a definite path to follow for maintenance checks, (3)
veitch diagram presentation.

this method presents more detail than the

State Description of the D17B
Operation of the D17B may be described by considering the various configurations that the control flipflops enter when the machine is executing a
program. Thus, a state of the machine is defined by a particular configuration
of the control flipflops. States may be represented on a diagram which depicts
the various paths that the machine may cycle through during program execution.
This state diagram may be used in conjunction with a description of the information exchange between registers to completely describe the machine operation.
State descriptions have the advantages of being a visual description, thus
easily understood and capable of displaying large amounts of information in a
concise form. Even more important, the state diagram provides a systematic
approach for describing how the computer functions.
Register Transfer Notation. In order to conVeniently describe how information is transferred between registers during each state, it is necessary to
adopt a type of shorthand convention to condense the description. The symbols
usually used in this notation are an adaptati~ of the system used by Chu,
Ref 2: 378.
State Diagram. In this report the states of the computer have been broken
into two major classes or modes, Compute (K) and Non-compute (K'). The states
in these classes are represented by nodes (circles) and are numbered with an

39

identifying number. Configurations of the major control flipflope which cause
transition between states are listed beside the transition path on the diagram.
Associated with each state diagram is a table which lists the state by number
and name and 'the information transfer which oocurs durinc that statee The
Non-oompute states are displa7ed in fils. 1 and 2 aDd Oompute states are shown
in Figs. " 4, and 5. The associated rapster tranafer notation. for these
state diagrams can be found in Ref 6. Thlllreferenoe oan be obtained from the
Defense Documentation Center.

Ion-P2!Quta Sktta. RafOl ,6)

(4, 1.1 - 2.15)
Power On :Random State. lIten powel' is applied to the D17B, the oontrolling
and

flipflops Will beoome aotivated in a raDdOll state. Depr••aine the "MA.8'l1R
RESET" swi toh oauses the computer to enter a Prepare To aperatestate where
in! tialization 18 begun. a.en, 1.
PtOPW to Qp'tAii (nl). In this state the pba.e register 18 b11 tls.lized
to an 1dle mode.. '0 1a turDed ott to prevent the oOllpUter trOll ante:ri:QI a
speoial state called fine oountdOWi1. The m.orete output oo.trol reei.ter i.
1m tiallzed to prevent randoa diacrete output. and variou. other tl1,f'lopa are
in! tlalized to start the 81f1ChrordlaUon of the b1 t oounter wi tit the .eotor
traok. 00ntro1 flipflop. 02 and J are Olle let to allow traas1 tion to the
S7fto Bit Oounter 1 state.

sue Bl~goWl'" 1 (n2).

Thi. state i8 the ••cond I!l'tate duri. whiob 8711ohronisation to the Bit. Oounter and the Seotor Traok i. aooolllpl1sb.ed. AI
shown on the state 41&12'_,. traa.leut .11I.ter rea.t .11Dal (1... tban ona
memory revolution in duration) v.11l caUSe tbe_cbine to reOJ'Cle throurh
tbe hepare To Oompute Stat.. The 01 flipflOP i. ft ana" .et allowinc entr,r
into the next .tate, S;Jr1O Bit Oounter 2.
§Do Btt Couphr , (n3)~ In this state the inatruotlonr.,iater i. loaded
v.l. th an unoohdi tional jump itu.truotion to ohannel 0, I.otor O. Thi. instruction
v.l.ll be the first 1nstt,totiQlt lflteouW unlel. a nttV instructiotl ia loaded prior

40

random state at power on

'--.

Fi,-.4. D·118 NOllcompute States

41

to the computer entering the compute mode.
After complete synchronization of the bit counter and the sector track~
the Rc and 01 flipflops are VI zero" . set allowing transition to the Manual
Halt-Idle state.
Manual Halt-Idle 1 (n4). This state acts as a decision point for
state transition. Three separate situations will cause the computer to
enter the Manual Halt-Interlock state. If the previous state were n3 or n7,
then state n4 was entered at a bit time corresponding to T of sector number
x
0; thus~ the 04 flipflop will be "one" set prior to the occurrence of any
other state determining transition.
A third situation which could ~ause transition from n4 to n5 arises
when the computer control awi tch is placed into "Hal til or "Single Step"
during a compute operation. State n4 will be entered from Program Halt
and transition will occur to state n5 or n7 depending on the 01 flipflop.
This state transition is not predictable since the 01 flipflop state will
be determined by the instruction that was being executed when the compute
switch was placed in the Halt or Single Step. State n7 maybe the next
state entered if the previous state was n5. In this case n4 Was entered
at a bit time corresponding to T1 of sector 177 thus allowing the 01
flipflop to be "one" set.
State nB, Prepare To Compute, will be entered if the IICompute ll
switch is not in a "Halt" position and Sb2 is zero set. Sb2 is a flipflop
that is one set as the result of a verify or parity error.
Manual Halt-Interlock (n5). If there is no Mechanical Reader Input
il
Signal (1*1)
m present or if a "Halt command is present from the IICompute
Switch or if a Sprocket timing interlock signal (T*!) is present with no
Fill Signal, the computer will cycle between states n6 and n5. Similarly,
a cycle will exist throughn7~ n4, and nS if a Mechanical Reader Input
signal is present with no Fill signal (F*). "Wait" state, n9, will be
s
entered if a Fill signal is present. Thus, Manual Halt-Interlock, nS,
acts as an interlock for the state transition prOCeSS of the computer.

42

Manual Halt - ~epare to toad (n6). ~epare to Load state is entered
if a device such as a photo reader is used for loading. From this state,
transition will be back to n5 if a Sprocket Timing Interlock signal (T*')
is present or to the Wait state, n9, if no T*r signal is present.
ManuaJ. Halt - Idle 2 (n?). The Manual Halt-Idle 2 state serves as a
timing delay. From this stat~ the computer will enter n4 if the compute
swi tch is in the "Halt" posi tion and/or a Parity Error has occurred e If
,no parity or verity errors have occurred, the next state will be nB, the
Prepare to Compute State. In the event that a Fill signal (~) occUrs,
the next state will be n9.
Prepare to Compute (nS). In the Prepare to Compute state initialization of several flipflops is accomplished in preparation for entry in
the Number Search State of Compute. J must be "one" set allowing the D
flipflop to be "one" set. Then when agreement is reached between sector
track and the Number Register, K is "one" set.
"Wait (n9). Flipflops are initialized to receive the Input Load code
in the ~it State. The computer will cycle between this state, n9, and
nlO,Prepare to Sample, until the Sprocket Timing Interlock signal, T*',
has reached steady state. If a verify error occurs, the Idle 2 state will
be reentered.
Prepare to Sample (nlO). The primary purpose of the Prepare to Sample
state, nlO, is to allow the Sprocket Timing Interlock signal to reach steady
state as described above. When this occurs, the computer will remain in the
Prepare to Sample state until bit time T23 occurs and will then transition
to the Sample state, nll.
Sample (nll). During the Sample state, the computer will load the
information on Input Lines Il* through I 5*. Note that flipflops C I
.
P
through Cp4 were ·!'-zeDoH-,"set in state n9 and will be "one" set only bY,an
I* input. At bit timeT13 the computer will enter the Parity Check state.
Parity Check (n12). Flipflop Sb3 will toggle on Cpl as Cpl through
Cp4 complete a circular shift. This circulation will occur on each bit time

43

when the 04 flipflop is "one". set. In order to insure circulation for only
five bit times the 04 flipflop is. "one" set on bit time T;;Wand "zero" set
on bit T24" "One" setting the CpS flipflop will allow a change to one of
the Process Code states depending upon the contents of the Input Lines.
Process Code-Clear (nl). The clear load code C.Ruaes the Lower
Accumulator, L, to be filled with zeroes •. "One" setting the L flipflop
c
allows new information to be. read into L st~rting with bit time TO. Then.
the CpI flipflop is flipflop is "zero" set preventing new information from
being read into the L-Ioop.lfa parity error is indicated by a Sb3 at bit
time Tp the next modewill.be n9;however, if no parity error occurs, the
computer will bo to state n7, the Wait state.
Delete (n14).
by the computer ~

When the input lines are all "ones" no action is taken
Th7.s command can be used as a space in input tape.

All

"zeroes" is not used as a Delete command because the Sb3 flipflop would
indicate a parity error.
Prepare to Fill State (nlS). The Prepare t.o Fill state is a preparation state for filling the memory. After the Fill command is processed,
the succeeding Load codes will be loaded into memory until "Halt" or "Start
Compute" commands are processed. In the event a parity error occurs, the
next state will be n7; if no parity error occurs, n9 will be next.
Prepare to Verify (nl6). The Prepare to Verify State is analogous to
the Prepare to Fill State. Once the computer cycles through this state
(caused by processing a l?ad code IS' 14 13' 12 II) the succeeding load
codes will be compared with the contents of memory as specified by the
Instruction Register.. This actual operation will be executed as the
result of an Enter command will therefore be described as part of the
Enter state. Exit from this Prepare to Verity is similar to that of the
Prepare to Fill state.
Octal Numbers (nl7).In this stat~ the oct~l numbers received from
the input lines will be .!3tored in the L register. Any number of octal

44
codes may be loaded but only eight sets of octal digits may be stored in
the Lower Accumulator at one time. Octal Numbers that are shifted out of
L are lost. Exit from this state is similar to those of the other Process
Code states.
Location (nlB). In this state, nlB, the contents of the L register
is transferred to the instruction register. This information will contain
the memory location, channel and sector number, that will be used to start
Fill and Verify operations.
The Ic flipflop is "one" set at bit time TO allowing new information
to be written in the I register, then it is "zero" set at bit time T24
after L is transferred to I.
Enter (nl9). In this state, nl.7, the contents of Lower Accumulator
will be loaded first into the accumulator, then into memory if a Prepare
to Fill state had initiated a fill operation or the contents of the
Accumulator and Memory will be compared if a verify operation had been
initiated by the machine cycling through the Prepare to Verify state. The
location of memory involved in the above operation is specified by the
Instruction Register. If a parity error is detected, transition will be
from nl9 to n7, otherwise an error-free operation will allow the computer
to go from the Enter state to the Wait state.
At this point it is necessary to define a set of four states that the
computer cycles through during a Fill or Verify operation. (A Fill or
Verify operation results after the computer has successfully cycled through
the Prepare to Fill or Prepare to Verify states and will continue until the
Halt or Start compute state is reached). These four states are called
Fill-Verify Idle, fvl; Fill-Verify Number Search, fv2; Fill-Verify wait 2
Word Times, fv3 and Fill-Verify Execute, fv4 and the computer cycles through
them simultaneously as it passes through the Enter state. A state diagram
of this four-state operation is depictedfffi~g. These states will be
discussed in conjunction with the Enter state since they occur simultaneously

GE/ EE/7 2S·2

45

Fig.

'i.

Non compute FiII-Verify States

46

beginning in the Enter

state~

The action taken by the computer will vary

with the part of memory that is to be filled or verified, thus it is necessary to consider not only the Enter state and the four-state cycle described
above, but also the part of the memory involved in this operation must be
considered.
Fill-Verify Idle (fvl).

During the Fill-Verify Idle state the Lower

Accumulator is copied into the accumulator. "Zero" setting the D flipflop
causes transition to rv2, the Number Search State. This transition occurs
simultaneously with a transition from nl9 to n9 states.
Fill-Verify Number Search (rv2).

During this state agreement is

established between the Sector Track and the operand sector part of the I
register. This comparison is made by the 0b2 flipflop during bit times
T2 through T7" . The operand channel part of the I register is copied into
the C register and channel agreement is established. The D and E flipflops
p
are "one" set to caUSe transition to the Wait 2 Word Times state.
Fill-Verify Wait Two Word Times (rv3). During the Wait Two Word Times
state, the Channel Buffer is copied into the Channel Register. The Number
Register copies the contents of memory as specified by the Channel Register.
"Zero" setting the D flipflop causes transition to the Fill-Verify Execute
state.
Fill-Verify Execute (fv4) •. Fo:r both Fill Verify operations, the operand sector part of the I register will be augmented by one in this state.
For Fill operations the contents of the Accumulator will be transferred to
a memory location as specified by the Operand Address part of the I register. After the Fill operation, transition is made to the Fill-Verify
Idle state. Verify operations are different in two ways. First, the
contents of the Accumulator and the Number Register are compared. If
agreement occurs Sb2 flipflop will remain" zero" set and the next state will
be fvl. Disagreement is indicated by Sb2 "one" setting and the next state
will be a Manual Halt state.

47

Halt (n20)o When the "Halt" code is processed, the Halt state will be
entered and the V flipflop will be'''zero'' set causing a transition to the
c
Pcrogram Halt state.
Start Compute (n2l). The Start Compute command when entered on the
Input Lines will cause the computer to enter the Manual Halt Idel 1 state
before transitioning to the Prepare to Compute and Compute states. ' If a
parity error occurred while processing the code, the computer will not
transition from the Manual Halt states.
Program Halt (n22). Four separate conditions may cause the computer
to enter n22, the Program Halt state. If a "Halt" load code is successfully
, processed in, the computer will enter n7 before returning ,to Manual Halt
Idle, states.
Secondly, a halt instruction may be executed in the Compute mode or if
the Compute Switch is not in the "Run" posi tionwhen a new instruction is
found the computer will return to Program Halt state from the "Last Word
Time State" of Compute.

Also, if during the Number Search state of compute

, the "Compute Switch" is not in "Run" and an, instruction search is required '
to locate a new instruction, the computer will enter n22. In all cases the
computer prepares to enter' one of the Manual Halt Idle stat"es during the
Program Halt state. The actual Idle state entered depends upon the state
of the 01 flipflop which was set by the instruction being executed when
state n22 was entered.
If state n22 were entered as the result of processing a Halt command,
during a Fill or Verify operation, the D and E' flipflops will be set to
caUSe the computer to simultaneously enter the Idle state of the FillVerify operation.
Compute StatesG Ref (3: 25)
The Compute mode of the
flops. Th~ K flip:f,'lop~ when
one of, the "Compute" states.

and (4: 5~i - 6.13)
D17B is controlled by seVen major control flip"one" set, indicates that the computer is in
The various states of Compute are then!

48

GE/EEI72S·;!

From Prepare to Compute

Fig.S ' O.17B Compute States

49

controlled by the D and E flipflops. When the E flipflop is "one" set
an instruction is being executed. The D flipflop, when "one" set, indicates that an instruction search is in progress and when" zero" set
indicates instruction read and/or operand search is in progress. The

4

four flipflops of the Operand Storage Register, 0 through 01' determine
the instruction that will be executed.
Instruction Search State (cl). The Instruction Search State as
defined in this report will be the state indicated by the flipflop
settings K D E'. It is not necessary for this state to occur with the
execution of every instruction.
If a program is optimally coded, a new instruction can be read into
the I register during the execution of the present instruction. In this
(.

case, the instruction search operation was performed as a result of forethought of the programmer. Similarly, the Instruction Read-Number Search
state may also be avoided by astute programming. In this case the computer
would cycle between the two states of Execute without actually performing
an instruction or operand search.
Instruction agreement occurs when the memory location addressed by
"next instruction" part of I is in a position to be read by the computer.
Monitoring for this condition is performed by the buffer flipflops ObI
and 0b2. These two flipflops a:re monitored by the Id flipflop which
controls the D flipflop. When the D flipflop becomes "zero" set, transition to state c2 occurs.
Instruction Read-Number Search State (c2). Instruction Read-Number
Search state, c2, is a dual function state defined by DE' flipflop conditions. Like the Instruction Search State, this state may not necessarily
be realized with the execution of every instruction. One-half of the dual
function of the state may be exercised. For example, the next instruction
may be found and read during the Execution state and the computer. may cycle
to state c3 for the Number Search function alone.

50

For number agreement the information in Ip at bit times T2 through
T must agree with the Sector track, S. Since the loops are effectively
g
separate channels of' 4, 8, and 16 word length, more than one f'lipflop is
needed to check agreement for all channel elngths.

Flipflop 0b2 monitors

for agreement for the 4 word loops, ObI monitors for 8 word loops, Sbl
for 16 word loops and 0b.3 monitors for the full channel length, 128 words.
TheNd flipflop is the primary number agreement monitor and is changed by
the above number agreement flipflops at bit time Tl.3"
Instruction Read is accomplished by setting the desired memory channel into the Cp5 through Cpl flipflops. When flipflop Id indicates
Instruction agreement, the I f1ipf'lop is "one" set allowing the new
c
instruction to be read into the I register. Bits I24 through 121 are read
into the Operand Buffer Register, and 112 through I8 are read into the
channel buffer register. If the instruction is a flag-store instruction
(I 20::o1) the flag channel information, I 19 , I 18 , and I17 is read into the
Flag Dade Buffer Register. If the instruction is not a flage-store instruction, the Flag Code Buffer Register is loaded with "zeroes".
From this state, c2, transition will be to one of the instruction
execution states or to 01 in the case of the transfer on minus instruction
with a positive accumulator (see state c4 description). If the Compute
Switch is not in the "Run" position when the I flipflop is "one" set to
c
read a new instruction, the computer will go to Non Compute Program Halt,
n22.
Last Word Time of Execute (0.3). The Last Word Time of Execution, c.3,
will be discussed in conjunction with the execution of each of the instruction states since during this state the operation started in each of the
instruction states is completed. For all one-word-time instructions (04=1),
the instruction defining state is entered for the first bit time of execution
and then the computer transitions to c.3 to complete the operation.
This state acts as a decision point for the computer to exit the Oompute

51

Mode. If the Compute Switch is· not in the· "Run" position and a new instruction is fOUnd,the computer will go to state n22, Non Compute Program Halt.
Unconditional Transfer (c4}. The word format of the D17B makes no
provision for specifying the channel of the next instruction. Thus, there
must be a command to change· channels of operation. The Unconditional
Transfer is a "jump" instruction that is used for this purpose. In this
"jump" instruction the sector of next instruction field is ignored and the
complete operand address Serves as the address of the next instruction.
The new channel address is contained in the Operand channel portion of the
transfer instruction. This information was shifted to the program channel
tfurfer register during the instruction search operation. At bit time TO
:t:Q.e
program Channel Buffer Register is parallel loaded into the Program
.".'
Channel Register.
-,

'.:

,

,,""

'-

Instruction agreement is controlled by the nUmber agreement flipflop
which determines the sector of the new instruction from bits 17 through II
of the present instruction.
'Conditional Transfer (c5).The decision for the Conditional Transfer
operation is made in state c2. If bit A24 lszero, the accumulator is
positive and the computer returns to state c1 to search for the instruction
as indicated by 5p [IJ. A "I" ·lli!::bit position A24 indicates that the accumulator contains a negative number and the computer goes to state c3 and
selects the new instruction as indicated by 0[1].
Store Accumulator (c6). The Store state must be considered for four
different situations; storing in channel 50, storing in channels 00 thru
46, storing in the loops, and flag storing.
Storing in charinel'O or "Hot storage writing" is initiated by setting
the S{ flipflop to the channel 50 store code, then the Accumulator is copied
directly intochB.nnel
and in a sector two octal-numbers less than the
sector of SCI]. This two sector difference is accO'unted for by the fact
that the write heads are separated i'rom theread·heads by two sectors.

,0

52

In order to store information in channels 00 thru46 an EWC signal must
be present, enable write switch must be on.
46 the computer utilizes a separate selector
selection is accomplished using the contents
The Accumulator is then stored in the memory

for selecting channels 00 thru
switch for each channel. This
of Channel Storage Register.
address specified by the OP[I]

minus two sector positions.
Storing in the E, F,H loops is similar to storing in channel 50
except the S.1. flipflops are set by the contents of the channel buffer regisStoring in the V and R loops may be accomplished if the computer is
not in Fine Countdown mode (F =1) (See state 017). In this case, the
o
contents of A is added to the incremental input at the time of execution.
A special case results when the T20 bit of any instruction is "l".
This "flag", "lI' in T20 is used to execute two operations with one instruction. The contents of the Accumulator will be stored in the channel indicated by the contents of bits 119 thru 117 This means that the sector of
next instruction field of the instruction being executed is limited to the
four bits 116 thru 11 .3 and the next instruction must be wi thin the next 16
sectors. Flag storing is accomplished in the following steps: The Flag
0

store buffer register Sb is loaded with :the contents of 119 thru 117 during
state c2.During the execution of the instruction the Flag Store Buffer
register is parallel-loaded into the flag store register. This information
is used to select the proper write heads for writing the Accumulator
contents into memory.
Clear and Add ((7). State c7 initiates the clear and add operation,
in which the contents of memory as specified by the operand address is
transferred to the ACCUlllulator. In state 07 the N flioflop is "one" set
c
allowing the selected contents of memory to be read. into the Number register. In state 0.3 the operation is completed, the selected contents of
memory is read into the Accumulator.

53

Add (c8). State 08 initiates the add operation in which the memory
contents as specified by operand address is added to the Accumulator.
The sum is then stored in the Accumulator.
Subtract (c9). Subtraction is accomplished by the hardware as
addition in the D17B; however, the carry operation of addition is converted to a borrow operation by a "one" in the 02 flipflop.
Split Add (cl0). During the split add operation the split word
contents of the Accumulator is added to the corresponding parts of memory
and the sum is stored in the split word portions of the Accumulator. At
bit times T12 and Tl.3 the Ac flipflop is "zero" set allowing the contents
of A12 and Al.3 to remain unchanged.
Split Subtract (ell). The split subtract operation is similar to the
split add operation, except that the split word contents of memory location
specified by O[IJ is subtracted from the contents of the Accumulator.
X Special State (c12). No action is performed in the X special state.
It serves only as a decision point for the computer to enter a special set
of states that require one word time to complete and do not require access
to the computer memory. The Channel Storage Register contents are used to
select the X special state that will be entered from c12. In this special
operation the channel storage register serves as an auxiliary operationcode storage register. Since all the X special operations are one word
time instructions, the specific X special state serVes to define the operation and much of the actual operation is performed in state 0.3.
'Complement (013). The complement operation causes the 2's complement
of the Accumulator to be read into the Accumulator. The Accumulator is
circulated and the Ac flipflop is "one" set by the first "one" in the
Accumulator. All succeeding bits of the Accumulator are complemented.
Minus Magnitude (c14). When the computer enters the Minus Magnitude
state, 014, the sign of the Accumulator is tested. If the Accumulator is

54

GEiIiEI7CS.~

Fig.

4

X-Special Compute. States

55

negative no' action is taken; if the Accumulator is positive the Cbl flipflop,
is "one!! set and copied into ,the Cl flipflop, thus generating a complement
instruction.
Logical And to Accumulator (c15). Entering state c15 causes the
correspondig bits of the Accumulator and Lower Accumulator to be logically
"anded".
Enter Fine Countdown (c16). Entering the Fine Countdown causeS the
Fc flipflop to be "one" set. This places the computer into a parailel operation called Fine Countdown. During Fine Countd:own the V and U loops fomi a
digital integrator.

This operation will continue until the Halt Fine Count-

down state fs entered.
Halt Fine Countdown (c17) • Entering the HB.lt Fine Countdown state, 617,
causes the Fine Countdown flipflOp, Fc , to be "zero" set.
Reset Detector (c18).

When the Reset Detector state is entered, the

Dr flipflop is "zero" set. . The Dr flipflop is '" one" set by I~.
Halt and Proceed (c19). Entering state c19, Hand and Proceed causes
the computer to enter state cJ and then state n22, Program Halt.
Load Phase Register (620). The Load Phase Register special instruction
causes C2 to be loaded intp P2 and Cl is copied into P20 P3 copies the I~
flipflop at bit times Tl through T5 • State c20 is defined by three of the C
flipflops, C5; C4 , and C3, the rema1ning two C flipflops may be either "one"
or "zero" set. The actual purpose in setting the Phase Register will be
discussed in conjunction with state c~7.
;,
Binary-Output (c2l, 022,02J). Binary Incremental Output states may
be discussed simultaneously. These states differ only in the sense that
state 021 involves output flipflop Gl , c22involves G2 , and c2J involves
GJo Only the first'state, c21, will be discussed because the discussion
is directly applicable to all three states b.Y substituting the proper G.~
flipflop in state c2i, where 1=1, 2; or 3.
In state c21 the state of the Gl flipflop is checked. If Gl equals
.'

56

"1" the first eight bits of A are treated:as' a word and +1 is added ,to that
word. If Gl equals "on a liS subtracted from the word formed by the first
eight, bits of A. After one of the above operations is accomplished, the
Gl flipflop copies the sign bit of A.
Discrete Inputs (c24, c25).In both discrete input operations 'a set
of twenty-four discrete input lines and flipflops are sampled and read into
the A register.

For a Discrete Input A,.DIA, operation the discrete input

lines Xl through X19 and flipflops Dr' Fc' P3, PI' P2 , replace bits Al
through A24 respectively.
During the operation initiated by state c25, DIB, the discrete lines
Yl through Y24 replace bits Al through A24 respectively. The actual information transfer described in. th.ese states ~kes place in state c3; however,
the states c24 and 025 serve to,define the operation to be performed in
state c3.
Discrete Outputs (026). Theoperati.n initiated by state c2, Discrete
Output A, causes the bits II through I5 to be loaded into the Discrete Output Register, Dl through D5"
Voltage Output (c27, c28, c29). The Voltage Output states are identical in concept. The function of these states varies only in the phrsical
location of the.output voltage.
Three Voltage Output Registers are loaded with the split word contents
of A. If I4 is "1", ,the right half of A is loaded and if I4 is "0", the left
half of A is loaded.
The states c27, c28, and c29 determine which set of Voltage-Output flipflops, ViI through Vi8 , (i=l, 2, or 3) will be loaded from A. If c27, VOA,
is entered VII through V18 will be loaded; c28, VOB, causes V21 through V28
to be loaded; and c29, VaG, causes v31 through V38 to be loaded with the
proper half-word of A.
The Phase Register also affects the output location of each voltage
line.

57
y Special Stat~ (030). The YSpecialstate~ 030, Serves only as a
decision point for entering specific states 031 through 038. Operations

initiated by the Y Special state do not require a.ccess to Memory; howeVer,
they do require more than one word time to complete.
Accumulator I,eft Shift (031) •. A left shift operation is accomplished
in the D17B by a.dding an extra flipflop, Ak , to the A loop for the num1;>er
of word times equal to the number of i3hifts required. The number of shifts
.. is specified by II through c15" This number is loaded into the Channel
Buffer Register aDd counted down at each word time.
Accumulator Right Shift (c32). State c32 ini tla,tes a right shift of
the Accumulator. To accomplish this operation, the A flipflop is reIDOIted
p
from the reci.rculation loop of the Accumulator. The number of ri.ght sifts
required is indicated by II through 15 and-the A flipflop remains out of
P
_ _
the A loo:p for that number of word times. If the Acc:umula tor is posi ti ve,
zeroes are filled into the vacated bits; however,if the AccuniUlator
contain:;l a negative number, liS replace the bit positions vacated by the
right .shift.
Split Accumulator Left and Split Accumulator Bight Shift (c3.3, 034).
The discussion of states c.3land c.32 are directly applicable to the states
033 and 034 respectively. In the split~shift states the left and right
half words of the Accumulator are shifted the same nu."lJ.ber of bit positions
but are treated as separate words.
•

c

i

Spli t Left 1r.Tord Left Shift (0.35) ~ State c35 ini tia tea an operation
which caUSes the l.eft half-word of the Accumulator to be shifted left by
+~IP "'um.ber of bit positionS specified in 'II tb+ough I," The discussion of
state 031 is applicable t.o this state except that bits A14 through A24
only are affected.
Spl! t Right Word Left Shift rC,~6). Bits Al through Ala only are
affected by the Split Right Word Left Shift operation. As implied by the
state

name~

the rihgt half-word of the A register is shifted left.

58 GEIEE/72S·2

Fig.

5, v' Special Compute States

59

Split Left Word Ri.ght Shift (c:37). State 0:37 initiates a right shift
of the left half-word of the Accumulator. As in all right shift operations,
if the half -word W'Cire posi ti ve., the bits vacated by the shif·ting are filled
with zeroes and if the half-word were negative, liS are filled into the
vacated bit positions.
Split Right Word Right Shift (038). State c38 initiates a right shift
of the right half-word of the Accumulator. The discussion of c37 is directly
applicable to this state except the right half-word is shifted.
Single Character Output (c39)0 The operation initiated by state 039
shifts the four most significant bits out of the Accumulator and presents
them to the four character output lines. A fifth character output line is
used as a parity linea This information is presented on the character output lines for the number of word times specified in s[I].
The Single Character Output operation isaccomplisbed in the following
manner. The sector portion of the instruction operand is shifted into the
Operand Channel Buffer Register.

Each word time this register is decreased

by one, thus it is used to terminate the operation after the end of (s[I])+l
word times.
During the first word time of the Single Charaoter Output operation,
the circulation loop of the Accumulator is extended to include four flipflops of the Operand Channel Buffer Register: C1' C2 , C3 , and C4 " This
causes the four most significant bits of the Accumulator to be left shifted
into these C flipflops
Pari ty is indicated by the J flipflop by "zero"
setting it at the beginning of the operati{!Jn 9.:.nci allowing it to toggle as
each "1" is shifted into the flipflop.
The parity (J) and output (C4, C3 , C2 , and Cl ) is presented on the
0

output lines Sc5 through ScI' respectively, with the occurrence of each
ScT timing pulse.
Split Compare and Limit (c4O). State 040 initiates the Split Compare
and Limit Operation in which the split-word contents of the Accumulator is

60

compared with the corresponding bits of a word in memory. The memory is
specified in the operand of the SCL instruction.
If the contents of the memory word is greater than:that of A, no
changes are made. If the split word portion of A is positive and greater
than the corresponding part of the memory word, the split memory word
replaces the split-word of A.
If the quantity in :memory is less than the corresponding part of A
and that half-word of A is negative, the two's complement of the memory
half-word replaces the Accumulator half word •
. Mul tiply (c41). The Multiply operation is ini tia ted by state c41.
The operation causes the contents of the Accumulator to be moved to the
Lower Accumulator and the product of the Accumulator and memory contents
specified by the MPY operand is placed in the Accumulator.
Split Multiply (C42)0 State c42 initiates the Split MUltiply
operation. This operation is similar to the Multiply operation except
the left half-word of A goes into the right half-word of L and the right
half-word of A goes into the left half-word of L. The split words of the
Accumulator and the memory word specified by 0 I are multiplied and stored
in the respective split words of the Accumulator.
Split Multiply Modified (c43). Split Multiply Modified is an operation
which causes the three least significant bits of the Channel Buffer Register
to be replaced by the "exclusive or" of those bits and the contents of the
Phase register. The operation then proceeds as a Split Multiply operation.
Split MUltiply Modified commands allow the computer programmer to vary the
effective operand channel address depending upon the Phase register contents.
Multiply Modified (c44). State c44 initiates the Multiply Modified
operation which caUSeS the three least significant bits of the Channel Buffer
Register to be changed by an "(3Xclusive or" operation with the Phase Register.
After the above modification, a multiply operation is accomplished as described

61

in state 041. It is noteworthy that this operation dOes not change 'the
original multiply instruction in memory.
State Description Summary
In the above jrescription of the D17B the various configurations of
control flipflops were used to define states of the computer. These
state definitions are not unique and many other sets of flipflop combinations may be used to describe the machine operation. The states
described were chosen because they could be given names that correlate
with other published ini'ormation about the D17B. Hopefully, this type
of description will be an aid not only in understanding the operations
of the machine~ but also in maintaining it. For exampleJ the II state"
of an inoperable machine may be determined by checking the status of the
control flipflops. Once the state is identified~ the malfunctioning
circuit may become apparent by considering which flipflop is preventing
normal state transition.
Bibliography
1.

2.

3.

4.
5.
6.

Autonetics 0 Part 1 Preliminary Maintenance Manual of the Minuteman
D17B Computer and Associated Test Eguipment~ P.O. Memo 710 Anaheim,
California: Autonetics, Division of North American Rock'..rell, Inco,
January 1960.
'Chu, Yaohan. Digital Computer Design Fundamentals, New 'll:ork; Me GrawHill Inc., 1962.
Hansen, Do Do and Watkins~ KG R. A Rigorous Logical Study - with Lab of the D17B Digital Computero ACC-31170P-33. Anaheim, California:
Computer and Data Systems Dept of Autonetics ;lvision of North American
Rockwell, Inc.~ 30 April 19620
Shoryer, Lo o. D17B Computer Manual. Anaheim, California: Autonetics
Division of North American Rockwell, Inc., 1 July 19600
USAF Technical Order. Technical Manual Overhaul and Repair General
Purpose Computer (Model D17B), T~O. IlG2-l0-5-3-5. Los Angeles,
California: Air. ForceKier Lithographic~ 24 November 1964.
Allen, Douglas J. Laboratory Conversion and State Description of t~
D17B Computer, Thesis,Air Force Institute of Technology, Wright.
Patterson AFB, Ohio, 1972.

62

Appendix A
List of Terms and Abbreviations
Ak :

Carry, borrow and misc. flipflop.

A:

"A" register extra delay flipflop.
A: irA" register read flipflop.
x
A24 : "A" register delay flipflop.
A23w: "A" register write flipflop_
B6, B5 , B4 , B3 , B2 , Bl : Bit time counter flipflops.
Cb5 , Cb4 , Cb3 , Cb2 , Cbl : Operand channel buffer register and word time
counter flipflops.
p

Cpl : Program channel register.
Operand channel storage register and auxiliary
operation-code storage register.
DI7B: Designation dfl the computer used for guidance in the Minuteman I
missile.
Shift control for "Discrete Output" register.
Discrete disable signal from a control panel to control the discrete
outputs.
D : Gyro malfunction indicator flipflop.
r
D5, D4 , D3 , D2 , Dl : "Discrete Output" register.
D: Control flipflop.
E: Control flipflop.
Emx: : "E"·loop intermediate read flipflop.
E : "E" loop end read flipflop.
x
Ep : "E" loop write flipflop •.
Enable write signal - from a control panel - enables IIcold storage"
Ewc
write heads in memory.
Fine-countdown-mode indicator flipflop.
"F" loop write flipflop_
F:
Also Fse in some writings - signal from a. control panel that directs
s
the computer to enter the Prepare to Fill state.
F:
!IF" loop read flipflop.
x

63

G3, G2, Gl : Binary outputs flipflopso
H: "HI' loop write flipflop.
p
H : "H" loop intermediate read flipflop.
mx:
H : "H" loop end read flipflop.
x
I : "I" register interrupt control flipflop.
c
Id: "Instruc:tionSearGh" sector disagreement indicator flipflop.
I.o Also Iic~ the ith signal input to the computer from an external
source for character input, i=l, ••• , 5.
I
Symbol fora mechanical input signal to the computer, command to
mc
enter the Wait state.
"I" register extra delay flipflop.
"I" registe~ read flipflop.
"I" register write flipflop.
Jo, Control flipflop.
K:
Control flipflop.
Halt not or run signal from a control console - directs the computer
to enter the compute states.
K'
kr° Run not or halt. signal from a control console - directs the computer
to enter the non-compute stateso
"L" register interrupt control flipflops.
"L" register delay flipflop.
L : "L" register extra delay flipflop.
p
L : "L" register read flipflop.
x
L24w: "L" register write flipflop.
M : Memory output buffer flipflop.
px
M : Also M - master reset sigDal from a control console, initiates the
rc
r
c0ID.puter to the Prepare to" Operate state.
"N" register interrupt control flipflop.
"Number Search"sector disagreement flipflop.
N : "N" register extra delay flipflop.
p
, N : liN" register, read flipflop •
x
~o

,',

0

'

,

-

.

64

N24w!

"WI register write flipflop.

0b3' 0b2' ObI: Operation-Code-Buffer register.
04' 03' 02' 01: Operation-Code-Stora.ge register.
P3 , P2 , PI: Phase register.
Q: Special timing flipflop.
R: "R" loop interrupt control and mode control flipflop.
c
R:
"R" loop write flipflop.
p
R: "R" loop read flipflop.
x
S: Information read from the sector track of the D17B computer memory.
Sb3' Sb2' Sbl: UFlag-Code" buffer register.
S3' S2' Sl: "Flag-Code" storage register.
T: Sprocket timing signal; used to direct the computer to accept
c
character inputs.
T.: Bit times of the computer, i=l, ••• , 24.
~

TO:
T :

"To Time" indicator flipflop.
"T Time" indicator flipflop.

T :
x
U:
p
Ux :

"T Time" indicator flipflop.
x
"U" loop write flipflop.

p

p

"U"

loop read flipflop •.
loop interrupt control and state control flipflop ••

V:
"V"
c
Vp : "V" loop write flipflop.
Vx : "V" loop read flipflop.
V 38 , V37 ,
V31 : Voltage output register number 3.
V28 , V27 , a
V21 : Voltage output register number 2.
e _ • ,

8

•

,

V18 , V17 ,
VII: Voltage output register number 1.
OAl : Symbolizes that the flipflop named Al is set to a logical "zero"
condi tion or "zero set".
.
Symbolizes that the flipflop named Al is set to a logical "one"
condition or "one set".
A*·
l' The star or asterisk indicates an external signal to the computer that
has been changed in voltage level but has the same logical meaning as
t!I

8

a ,

65

AI:

the symbol with no asterisk.
Prime is used to indicate a logical "not" when A is a logical 1,
AI is a logical O.

Flipflop names and some definitions in this list were taken from
Ref (1: 110-114).

66

USE OF THE 017B IN A HYBR~D COMPUTER SYSTEM
Lansing'B. Evans and Charles H. Beck
Tulane University
Department of Electrical Engineering
New Orleans=t LA 701rS

ABSTRACT
Now that the USAF has reZeased a Zarge number of ~nuteman DZ7B Computers
whiah were originaZZy designed for missiZe guidanae~ other appZiaations for
these e:xaess generaZ-purpose aomputers have been undergoing a rapid evoZution
in many fieZds. This paper desaribes a new hybrid aomputing appZiaation for
the ~nuteman DZ7B Computer whiah makes use of a Zarge number of the fZe:xibZe
capabiZities of these computers. Hybrid aomputing system design aan take fuZZ
advantage of the aapabiZities of both anaZog and digitaZ aomputers as weZZ as
those of speciaZ hardWare that is possibZe to deveZop beaause of the avaiZabiZity of info~ation in both continuous and discrete fo~. Motivation for
this type of appZiaation for the DZ7B stems primariZy from the versatiZe I/O
aapabiZity of these maahines. The purpose of this paper is to present some of
the design aonsiderations and typiaaZ appZiaations for a DZ7B-TR48 hybrid
aomputing system~ to desaribe the present system aonfiguration~ and to outZine
a speaifia hybrid optimization mode Zing probZem that is being soZved using
this system aonfiguration. The DZ7B has been found to be aompZeteZy satisfaatory for this automated design appZiaation.

BASIC DEFINITION OF A HYBRID SYSTEM
In a broad sense the field of hybrid computation includes all computing
techniques which combine some of the features of digital computation with
some of the features of analog computation.

The combination of digital and

analog devices brings together many of the characteristic advantages of both
types of hardware and software.

In many cases a disadvantage of one part of

the system is more than compensated for by an attribute of another part of
the system.

The idea of interacting advantages will become more evident by

citing some of the capabilities of the two major components of the hybrid
system, the analog and digital computers.

There will be additional entries

to the list of general capabilities which follows depending on the specific
computers being used in a particular hybrid system.

67
Some capabilities of the analog computer include:
1. Dependent variables within the machine are treated in continuous form.
2. High-speed or real-time computation is available with computing speeds
limited primarily by the bandwidth of the computing elements.
3. There exists the ability to perform efficiently such operations as addition,
multiplication, integration and non-linear function generation; on the other
hand, there is very limited ability to make logical decisions or store data.
4. Programming techniques involve patching together the various computing
elements.
On the other side, some of the capabilities of the digital computer
include the following:
1. All data within the computer is in discrete or quantized form.
2. In general only one operation can be performed at a time and many computing
units must be time shared.
3. The facility exists for storing alphanumeric data indefinitely.
4. The ability exists to perform logical decisions and operations using either
numerical or non-numerical data.
5. There exists the ability to modify the program extensively on the basis of
any calculation.
Almost any computing system is a subset of a complete hybrid system.
Whether a system is almost purely digital with only minimal analog capability,
nearly all analog with a small amount of digital ability, or anywhere in
between, it qualifies as a hybrid system and the principles of hybrid computing
may be applied to it.

HYBRID COMPUTER APPLICATIONS
Because of the inherent flexibility of the hybrid computer, there are
numerous applications for this type of system.

One of the most important is

modeling and parameter optimization involving dynamic systems.
~ar

This particu-

application makes use of a true hybrid system involving an analog computer,

digital computer, and appropriate interface components.

As the name implies,

modeling requires the use of known experimental input and output data to obtain
an. accurate mathematical or topological model of the system involved.

With a

complete hybrid system, relatively complicated and multi-variate models may be
consider,ed.

68
The block diagram of a' typical hybri9 modeling technique is, shown "in
Figure L

During a run the actual, system, or ;function. gent;!rat()r representing

the actual systemds operated' in"parallel with the assumed model.

The index

of performance (IP), which measures the quality of 'the model, is formed on
th~ analog comput~r'by
int~grciting
the square 'of the'error
function
over the
.
. ". .
. ;
... , .
.
"

:

time of the run.

'.

,",

~

"

~

Using, this technique the digital computj!r adjusts the model

parameters after sampling the IP, from the previous run and performing needed
optimization calculations.

The digital computer makes its decisions on the

new parameter settings using an optimization method such as the Tulane Automated Hybrid Optimization (TARO) technique.
The TARO technique has been applied to circuits and various physical
systems.

Currently the TAHO technique is being used for a multi-variate model

of the head and neck of a pilot in a crash situation.
by monitoring human subjects who

ri~e

The data are obtained

an acceleration sled along a track.

A

simulation of these data is used as the actual. system portion of Figure 1.
Other typical applications of the hybrid computersystetninclude:
Aerospace Simulation
Simulation of ,Process Con.tro1
Simulation of Man-Machine S~stems
Random Process Simulation

USE OF THE MINUTEMAN D17B COMPUTER IN HYBRID APPLICATIONS
In most hybrid systems the digital computer provides control functions
as well as the digital computa'tio~'for the entire system.

Therefore, the

digital computer must have the ability to communicate not only with the usual
digital peripheral equipment but also with the remainder of the hybrid system.
The Minuteman Dl7B Co~uter has the need~d input/output versatility and the
flexibility required for ~ hybrid system.

For it~ size, the Dl7B has a large

number of' digital input and output lines, pulse output lines, and analog type
output lines.
The programmability of the' D17B i8also a significant advantage for a
hybrid system.

The D17B has a complete "set of a:rithme'i:ic, control, and input/

output instructiori~.

It is' also capable of instruction'modification which is

an important factor in efficient software for a hybrid system.

Because many

of the operations required to control the hybrid interface and the analog

69

INPUT

X(t)

ACTUAL
SYSTEM

ASSUMED
SYSTEM

or

MODEL
FUNCTION
GENERATOR
T (t)
m

DESIRED
or
ACTUAL
OUTPUT

MODEL
RESPONSE

+

A-D
CONVERTER

D17B
DIGITAL
COMPUTER

** **

PARAMETER
ADJUSTMENT

Fig. 1. Tulane Hybrid Optimization Modeling Technique.

70

computer are of a

relatively.basi~

bit-level nature, the machine language

programming of the Dl7B can be far more efficient than the use of a compiler
language.

In addition, as will be seen in the next section, the D17B input!

output instructions are very well suited for hybrid operation.
Perhaps one of the greatest advantages of the D17B hybrid system is the
comple,te flexibility of the configuration.

By the nature of the definition

of a hybrid system, it may be anywhere from pure digital to pure analog.

The

D17B will fill the digital computer requirements for any of these systems if
the memory size and speed are suitable.

The D17B hybrid system described in

the following section is a complete hybrid system with full analog and digital
capabilities.

A full system such as this allows for any operation from merely

using the D17B to control the mode of the analog computer to the sampling of
analog signals with the A-D converter and performing all processing digitally.
This means that practically any computing application can be realized as a
subset of a complete hybrid system.

MINUTEMAN D17B/TR-48 HYBRID SYSTEM CONFIGURATION
In designing the configuration of the D17B/TR-48 hybrid computer system,
a careful effort was made for full and efficient use of the D17B input/output
capabilities.

A block diagram of the basic D17B/TR-48 hybrid computer system

is shown in Figure 2.

It can be seen by inspection of the diagram that this

system is a complete, digitally-controlled hybrid system.
The two major paths of information flow in Figure 2 are those from the
digital to the analog computer and those from the analog to the digital machine.
Since many applications require multi-variate analysis, it is necessary that
the major paths in both directions be multi-channel.

Within reasonable limits,

this presents no problem to the ability of the D17B to control the interface.
The major components of the analog-to-digital information path include a
l6-channel multiplexer and an

analog~to-digital

(A-D) converter.

plexer allows 16 analog signals to time share one A-D converter.

The multiThe D17B

controls the operation of both the multiplexer and the A-D converter as shown
in Figure 3.

In order to permit one of the inputs of the multiplexer to be

switched to the input of the A-D converter, a four-bit binary address, between

o

and 15 decimal, is transmitted to the multiplexer address register.

The COA

INTERACTIVE
INPUT

'"
/

......

1\

'"
......
;,-

'il
DIA

......

VOB

OOA

OOA

DOA

'"

TEN
D-A
CONVERTERS

....
I

NONLINEAR
FUNCTION
GENERATOR

,~

TR-48
"-.,

VOC

....

'"

-

BUFFER

/'

MINUTEMAN
D17B
DIGITAL
COMPUTER

DOA
VOA

......

'"....
.."

ANALOG
COMPUTER
PATCHING/MODE
CONTROL
RELAYS

8-BIT
PRINTER
DIGITAL

....
"

DOA
DOA

\1,

,

PARAMETER

/

,..

COA

DIB
Ij\

A-D
CONVERTER

...

-;;.r

TEN
DPUs

.....
~

"

MULTIPLEXER

/

......

I'

Fig. 2. Tulane D17B/TR-48 Hybrid Computer System.

UNIT
INPUT/OUTPUT

72

l.t
I'

,..
' ......

"

,

....,

FROM
COA

~

BUFFER
REGISTER

."

~

,

4-BIT
ADDRESS

l'

COA
TIMING

~.

~

.'

..

··

SIXTEEN

SIXTEEN
ANALOG
INPUTS.

CHANNEL
"

' .

·

MULTIPLEXER
1/
'"

OOA

·

-.II

A-D

I"
I'

CONVERTER

ANALOG
OUTPUT

8-BITS
,~

"

INTERFACE
8-BITS
.I

TO DIB INPUTS
I

'V

Fig. 3. Hybrid System
VOB
8-BITS

A~D

and Multiplexer.

10 DOA
\

V

\I

\I

. INTERFACE
,....

•

,t

•

•

,

. . ..

CLOCK 1

~I\

•

\

r ~t\

•
•
•

"<;,

D-A

~ ANALOG
OUTPUT
"

....,

NO'. 1

NO. 1

CLOCK 10

..

~

,

•

•

• ...

D-A
NO. 10

Fig. 4. Hybrid SYstem D-A Converters.

~ ANALOG

OUTPUT
NO. ;to

73
(character output) instruction is used for this purpose because it sends out
a clock pulse along with a four-bit parallel pulse type word which can easily
and conveniently be interfaced to the multiplexer address register.

The use

of the COA instruction in this case also means that only one machine language
instruction will be needed to control the multiplexer.

Once the proper analog

signal has been applied to the A-D converter, two discrete output (DOA)
instructions are executed to cause the A-D converter to digitize the analog
input.

Two DOAs are used to generate a pulse as required by the A-D converter.

The ten digital-to-analog (D-A) converters shown in Figure 2 are the most
important links in the flow of information from the digital computer to the
analog

co~uter.

The D-A converters are also under complete control of the

D17B.

Figure 4 shows how the D17B loads and controls the D-As.

in the Tulane hybrid system accept an 8-bit digital input.

The D-As used

This 8-bit input

is loaded into one of the internal D-A buffer registers and converted to a
proportional analog value when a clock pulse is applied to that D-A.

Since no

input is loaded into a D-A until a clock pulse is applied, the digital inputs
of all D-As may be connected together and tied to an8....bit digital bus.
The D17B has a voltage output (VOB) instruction which may be used for an
8-bit parallel digital output.

Eight bits from the accumulator are transferred

to the VOB register when a VOB instruction is executed.

Once the VOB .has been

executed, the desired8-bit word is applied to all D-A inputs.

A pair of DOAs

are then used to load the digital word into the proper one of the ten D-As.
Only a few machine language instructions are needed for D-A control.
In addition to the basic A-D and D.;...A units, the interface contains two
somewhat more sophisticated components.

These are the digital parameter units

(DPU) and the digitally controlled nonlinear function generator (DCNFG).

These

devices involve interactions between digital and analog signals rather than a
conversion from one form to the other.
The DPUs provide for the digital control of the parameters in the analog
computer patching.
the D17B.

This control is performed electronically at high speed by

With this ability the parameters of the model may be changed at high

speed under program control.

Basically the DPU is a hybrid multiplier.

It

multiplies the 8-bit digital word transferred from the VOA lines by the corresponding analog signal from the TR-48 as shown in Figure 5.
The interface between the D17B and the DPUs is quite similar to.the one
for the D-As shown in Figure 4.

The 8-bit VOA lines are fed to the inputs of

74

VOA
'IIS ....BITS

"

..}O OOA \1

INTERFACE

f

•

•

•

.

•• ,
Wr\

CLOCK 1

....

_

~

..

.:::::

'"

IW

ANALOG
~ OUTPUT
NO. 1

--""'"

'"

...

CLOCK 10

"•

-:::,.

ANALOG

DPU
NO. 10

•

•

ANALOG
~ INPUT
NO. 1

NO. 1

III

...

DPU

"

~ INPUT

NO. 10
ANALOG
~ OUTPUT
NO. 10

Fig. 5. Digital Parameter Units.

I

...."-

BUFFER
REGISTER

,;'

DIGITALLY
CONTROLLED
NONLINEAR
FUNCTION
GENERATOR

t- x(t)

I~

I

VOC
DIGITAL
LINES

INTERFACE

'I

-

......

VARIABLE
BREAKPOINT
AND
SLOPE
~ y(~)

OOA
Fig. 6. Digitally Controlled Nonlinear Function Generator.

75
all DPUs.

The digital word is then loaded using two DOA instructions as in

the case of the D-A converters.

The analog inputs and outputs for the DPUs

are patched on the TR-48 patch board.

These extremely powerful hybrid comput-

ing elements are also convenient to use with D17B computer machine languageo
The nonlinear function generator is a digitally controlled variable
breakpoint function generator.

The function may have up to ten segments of

any desired slope, and the slopes and breakpoints can be programmed into the
generator under D17B program control.

The slopes and breakpoints are loaded

into the generator using the 8-bit VOC lines and DOA pulses.

After the loading

of the desired function, the output, y(t), takes on the function output for
the corresponding analog input, x(t), as shown in Figure 6.

The setup time for

the function generator is fast and versatile as is the case for the DPUs.
The mode control on the TR-48 Analog Computer is operated from external
relays controlled by the D17B Computer as shown in Figure 2.

The outputs from

the VOC digital lines are loaded into a buffer which drives the relays on the
external patch board.

The relays that are not used for mode control may be

used for high-speed patching changes ih the analog computer program.

CONCLUSIONS
While the D17B is a small general-purpose digital computer, the versatile
input/output capability of this machine has allowed for the development of a
compact, efficient hybrid computer system when used in conjunction with a TR-48
Analog Computer.

The most important benefit of a computer system such as the

Minuteman D17B/TR-48 hybrid system described in this paper is that it may be
used in a wide spectrum of computing applications.

REFERENCES
M. H. Kuo, Automated Modeling of Dynamic Systems Using Hybrid Computer 0ptimimbation Techniques, l)oct.ora1. DiSSertation, Tulane University, New Orleans,
Louisiana, 1971.
C. H. Beck, et at, "Direct modeling of nonlinear systems using hybrid computer
optimization techniques," Conference Proceedings, Seventh Annual Allerton
Conference on Circuit and System Theory, C-4, 6, Urbana, Illinois, 1969.
G. Ao Bekey and W. J. Karplus, Hybrid Computation, John Wiley & Sons, Inco,
New York, 1968.

76

DESIGN OF A BINARY DISPLAY FOR THE D17B COMPUTER
by
.HARRY S • WARFORD ) Capt, USAF, BSC;';
DEWIDS .. MJRAN, GS-9

INTRODUCTION
Hardware development for the D17B computing system has proceeded rather
slowly as a spare time interest at the USAF School of Aerospace Medicine.
As a result, the binary display teclmique described by this paper has .
not been optimized for future growth of the total system. However, it
has evolved into compact arid relatively inexpensive design through
effective use of machine inh~rent characteristics. The overall design
calls for the capability to monitor any register or memory track with
random access to any particUlar sector. At present, the hardware for
monitoring the me-word registers is complete and the design is complete
for the remaining circuitry to randomly address memory location.
'IEaINIQUE
The D17B utilizes the 24-bit full word for programming but actual word
length m the disc :rremory is 27 bits. "The 3-bit "dead tine" has been .
used in our design to facilitate display without the need for additional
holding registers while maintaining the capability to update the display
each word tine. DUring the 24-bit times representing the computer word
a 24-bit serial entry shift register is filled from the D17B while the
light emitting diode display is blanked. Then during the 3-bit dead time
the shift register is halted and the parallel outputs drive the display.
At the end of the 3-bit times, the display is blanked and the irifornation
is changed or reloaded into the register ..
For randan access the sector channel is to be monitored as shown in
Figure 1. Sector number infornation will be captured in an external .
register and compared with the numbers selected m a set of octally coded
thumbwheel switches. When the information agrees, the. proper shift pulses
are gated to the aforementioned 2~-bit register to capture the next word
of the chosen channel. Channel choice is by a second set of thurnbwheel
switches and the decoding internal to the D17B.

.
;'~o

.

be presented by Michael Jenkin, M3.jor, USAF, MC, USAF School of
Aerospace Medicine, Brooks AFB T~xas 78235

CIRCUITRY
Figures 2 and 3 show the circuits used to irrplement the basic display.
The derived control signals are shown in Figure 4. It must be noted
here that the logic signals were considered to be of positive sense
for ease of design with cOlTO'rercial DTL logic. Additionally, the levels
were not translated but the signals were merely attenuated to produce
a five volt swing and the integrated circuits were operated with "vcc"
at 0 VOC and "ground" at minus 5 VDC. Figure 5 shows the proposed
control signals to accorrplish random access and Figures 6 and 7 show
the present design being constructed for this purpose. At present,
all logic has been broken into IIDdules representing a byte of data and
irrplemented with commercial plug-in cards and racks.

OTHER DEVELOPMENTS
Little effort has been expended on hard-copy output thus far since the
surplus Flexowriters obtained for this project rapidly deteriorated and
failed early in the project. However, an extremely sirrple and inexpensive technique was used to provide input only by mounting a second
set of leaf switches in tandem with those used to operate the punch
select magnets of our remaining operable .Flexcwri ter. This provides
corrplete electrical isolation thus alleviating the need to IIDdify the
Flexowriter power supply and requires a single capacitor to shape the
timing pulses.
Additionally, an extra tape reader has been converted to stand-alone
use as depicted in Figure 8. A manual I/O panel similar to those
described at earlier user's meetings provides for miscellaneous control.

SECTOR
SELECT
SWITCH

0178

\,"~
SECTOR ..
~

TRACK

TIMING

..")
...

SECTOR
SEARCH
LOGIC

DISPLAY
LOGIC

..
•

.......

l

CHANNEL
SELECT
MPX

~

CHANNEL
SELECT
SWITCH

FIG. 1

24 BIT GATED
DISPLAY
(LED)

If

~
4

DATA

,.,.

BINARY DISPLAY SYSTEM

24 BIT
SHIFT REGISTER

WG

MV-5022
Q
r-----I C

(949)
SP

FIG. 2

*¢
(D17B
CLOCK)

ONE BIT OF DISPLAY REGISTER

9G.Z

SP

47bpf T
-S"Oc: 0
O-----------~------__4932

*
*

INPUT

R

S

(LEVELS HALVED BY RESISTOR NET.)

FIG. 3

DISl?LAY CONTROL

6.

I
WG

SP

FIG. 4

TIMING FOR BASIC DISPLAY

SP
8 4 '8G.

I II 1 1 I I I 1 I III I II

111111111111111111111111

11111111

1

I

I

IIIIII1 1

J

I

L

sSP

1111111

1111111

1111111

SA

C><1

C>roceeqingsof ,the Third Meeting of the Minuteman Computer
Users Group, Minuteman Computer Users Group, Tulane University,
New Orleans, 1971.
3. W. L. White, M. M. Erickson and S. C. Stevens, Practical Automation for
the Clinical Laboratory, C. :V. Mosby Co., St. Louis, 1968.
4. Laboratory Organization and Data Handling Familiarization, T & T
Technology, Inc., 1971.
5. R. H. Laessig and P. P. Tong, "Digital Concentration Analyzer for the
Single Channel AutoAnalyzer," American Laboratory, 67, September 1970.
6. L. G. Whitby and D. Simpson, "Experience with on-line computing in
clinical chemistry, "J. Clin. Path., vol. 22, suppl. no. 3, 107-124, 1969.
7. Po Gray and J. A. owen, "Experience with on-line computer processing of
data from an AutoAnalyzer complex," Clin. Chim. Acta,vol. 24, 389-399,
1969.
8. N. P. Wilburn and 1. D. Coffin, "Combination of on-line analysis with
collection of multi component spectra in an on-line computer," IBM J. R&D,
vol. 13, no. 1, 46, Jan~ary 1969.
9. M. A. Evenson, et., al., "Application of an on-line data acquisition system
using the LINC computer in the clinical chemistry lab," Automation in
Anal. Chem., vol. 1, 137, 1968.
10. M. A. Blaivas and A. H. Mencz, "Progress report on the use of a computer
in the automated clinical chemistry laboratory,". Automation in Anal. Chem.,
vol. 1,368-372, 1967.

. ACKNOWLEDGEMENTS

This project haa been supported in part by the U. S. Army Medical Research
and Development Command under Contract No. DADAl7-71-C-1019.

The authors are

particularly indebted to Capt. Timothy C. Doyle, Computer Systems Branch of the
USAMRDC, and to Mr. Billy G. Bass, Division of Biochemistry at WRAIR, for their
valuable assistance and contributions to the success of this project. Although
the success of this development is due to the efforts of the entire staff of
the Systems Laboratory, special credit is due to Mr. Lansing B. Evans for his
supervision of the installation and demonstration of the system at WRAIR.

93

E.f.§'l~TE.ATIQ!!

Fourth Meeting of the Minuteman Computer Users Group
Shepaton-SiZver spring
June 5-6, 1972
Capt. Douglas J. Allen
Air Force Institute of Technology
AFIT-SE
Wright Patterson AFB, OH 45433
Mr. Richard F. Babler, Chief
Defense ADPE Reuti1ization Office
Cameron Station
Alexandria, VA 22314
Mr. Ned G. Barber
Psychology
City College of New York
138th St. & Convent Avenue
New York, NY 10031

Mr. Robert A. Beken
Programmer
Air-Medic Micronesia
Box 3
Glenn Dale, MD 20769
Prof. Philip J. Best
Associate Professor, Psychology
University of Virginia
Gilmer Hall
Charlottesville, VA 22901

Maj. Robert C. Brady
USAF HQ/xOOFC .
5916 Minuteman Road
Springfield, VA 22152

Dr. James D. Bargainer
Associate Professor
Electrical Engineering .
University of Houston
Houston, tx 77004

Dr. Sam J. Cipolla
Assistant Professor, Physics
Creighton University
Omaha, NE 68131

Mr. David W. Barrett
Chemistry
Johns Hopkins University
Charles & 34th Street
Baltimore, MD 21218

Mr. Richard S. Cook, Director
ADP Resource Management Div.
General Services Administration
18th & E Street
Washington, DC 20406

Mr. John P. Bartell
Computer Equipment Analyst
Defense Supply Agency
DSAH-LS (nARO)
Cameron Station
Alexandria, VA 22314

Mr. Charles R. Cunnnings
Computer Equipment Analyst
National Library of Medicine
Lister Hill Center
8600 Rockville Pike
Bethesda, MD 20014

Dr. Char1~s H. Beck
Professor of Electrical Engineering
Tulane University
New Orleans, LA 70118

Dr. Frederic M. Davidson
Assistant Professor
Electrical Engineering
Johns HopkinsUniver~ity
Charles & 34th Street
Baltimore, MD 21218

94
Mr. Preston G. Davis
Systems Engineering
Tennessee Technological University
Route 3
Mt. Juliet, Tennessee 37122

Prof." William Fishbein
Psychology
City College of New York
]38th & Amsterdam Avenue
New York, NY 10031

Mr. Edward Dowgirth
(Address not furnished)

Mr. Charles S. Fly
Electrical Engineering
Tennessee Technological University
Rt 7, Box 238A
Clarksville, TN 37040

Mr. Antonio Duque
Design Engineer
Fighton, Inc.
65 Sullivan Street
Rochester,NY 14605

Mr. David'S. Frager
Syst~ms Administrator
BUMED, NNMC
14300, Cantrell Road
Silver Spring, MD 20904

Mr., John W. Dyer
Electrical Engineering
Brigham Young University
B-34
Provo, UT 84601

Mr. William A. Garrison
Chemistry, BH462
University of Missouri - St. Louis
8001 Natural Bridge Road
St. Louis,MO 63121

Mr. John W. Ecklin
Computer Equipment Analyst
DSA
Cameron Station
Alexandria, VA 22314

Robert M. Goldberg
Radiology
Albert Einstein College
1300 Morris Park Avenue
Bronx, NY 10461

1>1r. Ca~los J. Escude
LowelliTechnical Institute
450 Aiken St;reet
Lowell, MA 02173

Mr. Charles E. Greene
Spec. Assistant to Director
Division Data Processing
HSMHA, PHS, DHEW - NCHS
Rm. 10A56 , 5600 Fishers Lane
Rockville, MD 20852

Mr. Lansing B. EVans
Electrical Engineering
Tulane University
New Orleans, LA 70]]8
Dr. Joseph F. Fennell
Space Physics Lab. 120/1813
Aerospace Corporation
P.O. Box 95085
Los Angeles, CA 90045
Mr. Wayne R. Fenn.er
Plasma Research Labs 120/1405
Aerospace Corporation
P.O. Box 95085
Los Angeles, CA 90045

Dr. Robert W. Gruebel
Associate Professor of Physics
Stephen F. Austin State University
Box 3044 SFA Station
Nacogdoches, TX 75961
Mr. William W. Hart, Jr.
Property Utilization Specialist
Excess Equipment Branch
General Services Administration
Washington, DC 20406
Mr. M.A. Henry
Chemistry Department
42 Whitmore Laboratory
Penn State University
University Park, PA 16802

95
Mr. ToA. Holden
Chief, ADP Reutilization Branch
General Services ADM, OADMS
Washington, DC 20406

Mr. William A. Lee
Division of Neurosugery
Medical University of South Carolina
Charleston, SC 29401

Mr. W. Lee Hunter
Systems Analystt E-291
DHEW, PHS - Ctro for Disease Control
1600 Clifton Road
Atlanta, GA 30333

Dr. John R. Lehmann
Program Director
Computer Systems Design
National Science Foundation
Washington, DC 20550

Mro Paul S. Jean
Tennessee Technological University
Electrical Engineering
511 N. Peachtree Ave.
Cookeville, TN 38501

Mr. Fred Lichtenberger
CED, B65
Picatinny Arsenal
Dover, NJ 07801

Maj. Michael A. Jenkin
Dir. of Plans and Hospiti1ization
Ole Automation Planning Group
USAF Office of Surgeon General
HQ Usaf/S6HM Forresta1 Building
Washington, DC 20013
Colo Robert L. Jones
Deputy Comptroller (Data Automation)
OASD (C) OSD
1126 Buchanan Street
McLean, VA 22101
Mr. Jay M. Kaplan
Theraputic Radiology
V.A. Research Hospital
333 Eo Huron
Chicago~ IL 60611

Mr. David A. McB1ain
Director of Computing Services
Austin College
Box 1265
Sherman, TX 75090
Mr. Leonard D. McGann
Director
Division of Data Processing
NCHS, PHS
P.O. Box 12214
Raleigh, NC 27612
Mr. William M. McGhee
President
Fightori, Inc.
65 Sullivan Street
Rochester, NY 14605

Prof. Walter So Koski
Professor of Chemistry
Johns Hopkins University
Charles & 34th Street
Baltimore, MD 21218

Mr • Thomas F McInnis
.Automatic Test Systems Dept.
Advanced Projects Lab.
Hughes Aircraft Company
Building 6 MS E165
Culver City, CA 90230

Mr. Richard Wo Kuberry
Supervisory Geophysicist
NOAA-ERL
Fredericksburg Geomagnitic Center
Corbin, VA 22446

Dr. W. Gordon Monahan
Biophysics
Sloan-Kettering lnst.
425 E. 68th Street
New York, NY 10021

Dr. Gary B. Lamont
Associate Professor
Electrical Engineering
Air Force Institute of Technology
Wright Patterson AFB, OR 45433

Mr. Cesar A. Sepulveda-Nunez
Optical Sciences Center
University of Arizona
Tucson, AZ 85721

0

96
Mr. RichardOhran
Electrical Engineering
Brighan Young University
173 FELB
Provo, UT 84601
Mr. George E. Pidick
Physics Department
University of South Florida
4202 Fowler Avenue
Tampa, FL 33620
Professor Icarus E. Pyros
Head, Office of Computer Science
US Merchant Marine Academy
Kings Point, L.I., NY 10024
Mr. JohnG. Romanski
Electrical Engineering
Johns Hopkins University
205 Barton Hall
Baltimore, MD 21218
Mr. Harvey S. Schultz
Biophysics
Sloan Kettering Institute
425 E. 68th Street
New York, NY 10021
Dr. Leo H. Soderholm
Investigations Leader
USDA ARS
Rm 213 Ag. Eng.
Iowa State University
Ames, IA 50010
Mr. Edward J. Taborek
Chemical Engineer, SMEFB-EE
US Army MERDC
Fort Belvoir, VA 22060
Dr. Theodore M. Thorson
Physicist, Theraputic Radiology
V.A. Research Hospital
333 Eo Huron
Chicago,IL 60611
Mr. Donald T. Torres
Bureau of Industerial Hygiene
Baltimore City Health Department
602 American Building
Baltimore & South Streets
Baltimore, MD 21202

Prof. Jack C. Towne
Chemistry
University of Dallas
Irving, TX 75060
Mr. Alfred E. Traver
Mechanical Engineering
Tennessee Technological University
Cookeville, TN 38501
Dr. Edward F. Turner, Jr.
Chairman, Physics Department
Washington and Lee University
Lexington, VA 24450
Mr. Michael W. VannieI'
Mechanical Engineering
University of Kentucky
Lexington, KY 40506
Mr. John R. Van Roekel
Gas Dynamics Labs
University of Michigan
Ann Arbor, MI 48105
Dr. James J. Whalen
Assistant Professor
Electrical Engineering
State University of New York at Buffalo
Rm 2B 4232 Ridge Lea Road
Amherst, NY 14226
Mr. Edward M. Wysocki
Electrical Engineering
Johns Hopkins University
Barton Hall
Charles & 34th Streets
Baltimore, MP 21218
Mr. Samuel P. Zieske
Director of Instrumentation
Austin College
Sherman, TX 75090



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37
Create Date                     : 2011:06:30 11:52:39-08:00
Modify Date                     : 2011:06:30 11:56:38-07:00
Metadata Date                   : 2011:06:30 11:56:38-07:00
Producer                        : Adobe Acrobat 9.43 Paper Capture Plug-in
Format                          : application/pdf
Document ID                     : uuid:de4e1cd8-39a9-4e47-8a6c-0a91f011e50a
Instance ID                     : uuid:222a20b4-ff5e-47b6-b875-1782b5f1d5e8
Page Layout                     : SinglePage
Page Mode                       : UseOutlines
Page Count                      : 103
EXIF Metadata provided by EXIF.tools

Navigation menu